corpus.blog
Most cited
Talked about
Blogs
56,966 blogs · [ { "id": "01a0878a-2e36-7202-b73b-709923332a59", "title": "You Don’t Need Nextcloud: A Simple WebDAV File Server with rclone", "url": "https://james.ashford.phd/2026/04/09/you-dont-need-nextcloud-a-simple-webdav-file-server-with-rclone/", "published_at": "2026-04-09T00:00:00+00:00" }, { "id": "01a0878a-2e36-7202-b73b-709923cd83a8", "title": "You’re Not Distro Hopping, You’re Probably Just Desktop Environment Hopping", "url": "https://james.ashford.phd/2026/01/28/youre-not-distro-hopping-youre-probably-just-desktop-environment-hopping/", "published_at": "2026-01-28T00:00:00+00:00" }, { "id": "01a0878a-2e36-7202-b73b-709923e74c2c", "title": "Changes to my ThinkPad Setup: October 2025", "url": "https://james.ashford.phd/2025/11/14/changes-to-my-thinkpad-setup-october-2025/", "published_at": "2025-11-14T00:00:00+00:00" }, { "id": "01a0878a-2e36-7202-b73b-709924a6f0a0", "title": "My Latest ThinkPad Setup: New Laptop and Distro", "url": "https://james.ashford.phd/2025/05/12/my-latest-thinkpad-setup-new-laptop-and-distro/", "published_at": "2025-05-12T00:00:00+00:00" }, { "id": "01a0878a-2e36-7202-b73b-70992540fda9", "title": "More Than Just a Title: Rethinking the Value of a PhD", "url": "https://james.ashford.phd/2025/05/07/more-than-just-a-title-rethinking-the-value-of-a-phd/", "published_at": "2025-05-07T00:00:00+00:00" }, { "id": "01a0878a-2e36-7202-b73b-709925aaf8b7", "title": "For the Love of JavaScript! — Notes from a Python/Go Dev Going Back to the Browser", "url": "https://james.ashford.phd/2025/04/22/for-the-love-of-javascript-notes-from-a-python/go-dev-going-back-to-the-browser/", "published_at": "2025-04-22T00:00:00+00:00" }, { "id": "01a0878a-2e36-7202-b73b-7099266a174a", "title": "Fun with Bluesky and Websockets", "url": "https://james.ashford.phd/2025/04/17/fun-with-bluesky-and-websockets/", "published_at": "2025-04-17T00:00:00+00:00" }, { "id": "01a0878a-2e36-7202-b73b-709926c65496", "title": "Honest Review of ThinkPad X240", "url": "https://james.ashford.phd/2025/03/11/honest-review-of-thinkpad-x240/", "published_at": "2025-03-11T08:26:15+00:00" }, { "id": "01a0878a-2e36-7202-b73b-7099278a43bc", "title": "Solving Word Ladders With Graph Theory", "url": "https://james.ashford.phd/2025/02/17/solving-word-ladders-with-graph-theory/", "published_at": "2025-02-17T00:00:00+00:00" }, { "id": "01a0878a-2e36-7202-b73b-7099280ca37f", "title": "Projects", "url": "https://james.ashford.phd/projects/", "published_at": "2025-01-22T00:00:00+00:00" }, { "id": "01a0878a-2e36-7202-b73b-709928b4737c", "title": "Announcing My First Open Source Project: Graphkit", "url": "https://james.ashford.phd/2025/01/08/announcing-my-first-open-source-project-graphkit/", "published_at": "2025-01-08T14:42:38+00:00" }, { "id": "01a0878a-2e36-7202-b73b-7099294965bf", "title": "Mastering the Bluesky Firehose with Python: A Simple Tutorial", "url": "https://james.ashford.phd/2024/12/11/mastering-the-bluesky-firehose-with-python-a-simple-tutorial/", "published_at": "2024-12-11T16:40:49+00:00" }, { "id": "01a0878a-2e36-7202-b73b-70992950cfe2", "title": "Experimenting with Thermal Printing: My Setup, Mishaps, and Tips", "url": "https://james.ashford.phd/2024/10/30/a-few-weeks-of-owning-a-thermal-printer-2/", "published_at": "2024-10-30T16:37:58+00:00" }, { "id": "01a0878a-2e36-7202-b73b-7099297e2c19", "title": "Raspberry Pi + Receipt Printer = Hours of Fun", "url": "https://james.ashford.phd/2024/10/17/raspberry-pi-receipt-printer-hour-of-fun/", "published_at": "2024-10-17T16:02:50+00:00" }, { "id": "01a0878a-2e36-7202-b73b-709929e4573f", "title": "About Me", "url": "https://james.ashford.phd/about/", "published_at": "2024-04-17T00:00:00+00:00" }, { "id": "01a0878a-2e36-7202-b73b-709929e650f6", "title": "Finding Peaks in a Dataset and Why It Is Not Straightforward", "url": "https://james.ashford.phd/2024/03/25/finding-peaks-in-a-dataset-and-why-it-is-not-straightforward/", "published_at": "2024-03-25T17:03:04+00:00" }, { "id": "01a0878a-2e36-7202-b73b-709929e9f80e", "title": "Notes on Crawling Instances on the Known Fediverse", "url": "https://james.ashford.phd/2024/01/31/notes-on-crawling-instances-on-the-known-fediverse/", "published_at": "2024-01-31T00:00:00+00:00" }, { "id": "01a0878a-2e36-7202-b73b-70992a65af19", "title": "Visualising Paper Co-Author Collaboration Networks", "url": "https://james.ashford.phd/2023/11/01/visualising-paper-co-author-collaboration-networks/", "published_at": "2023-11-01T17:11:44+00:00" }, { "id": "01a0878a-2e36-7202-b73b-70992b20b40f", "title": "Analysing the 2023 FIFA Women's World Cup with Graph Theory", "url": "https://james.ashford.phd/2023/08/25/analysing-the-2023-fifa-womens-world-cup-with-graph-theory/", "published_at": "2023-08-25T19:45:19+00:00" }, { "id": "01a0878a-2e36-7202-b73b-70992b5d0b4f", "title": "How to Stream from the Mastodon API via HTTP in Python", "url": "https://james.ashford.phd/2023/08/17/how-to-stream-from-the-mastodon-api-via-http-in-python/", "published_at": "2023-08-17T15:10:10+00:00" }, { "id": "01a0878a-2e36-7202-b73b-70992c0c9ffd", "title": "Your Social Network Is Bigger Than You Think!", "url": "https://james.ashford.phd/2023/07/31/your-social-network-is-bigger-than-you-think/", "published_at": "2023-07-31T17:00:13+00:00" }, { "id": "01a0878a-2e36-7202-b73b-70992c348302", "title": "How to Build a Self-Organising Map (SOM) in Python Step-by-Step", "url": "https://james.ashford.phd/2023/06/23/how-to-build-a-self-organising-map-som-in-python-step-by-step/", "published_at": "2023-06-23T15:56:28+00:00" }, { "id": "01a0878a-2e36-7202-b73b-70992cb144a2", "title": "How Self-Organising Maps Work: Explained with Graphics", "url": "https://james.ashford.phd/2023/06/02/how-self-organising-maps-work-explained-with-graphics/", "published_at": "2023-06-02T11:20:34+00:00" }, { "id": "01a0878a-2e36-7202-b73b-70992d3f65de", "title": "Analysing Posts About the #Coronation on Mastodon", "url": "https://james.ashford.phd/2023/05/12/analysing-posts-about-the-%23coronation-on-mastodon/", "published_at": "2023-05-12T16:13:36+00:00" }, { "id": "01a0878a-2e36-7202-b73b-70992d4abc1a", "title": "How to Build Tag Clouds From Mastodon Hashtags", "url": "https://james.ashford.phd/2023/04/21/how-to-build-tag-clouds-from-mastodon-hashtags/", "published_at": "2023-04-21T16:54:42+00:00" }, { "id": "01a0878a-2e36-7202-b73b-70992e27a612", "title": "The Relationship Between Coding and My Mental Health", "url": "https://james.ashford.phd/2023/04/14/the-relationship-between-coding-and-my-mental-health/", "published_at": "2023-04-14T22:10:15+00:00" }, { "id": "01a0878a-2e36-7202-b73b-70992f17eb9d", "title": "Linux Software I Use for Data Science Via the Terminal", "url": "https://james.ashford.phd/2023/03/06/linux-software-i-use-for-data-science-via-the-terminal/", "published_at": "2023-03-06T17:32:11+00:00" }, { "id": "01a0878a-2e36-7202-b73b-70992f3b5454", "title": "Top 5 Software I Use For Data Science Projects Everyday", "url": "https://james.ashford.phd/2023/03/03/top-5-software-i-use-for-data-science-projects-everyday/", "published_at": "2023-03-03T14:52:59+00:00" }, { "id": "01a0878a-2e36-7202-b73b-70992fc54663", "title": "How to Create Simple Dynamic Graphs in Gephi", "url": "https://james.ashford.phd/2023/02/24/how-to-create-simple-dynamic-graphs-in-gephi/", "published_at": "2023-02-24T16:49:23+00:00" }, { "id": "01a0878a-2e36-7202-b73b-709930b0c748", "title": "Finding New Followers on Mastodon Using Python and Network Science", "url": "https://james.ashford.phd/2023/02/22/finding-new-followers-on-mastodon-using-python-and-network-science/", "published_at": "2023-02-22T18:20:48+00:00" }, { "id": "01a0878a-2e36-7202-b73b-7099315116a0", "title": "How to Import a Network From a Spreadsheet Using Gephi", "url": "https://james.ashford.phd/2023/02/20/how-to-import-a-network-from-a-spreadsheet-using-gephi/", "published_at": "2023-02-20T19:18:36+00:00" }, { "id": "01a0878a-2e36-7202-b73b-7099320c6f72", "title": "Analysing #ClimateChange and Related Hashtags on Mastodon", "url": "https://james.ashford.phd/2023/02/17/analysing-%23climatechange-and-related-hashtags-on-mastodon/", "published_at": "2023-02-17T18:49:35+00:00" }, { "id": "01a0878a-2e36-7202-b73b-709932efd746", "title": "Modelling Discussion Threads From Mastodon Timelines Using Python and Networkx", "url": "https://james.ashford.phd/2023/02/16/modelling-discussion-threads-from-mastodon-timelines-using-python-and-networkx/", "published_at": "2023-02-16T17:26:45+00:00" }, { "id": "01a0878a-2e36-7202-b73b-70993301f63b", "title": "Building User-Hashtag Co-occurrence Network from Timelines on Mastodon", "url": "https://james.ashford.phd/2023/02/14/building-user-hashtag-co-occurrence-network-from-timelines-on-mastodon/", "published_at": "2023-02-14T16:35:57+00:00" }, { "id": "01a0878a-2e36-7202-b73b-709933600f4b", "title": "How to Scrape Mastodon Timelines Using Python and Pandas", "url": "https://james.ashford.phd/2023/02/13/how-to-scrape-mastodon-timelines-using-python-and-pandas/", "published_at": "2023-02-13T16:28:17+00:00" }, { "id": "01a0878a-2e36-7202-b73b-709933ef7e0a", "title": "Interacting With REST APIs in Python With 5 Lines of Code", "url": "https://james.ashford.phd/2023/02/08/interacting-with-rest-apis-in-python-with-5-lines-of-code/", "published_at": "2023-02-08T16:42:42+00:00" }, { "id": "01a0878a-2e36-7202-b73b-709934808d19", "title": "Loading Data into Pandas: 5 Tips and Tricks You May or May Not Know", "url": "https://james.ashford.phd/2022/08/02/loading-data-into-pandas-5-tips-and-tricks-you-may-or-may-not-know/", "published_at": "2022-08-02T01:00:00+00:00" }, { "id": "01a0878a-2e36-7202-b73b-709934be1113", "title": "Will They Reply? Analysing the Reply Networks of 32 Programming Language Subreddits", "url": "https://james.ashford.phd/2022/01/28/will-they-reply-analysing-the-reply-networks-of-32-programming-language-subreddits/", "published_at": "2022-01-28T17:50:45+00:00" }, { "id": "01a0878a-2e36-7202-b73b-709935558991", "title": "Creating Reply Networks from Reddit Comment Threads", "url": "https://james.ashford.phd/2022/01/21/creating-reply-networks-from-reddit-comment-threads/", "published_at": "2022-01-21T00:00:00+00:00" }, { "id": "01a0878a-2e36-7202-b73b-70993615390a", "title": "How to Collect Data From Reddit - Introducing PRAW", "url": "https://james.ashford.phd/2022/01/19/how-to-collect-data-from-reddit-introducing-praw/", "published_at": "2022-01-19T00:00:00+00:00" }, { "id": "01a0878a-2e36-7202-b73b-7099366b5baa", "title": "Fun with Forwarding and SSH Tunnelling", "url": "https://james.ashford.phd/2020/04/04/fun-with-forwarding-and-ssh-tunnelling/", "published_at": "2020-04-04T13:28:00+00:00" }, { "id": "01a0878a-2e36-7202-b73b-70993744279a", "title": "| James’ R&D Blog", "url": "https://james.ashford.phd/publications/", "published_at": null } ] posts
Claim your blog
Back to james.ashford.phd
Blog · corpus.blog/blogs/james.ashford.phd/posts
james.ashford.phd
james.ashford.phd
2026
You Don’t Need Nextcloud: A Simple WebDAV File Server with rclone
original ↗
9 Apr 2026
You’re Not Distro Hopping, You’re Probably Just Desktop Environment Hopping
original ↗
28 Jan 2026
2025
Changes to my ThinkPad Setup: October 2025
original ↗
14 Nov 2025
My Latest ThinkPad Setup: New Laptop and Distro
original ↗
12 May 2025
More Than Just a Title: Rethinking the Value of a PhD
original ↗
7 May 2025
For the Love of JavaScript! — Notes from a Python/Go Dev Going Back to the Browser
original ↗
22 Apr 2025
Fun with Bluesky and Websockets
original ↗
17 Apr 2025
Honest Review of ThinkPad X240
original ↗
11 Mar 2025
Solving Word Ladders With Graph Theory
original ↗
17 Feb 2025
Projects
original ↗
22 Jan 2025
Announcing My First Open Source Project: Graphkit
original ↗
8 Jan 2025
2024
Mastering the Bluesky Firehose with Python: A Simple Tutorial
original ↗
11 Dec 2024
Experimenting with Thermal Printing: My Setup, Mishaps, and Tips
original ↗
30 Oct 2024
Raspberry Pi + Receipt Printer = Hours of Fun
original ↗
17 Oct 2024
About Me
original ↗
17 Apr 2024
Finding Peaks in a Dataset and Why It Is Not Straightforward
original ↗
25 Mar 2024
Notes on Crawling Instances on the Known Fediverse
original ↗
31 Jan 2024
2023
Visualising Paper Co-Author Collaboration Networks
original ↗
1 Nov 2023
Analysing the 2023 FIFA Women's World Cup with Graph Theory
original ↗
25 Aug 2023
How to Stream from the Mastodon API via HTTP in Python
original ↗
17 Aug 2023
Your Social Network Is Bigger Than You Think!
original ↗
31 Jul 2023
How to Build a Self-Organising Map (SOM) in Python Step-by-Step
original ↗
23 Jun 2023
How Self-Organising Maps Work: Explained with Graphics
original ↗
2 Jun 2023
Analysing Posts About the #Coronation on Mastodon
original ↗
12 May 2023
How to Build Tag Clouds From Mastodon Hashtags
original ↗
21 Apr 2023
The Relationship Between Coding and My Mental Health
original ↗
14 Apr 2023
Linux Software I Use for Data Science Via the Terminal
original ↗
6 Mar 2023
Top 5 Software I Use For Data Science Projects Everyday
original ↗
3 Mar 2023
How to Create Simple Dynamic Graphs in Gephi
original ↗
24 Feb 2023
Finding New Followers on Mastodon Using Python and Network Science
original ↗
22 Feb 2023
How to Import a Network From a Spreadsheet Using Gephi
original ↗
20 Feb 2023
Analysing #ClimateChange and Related Hashtags on Mastodon
original ↗
17 Feb 2023
Modelling Discussion Threads From Mastodon Timelines Using Python and Networkx
original ↗
16 Feb 2023
Building User-Hashtag Co-occurrence Network from Timelines on Mastodon
original ↗
14 Feb 2023
How to Scrape Mastodon Timelines Using Python and Pandas
original ↗
13 Feb 2023
Interacting With REST APIs in Python With 5 Lines of Code
original ↗
8 Feb 2023
2022
Loading Data into Pandas: 5 Tips and Tricks You May or May Not Know
original ↗
2 Aug 2022
Will They Reply? Analysing the Reply Networks of 32 Programming Language Subreddits
original ↗
28 Jan 2022
Creating Reply Networks from Reddit Comment Threads
original ↗
21 Jan 2022
How to Collect Data From Reddit - Introducing PRAW
original ↗
19 Jan 2022
2020
Fun with Forwarding and SSH Tunnelling
original ↗
4 Apr 2020
Undated
| James’ R&D Blog
original ↗
—