Craig Anderson

@craiga
78 Followers
207 Following
195 Posts
Freelance digital product developer specialising in Python and Django. Beer and coffee nerd.
My sitehttps://craiga.id.au
Pronounshe/him
LocationGlasgow, Scotland
FromKulin nation, Australia
it's fascinating how good AI is at solving problems in domains i don't understand. it's almost as if it was somehow linked to my inability to verify the output.
I love stumbling across Y2K-ass websites like http://poets.solesides.com. Makes me nostalgic for table-based layouts, glad I don’t work with table-based layouts, and grateful for how far we’ve come.
POETS OF RHYTHM

Families are struggling, workers are exploited, and our climate is in crisis.

All this pomp and grandeur for an unelected billionaire won't help the people of Scotland.

It's time to #AbolishTheMonarchy

Hey, #Django devs who deploy (or used to deploy) stuff to #Heroku — are you looking at moving to some other #PaaS? If so, where to? Is there a standard, boring, dependable option that folks are gravitating toward?
My first impressions of #Render as a longtime #Heroku fanboy. https://craiga.id.au/2026/05/01/render-first-impressions
First impressions of Render

I’ve deployed quite a few apps to Heroku over the years and have loved it.

Craig Anderson

Second, just because it •seems• like everyone’s talking about AI all the time, that doesn’t actually mean that AI has taken over your industry / public consciousness / the world. If you feel “blah” about it, you’re not alone.

Don’t let the loudest voices distort your perception of the world.

If nobody’s talking about what you wish everyone were talking about, don’t assume nobody wants to hear it. Be brave. Speak up.

If you think you’re the only one…you’re almost never the only one.

12/

Updating Django migrations in place

Today I learned about the --update option in Django’s makemigrations command.

Craig Anderson
PyCascades 2026

A couple of weeks ago, I promised to write a new blog post every week, and I’ve already missed the second week 😢

Craig Anderson
Microsoft’s social event for the Python conference ended up being takeaway and a bucket of room-temperature soft drinks. Feels weird from a company harvesting our intellectual property.
Admitting my hubris (and unconstrained TextFields and CharFields)

This post went in a different direction than I thought it would. I was going to write that given a CharField is always limited by its maximum length, so why not always use the TextField, which has unlimited length?

Craig Anderson