As an extension of the idea of technological adulthood that I was thinking about yesterday, I’d like to go a step further and talk about internet self-sufficiency. I’d say that it is my goal to become more self sufficient on the web, after thinking about it a bit more.
It’s easy to rely on other services to do your work for you. When I first started coding I didn’t want to write code that had already been written. That’s why I used external libraries to do things instead of writing the code myself. I’ve recently discovered that it is interesting to try and write some of this code yourself. My big revelation came when I was doing a few coding challenges on Exercism. There was a challenge for which I could have used Numpy to solve. I was very tempted but I knew it would be cheating. A solution could be done in vanilla Python; it just took a bit of time to plan it out.
For identity verification, I presently rely on Keybase. For git repository hosting, I rely on GitHub. This doesn’t have to be the case. I can be more self-sufficient on the internet and run some of these services myself. I’m using these two examples because they are the first things that I’m interested in moving to my own infrastructure. I expect that Keybase will be easy to replicate for my own needs. All I need is a document on my site which lists all of my profiles and my PGP key. I don’t need anything else that Keybase offers.
That’s the thing. When you use other services, you’ve got to work with what they give you. GitHub has grown to become so much more sophisticated than I need. I don’t use most of its features. I get notifications about updating dependencies for projects and I ignore them. I don’t need all of that. GitHub is where I share my code with the world; the actual development is done on my own computer. That’s not to say that I would abandon GitHub entirely. I don’t think that’s a good move. I like having a presence there. I do think that there’s work I can do to build my own Git infrastructure.
I suppose this is in a way a call to arms. A request for me to think more about whether I need what I use on the internet. It may be more difficult to set up my own Git server than rely on GitHub but I expect that it will be fun. I’ve been looking for an excuse to do some work on Linux for a while and this looks like the perfect opportunity. I should set up my own digital infrastructure.
I’ve never thought about this in detail because it does require a lot of management work. I’ll have to be my own pseudo system administrator. That’s fine because it is part of being a webmaster, a label to which I have ascribed. I find it interesting that I coded my site myself and yet today it is hosted on Vercel. Vercel is really powerful and I like their platform. Their domain features are great. Much better than GoDaddy. At the same time, I wonder about the long-term usability of the platform. Will I have to pay in the future? What happens if the platform gets more sophisticated?
The solution is for me to host my site myself, on my own server. I used to host websites on my own servers and I really enjoyed the work. It was fun to set up LetsEncrypt and get a web server going. There were inevitable problems with running Flask servers using NGINX but I overcame them. That was part of the fun. I felt really responsible for my work on the internet. I owned a server.
The next step – and one that I would love to take, but will not for reasons I’ll state in a minute – would be for me to do something like host a website on a Raspberry Pi in my home. I’m not going to do that because I am concerned about the heat capacity of Raspberry Pis that are on for a long time. I could overcome it with a good heat sync and adequate monitoring but I don’t want to take any chances. I’m fine hosting my work on cloud infrastructure. It may not technically be my own but servers are essentially a utility today.
I’d love to build my own server at some point. I would not know where to begin but it would be an interesting experiment in self-sufficiency. Could I do it? Probably. Owning my own server would mean that I wouldn’t have to rely on anyone else. I’d have to power it and stuff which puts me off. I’ll just stick with DigitalOcean right now, a platform with which I have had no problems in my entire history of using it.
I’m looking to see what services I can bring in house. It’s technically possible to host your own email server. I like ProtonMail and their security so I’m not going to host my own email server but I could do it. I am going to try and see if I can set up my own FTP server at some point. It’s something that I only just started thinking about but it would make a great alternative to “cloud” backups. My problem with the cloud is that you have to give away some of your data to use it. That’s not right. I’ll just build my own cloud so that I know my data is my own (within the obvious limitations of using servers that are owned by another company, but DigitalOcean has earned my trust).
I suppose this is all part of my new view of the web. I see the web as a place to share information, to collaborate. It doesn’t need to be complex. The simpler, the better. It’s why I am thinking about going to a plain-text website for the future. I only designed this website a few months ago and I seem to always be making changes to my personal websites but I now know that I can do better. A plain-text site sufficies. That’s part of self-sufficiency on the internet: building only what you need. I really don’t need a React powered site. I can do just fine with a plain text site. As a bonus, I’ll be able to refine my HTML skills in the process. I’m probably going to add in some CSS, but not much.
I’ll probably come up with more ways that I can become more self-sufficient on the internet. One other thought I have is that I’ve just purchased a backup computer. I came across a website yesterday that I really liked and there was an article on basic computer repairs you should be able to do. I don’t use WIndows so the article wasn’t fully applicable to me – unless you can install drivers on Mac? I don’t think so? – but it did mention that you should have your own back-up computer. What would happen if my five-and-a-half year old mac were to suddenly stop working? What would I do? I’ve decided to buy a Raspberry Pi as a back-up which I am going to configure tomorrow (if it is delivered on time).
I’m really into this idea of taking back control of how I use tech. Self-hosted infrastructure gives me butterflies. I’m still pretty new to all of this but my first step is going to be revamping this website. I’m sorry that I haven’t been posting a lot lately. I have still been writing, but I have been keeping what I write to myself. Part of it is because I can’t be bothered to upload the massive backlog of posts onto this site. I could write a script, but whatever.