Control is effort

Control is effort

2026-02-08 —

Here's a story that perfectly captures "control is effort".

I was searching for a robot vacuum that would work in "local-only" mode without having to connect to a cloud of any kind. That way I would have full control over the device and wouldn't be relying on the Internet for my floor to get cleaned.

It didn't take long before I came across valetudo.cloud. Their subtitle is Free your vacuum from the cloud which sounds like exactly what I'm looking for. They boast compatibility with a wide range of popular bots and even a non-cloud HomeAssistant integration.

So I picked out the vacuum I wanted from their support page and looked through the installation instructions. I quickly realized what I would have to go through in order to flash the firmware. First you have to build a PCB (don't worry; they've got the schematics available), "root" the vacuum, and then flash the custom firmware. And if any of that doesn't work, $600 just went up in smoke.

I could surely figure all of that stuff out given enough time, but the truth is I don't want to spend my time figuring that stuff out. I just want the product to do the thing I bought it for without any features I don't want.

To generalize the concept: it takes effort to be in control of something. You can't get around it. If you pay a company to host an application, you only partially control it. If the company decides to EoL that product, for example, then you are this other acronym: SoL.

What's worth the effort to control?

So how to decide what's worth the effort to control for yourself and what should be offloaded to a company?

For some people, hosting their own email isn't worth the effort. Although I would argue it's a lot easier nowadays than it used to be.

If email hosting is hard, then forget about any kind of website. The cloud has pure self-hosting beat on so many fronts there.

Since it's pretty much infeasible to self-host everything with your own AS number and everything, there must be some way to decide what to self-host and what's worth giving up some control over.

There are two criteria that I think about:

  • How important is it?
  • How much vendor lock-in is there?

If it's not important, then you can share control with anyone you like. If they try to take it from you, then you don't care. My spam Gmail account goes in this category. The only thing I use it for is account signups that I don't care about. If something happens to my Gmail account, then I don't bat an eye and create another one.

But, if the thing is of paramount importance, then you ought to have a significant percentage of control over it. One thing I'd place in this category is password managers. It's probably the juiciest treasure trove of data you have. If you lose control of it, or someone untrustworthy gains control of it, then you're likely quadruple screwed.

Vendor lock-in

Vendor lock-in occurs when you're sharing control of a digital asset and something makes it harder for you to get that control back.

For example, imagine if cloning repos from GitHub was forbidden. That would be high vendor lock-in because it would be extremely difficult to migrate your repos somewhere else in such a world. In reality, of course, moving your entire git history is easy.

If you decide to share control over things that are important, prefer services that have low vendor lock-in. Don't use "advanced" features that increase lock-in. To continue with the GitHub example, don't depend heavily on GitHub actions because doing so increases the effort that would be needed to switch to something else.

Competance

Today, successful self-hosting requires a level of technical competance. If you don't have good backup hygiene, then you're likely worse off by self-hosting, for example.

By saying today, I'm of course implying that there could be a future where self-hosting isn't hard for the average person at all. There will always be effort involved, but we can reduce it to managable levels by creating quality and accessible open source software.

Conclusion

So there you go. If it's important, self-host it. If you can't do that, choose something with minimal vendor lock-in.