Keeping My Equipment Powered

4 minute read

From solar power, to having a backup power source, to preferring low-power devices; these are my strategies for keeping the electrons agitated.

Solar Power

My aim is to live completely off solar power. I’m not quite there yet. With my current system it works out roughly like this:

  • During the sunniest 6 months of the year I can basically do what I want
  • During the darker months, depending on how much and what kind of work I have (and therefore how much power my computing devices need), I must supplement my power by plugging into mains electricity

If you’re used to having normal mains electricity, it can be hard to understand how much of a difference small changes to electrical usage can make to my day. People are naturally used to thinking in terms of cost: “that only costs a few pounds a year to run, it’s basically nothing”.

For me it’s not about cost — at least not directly — it’s about “can I watch a film this evening on the large tablet instead of the medium-sized one?” or “can I get through to December instead of November without hooking up to the grid?”. The difference between using a 10" or 15" tablet (a difference in electricity usage which might add up to pennies a month from the grid) is noticeable for me. The step up to my (low power!) desktop is significant.

As a rough guide, I average about 1 unit (kWh) of electricity a day (if you’re in bricks and mortar that’s about 25p’s worth at time of writing). If you don’t know what that means, look at your electricity bill and see how many units you use a month or quarter. According to Ofgem at time of writing, a low-usage average 1-2 bedroom flat will use about 1,800kWh annually, so about 5kWh/day which is around 5x my usage.

I realise a lot of people would hate living like this, but I enjoy it. I find it fun and interesting. What needs to get done, gets done. I work full-time hours (on my own projects if I don’t have a contract). I bake bread, cook most of my food from scratch from basic ingredients. I paint, I solder, I do bad carpentry. I watch films, listen to music. It’s all fine.

Flank it

I’m pragmatic and prioritise work over my lifestyle experiments. If it’s the dead of winter and I need to work on something that requires me to use my desktop, I’ll get plugged in to mains. But outside that, I’m always looking to extend the proportion of the year where I can support myself with solar, with the end goal of course being 100% of the year.

To do this I squeeze the problem from two sides:

  • Increase the amount of solar power I can grab (eg by upgrading equipment)
  • Decrease my energy usage, by making sure I’m always using the lowest-power device that I have which can adequately do the job

Also, as a long-term bearing I steer more towards work which suits lower power, eg vanilla JS over long NPM builds, Vim over VSCode and so on.

Applying Progressive Enhancement to Choosing a Device

There’s an idea called ‘mobile first’ or ‘progressive enhancement’ in web development, where we aim first to make a website work properly on mobile devices, then work up through larger devices (tablets, desktops), tweaking visuals and possibly adding features as the devices get larger and more powerful.

I don’t personally like removing features for mobile devices — the fact that I’m using a mobile device should not be taken as a signal that I want to be excluded from accessing functionality of your site.

In terms of visual/interface design though, things do need to work differently depending on whether you’re at a small or large device, whether you have a touchscreen, a physical keyboard, are using a screen-reader due to problems with vision or some other reason…

I apply something similar to this method of progressive enhancement when choosing which computing device to use for work. My preference is to use an Android tablet (where you can get a surprising amount done nowadays), stepping up to a Linux PC when more power is needed or tools aren’t available on Android, then adding virtual machines if eg I need to use Windows.

So I start at the top of this list and work my way down as the jobs get bigger.

  1. Android
  2. Linux PC
  3. Windows/MacOS VMs
  4. Online build tools