57,803 blogs · [ { "id": "01a0878a-3cc7-7313-baa9-705ece950459", "title": "Orchestrated Builds", "url": "https://jameschambers.co.uk/orchestrated-builds/", "published_at": "2026-07-08T00:00:00+00:00" }, { "id": "01a0878a-3cc7-7313-baa9-705ecf0baf27", "title": "Coding with LLMs: 101", "url": "https://jameschambers.co.uk/coding-with-llms-101/", "published_at": "2025-06-17T13:00:00+00:00" }, { "id": "01a0878a-3cc7-7313-baa9-705ecf59a727", "title": "Build Notes #14", "url": "https://jameschambers.co.uk/build-notes-14/", "published_at": "2021-05-26T07:00:00+00:00" }, { "id": "01a0878a-3cc7-7313-baa9-705ecf73eaee", "title": "Build Notes #13", "url": "https://jameschambers.co.uk/build-notes-13/", "published_at": "2021-05-13T14:26:00+00:00" }, { "id": "01a0878a-3cc7-7313-baa9-705ecffc48b5", "title": "Masterpiece Machine", "url": "https://jameschambers.co.uk/masterpiece-machine/", "published_at": "2021-05-07T10:32:00+00:00" }, { "id": "01a0878a-3cc7-7313-baa9-705ed0cd2ca0", "title": "Build Notes #12", "url": "https://jameschambers.co.uk/build-notes-12/", "published_at": "2021-04-29T05:24:00+00:00" }, { "id": "01a0878a-3cc7-7313-baa9-705ed10dde08", "title": "Content Marketing for Bootstrappers", "url": "https://jameschambers.co.uk/saas-content-marketing/", "published_at": "2021-04-26T12:33:00+00:00" }, { "id": "01a0878a-3cc8-7028-a33b-9aa01d59533a", "title": "Build Notes #11", "url": "https://jameschambers.co.uk/build-notes-11/", "published_at": "2021-04-16T07:24:00+00:00" }, { "id": "01a0878a-3cc8-7028-a33b-9aa01db24c97", "title": "Annual Pricing as a Discount", "url": "https://jameschambers.co.uk/annual-pricing-as-a-discount/", "published_at": "2021-04-08T11:55:00+00:00" }, { "id": "01a0878a-3cc8-7028-a33b-9aa01dfe759c", "title": "Build Notes #10", "url": "https://jameschambers.co.uk/build-notes-10/", "published_at": "2021-03-25T09:27:00+00:00" }, { "id": "01a0878a-3cc8-7028-a33b-9aa01e4bb70d", "title": "Build Notes #9", "url": "https://jameschambers.co.uk/build-notes-9/", "published_at": "2021-03-18T06:47:00+00:00" }, { "id": "01a0878a-3cc8-7028-a33b-9aa01f3a45c9", "title": "Build Notes #8", "url": "https://jameschambers.co.uk/build-notes-8/", "published_at": "2021-03-04T06:33:00+00:00" }, { "id": "01a0878a-3cc8-7028-a33b-9aa020019d74", "title": "Build Notes #7", "url": "https://jameschambers.co.uk/build-notes-7/", "published_at": "2021-02-18T00:00:00+00:00" }, { "id": "01a0878a-3cc8-7028-a33b-9aa020d5fe83", "title": "Build Notes #6", "url": "https://jameschambers.co.uk/build-notes-6/", "published_at": "2021-01-28T00:00:00+00:00" }, { "id": "01a0878a-3cc8-7028-a33b-9aa0217287ac", "title": "Build Notes #5", "url": "https://jameschambers.co.uk/build-notes-5/", "published_at": "2021-01-14T00:00:00+00:00" }, { "id": "01a0878a-3cc8-7028-a33b-9aa021aef5ec", "title": "How working remotely lowered my resting heart rate 22%", "url": "https://jameschambers.co.uk/remote-work-heart-rate/", "published_at": "2021-01-11T19:18:00+00:00" }, { "id": "01a0878a-3cc8-7028-a33b-9aa022ade29f", "title": "Hot reloading Next.js with Docker in development", "url": "https://jameschambers.co.uk/nextjs-hot-reload-docker-development/", "published_at": "2020-12-31T00:00:00+00:00" }, { "id": "01a0878a-3cc8-7028-a33b-9aa0235f104a", "title": "Build Notes #4", "url": "https://jameschambers.co.uk/build-notes-4/", "published_at": "2020-12-17T00:00:00+00:00" }, { "id": "01a0878a-3cc8-7028-a33b-9aa023908eb3", "title": "Build Notes #3", "url": "https://jameschambers.co.uk/build-notes-3/", "published_at": "2020-12-03T00:00:00+00:00" }, { "id": "01a0878a-3cc8-7028-a33b-9aa023d2360d", "title": "How to fix slow Typescript syntax highlighting in Vim", "url": "https://jameschambers.co.uk/vim-typescript-slow/", "published_at": "2020-12-01T00:00:00+00:00" }, { "id": "01a0878a-3cc8-7028-a33b-9aa0243ee695", "title": "Build Notes #2", "url": "https://jameschambers.co.uk/build-notes-2/", "published_at": "2020-11-19T00:00:00+00:00" }, { "id": "01a0878a-3cc8-7028-a33b-9aa024edd42a", "title": "How to find Rails development performance bottlenecks", "url": "https://jameschambers.co.uk/rails-dev-performance/", "published_at": "2020-11-18T00:00:00+00:00" }, { "id": "01a0878a-3cc8-7028-a33b-9aa025e1aeb2", "title": "Build Notes", "url": "https://jameschambers.co.uk/build-notes-1/", "published_at": "2020-11-04T00:00:00+00:00" }, { "id": "01a0878a-3cc8-7028-a33b-9aa026125ee9", "title": "How to test webhooks locally with Rails 6 & ngrok", "url": "https://jameschambers.co.uk/rails-6-webhook-ngrok-testing/", "published_at": "2020-11-01T00:00:00+00:00" }, { "id": "01a0878a-3cc8-7028-a33b-9aa026948d45", "title": "Build a Rails 6 JWT JSON:API with Devise", "url": "https://jameschambers.co.uk/rails-api/", "published_at": "2020-10-27T00:00:00+00:00" }, { "id": "01a0878a-3cc8-7028-a33b-9aa0270e9d19", "title": "How to build a pegged-mortise bar stool", "url": "https://jameschambers.co.uk/pegged-mortise-stool/", "published_at": "2020-07-02T00:00:00+00:00" }, { "id": "01a0878a-3cc8-7028-a33b-9aa027b1ecc5", "title": "Habit building with coffee beans", "url": "https://jameschambers.co.uk/paper-clips-habit-coffee-beans/", "published_at": "2019-04-05T00:00:00+00:00" }, { "id": "01a0878a-3cc8-7028-a33b-9aa0286c5fa0", "title": "Why we deleted 70% of our portfolio", "url": "https://jameschambers.co.uk/why-we-deleted-two-thirds-of-our-portfolio/", "published_at": "2018-08-27T00:00:00+00:00" }, { "id": "01a0878a-3cc8-7028-a33b-9aa028d260b4", "title": "Growing a studio, the hard way", "url": "https://jameschambers.co.uk/growing-a-studio/", "published_at": "2018-01-12T00:00:00+00:00" }, { "id": "01a0878a-3cc8-7028-a33b-9aa0296a85bc", "title": "Batch resizing images from the command line on a Mac", "url": "https://jameschambers.co.uk/batch-resize-images-mac-command-line/", "published_at": "2016-12-27T19:18:00+00:00" }, { "id": "01a0878a-3cc8-7028-a33b-9aa029aae58c", "title": "Using Git in a team: a cheatsheet", "url": "https://jameschambers.co.uk/git-team-workflow-cheatsheet/", "published_at": "2016-12-20T00:00:00+00:00" }, { "id": "01a0878a-3cc8-7028-a33b-9aa029e0eb3b", "title": "Why it's worth learning Vim", "url": "https://jameschambers.co.uk/learning-vim/", "published_at": "2016-03-11T00:00:00+00:00" }, { "id": "01a0878a-3cc8-7028-a33b-9aa02ac5c6a4", "title": "6 lessons from launching FeedHop", "url": "https://jameschambers.co.uk/feedhop-lessons/", "published_at": "2015-07-27T00:00:00+00:00" }, { "id": "01a0878a-3cc8-7028-a33b-9aa02af0ee87", "title": "Mistakes we made starting a company", "url": "https://jameschambers.co.uk/starting-company-mistakes/", "published_at": "2014-10-27T00:00:00+00:00" }, { "id": "01a0878a-3cc8-7028-a33b-9aa02b830036", "title": "Artificial Defence Mechanisms", "url": "https://jameschambers.co.uk/artificial-defense-mechanisms/", "published_at": "2010-11-02T00:00:00+00:00" } ] posts Claim your blog
Back to jameschambers.co.uk
Blog · corpus.blog/blogs/jameschambers.co.uk/posts

jameschambers.co.uk

jameschambers.co.uk

2026

2025

2021

2020

2019

2018

2016

2015

2014

2010