What a Year of Pis Has Taught Me
Still. Obsessed.
As I confessed previously, I’ve been obsessed with SBCs since the first one arrived at my door. Though you could say that the obsessions started well before that. When the Raspberry Pi was first released in 2012 my interest was immediately piqued. For someone who has always favored building PCs over buying retail desktop PCs, the concept of a computer that had everything it needed to run all in one device was so intriguing. AND it was tiny. AND it sipped power. What was this sorcery?? The only reason I didn’t jump on it was it had so little compute power that it seemed like it could only ever be a hobby device. I wasn’t really into electronics or programming so it seemed super niche. But it was always on my radar.
The Raspberry Pi 5 was released in Fall 2023 with a 4 GB and 8 GB model. It has a 2.4 GHz quad-core CPU. That’s even more powerful than the netbook PCs from back in the day. Like, this is a legit PC. The time to finally order one had arrived, and I’m so glad I did. It became an onboarding ramp to a ton of different technology that I may not have otherwise touched. IT has so much diversity but it’s easy to get trapped in a bubble (Apple vs. Windows vendor lock-in comes to mind) so branching out just feels refreshing. I also like to tinker and SBCs are the ultimate tinkering tool, but the Raspberry Pi 5 was just the beginning. I’m still obsessed - I have a million of these goddamned things. It seems like the more I learn, the more I want to learn. And with that, I’ll give a rundown of all the ways the Raspberry Pi has helped me as an IT professional and fed my curiosity.
Linux
This was a big one.
Raspberry Pi ships with Raspberry Pi OS, which is based off of Debian, from which toooons of downstream ‘distros’ are based. Using the RPI Imager makes customizing the OS simple so at first I didn’t have to do a lot of Linux-y things. The hostname was already set, it was joined to the wifi already, it already had my username and password, and I could SSH into it. Therefore, at first learning Linux was limited to ssh [email protected] and apt update && apt upgrade, as well as some of the Raspberry Pi-specific commands like raspi-config and rpi-eeprom-update. This was slightly more than the limited Linux I needed to use at work, which was basically a bunch of cding and cating. It wasn’t long before I branched out and started to learn how to do the things that I took for granted as a seasoned Windows user.
- How do I create an SMB share? How do I connect to an SMB share?
- How do I see my disks and available space?
- How do I see my IP? How do I set my IP?
- Where are my event logs?
- How do I see my devices?
- Wait, a USB drive doesn’t just mount to the file systems when you plug it in? (Okay, Raspberry Pi OS does this for you but only the desktop version)
Unbeknownst to me, while searching for these answers I was actually learning skills that carried over into all Debian-based OSs like Ubuntu, Redhat Linux, and Linux Mint. And speaking of the desktop OS, there are even multiple Linux desktop environments to try per distribution - even for the Raspberry Pi. This broke my Windows-poisoned mind for a while. There’s just so much choice.
Approximately 10 months after my first Pi, I installed Gnome Debian and yeeted Windows 11 from my laptop. I just dove in, man. A few months later, I did the same thing on my work laptop. Only my desktop PC still has Windows… but for how long? For a multitude of reasons over time I had grown sick of Microsoft and Windows but finally being able to move to something different was so liberating. Linux used to be scary but it’s actually easier to use than ever. The first time I ever touched Linux was in college. To shutdown, you used to have to issue a command like /etc/init.d -6 or some shit. It’s just not like that anymore - it’s much more consumable. Today I only run two desktop instances of Raspberry Pi and the rest all run headless (no desktop environment). They run like servers. They ARE servers.
Containers
Before using Linux on the reg, EASILY the biggest concern I had was managing applications. I just. did. not. understand how this apt app management business worked. When you search for an app by name, you get a million app packages returned. It all made me very nervous. Then I learned about Docker and containers. Containers are basically virtualized apps that run from images downloaded to your system, and the only thing you “install” is Docker. That addressed my application concerns. That’s it, that was my reason for learning how to use Docker. But as with the Linux tools, what I was actually learning is a technology used in IT infrastructure all over the world - far beyond running Plex in my little homelab. Lucky for me, everything I wanted to run at that time had a Docker image available. Today, almost everything I host runs in a container. In fact some applications are only available as, or the preferred installation method is, a container. Someday I will write a blog about my Docker shenanigans, I find it all so fascinating. I put up all my Docker app configurations on Github with instructions on how to deploy them, check them out if you’re curious.
Web Hosting
This was a whole ass rabbit hole. I knew I wanted to dabble with a website (I talk about getting started with web hosting in this post) but once I bought a domain, edited public DNS, and got a website ON THE INTERNET, I became hyperaware of all the possibilities. I started with just creating a couple more websites to solidify my process and overall understanding. Alongside this site, I also host fuckeverybodyfuckeverything.com and skycloudnet.org. These two sites serve no purpose (and the latter is down half the time), I’m happy just knowing they’re mine <3. But websites were just the beginning!
Using Cloudflare tunnels, you can forward web traffic to other services hosted in your lab. The first service I put online was my personal, private cloud. After that I went crazy buying domains and putting services online. I was even able to stream 4K Plex movies through a publicly available URL, though I’m pretty sure Plex and Cloudflare frown on that - it was just a proof of concept I swear! I host my own AI, n8n, monitoring, and Speedtest Tracker, and they’re available to manage online. It’s pretty handy to view server status or performance if I’m away from home, from my phone, without needing to connect to a private VPN. It’s fun to mess around with AI and show it off to my friends or colleagues. Just not my kids, they hate that shit which is fair.
Owning a domain means you can have a custom email address so I signed up for Proton mail, which I am using to slowly replace my Microsoft and Google accounts and email. And creating websites is teaching me things about public DNS, writing in Markdown, and using Jekyll. It’s like every project you start comes with bonus learning material!
Open Source
The Pi really brought me into the world of open source, which I wholly embrace. Open source is not about free software. On the contrary: since I adopted an open source-first policy I’ve actually started paying for stuff I used to get for free so clearly it’s not about the money. What’s most important to me is that there’s a choice. You can ‘choose’ Microsoft or Apple but that singular choice removes so many other choices from you right out of the gate because it puts you on a path, all from what you can do to what software you can run. The longer you stay on that path, the harder it is to get off of it and I think that’s how you end up with die-hard Apple/Microsoft users - I think most people just don’t know what else to do. But who can blame you? It’s not like Apple is going to tell you that things beside Apple products exist.
The Raspberry Pi Foundation, in addition to being responsible for a dope ass mini-computer, has a mission to ‘enable all young people to realise their full potential through computing’. I support this so hard. Putting hardware in the hands of young people is the most important thing because it literally creates opportunity. When you look at different projects in Github you realize that some are just maintained by a handful of people. Yet their app is being enjoyed by hundreds of thousands of people across the world. They are giving their project and their time freely, fixing bugs and adding features based on public feedback. They are working together to solve a common problem, for the benefit of all rather than one/few. It’s truly a community. These values are what we should be showing the youth, who are the actual creators of tomorrow©. I’m not a developer and I’ve never contributed to an open-source project, which makes me all the more thankful for the magic contributors perform. Okay, okay, I’m getting all teary eyed, shut up.
Critical Thinking
Not everything worked right the first time. Or the second or third time. Or even the tenth time. Some software is not meant to run on Raspberry Pi OS. Or in a container. Or on a Raspberry Pi at all. And as if all that weren’t enough, sometimes the article you are reading looks nothing like what you see in real life. Or the presenter touts how easy the thing is to set up in the YouTube video you’re watching, but glosses over some detail that seems to be the one piece of information you need. And when you start, you usually don’t know enough about the thing to even know if you’re following the right documentation, which you don’t discover until after you’ve learned a little more. I can’t lie: it can be tough. I have struggled with projects because my understanding was so lacking but the Pi has absolutely made me a better troubleshooter overall.
Troubleshooting one issue can accidentally teach you a universal skill. For instance, learning that I could use the regular Linux journalctl logging to troubleshoot container issues when the regular container logs weren’t any help was an eye opener for me because now I knew that I could start using journalctl to look at other issues. Over time that type of low level, foundational knowledge was building and started to sink in, until one day it just clicked. At that point my mindset went from ‘perform web search on error, hope you find something, copy and paste the suggestion, hope it works’ to ‘what does this error mean?’ and ‘what is this suggestion doing?’ You really just learn how to start asking the right questions. Universal skill building.
New Hardware
Oh the hardware… I built PCs because I love hardware, and did so for many years. But SBCs were new in so many ways:
- they weren’t Windows
- they have ARM CPUs (what runs in modern smart phones and makes them so energy efficient), not x86 CPUs which have been running in desktops and laptops for decades
- the hardware was completely different form factor I wasn’t familiar with (tiny SBC)
- they’re managed completely differently than a traditional PC
The whole thing has been, and continues to be, an adventure. The Pi is not super powerful so there is definitely a hardware limit to what you can do on it. OBVIOUSLY I try to push those limits, and sometimes I push too far. But I can tell you with confidence that I have seldom looked so closely at system metrics until I started really doing things with the Pi. It just became necessary to get that deep into things:
- CPU temp - sometimes you can run a Pi without a heatsink or cooler, sometimes you c a n ‘ t.
- CPU usage - why is the CPU running at 110%?????
- Disk performance - quick! ask me the data transfer speed for a PCI Gen 3 disk x 4 lanes!
- Power usage - I shudder to think of all the electricity I’ve wasted over the decades of self hosting now that I obsess about it.
- Power delivery - Not all 25W PDUs are built equally.
- Network throughput - if my Pi can support 2.5GB networking and my cable router supports 2.5GB networking, then I will ensure every device in between also supports 2.5GB networking.
Many people host virtualization platforms like Proxmox and run their services in virtual machines. I don’t, for a couple reasons. First, virtual machines aren’t that exciting to me. I work in IT infrastructure and managing virtual machines is part of what I do at my day job. I first used them in college years ago. They’re great but I prefer working with hardware. Kinda like preferring to read real books over e-books. Second, it’s just different managing hardware versus virtual machines. The discipline is different. There’s almost no safety net when you work directly on the OS and there’s nothing to prevent you from doing something really, truly, deeply, incomprehensibly fucking stupid. And hardware can, like, break. To date, I have destroyed a Raspberry Pi 5 2 GB and 8 GB, an Orange Pi Zero 2W, and two micro SD cards. I don’t mean for that to sound positive lol. I guess what I’m saying is you start to treat it more like the precious thing it is. Third, running 7-8 Raspberry/Orange Pi/Pi Zeros uses less power than one traditional PC running Proxmox with a few VMs - I obsess about it, remember?
The Raspberry Pi isn’t the only SBC by far, I was bound to explore them further. I first purchased an Orange Pi 5 because it has more/faster CPUs and RAM, faster storage, and faster networking than the Raspberry Pi 5 - perfect for a NAS. I originally got some Raspberry Pi Zero 2Ws because they were even more tiny than a full size Pi (yes that’s the only reason) but they didn’t have enough compute power for some projects, that lead me to buying some Orange Pi Zero 2Ws because they have faster CPUs and more RAM in the same tiny form factor. And after I wrecked my Raspberry Pi 8 GB I replaced it with a Radxa Rock 4D because it has more/faster CPUs, and because they recently raised the price of Raspberry Pis due to the current memory shortage and the Radxa was cheaper. It has the same form factor as the Raspberry Pi 5 and has the same PCI interface, so I could use an NVMe HAT, dev case, and power supply I already had.
I recently picked up an Orange Pi RV2 - an SBC with a RISC-V CPU. Yes, another CPU type. RISC is important because it’s open-source. It’s truly free to use, free to develop or improve. Open source CPUs take the power away from the closed-source x86 CPU architecture, which requires paying royalties to use. That price is baked into the AMD or Intel CPU and we largely don’t think about it - the same goes for ARM. RISC CPUs are slower but that’s improving. Support for them is also pretty low but again, that’s improving. I was interested in this board for the CPU but also because it has two network adapters - the perfect device for running a self-hosted router.
Having different SBCs meant installing different operating systems and with that came different installation and configuration methods. There’s a reason Raspberry Pi is so popular among SBCs - their documentation, community and creator support, and onboarding process are all amazing. Other SBCs, not so much. They really force you to mess with some of the more technical bits like kernel build, system headers, overlays, firmware, boot loaders, boot configs, etc. Sometimes the only option is a custom Linux build that hasn’t been touched by the vendor for two years. A lot of the time the documentation is not great. Support is all over the place depending on the OS, ranging from zero support (getting lucky and finding a few Reddit threads) to community support where you can post a question or raise an issue in a forum and get feedback or a solution. But I can confirm that all of this troubleshooting just leaks new skills into your brain via osmosis. Yes, tech skills do in fact, have the ability to cross the blood-brain barrier.
Indeed, the Pi has given me a new appreciation for the copper and silicon that ruins runs our lives.
What’s Next?
There’s just so much to dabble with in the world of technology. There are still plenty of things I want to mess with. To name a few:
Kubernetes
I finally dove into clustered computing with Kubernetes, which is an orchestration platform that takes containers to the Nth level. For me, the ultimate goal is to deploy as many of my current services as I can as a cluster rather than running them as standalone containers on standalone servers. Kubernetes instead deploys multiple instances of containers across a pod, which consists of several worker nodes (just a bunch of servers talking to each other). This makes the service much more resilient and averse to failure. When you connect to a service deployed in this way, you are not connecting to one instance on one server - you are connecting to an instance in the cluster. If one of the instances fails, or one of the nodes fails, the service stays running as long as there is at least one instance running somewhere. If you run out of available pods you can scale up the service by adding more worker nodes to the cluster (more compute power), or scale out the service by adding more instances across the existing cluster. And the whole beautiful thing is assembled via yaml configuration files (infrastructure as code) and deployed with simple terminal commands. Docker has its own container orchestration tool called Swarm and is built into the Docker installation. I started to learn that until a colleague told me that Kubernetes ‘won that war’ lol. Basically it’s fucking magic for containers and I want in.
Home Security System
This project won’t die. I listed it as one of the Pi projects I gave up but that was basically lies. I still very much want to get this thing up and running. I’ve said it before but it bears repeating: I hate having unused hardware lying around. I have three working Raspberry Pi Zero 2W cameras that don’t crash because of heat, even while streaming at the highest quality. Because I had such a hard time with Frigate I sought an alternate solution, which I had fully working and I was ready to deploy… until a recent video by Network Chuck (“stop trusting cloud cameras!!”) showed that the Frigate team has been hard at work on this. Apparently it works on the Raspberry Pi with the Hailo 8L AI accelerator card without slaughtering the CPU now. That’s basically the reason I gave it up in the first place. So I’m back to testing Frigate, after which point I’ll decide which option to go with. Sounds like a good blog post.
Open Source Router
With the RV2, I plan to test OpenWRT in my home network. I want the control, the granularity, and visibility of OWNING my router instead of just using whatever features proprietary software let me use - like what’s in your Comcast router, or the Netgear router from BestBuy. Not to mention I also own all the data that flows through the router so it can’t be monetized. I’m not a product bro. OpenWRT will enable me to do things like host a private VPN and reverse NGINX proxy, replacing Twingate and Cloudflare tunnels respectively (no offense, guys). It gives you control over the firewall, routing, and can do cool things like QoS and VLANs. There is actually a problem I’m trying to solve with this project. With the addition of all the Pi Zeros to the network and the camera streaming and clustered computing I started doing, I noticed a hit in my home wireless network. In 2026 I flat out refuse to suffer through even half a second of buffering. Anyways, rather than buy a second wireless router for the Pis I’ll learn how to build a router and use some old mesh wireless access points sitting on a shelf. Unused hardware, I’m telling ya man.
Go Forth
If you’re interested in computers AT ALL, even a little bit, go guy a Pi. If you’ve ever so much as wondered what the inside of the computer at work or school looks like, go buy a Pi. Or ask for one for your birthday or the holidays. Or see if anyone you know has one lying around, even an old one. It doesn’t have to be a full size Pi; it doesn’t even have to be a Raspberry Pi. Get one and see what you can do with it. You can research what other people are using Pis for, I see posts like that on Reddit all the time. For me, the ideas came first. The cheapest and easiest point of entry into the world of tiny computing is the Raspberry Pi Zero 2W. Like I mentioned, prices on Raspberry Pis are going up on the newest models but right now you can still get a Pi Zero from Vilros.com for $18 and free shipping within the US. Install Raspberry Pi OS on a micro SD card, plug it in, and connect to it over wifi, now you have a tiny server running in your house. If you’re a masochist, you can buy an Orange Pi Zero 2W instead. The documentation is terrible and the provided images are buggy but it has a faster CPU and more/faster RAM which opens the door to more things you can run on it. A full size Raspbery Pi 5 with 1 GB of RAM is currently $49, which is good if you need more CPU power than the Pi Zeros.
But you don’t have to buy anything, this isn’t an ad placement for Raspberry Pi. Instead I wanted to share my testimony about how being even a little bit curious about what a computer is and how it works can be nudged into something far bigger and cooler. It’s a reminder that the joy of technology often lies in the pursuit of understanding (AI came up with that gem). If you’ve been thinking about getting started and you’ve had a Pi in your shopping cart for awhile now, this is your sign to click Submit Order. Feed the curiosity.