Ad-free Tears

Not a typo.

The addition of advertising to ChatGPT, announced this week, feels like a watershed moment. It’s not like it will change very much immediately - they’ve made all the right noises about how it will only add little panels alongside the conversation - but its a pretty slippery slow, isn’t it?

Having watched as Google changed from clean and minimal results, perhaps with a parallel column of ads, into the full blown mess that it is with everything being paid results or SEO slop, it’s easy to see where the ChatGPT-with-ads trajectory might end up.

More than anything, it seems desperate. Altman previously called ads a “last-resort”. Are we supposed to read this as reality beginning to bite? What’s happened to the countless billions of frothing AI money? Did it ever exist?

For now, they do offer ad-free tiers. I wouldn’t bank on them sticking around forever though. The undeniable truth of advertising is that, however much you hate it, it makes money. OpenAI, meanwhile, does not…

Colima as a drop-in replacement for Docker Desktop

I’ve been running Docker for years now. Back when everything I ran was Linux-first this all seemed very lightweight, but then four or so years ago I swapped my dev workflow onto Macs. (Servers remain Linux though. Why would that change?). In most respects, the blazing fast M-series macbooks run rings around any previous laptop I owned (and I never have wifi problems any more!), but there was no escaping that running Docker felt clunky.

Some of this is architectural. Rather than just being a long-running service, as I was used to on Linux, the Docker Daemon on macos has to live inside a VM. This means that whatever packaging of the software you choose, it has to include a hypervisor to run a VM, a disk image and so on. There’s no escaping this, and it applies equally to any implementation. You can even roll-your-own: spin up a Linux VM, install Docker, and then expose the Docker socket to the host mac and you’ve effectively done the same thing.

OK. That’s not going away. But even so, Docker Desktop still feels clunky. A large part of this is the UI - why do I need a UI for something I interact with entirely on the command line? I don’t look at Docker, I run docker build, docker run and so on. It has a (relatively) friendly command line syntax, it has nice declarative compose files. I simply don’t need a little window to tell me what’s going on.

And the battery. It eats battery. The M-series macbooks are otherwise very good with battery and just keep on chugging along forever.

I’ve been aware of various replacements out there but have always been put off a bit by various difficulties (which might be misunderstandings on my part!). Podman always seemed promising but I cam across plenty of people complaining it wasn’t exactly a drop-in replacement for Docker and, at some point in time, it didn’t play very friendly with Docker compose files.

Orbstack was similarly very highly praised in a lot of places, but at some point they became paid software. To be fair to them, their free tier is very generous but its the non-commercial bit that stuck for me. I want to be able to do my job using as much of the same stack as I do personal projects. It just makes life so much easier if you minimise the number of different softwares to learn. If I wanted to use Orbstack, by my reading, I’d need to either convince my job to pay for it or run it just for myself and keep Docker for work.

Today I tried Colima and it just worked. It really was as simple as:

  • Quit Docker Desktop
  • brew install colima
  • colima start
  • docker compose up and off we go…

I’ll be keeping any eye on resource usage over the next few days but so far I’m impressed.

https://github.com/abiosoft/colima

Should we all start hosting our own email?

Well, Betteridge’s law says the answer is no, but let’s put that aside a second.

I spent years working in a company with on-prem Exchange servers. I never had to be very personally involved in them but I got the message loud and clear: they weren’t a lot of fun to maintain. Internet facing. Regular security patches. Mountains of data. 100% uptime pretty much required. Ugh.

At the same time I was getting up to speed with Linux, playing around with a Raspberry Pi v1 only shortly after they came out. It was all brand new to me and I was reading around a lot. And whilst my general feeling towards programming and sysadmin-ing in those early years was that with free software and some learning you could do pretty much anything, I kept reading the same negative message that warned about what you shouldn’t do. “Don’t host your own email.” Just don’t do it. Do anything else you like, but don’t fly close to the sun, Icarus. Don’t. Host. Email.

A subsequent job did little to change that impression. We hosted the company email on Exim on our own hardware. It wasn’t lovely. My lasting memory is that the email server was the one piece of our kit that couldn’t cope with our network failover process. Cue lots of starting and restarting processes. Prodding /var/spool queues in the hope they’d send. Sending inbound test emails to see if they’d actually be delivered.

So, given all these battle scars… why would I even ask the question?

Well, the work that’s gone into the Stalwart labs mail server is seriously impressive (GitHub). I’ve been a Fastmail user for years now and their work developing the JMAP standard has always seemed really interesting but … I’ve never really seen much else that uses it. The Stalwart server is JMAP everything (email, files, calendar) and looks really promising.

I don’t know if hosting my own email is something I really want to do, but I’m certainly going to have a go at setting it up and seeing how much work it is.