41554 blogs · [ { "id": "01a0bb92-0512-71b2-96f8-5788ff97b90b", "title": "Turning your hobbies into passive income", "url": "https://mckerlie.com/posts/turning-your-hobbies-into-passive-income/", "published_at": "2026-09-14T00:00:00+00:00" }, { "id": "01a087a3-3073-7249-9ac3-3b179cc7be6b", "title": "Building CalledUp: Using AI to Ship a Real Product Without Losing the Plot", "url": "https://mckerlie.com/posts/building-calledup-using-ai-to-ship-a-real-product-without-losing-the-plot/", "published_at": "2026-06-04T00:00:00+00:00" }, { "id": "01a087a3-3073-7249-9ac3-3b179d0f8903", "title": "Using AI to write blog posts, then and now", "url": "https://mckerlie.com/posts/using-ai-to-write-blog-posts-then-and-now/", "published_at": "2024-08-20T12:00:00+00:00" }, { "id": "01a087a3-3073-7249-9ac3-3b179e0eba44", "title": "Building Resilient APIs: Lessons Learned from a Real-World Migration (Machine Generated)", "url": "https://mckerlie.com/posts/building-resilient-apis-lessons-learned-from-a-real-world-migration-machine-generated/", "published_at": "2024-08-20T11:59:00+00:00" }, { "id": "01a087a3-3073-7249-9ac3-3b179e0f6f0d", "title": "2023 review of the books I read", "url": "https://mckerlie.com/posts/2023-review-of-the-books-i-read/", "published_at": "2024-01-02T00:00:00+00:00" }, { "id": "01a087a3-3073-7249-9ac3-3b179e181033", "title": "A Look Back at my Blogging Journey", "url": "https://mckerlie.com/posts/a-look-back-at-my-blogging-journey/", "published_at": "2023-11-13T10:00:00+00:00" }, { "id": "01a087a3-3073-7249-9ac3-3b179e801bc3", "title": "Improving the sharing experience in Astro", "url": "https://mckerlie.com/posts/improving-the-sharing-experience-in-astro/", "published_at": "2023-11-02T10:00:00+00:00" }, { "id": "01a087a3-3073-7249-9ac3-3b179efa3605", "title": "The best advice for shipping software", "url": "https://mckerlie.com/posts/shipping-software-advice/", "published_at": "2023-10-29T00:00:00+00:00" }, { "id": "01a087a3-3073-7249-9ac3-3b179f8e7dc9", "title": "Migrating your blog from Hugo to Astro", "url": "https://mckerlie.com/posts/migrating-your-blog-from-hugo-to-astro/", "published_at": "2023-10-05T00:00:00+00:00" }, { "id": "01a087a3-3073-7249-9ac3-3b179fcc238a", "title": "Building a Company Engineering Blog", "url": "https://mckerlie.com/posts/building-a-company-engineering-blog/", "published_at": "2023-04-17T00:00:00+00:00" }, { "id": "01a087a3-3073-7249-9ac3-3b179fddef0e", "title": "So, you want to start a new hobby?", "url": "https://mckerlie.com/posts/starting-a-new-hobby-lightning-talk/", "published_at": "2023-01-17T00:00:00+00:00" }, { "id": "01a087a3-3073-7249-9ac3-3b17a02801e4", "title": "2022 review of the books I read", "url": "https://mckerlie.com/posts/2022-review-of-the-books-i-read/", "published_at": "2023-01-05T00:00:00+00:00" }, { "id": "01a087a3-3073-7249-9ac3-3b17a0a52154", "title": "On Writing More", "url": "https://mckerlie.com/posts/on-writing-more/", "published_at": "2022-11-20T00:00:00+00:00" }, { "id": "01a087a3-3073-7249-9ac3-3b17a19844b7", "title": "\"As a manager, what is your ideal time spent on coding?\"", "url": "https://mckerlie.com/posts/as-a-manager-how-much-should-you-code/", "published_at": "2022-08-22T00:00:00+00:00" }, { "id": "01a087a3-3073-7249-9ac3-3b17a290e6e6", "title": "So, you want to become an Engineering Manager?", "url": "https://mckerlie.com/posts/you-want-to-be-an-engineering-manager/", "published_at": "2022-08-06T00:00:00+00:00" }, { "id": "01a087a3-3073-7249-9ac3-3b17a2f8a2e0", "title": "Welcome to mckerlie.com", "url": "https://mckerlie.com/posts/welcome/", "published_at": "2022-08-02T04:02:47+00:00" }, { "id": "01a087a3-3073-7249-9ac3-3b17a3ba8d26", "title": "2021 review of the books I read", "url": "https://mckerlie.com/posts/2021-review-of-the-books-i-read/", "published_at": "2022-03-21T00:00:00+00:00" }, { "id": "01a087a3-3073-7249-9ac3-3b17a3e1285e", "title": "2020 review of the books I read", "url": "https://mckerlie.com/posts/2020-review-of-the-books-i-read/", "published_at": "2021-01-04T00:00:00+00:00" }, { "id": "01a087a3-3073-7249-9ac3-3b17a4248fcf", "title": "Meetings can be Poisonous", "url": "https://mckerlie.com/posts/meetings-can-be-poisonous/", "published_at": "2020-12-22T00:00:00+00:00" }, { "id": "01a087a3-3073-7249-9ac3-3b17a4ed3a39", "title": "Running an Engineering Book Club", "url": "https://mckerlie.com/posts/running-an-engineering-book-club/", "published_at": "2020-12-16T00:00:00+00:00" }, { "id": "01a087a3-3073-7249-9ac3-3b17a4fa548c", "title": "Using Python to generate over 10,000 unique 8-bit lightsabers", "url": "https://mckerlie.com/posts/using-python-to-generate-10000-unique-lightsabers/", "published_at": "2020-05-04T00:00:00+00:00" }, { "id": "01a087a3-3073-7249-9ac3-3b17a5e83543", "title": "Adding Cron to a Digital Ocean Droplet", "url": "https://mckerlie.com/posts/adding-cron-to-a-digital-ocean-droplet/", "published_at": "2020-04-28T00:00:00+00:00" }, { "id": "01a087a3-3073-7249-9ac3-3b17a61ee73c", "title": "2019 review of the books I read", "url": "https://mckerlie.com/posts/2019-review-of-the-books-i-read/", "published_at": "2020-01-01T00:00:00+00:00" }, { "id": "01a087a3-3073-7249-9ac3-3b17a70d105d", "title": "A deep dive into swear patterns at G Stock", "url": "https://mckerlie.com/posts/a-deep-dive-into-swear-patterns-at-gstock/", "published_at": "2019-09-13T00:00:00+00:00" }, { "id": "01a087a3-3073-7249-9ac3-3b17a8035dd9", "title": "2018 review of the books I read", "url": "https://mckerlie.com/posts/2018-review-of-the-books-i-read/", "published_at": "2019-01-01T00:00:00+00:00" }, { "id": "01a087a3-3073-7249-9ac3-3b17a810edb2", "title": "Dealing with Web Adventures of Web Applications (Machine Generated)", "url": "https://mckerlie.com/posts/dealing-with-web-adventures-of-web-applications/", "published_at": "2018-08-21T00:00:00+00:00" }, { "id": "01a087a3-3073-7249-9ac3-3b17a8c83665", "title": "Technical React Apps A Project in A REST Data Restorement and Project Documents with Search (Machine Generated)", "url": "https://mckerlie.com/posts/technical-react-apps-a-project-in-a-rest-data/", "published_at": "2018-08-21T00:00:00+00:00" }, { "id": "01a087a3-3073-7249-9ac3-3b17a8eb3634", "title": "We Taught a Neural Network to Write a Blog", "url": "https://mckerlie.com/posts/we-taught-a-neural-network-to-write-a-blog/", "published_at": "2018-08-21T00:00:00+00:00" }, { "id": "01a087a3-3073-7249-9ac3-3b17a8ecf7f7", "title": "Simple Deploys using Fabric", "url": "https://mckerlie.com/posts/simple-deploys-using-fabric/", "published_at": "2018-01-22T00:00:00+00:00" }, { "id": "01a087a3-3073-7249-9ac3-3b17a93bf826", "title": "Dealing with Technical Debt", "url": "https://mckerlie.com/posts/dealing-with-technical-debt/", "published_at": "2017-09-19T00:00:00+00:00" }, { "id": "01a087a3-3073-7249-9ac3-3b17aa1bde5b", "title": "7 Musings on Minion Management", "url": "https://mckerlie.com/posts/seven-musings-on-minion-management/", "published_at": "2017-09-08T00:00:00+00:00" }, { "id": "01a087a3-3073-7249-9ac3-3b17aa9f643a", "title": "The Lead Developer Conference — Day 2", "url": "https://mckerlie.com/posts/2017-lead-dev-conf-day2/", "published_at": "2017-09-06T00:00:00+00:00" }, { "id": "01a087a3-3073-7249-9ac3-3b17aaf3e0ec", "title": "The Lead Developer Conference — Day 1 (Part 2)", "url": "https://mckerlie.com/posts/2017-lead-dev-conf-day1-pt2/", "published_at": "2017-08-09T00:00:00+00:00" }, { "id": "01a087a3-3073-7249-9ac3-3b17aaf4c252", "title": "The Lead Developer Conference — Day 1 (Part 1)", "url": "https://mckerlie.com/posts/2017-lead-dev-conf-day1-pt1/", "published_at": "2017-06-20T00:00:00+00:00" }, { "id": "01a087a3-3073-7249-9ac3-3b17abd70da5", "title": "Four Things I Wish I Knew When I Started My Career", "url": "https://mckerlie.com/posts/tips-for-early-career/", "published_at": "2017-05-22T00:00:00+00:00" }, { "id": "01a087a3-3073-7249-9ac3-3b17ac1d08fc", "title": "Speeding up Postgres Restores Part 2", "url": "https://mckerlie.com/posts/speeding-up-postgres-restores-part-2/", "published_at": "2017-04-12T00:00:00+00:00" }, { "id": "01a087a3-3073-7249-9ac3-3b17ac1f98e2", "title": "9 Promises to my Son", "url": "https://mckerlie.com/posts/9-promises-to-my-son/", "published_at": "2017-03-17T00:00:00+00:00" }, { "id": "01a087a3-3073-7249-9ac3-3b17ac8a95eb", "title": "The Five Traits I Look For When Hiring", "url": "https://mckerlie.com/posts/five-traits-when-hiring/", "published_at": "2017-01-26T00:00:00+00:00" }, { "id": "01a087a3-3073-7249-9ac3-3b17aca097ba", "title": "From Developer to Manager", "url": "https://mckerlie.com/posts/from-developer-to-manager/", "published_at": "2016-10-12T04:02:47+00:00" }, { "id": "01a087a3-3073-7249-9ac3-3b17acc4a805", "title": "Speeding up Postgres Restores", "url": "https://mckerlie.com/posts/speeding-up-postgres-restores/", "published_at": "2016-03-04T00:00:00+00:00" }, { "id": "01a087a3-3073-7249-9ac3-3b17accde3b7", "title": "Clip", "url": "https://mckerlie.com/posts/clip/", "published_at": "2013-01-19T00:00:00+00:00" }, { "id": "01a087a3-3073-7249-9ac3-3b17ad3ea06e", "title": "Why I Became a Developer", "url": "https://mckerlie.com/posts/why-i-became-a-developer/", "published_at": "2013-01-19T00:00:00+00:00" }, { "id": "01a087a3-3073-7249-9ac3-3b17ad76cd80", "title": "Working at G Adventures", "url": "https://mckerlie.com/posts/working-at-gadventures/", "published_at": "2012-12-17T00:00:00+00:00" }, { "id": "01a087a3-3073-7249-9ac3-3b17adfb1530", "title": "Life Goals", "url": "https://mckerlie.com/posts/life-goals/", "published_at": "2012-12-03T00:00:00+00:00" }, { "id": "01a087a3-3073-7249-9ac3-3b17ae37ffd9", "title": "Using Configurable User Models in Django 1.5", "url": "https://mckerlie.com/posts/using-configurable-user-models-in-django15/", "published_at": "2012-11-29T00:00:00+00:00" }, { "id": "01a087a3-3073-7249-9ac3-3b17af192741", "title": "Most Important Changes in Django 1.5", "url": "https://mckerlie.com/posts/most-important-changes-in-django-15/", "published_at": "2012-11-28T00:00:00+00:00" }, { "id": "01a087a3-3073-7249-9ac3-3b17af55d98d", "title": "Meetings are Poisonous", "url": "https://mckerlie.com/posts/meetings-are-poisonous/", "published_at": "2012-11-22T00:00:00+00:00" }, { "id": "01a087a3-3073-7249-9ac3-3b17afd245a9", "title": "Creating Your First Blog", "url": "https://mckerlie.com/posts/creating-your-first-blog/", "published_at": "2012-08-13T00:00:00+00:00" }, { "id": "01a087a3-3073-7249-9ac3-3b17b094a3da", "title": "Hire for Culture, Not Skill", "url": "https://mckerlie.com/posts/hire-for-culture-not-skill/", "published_at": "2012-04-02T00:00:00+00:00" }, { "id": "01a087a3-3073-7249-9ac3-3b17b149da63", "title": "Properly Handling Failures", "url": "https://mckerlie.com/posts/properly-handling-failures/", "published_at": "2012-03-23T00:00:00+00:00" }, { "id": "01a087a3-3073-7249-9ac3-3b17b19625cb", "title": "Most Important Changes in Django 1.4", "url": "https://mckerlie.com/posts/most-important-changes-in-django14/", "published_at": "2012-03-15T00:00:00+00:00" }, { "id": "01a087a3-3073-7249-9ac3-3b17b1d42199", "title": "Write Code as if People Will Read It", "url": "https://mckerlie.com/posts/write-code-as-if-people-will-read-it/", "published_at": "2011-09-12T00:00:00+00:00" }, { "id": "01a087a3-3073-7249-9ac3-3b17b2104678", "title": "5 Reasons Why Microsoft Should Give Windows 7 Away", "url": "https://mckerlie.com/posts/five-reasons-microsoft-should-give-windows-7-away/", "published_at": "2009-02-03T00:00:00+00:00" }, { "id": "01a087a3-3073-7249-9ac3-3b17b25e2339", "title": "How to Deal with Programming Procrastination", "url": "https://mckerlie.com/posts/how-to-deal-with-programming-procrastinating/", "published_at": "2008-09-17T00:00:00+00:00" }, { "id": "01a087a3-3073-7249-9ac3-3b17b2e67bb9", "title": "Creating Software: Test, Test and More Test", "url": "https://mckerlie.com/posts/creating-software-test-test-and-more-test/", "published_at": "2008-08-28T00:00:00+00:00" }, { "id": "01a087a3-3073-7249-9ac3-3b17b30ea7bf", "title": "Headphones: A Developers Best Friend", "url": "https://mckerlie.com/posts/headphones-a-developers-best-friend/", "published_at": "2008-08-22T00:00:00+00:00" }, { "id": "01a087a3-3073-7249-9ac3-3b17b3aa2bab", "title": "10 Tips for Being a Great Manager", "url": "https://mckerlie.com/posts/10-tips-for-being-a-great-manager/", "published_at": "2008-08-20T00:00:00+00:00" }, { "id": "01a087a3-3073-7249-9ac3-3b17b4806e2a", "title": "How To Style Your Pages For Print", "url": "https://mckerlie.com/posts/style-your-pages-for-printing/", "published_at": "2008-08-18T00:00:00+00:00" }, { "id": "01a087a3-3073-7249-9ac3-3b17b4ede607", "title": "Wordpress Hack: Adding a ‘Print This’ Link to Your Posts", "url": "https://mckerlie.com/posts/wordpress-hack-print-this-link/", "published_at": "2008-08-12T00:00:00+00:00" }, { "id": "01a087a3-3073-7249-9ac3-3b17b5aeac12", "title": "How To Motivate the Unmotivated", "url": "https://mckerlie.com/posts/how-to-motivate-the-unmotivated/", "published_at": "2008-08-04T00:00:00+00:00" }, { "id": "01a087a3-3073-7249-9ac3-3b17b6606ec7", "title": "Why Every Blog Should Have a Blog Plan", "url": "https://mckerlie.com/posts/why-every-blog-should-have-a-blog-plan/", "published_at": "2008-08-04T00:00:00+00:00" }, { "id": "01a087a3-3073-7249-9ac3-3b17b662cd61", "title": "The Ultimate Development Workstation", "url": "https://mckerlie.com/posts/the-ultimate-development-workstation/", "published_at": "2008-08-01T00:00:00+00:00" }, { "id": "01a087a3-3073-7249-9ac3-3b17b6c5eeb4", "title": "Creating Software: Start Coding", "url": "https://mckerlie.com/posts/creating-software-start-coding/", "published_at": "2008-07-29T00:00:00+00:00" }, { "id": "01a087a3-3073-7249-9ac3-3b17b748efa4", "title": "A Healthy Developer is a Happy Developer", "url": "https://mckerlie.com/posts/a-healthy-developer-is-a-happy-developer/", "published_at": "2008-07-18T00:00:00+00:00" }, { "id": "01a087a3-3073-7249-9ac3-3b17b7d78e4e", "title": "10 Things To Do With Your Old Computer", "url": "https://mckerlie.com/posts/10-things-to-do-with-old-computers/", "published_at": "2008-07-16T00:00:00+00:00" }, { "id": "01a087a3-3073-7249-9ac3-3b17b86031fa", "title": "Creating Software: The Design Phase", "url": "https://mckerlie.com/posts/creating-software-the-design-phase/", "published_at": "2008-07-15T00:00:00+00:00" }, { "id": "01a087a3-3073-7249-9ac3-3b17b909d88d", "title": "Creating Software: Getting the Requirements", "url": "https://mckerlie.com/posts/creating-software-getting-the-requirements/", "published_at": "2008-07-09T00:00:00+00:00" }, { "id": "01a087a3-3073-7249-9ac3-3b17b9d87356", "title": "6 Tips for Programming in a Group", "url": "https://mckerlie.com/posts/6-tips-for-programming-in-a-group/", "published_at": "2008-06-30T00:00:00+00:00" }, { "id": "01a087a3-3073-7249-9ac3-3b17ba1d22bf", "title": "How to Become a Great Developer", "url": "https://mckerlie.com/posts/how-to-become-a-great-developer/", "published_at": "2008-06-25T00:00:00+00:00" }, { "id": "01a087a3-3073-7249-9ac3-3b17ba20b4a1", "title": "The Importance of Taking a Break", "url": "https://mckerlie.com/posts/the-importance-of-taking-a-break/", "published_at": "2008-06-23T00:00:00+00:00" }, { "id": "01a087a3-3073-7249-9ac3-3b17ba988cc2", "title": "Developing at School and at Work", "url": "https://mckerlie.com/posts/developing-at-school-and-at-work/", "published_at": "2008-06-20T00:00:00+00:00" }, { "id": "01a087a3-3073-7249-9ac3-3b17bae03c71", "title": "5 Ways to Make Sure your Project Fails", "url": "https://mckerlie.com/posts/5-ways-to-make-sure-your-project-fails/", "published_at": "2008-06-16T00:00:00+00:00" }, { "id": "01a087a3-3073-7249-9ac3-3b17bb671a19", "title": "Improving your Debugging Techniques", "url": "https://mckerlie.com/posts/improving-your-debugging-techniques/", "published_at": "2008-06-13T00:00:00+00:00" }, { "id": "01a087a3-3073-7249-9ac3-3b17bb9987c1", "title": "A Beginner's Guide to Functions", "url": "https://mckerlie.com/posts/a-beginners-guide-to-functions/", "published_at": "2008-06-06T00:00:00+00:00" }, { "id": "01a087a3-3073-7249-9ac3-3b17bc610845", "title": "How to Improve your Programming Skills", "url": "https://mckerlie.com/posts/how-to-improve-your-programming-skills/", "published_at": "2008-06-04T00:00:00+00:00" }, { "id": "01a087a3-3073-7249-9ac3-3b17bcaaf7a4", "title": "Arrays vs. Linked Lists", "url": "https://mckerlie.com/posts/arrays-vs-linked-lists/", "published_at": "2008-06-02T00:00:00+00:00" }, { "id": "01a087a3-3073-7249-9ac3-3b17bd50b180", "title": "Loops in C", "url": "https://mckerlie.com/posts/loops-in-c/", "published_at": "2008-06-02T00:00:00+00:00" }, { "id": "01a087a3-3073-7249-9ac3-3b17bdefa3ab", "title": "History of the C Programming Language", "url": "https://mckerlie.com/posts/history-of-the-c-programming-language/", "published_at": "2008-06-01T00:00:00+00:00" }, { "id": "01a087a3-3073-7249-9ac3-3b17be6265ce", "title": "The Mysteries of Pointers", "url": "https://mckerlie.com/posts/the-mysteries-of-pointers/", "published_at": "2008-05-30T00:00:00+00:00" }, { "id": "01a087a3-3073-7249-9ac3-3b17bf1024b2", "title": "The Art of Commenting Code", "url": "https://mckerlie.com/posts/the-art-of-commenting-code/", "published_at": "2008-05-26T00:00:00+00:00" }, { "id": "01a087a3-3073-7249-9ac3-3b17bf545f2c", "title": "The Art of Writing Maintainable Code", "url": "https://mckerlie.com/posts/the-art-of-writing-maintainable-code/", "published_at": "2008-05-26T00:00:00+00:00" }, { "id": "01a087a3-3073-7249-9ac3-3b17bfa315c5", "title": "Your First C Program", "url": "https://mckerlie.com/posts/your-first-c-program/", "published_at": "2008-05-23T00:00:00+00:00" } ] posts Claim your blog
Back to Adam McKerlie
Blog · corpus.blog/blogs/mckerlie.com/posts

Adam McKerlie

mckerlie.com

2026

2024

2023

2022

2021

2020

2019

2018

2017

2016

2013

19 Jan 2013

2012

2011

2009

2008