My tech disclaimer
A year ago, I published this on Thought Shrapnel which quoted Elena Rossini:
I just think that people who write about technology should have a disclaimer about the tech stack they use - in order to see if they’re “walking the talk.” And if people who speak truth to power feel they need to be on VC-backed, centralized, for-profit social networks, sure no problem. But I believe that anyone speaking up against the broligarchy should be active on the Fediverse too - a galaxy of independent, free, open source networks that is not funded by billionaires or crypto bros.
Independent journalists regularly have an ethics page, or disclose in the pieces they write any financial interests they might have in the topics they cover.
I think it's probably a good idea for us all to reflect on how tools shape our lives:
Tools are made to accomplish our purposes, and in this sense they represent desires and intentions. We make our tools and our tools make us: by taking up particular tools we accede to desires and we manifest intentions.
– William J. Mitchell
For example, back when I was fully inside the Apple ecosystem, I used to watch the WWDC every year to find out about new technologies they were releasing, but also to figure out what I was going to be allowed to do with my devices.
Our choices matter. For example, I live in the UK and, thanks to an agreement between the government and Apple, I don't have the same encryption options as users in other countries, or that I have with my Linux laptop.
We live in a world of post hoc, ergo propter hoc – a Latin phrase which translates as “after it, therefore, because of it.” We justify our actions retrospectively because of decisions we have made beforehand.
Anyway, on with the show. Here's my tech stack at the moment, loosely based on the approach that Tom used last year. We're both working on TechFreedom, for those interested in thinking more carefully about their organisational use of technology.
My current tech stack
Devices
I've got a Mac Studio M1 Max on my dekstop, paired with a Studio Display. My laptop is a Lenovo X1 Titanium Yoga running Fedora Silverblue. I've got a Mac Mini M1 as well, which I mention below.
Phone-wise, I have GrapheneOS installed on a Pixel Fold. After a period of time not wearing it, due to medical advice (I'm recovering from Stage 3 Overtraining Syndrome), I'm back wearing my Garmin Venu 3.
My family is very much Google-centric, so we have their Nest doorbell, various speakers, and a display in the kitchen. The speaker I have in my office, mainly to hear the doorbell, has the microphone muted. I've been diversifying this over recent years, building an iPod Classic, buying an iPod Nano (3rd gen), and pairing them with a couple of iPod Hi-Fi speakers.
Email, docs, spreadsheets, etc.
I migrated from Google to Proton at the start of this year. I'm still getting used to it, especially as I'm so used to living within the Google ecosystem, both for WAO (closing this week!) and Dynamic Skillset. Proton is definitely less frictionless, but a little bit of friction can be a good thing, actually. It's caused me to install an instance of Etherpad for quick collaboration. And I love Etherpad.
Web browser
I'm using Zen browser, which is like Arc but based on Firefox. I very occasionally use Chrome to test things out, or if there's an annoying website which hasn't tested in multiple browser rendering engines.
I really like the vertical tabs, tab groups, and tab pinning. You can also show multiple tabs at the same time. It's great.
Blog
This blog is running on Ghost and is hosted on the Mac Mini in my office. As my blog post about the move from WordPress after 20 years noted, I used to host it on a Njalla VPS, but when my son bought a gaming PC and returned my Mac Mini M1, I thought it was the perfect opportunity to test out Cloudflare Tunnel:
Cloudflare Tunnel connects your infrastructure to Cloudflare through an outbound-only, post-quantum encrypted connection. Instead of exposing a public IP, you install a lightweight daemon calledcloudflaredon your server. It creates a persistent tunnel to Cloudflare's global network, so all traffic to your origins flows through Cloudflare — where CDN caching, WAF, Bot Management, and DDoS protection are applied automatically.
No open inbound ports. No public IPs. No attack surface.
I've looked for a non-US option for this, but nothing has that combination of features. It's pretty amazing. As my data is literally in front of me in my home office, I'm willing to make that trade-off for now.
Given I'm on reliable fibre broadband, I'm also hosting all of the tools I've been building this way, too.
Analytics
I use Tinybird on this blog, but have chosen not to use any dedicated analytics at the moment for my tools. I just get aggregate stats via Cloudflare.
AI
Having used Claude pretty heavily on their 'Max 5x' plan over the last few months, I've downgraded to 'Pro' and am using mainly Opencode with Openrouter. I had hoped to upgrade my Mac Studio M1 to a faster version, but the crazy deal I found was so good that the supplier cancelled my order due to “unprecedented demand.”
I know a lot of people are dead against AI, and I get it. There seem to be so many issues – from the environmental (which Laura and I have written about for Friends of the Earth), the insane amount of money being spent on the build-out, and the creeping surveillance economy.
And yet... if you've used frontier models, or even something close to them, it feels magical. It's changed the way I work. My aim is to find a way to do planning via the most able models I have access to, and then do the grunt work with local models.
I'm not going to lie, I am so tempted to buy a NVIDIA DGX Spark. However, while I know that I could rationalise every which way, £4k is still a lot of money to be spending on a computer.
Code repositories
GitHub used to be cool and awesome before Microsoft took over. I really do not like Microsoft, and never have done, so recently I moved most of my code repositories to Framagit.
Offered and managed by Framasoft, a French non-profit which exists “to contribute to a society of social justice where digital technology empowers people, against the backdrop of the imaginations of surveillance capitalism.”
Framagit is an installation of GitLab Community Edition. I'm familiar with GitLab from my MoodleNet days, and also it includes CI/CD which is useful for building binaries of the apps I'm building.
Meeting scheduling
At the time when I switched, Proton Calendar didn't have its new booking pages functionality. And even when it launched, it didn't have the ability to check other calendars.
So I built CalAnywhere, which I've been happily using for scheduling. It's based on iCal, so you can use it for any calendar. Right now, for the next few days until WAO closes, I'm straddling Google and Proton ecosystems. But when I'm just using Proton, I might just switch to their booking pages.
Time tracking
My needs are very simple, and I'm used to using Toggl Track. If I needed anything more than what they provide on the free plan, I'd probably build my own solution.
I have considered building this functionality into TaskDial, a tool that I built and which I use every day. However, I'm wary of feature bloat and, in general, I like the Unix philosophy:
The Unix philosophy emphasizes building simple, compact, clear, modular, and extensible code that can be easily maintained and repurposed by developers other than its creators. The Unix philosophy favors composability as opposed to monolithic design.
Accountancy software
My accountant uses Xero and bundles it as part of her monthly fee. So I use that. I've never used anything else, and it does the job for me, so ¯\_(ツ)_/¯
Social media & messaging
I'm active across Mastodon, Bluesky, and (sadly) LinkedIn. Some days I just want to blow it all up and either start again, or just... not. You might find my account on Instagram, but I literally just registered it to stop people registering it and impersonating me.
I don't use WhatsApp, and communicate with friends and family via Signal. Our co-op used the free version of Slack but we're shutting that down when we close. I'll remain on a few other Slack channels such as Agencies for Good and Freelancers Get Sh*t Done.
Conclusion
Being intentional about your tech stack isn't easy. Most people's working lives are often governed by other people making tech decisions for them, and their social lives depend on using tools that other people do.
Thankfully, I'm both in control of the tools I use for my work, and somewhat anti-social. So I'm in the (un?)enviable position that I can experiment with whatever I like and nobody cares 🙃