Building up to the Raspberry Pi
I’ve been hitting the Raspberry Pi and Arduino pretty hard lately. I plan to detail my projects some here in the future but I figured it would be good to start off with a little “why” and a little history. I mentioned the Arduino, but I only plan on touching on the Raspberry Pi here today.
I’ve used a secondary PC for projects for a very long time now. A second or third or even fourth PC an be extremely useful for learning more about PCs. The main nicety is that if you want to completely wipe it out, you don’t have to worry about what to do with your important data on your main PC. Want to try a new Linux distro? Screwed up some configuration? Just reformat and try again. You can do some of this with Virtual Machines but that can mean sharing resources which isn’t always a good solution. Also for any long term “always on” projects like a web server, having a dedicated box is generally cleaner and more secure.
The first project PC I had was my first personal PC that wasn’t “the family machine”. When I graduated from High School, I was given a PC of my own. It was at the time a pretty “top of the line” Pentium 2 IBM with a blazing 450mhz processor. Over the years i upgraded the hard drives and RAM and eventually the motherboard and processor. Eventually, I found that I had a box containing all of the parts from the original machine, so I rebuilt that machine, installed Redhat Linux on it and started playing around with web server software.
During my time working IT/Engineering at my old television job, I accumulated several project machines. When computers were upgraded, we just sort of let the old machines pile up in the back. Sometimes these machines would go to employees if they needed a computer. Sometimes I’d do projects at work to streamline the processes and we’d use a machine for some sort of ftp or scripted copy project. If they were too old or just broken they’d get recycled. I ended up with several of these machines as well.
The problem with these project machines is they are full PCs. They need a lot of power to run, especially for something that is a very low use webserver or game server. They also take up a lot of space. Also, since many of the machines were used and old, they were prone to failure. I started replacing the towers with old laptops but these have their own issues. They take up less space and use marginally less power, but they also tend to over heat in confined spaces and if a laptop had been replaced at work, it likely had a severe issue and thus these laptops were more prone to failure and less easily repaired than the towers.
These days I’ve been phasing out the bulky old machines for Raspberry Pis.
The Pi uses way less power than a whole machine. They are also super cheap, so buying several of them over time doesn’t really break the bank. They aren’t super powerful, but I really don’t do anything that requires a ton of processing power, and because they are cheap, I can use several of them running single tasks to spread the load. Frankly, they are still better than some of the towers I’ve used in the past spec wise.
So why the Pi?
There are a lot of options out in the micro PC space. The Raspberry Pi is probably not “the best” but it’s definitely the “most supported”. I like to learn and play around with new technology, but I’m at a point where I’m not super keen on having to fight with obscure technology. This is pretty much the why of the Pi. It just works. Or at least, I can generally Google how to work it.
The Pi also runs Debian based Linux, which I am most familiar with when it comes to Linux. Since the Pi is a full computer, it’s great for software projects. There are GPOI pins but I’ve not really explored them yet. I’m leaving the hardware tinkering to the Arduino for now.