41554 blogs · [ { "id": "01a0875b-e86b-72ba-bdc7-8f254fb55654", "title": "Agent memory as a file format", "url": "https://calpaterson.com/memoryfields.html", "published_at": "2026-08-31T00:00:00+00:00" }, { "id": "01a0875b-e86b-72ba-bdc7-8f25501e3c65", "title": "Dependency cooldowns turn you into a free-rider", "url": "https://calpaterson.com/deps.html", "published_at": "2026-04-14T00:00:00+00:00" }, { "id": "01a0875b-e86b-72ba-bdc7-8f25506fd962", "title": "\"Disregard that!\" attacks", "url": "https://calpaterson.com/disregard.html", "published_at": "2026-03-25T00:00:00+00:00" }, { "id": "01a0875b-e86b-72ba-bdc7-8f25507b6ab7", "title": "Building LLMs is probably not going be a brilliant business", "url": "https://calpaterson.com/porter.html", "published_at": "2024-11-26T00:00:00+00:00" }, { "id": "01a0875b-e86b-72ba-bdc7-8f25513b95ed", "title": "Is Tesla really more valuable than Toyota?", "url": "https://calpaterson.com/singleton.html", "published_at": "2024-03-17T00:00:00+00:00" }, { "id": "01a0875b-e86b-72ba-bdc7-8f25520d420d", "title": "S3 is files, but not a filesystem", "url": "https://calpaterson.com/s3.html", "published_at": "2024-03-05T00:00:00+00:00" }, { "id": "01a0875b-e86b-72ba-bdc7-8f2552ea2879", "title": "Take the tools out of 'Data', but don't take the data out of the tools", "url": "https://csvbase.com/blog/1", "published_at": "2023-01-11T00:00:00+00:00" }, { "id": "01a0875b-e86b-72ba-bdc7-8f2553b1811e", "title": "There aren't that many uses for blockchains", "url": "https://calpaterson.com/blockchain.html", "published_at": "2022-08-11T00:00:00+00:00" }, { "id": "01a0875b-e86b-72ba-bdc7-8f255423a25e", "title": "An oral history of Bank Python", "url": "https://calpaterson.com/bank-python.html", "published_at": "2021-11-04T00:00:00+00:00" }, { "id": "01a0875b-e86b-72ba-bdc7-8f255517fe5d", "title": "It looks like a product but is secretly a subscription", "url": "https://calpaterson.com/printers.html", "published_at": "2021-08-02T00:00:00+00:00" }, { "id": "01a0875b-e86b-72ba-bdc7-8f2556018149", "title": "No general method to detect fraud", "url": "https://calpaterson.com/fraud.html", "published_at": "2021-06-09T00:00:00+00:00" }, { "id": "01a0875b-e86b-72ba-bdc7-8f2556f93d7b", "title": "We were promised Strong AI, but instead we got metadata analysis", "url": "https://calpaterson.com/metadata.html", "published_at": "2021-04-26T00:00:00+00:00" }, { "id": "01a0875b-e86b-72ba-bdc7-8f25579a21e5", "title": "Staying out of TTL hell", "url": "https://calpaterson.com/ttl-hell.html", "published_at": "2021-03-09T00:00:00+00:00" }, { "id": "01a0875b-e86b-72ba-bdc7-8f255857cc6f", "title": "Where's the fastest place to put my server? How much does it matter?", "url": "https://calpaterson.com/latency.html", "published_at": "2021-02-03T00:00:00+00:00" }, { "id": "01a0875b-e86b-72ba-bdc7-8f25586ba2e1", "title": "Firefox usage is down 85% despite Mozilla's top exec pay going up 400%", "url": "https://calpaterson.com/mozilla.html", "published_at": "2020-09-22T00:00:00+00:00" }, { "id": "01a0875b-e86b-72ba-bdc7-8f2558763a68", "title": "Threat modelling case study: bicycles", "url": "https://calpaterson.com/bicycle-threat-model.html", "published_at": "2020-08-27T00:00:00+00:00" }, { "id": "01a0875b-e86b-72ba-bdc7-8f25593aaab3", "title": "Async Python is not faster", "url": "https://calpaterson.com/async-python-is-not-faster.html", "published_at": "2020-06-11T00:00:00+00:00" }, { "id": "01a0875b-e86b-72ba-bdc7-8f2559585eb5", "title": "The argument against clearing the database between tests", "url": "https://calpaterson.com/against-database-teardown.html", "published_at": "2020-04-23T00:00:00+00:00" }, { "id": "01a0875b-e86b-72ba-bdc7-8f255964c444", "title": "The troublesome \"Active Record\" pattern", "url": "https://calpaterson.com/activerecord.html", "published_at": "2020-03-13T00:00:00+00:00" }, { "id": "01a0875b-e86b-72ba-bdc7-8f2559ce6f4a", "title": "Applying mypy to real world projects", "url": "https://calpaterson.com/mypy-hints.html", "published_at": "2020-01-31T00:00:00+00:00" }, { "id": "01a0875b-e86b-72ba-bdc7-8f2559f5958f", "title": "The Amazon premium", "url": "https://calpaterson.com/amazon-premium.html", "published_at": "2019-12-12T00:00:00+00:00" }, { "id": "01a0875b-e86b-72ba-bdc7-8f255af22139", "title": "How a SQL database works", "url": "https://calpaterson.com/how-a-sql-database-works.html", "published_at": "2019-11-13T00:00:00+00:00" }, { "id": "01a0875b-e86b-72ba-bdc7-8f255b929e6b", "title": "Non-relational bear-traps", "url": "https://calpaterson.com/non-relational-beartraps.html", "published_at": "2019-11-06T00:00:00+00:00" }, { "id": "01a0875b-e86b-72ba-bdc7-8f255c8956d0", "title": "The Lycurgus cup", "url": "https://calpaterson.com/lycurgus-cup.html", "published_at": "2019-11-03T00:00:00+00:00" }, { "id": "01a0875b-e86b-72ba-bdc7-8f255d5d1b73", "title": "Not wasting time with version control", "url": "https://calpaterson.com/wasting-time.html", "published_at": "2015-04-11T00:00:00+00:00" }, { "id": "01a0875b-e86b-72ba-bdc7-8f255db24567", "title": "How to configure pip for fast installs of C code libraries", "url": "https://calpaterson.com/pip-and-wheel-sanity.html", "published_at": "2015-02-11T00:00:00+00:00" }, { "id": "01a0875b-e86b-72ba-bdc7-8f255dc53a82", "title": "My preferred agile heuristic", "url": "https://calpaterson.com/agile.html", "published_at": "2014-07-05T00:00:00+00:00" }, { "id": "01a0875b-e86b-72ba-bdc7-8f255e460971", "title": "Bookmarking", "url": "https://calpaterson.com/bookmarking.html", "published_at": "2012-05-06T00:00:00+00:00" } ] posts Claim your blog
Back to Cal Paterson
Blog · corpus.blog/blogs/calpaterson.com/posts

Cal Paterson

calpaterson.com

2026

2024

2023

2022

2021

2020

2019

2015

2014

2012