Saturday, December 10, 2016

I Finally Got a Raspberry Pi

I had all this equipment lying around: decent monitors, keyboards, and mice; I finally broke down and bought a Raspberry Pi 3 so I could assemble my spare equipment into a working computer system.  Everyone will tell you that the main circuit board only costs $35, but all the other parts I needed for a decent system pushed the total price over $100; and I already had a monitor, keyboard, and mouse sitting around.  Still, for a working desktop computer, it's cheap!

In fact, comparing it to the computers I've had in the past, and how much power they delivered per dollar, my Raspberry Pi rig is amazingly cheap.

I've Used Worse

My first computer was a TI-99/4A, which came with 16K of RAM, used the family TV for a display and a cassette recorder for file storage; it cost over $500 at introduction and came with a BASIC interpreter.  I could only dream of having a machine as capable as a Raspberry Pi at the time.

A better comparison is between the original Apple Macintosh and the Raspberry Pi.  The original Macintosh had 128K of RAM, ran at about 8 MHz, and used a single 400K floppy drive for storage and swap space.  The display was built-in, with resolution less than 480p, and a bitmap pixel format--literally black and white, with no shades of gray.  In spite of this, the Apple Macintosh OS and application software was coded in really tight assembly code, and had a delightful GUI, even if it could only run one application at a time.  The Macintosh came with a word processor and a painting program.  It cost about $2500 when it was introduced in 1984, and developing software for it was so difficult that Apple recommended you use 2 machines to do it (presumably, one machine to run the code, and a second machine to oversee the first machine running the code).

That original Macintosh has hardware specs so minimal that they might shock modern computer users, but its limitations became obvious to users very rapidly; the saying went: "first you're amazed by what it can do, then you're amazed by what it CAN'T do."  In fact, spreadsheets were not ported to the Macintosh until Apple released models with enough RAM to run them.  Applications slowly trickled out for the Macintosh over the years, but development options remained limited and expensive because the Macintosh was intended to be a computing appliance for users, rather than a tool for hobbyist developers.

Unfortunately I've Used Better

And now we get back to the present, and my Raspberry Pi.  It has a 1.2 GHz processor and 1 GB of RAM.  It was designed using recent advances in smart phone technology, and its circuit board is about the size of a deck of cards.  I'm using the free Raspbian image, and this features a GUI, development tools, an office application suite, a web browser, games, and whatnot.  Of course the Raspberry Pi supports color, even at very high resolutions; and even has hardware support for 3D rendering.  Ethernet capability, WiFi, and USB are built in.

Unfortunately, my computer performance requirements have changed with the times; I need more processing power and more memory to perform the tasks I usually perform on a desktop computer.  I have apparently been spoiled by the ability to view a YouTube video, the ability to run an Integrated Development Environment when I write software, and the ability to play Voxelands.  The operating system supports the ability to do these things, the hardware does its best, but the applications crash or run too slowly to be useful.  As with the Macintosh, I was amazed by what the Raspberry Pi can do, but now I'm amazed by what the Raspberry Pi CAN'T do.  Also as with the Macintosh, I can do basic office tasks like writing letters, etc. (it comes with a free office application suite), but these are tasks I seldom perform on a desktop computer.  The 'task' I most often use my Raspberry Pi for is to play a Candy Crush clone.

It might be nice to upgrade my Raspberry Pi's hardware somehow, but the circuit board is somewhat monolithic in that regard; there is no way to increase the RAM on the circuit board, even with a soldering iron.

There is another problem; my Raspberry Pi is not very stable.  It tends to hang a lot.  It could be that I'm overworking it; that I'm overheating the processor or that I'm exhausting its memory and causing the OS to crash.  I'm hoping that a more substantial computer with more processing power, better cooling, and more RAM will be more stable, but I can't be certain of this.

At Least It's Not Windows Nor Macintosh

My Raspberry Pi is not so useful to me.  I haven't powered it up in weeks.  Do I regret my purchase?  No.  Although not very useful to me on a day-to-day basis, the Raspberry Pi is a $100 foot in the door with Linux.  The Raspberry Pi was originally intended to be used for educational purposes, and I have found it quite educational--and not in the "painful experience" kind of way.

Ever since Windows 8 and Macintosh OS X, I have been increasingly disappointed by the directions taken by the major players regarding their operating systems.  Windows 10 is just the latest sticking point on this path, and I can only barely tolerate the Mac OS.

But the Raspberry Pi's Debian Linux distribution can be very nice once you get to know it.  I found some peculiar wrinkles, but I didn't need too much time to map them out and learn to work with them.

Where Do I Go From Here?

I like the operating system, I even like the hardware; I just want more of it (so to speak).  Unfortunately, the Raspberry Pi exists in sort of a niche in that there is no simple upgrade path; I cannot simply pay 4 times as much for similar hardware with 4 times the power.  I mentioned that I have a Raspberry Pi 3; there were 2 models before this, but if a Raspberry Pi 4 is ever built, it will not come for several years, and I can't wait that long for a usable computer.  Other companies market single board computers (SBCs) with twice the memory and faster disk access, but instead of a machine with 2GB of RAM, I expect to need a machine with at least 4GB of RAM.

I basically need a real desktop computer, and that means serious money, desktop space, and questionable Linux hardware support.  Worse, the do-it-yourself nature of Linux suggests that I will not have much of a lifeline and certainly no customer support if it doesn't work for me.  It's a lot more of a financial commitment than the $35 Raspberry Pi motherboard demands.

My friendly local Linux expert recommends setting up a Linux Virtual Machine on my Windows desktop computer.  I wish I had the presence of mind to think of that sooner!  It sounds like a safe baby-step in the right direction.