2024-12-26 17:15:00
Since playing around with Android and trying to get some self-hosted services running, I've been thinking about the costs of self-hosting. Ironically, I think the cost to my wallet is the least of them.
I've talked about what I think the definition of self-hosting is in the past, but it's been 5 years since I wrote that post, and although my opinion hasn't really changed on the definition, the way I think about self-hosting has.
I don't think self-hosting is a binary you either do it, or you don't. I think it's a scale and there are different levels of self-hosting. Some examples of the different levels would be:
I think all of the above can be classed as self-hosting in some form, but I think there are a number of things to consider when deciding how to self-host something.
At one time or another, I've self-hosted something in every one of the ways listed above. But each time I'm considering self-hosting something, there are a few costs I always think about before pulling the trigger. They are:
These 5 costs are what I consider every time I think about self-hosting something. And they ultimately determine both how and what I decide to self-host.
So let's look at some examples of the things I personally self-host, how I weighed up the 5 costs above, and why I ultimately ended up with the solution I did.
The monetary cost is very low. It's around £6/month for the server, £8/month for my newsletter service (Buttondown) and around £10/year for the domain. So around £15/month for something I get so much out of is easily affordable, so the cost goes way down the list of considerations.
Time and flexibility are interconnected here. I wanted a solution that was kinda managed for me, but allowed the flexibility to spin up other websites when I want. My VPS runs Plesk, so that manages all the server upgrades etc. for me, so there's very little of my time taken up managing shit. I can also spin up new sites as the click of a button. Very flexible.
I don't really care about privacy or security for this use case as everything on my site is public, and the credentials are unique. So I'm happy for the site to be hosted somewhere else (in my case with Ionos) and if the site gets compromised, it's all backed up, so I can (hopefully) fix the vulnerability and re-publish my site very easily.
On the other end of the scale from this public site, my documents and photos are very private, so privacy and security are top of the list here. I could have used iCloud, but although they're better than Google, there's still plenty of examples of people having their iCloud accounts popped. Nah, I want more control than that.
So I decided to self-host my docs and photos on my Synology at home. I have a client that syncs all my documents and photos to my Synology automatically (think self-hosted Dropbox), both from my MacBook and my iPhone. The only way to access my Synology is via a VPN, so it's not accessible to the Internet. And because it's self-hosted on hardware I own, there are few privacy concerns.
Everything is backed up both locally and remotely; with remote backups being encrypted before they're uploaded. All very secure.
However, this all comes at a cost to my wallet. Synology devices are very expensive (mine was around £1,000). But it's a cost I'm willing to take to ensure my most personal data is secure and private.
My RSS reader is very important to me - I love reading other people blogs. But as with this site, it's all public data, so privacy and security aren't a consideration here.
Flexibility is, as I read my RSS feeds in multiple locations. Luckily for me, Miniflux offers a fantastic published web app (PWA) so I can use it pretty much anywhere without the need for installing apps.
My RSS reader, although important to me, is one of those services that I have zero interest in maintaining. I could spin up a docker container on my Synology and host it there, but I don't want to spend that time managing it. Miniflux offer a hosted option for just $15/year, so for a small amount of money, I get to support the development of a product I really enjoy using, and I don't have to spent any time maintaining it.
This post ended up being much longer than I intended it to be, sorry about that. But I hope some of the example here show that there are different kinds of self-hosting for different use cases. Well, in my opinion at least. This is why I often struggle to provide an answer when people ask "what do you self-host?" because for me, it's not a simple answer.
I'm in the very fortunate position for be comfortable when it comes to money, but I'm very time poor. So the cost of self-hosting for me usually centres around my free time. For other people that may be different. Maybe privacy is your first consideration, or maybe money. Whatever it is, I think they're considerations worth making before jumping in.
Anyway, I've waffled on long enough here now, so if you have thoughts, please do let me know by using the email button below. After all, it's good to talk.
Thanks for reading this post via RSS. RSS is great, and you're great for using it. ❤️
2024-12-18 20:00:00
I recently had a great email exchange with Herman Martinus of BearBlog fame and wanted to talk about that a little bit more.
After reading Herman's post, Forced to Upgrade, I dropped him an email, as I was going through the whole iPhone upgrade vs Android conundrum myself.
Anyway, I hit the send button and went about my day. The next day I received a response from Herman and we ended up passing emails back and forth for a few days. We started by talking about mobile phones, but quickly pivoted to our shared love of motorbikes, and the fact that we each own a Royal Enfield.
This is just one example of many email conversations I have every week with people who read my blog, or when I've read a post on someone else's blog and emailed them. I think it shows the power of adding a simple "email me" button to the end of one's posts, and why I think that this is far better than a commenting system.
If Herman had a commenting system on his blog, I don't think I would have reached out - it feels too impersonal to me. Sure, it's better than nothing, but email is just...better.
So I implore you; if you have a blog, please, please add a way for your readers to email you - I'm sure you won't regret it.
After all, it's good to talk.
Thanks for reading this post via RSS. RSS is great, and you're great for using it. ❤️
2024-12-17 20:55:00
Yes, you read that right, folks. I've decided to flip myself back to team Apple and have ditched my new Pixel 8.
So after 2 weeks running the Pixel 8 as my primary phone, I've decided to return it and have gone back to my crusty old iPhone 13 Mini. But why on earth would I leave the beautifully open world of Android in favour of Apple's walled garden?
In all honesty, the stock Android experience on the Pixel was very nice, and there was no single "this is a deal-breaker" moment. Instead there were a number of smaller issues and the environment itself just didn't feel like home.
I can't possibly talk about all the little issues in detail, so I've listen some of the more prevalent reasons below, and I'll elaborate on some of those, after.
This is a dump of my raw notes while using Android.
So most of what I've listed above revolves around interconnecting with my Mac. I absolutely love my Mac and it isn't going anywhere, so whatever mobile I use needs to work easily with it. I'm not one of those people who uses all the Apple interconnectedness, but I'm happy if I'm able to do things like getting photos I take on my phone, on my Mac.
But my god this is so fucking hard to do. I'm not sure if this is an Apple issue or a Google one. I assume it's a Google one, as they offer other apps, just not Google Photos. But we all know Apple likes to lock their shit down to outsiders, so it's hard to say. 🤷♂️
Either way, the Mac isn't going anywhere, so that's a problem. I don't want to be emailing my photos to my laptop like some kind of heathen. And I certainly don't want to be standing up tools that bridge the gap, as it results in more shit for me to manage, and more complexity, which is the opposite of what I want.
OMG notifications are so painful on Android. On iOS, an app will ask you if you want to enable notifications, and if you say no, that's it. Done. On Android, many apps seem to ask over and over if you want to enable notifications.
It's often something like "to get the best out of this app, you need to enable notifications". But I hate notifications. The only ones I have enabled are for phones calls, everything else on my phone is silent and I check when I want to, not when my phone tells me to.
Repeat notifications also seemed to be the case for permission requests. Lots of apps kept asking me over and over to enable permissions. No, Life360, you don't need access to my fucking contacts!
On iOS this just isn't a thing. You set the permissions on first run and that's it, you're never asked again.
Aside from app notifications, I kept getting notifications form Google about its services, too. I'd dismiss the notification, because I didn't want the service, only for it to appear again a day or so later.
Say it with me folks - we 👏🏻 don't 👏🏻 want 👏🏻 ads 👏🏻 on 👏🏻 our 👏🏻 phones.
The fact is, iOS is more private than Google and as much as I tried, the ick that comes with using Google products just couldn't be ignored.
Every time I received a notification from an app, especially a Google app, asking for more permissions, or an system notification trying to sell me the latest Google service, my ick grew a little more.
Apple isn't perfect on the privacy front, either. But it's a damn sight better than Google.
I know I could have run a custom ROM, but I don't have the time for all the potential headache that brings.
So I had all this stuff rattling round my grey matter and I was teetering on the edge of switching back to my iPhone 13 Mini. My wife is usually the voice of reason in our relationship, so I asked her opinion.
The first thing she asked was what the motivations were for moving to the Pixel in the first place?
To which I answered 3 fold:
Being the incredibly intelligent woman she is, she replied with something like:
Ok, so you've tried something new and you didn't like it. We can afford for a new iPhone, so why not send the Pixel back and get one?
So that's what I did. I've returned the Pixel back to Google, and I moved back to my iPhone, which took all of 30 mins thanks to iCloud backups. I have to say, it immediately felt like home. It's just what I'm used to, I suppose.
The 13 Mini does now feel too small, having used the Pixel for a couple weeks. And the battery life is dog shit. So on advice of my wife, I have an iPhone 16 being delivered today. 🙃
This post is bashing Google and Android quite a bit, so I wanted to finish by commenting on some of the stuff that Android does really well - far better than iOS, in my opinion:
So it definitely wasn't all bad oner on Android. It just wasn't the right fit for me. If I ever move away from Mac on my laptop, I'd seriously consider a longer term move to Android, but my M1 Macbook Air is so bloody good, I can't ever see that happening.
Thanks for reading this post via RSS. RSS is great, and you're great for using it. ❤️
2024-12-14 23:05:00
I've tried Nextcloud a few times over the years, but every time I do, I end up coming away thinking it's shit. Here's why...
Before we get started here, I want to stress that this is just my opinion, if it works for you and you're happy with their offering, that's great. I still think it's shit though.
Ok, with that out of the way, let's get into it. After recently moving from iOS to Android, I was on the hunt for a new Notes app, as I used iOS notes before.
After trying a few different options that didn't quite work, I decided to throw a Nextcloud instance on my server and give their Notes app a try.
Big mistake.
After an hour of pissing around, and receiving multiple poorly worded error messages, I once again confirmed that Nextcloud is shit and decided to move on with my life.
I've since found a notes solution that works really well, so I'm not looking for recommendations here.
So after spinning up my shiny new Nextcloud instance, I went through the welcome wizard, installed some of their recommended apps, and started to click around. One of the apps it recommended was Nextcloud Office. This looked pretty cool from the screenshots, so I immediately went to load up a DOCX file to see what it was all about.
But when I attempted to open the DOCX file, instead of seeing a web based document editor, I was greeted with this screen:
There was no option that I could see to configure Nextcloud Office, so I took to the internet to see what was going on. After a quick search I found a thread that said it's because the Collabora app is required.
Nextcloud didn't tell me this, which is pretty shitty considering it's a requirement for Office to work. Anyway, off I went to install the Collabora package in Nextcloud:
At this point I decided this particular rabbit hole wasn't worth exploring further as such a generic error message is useless.
Not wanting to waste space on my server, I decided to disable the Office package, then remove it. Problem was, whenever I tried to remove any app, the Remove button just did nothing.
Ok, that was a waste of time, so I decided cut my losses and turn my attention to the Nextcloud Notes app instead.
I created a test note within the Nextcloud web app, and it seemed ok. The UI needed some work - it was pretty ugly - but I can live with that. Off I went to my Pixel 8 to install the Nextcloud Notes app and get my sync on.
I open up the app, hit the "Choose Account" button to, presumably, login to my instance. And I was greeted with yet another error message:
So in order to sync notes with Nextcloud, I need to install 2 apps? What the actual fuck?! I don't want to sync any files from Nextcloud to my phone, so I shouldn't need the Files app.
Anyway, I wanted to try the Notes app, so I yielded and installed the Files app too, only to find that Notes wouldn't sync properly.
It's like the Notes app got confused with the order of changes to my notes, which would result in duplicated blank notes, or existing notes missing information. This was the case with 3 test notes, so goodness knows what it would have been like had I migrated all my notes.
By this point I'd wasted around an hour and I figured if I'd hit this many problems in such a short span of time, there's absolutely no way that Nextcloud was going to be a usable tool in the long term.
I posted about this on Mastodon at the time, and (unsurprisingly) I got some hate in the comments, but I also had a number of "me too" kinda responses. So it's definitely not just me being a Muppet.
How does Nextcloud have so many users if it's do damned buggy (and shit)? Anyway, my instance has been deleted from my server and I don't think I'll be trying it again any time soon.
I think Nextcloud tries to do too much - there seems to be an app for everything in their ecosystem and the result is that they're shit at everything, instead of being really good at a few things.
Sorry Nextcloud, but it's you, not me. You're just too shit.
Thanks for reading this post via RSS. RSS is great, and you're great for using it. ❤️
2024-12-07 23:50:00
Here's a quick and simple way of adding an RSS feed to your Kirby based blog without using plugins.
I've been using Kirby for a little over a year now, and I'm still really enjoying it. However, along the way there are lots of things I've learned that I haven't really documented very well. So I thought I'd start writing them up as posts, mainly so that I can refer to them, but also (hopefully) to help some of you.
In this first post, I'm going to explain how you can add an RSS feed to your Kirby blog without the need for installing plugins.
The first thing you need to do is create a new file called rss.php
in your snippets folder. By default, that location should be:
[site root]/site/snippets/
You then need to paste the contents of this file into the rss.php
file you just created.
Once you've pasted it in, you need to make sure that the date()
field on lines 9 and 22 matches the name of the date field in your blog post blueprint.
For example, if you've used published
as the name for your date field, line 9 would look like this:
<lastBuildDate><?= $posts->first()->published()->toDate('r') ?></lastBuildDate>
What this snippet does, is loop through your posts and pull the title, published date and all the content (that's very important).
Now Kirby has the data it needs for the RSS feed, we need to tell it how to use it.
The next step is to create a route in your config file so that Kirby is expecting to see the RSS feed and knows what to do with it. To do this, open up your config.php
file and add the contents of this file to the routes
section.
Once you've done that, you need to edit a few lines within the route:
/feed
, but if you want to change the URL, change the /feed
part of this linelimit(20)
valueThat's literally it. By following these few simple steps you should have a valid RSS feed that's easy for you to configure. For example if, like me, you want to add a little message to the end of your RSS feed items, you can add something right before the closing </description>
tag.
So this:
<![CDATA[<?= $item->text()->kt() ?>]]>
</description>
Becomes this:
<![CDATA[<?= $item->text()->kt() ?>]]>
<![CDATA[
<hr>
<p>Thanks for reading this post via RSS. RSS is great, and you're great for using it. ❤️</p>
]]>
</description>
There are a number of plugins available to add RSS support to Kirby, but I tended to have problems with the way these plugins created the feed, and its validity. With it being a plugin, troubleshooting was difficult, so I decided to build my own.
This solution is simple so you shouldn't introduce any site breaking code, and it gives you the flexibility to customise the feed as needed.
I've create a GitHub repository to supplement these posts, so I will add to that as I continue to document this stuff.
In the meantime, if you have a Kirby blog and are having problems, I'm happy to help if I can, just drop me an email using the button below
Thanks for reading this post via RSS. RSS is great, and you're great for using it. ❤️
2024-12-05 01:20:00
Manu isn’t a fan of Substack, and he’s got two big reasons why: it takes control away from creators, and it pushes a “monetise everything” culture. He makes a solid case for owning your own domain and keeping blogging authentic and independent.
I agree with all that Manu says in his post. I won't rehash it here - go read it instead. I did want to pick up on one piece though, Manu ends his post with:
Anyway, if you care about the web, get off social media platforms and get yourself your own piece of digital real estate. And if you don’t know where or how to start, reach out. There are plenty of people out there—including myself—who are more than happy to help you.
I'd like to throw my hat into that ring, too. If you're thinking about starting a personal blog and want some help/advice, feel free to contact me.
Thanks for reading this post via RSS. RSS is great, and you're great for using it. ❤️