This week on the podcast Knightwise takes on the topic of retro computing. Whether virtualized or involving the resurrection of old hardware here are some ideas to put some older tech to use for you in 2021.
The action is happening over at our Discord server: Join by clicking this link
- Mix & Production: Keith Murray
- Music Credits
A couple of weeks ago I had the chance to pick up a couple of old Macs from a friend. I’ve been collecting some retro machines over the last couple of months, tinkering with them to relax from the long days of lockdown home working. One of the items on wish list was a a bondi-blue G3 Powermac. The iconic tower with the milky semi-transparent casing and pretty blue/green front. Except for misplaced nostalgia, there was no real good reason to preserve it as a working machine (I have a couple of G4”s running OS9 and OSX) so I did the unspeakable: I gutted it.
A screwdriver, a couple of pliers and some pent-up frustration from the workweek was all I needed to turn rip out the insides of the machine, until I had but an empty shell left. Some more tinkering and I had even removed the plastic handles and sidepanels that I unceremoniously dumped into the dishwasher for a good clean. A couple of hours later I had a beautiful (empty) G3 tower.
But to use it only for decorative purposes would be a waste of space. I looked at the corner of my desk where a switch and a couple of raspberry Pi’s had been forming a tangle of cables that looked like a pool of barf from the flying spaghetti monster. So, I arranged everything nicely into the old case and closed it up.
The end result of my “trojan horse” is a happy spouse (no more clutter) + a decorative machine that now houses about 5 times the processing power (even more I think) then it used to by the addition of a couple of pi’s. Whenever I add another one of my favourite single board computers to my collection, it too will find a home inside this classic enclosure.
Re-use, Re-Cycle, Re-Vive.
With another successful orbit around the sun completed, its time for us carbon based lifeforms to dream up some list of ‘Things we would like to improve on’ in 2016. Since we all lack the telepathic mind controlling abilities to force these improvements upon others on a global scale, it is perhaps more prudent to start with ourselves. So here are 5 things you might want to “improve on” for those of you who have not taken the plunge into the wonderful world of cross platform computing.
1: Stop being such a fanboy.
Are you “This guy/girl” at every party that religiously promotes brand/platform XYZ and gets into countless arguments on which is the better brand/platform/phone with your friends and relatives ? Have you spent most of Christmas eve explaining to your cousin why Android is far superior to IOS ? How about you stop doing that in 2016 ? Seriously. Somehow you are playing out the exact scenario that marketeers have planned out for you. Somewhere, somehow you have developed this religious devotion to a certain brand or platform that is just (for a lack of a better word) STUPID.
If you have ever gotten into a situation where app/platform/brand X has NOT been more then satisfactory, yet ignored this issue (To yourself and your peers.) because it didn’t line up with your beliefs / previous statements, then you’re a fanboy and you need to stop. So stop droning on about how your iPhone is superiour to all other phones on the planet and actually take the time to try out some of the alternatives. God forbid .. you might like them.
Have you ever gotten into a situation where app/platform/brand X has NOT been more then satisfactory, yet ignored this issue ?
2: Stray away from your favorite applications.
“I can’t move to platform X because I use application Y”. I’ve heard it a dozen times over. ‘Nope, Can’t switch to Linux because I NEED Outlook.’ Surprise: You don’t NEED an application, you need to perform the process that is TIED to that application. You don’t NEED Outlook, you NEED to be able to communicate via Email. The correct statement would actually be: ‘Nope, Can’t switch to Linux because I am afraid to learn how to work with another Email client.’ So try to get out of that sticky situation by NOT devoting ALL your time and energy using JUST your favorite apps. Whether its an app on your phone or one on your desktop .. there are probably plenty alternatives out there that you can tinker with, just for the fun of it. God forbid … you might like them.
You don’t NEED Outlook, you NEED to be able to communicate via Email.
3: Give one flavor of Linux a try this year, for real this time.
Any self-respecting geek HAS taken the time to “Play around” with Linux. For some this means a devotion to the platform where they live out their entire geek-lives in the command line, but for most this means just slapping in a live-boot thumb drive, fiddling around with it for 20 minutes before deeming it “too slow” and going back to whatever OS you used before.
This year, try something different. Devote an old PC (and some of your time) to actually giving it a go as a primary operating system for a week. Write up a blogpost about what you like and what you hate. If a complete desktop experience is too much for you, try out something small like playing with a Raspberry Pi and tinkering with one of many interesting projects you can build. God forbid .. you might like it.
Devote an old PC (and some of your time) to actually giving it a go as a primary operating system for a week.
4: Lean on the communities.
You might be spending a lot of your online time aimlessly scrolling through 9gag, Facebook or Tinder. So why not spice things up a little by going out of your way to find some online geek communities you can learn from ? If any of the cross platform endeavors stated above trigger you to learn more or get some help .. lean on the communities ! There are plenty of forums, sub-Reddits and Google+ groups about the topic you are diving into. They will be able to provide you with excellent feedback and support. Why waste hours on Googling when you can just ask the experts. God forbid .. you might like it there.
There are plenty of forums, sub-Reddits and Google+ groups about the topic you are diving into.
5: Give something in return.
And if, on your adventures into cross platform computing, have learned something new ? Why not give some back ? Post your experiences back to the forums, comment in the discussions and put your new found experience to good use by helping others. If you are feeling truly daring, why not try your hand a podcasting. Recording a simple episode on your phone and submitting it to the Hacker Public Radio podcast is a great way to get started. You will learn that the best way to learn,is to teach. God forbid .. you might like it.
You will learn that the best way to learn,is to teach.
So let 2016 be the year for you where you step out of your comfort zone and try something new. Try a new OS, a different brand of phone or some geeky new project that lets you control your home lights from the internet. We at Knightwise.com wish you good luck in your endeavours.
This weeks guestblog is brought to us by Daniel Messer, aka the Cyberpunk librarian. Find out more about Daniel, his podcast and his awesome website over at Cyberpunk librarian.Com
Digital signage is a passion of mine which is odd because, for the most part, I hate advertising. When you think “digital signs” you have to think about advertising because the two go hand and hand, right? You see them all over the place from your local big box store where they use monitors on end-caps to sell you stuff you don’t need to the trendy Apple store where they’ll use an iPad Air 2 as a digital sign.
That’s a baseline US$500 device sitting there. It kicked off the tablet revolution and ushered in a so-called “Post PC Era.” And there it is, bolted to a table, telling you why you’d want to buy a PC. That’s irony so thick you could spread it on toast.
But it doesn’t have to be this way.
As a public library webmaster, one of my jobs is managing the digital signs in our branches. I don’t create the content so much anymore, but I handle the tech side when needed. These things run off of small, dedicated PCs running Windows 7. Their administrative interface is lousy, the PCs are overkill as they’re rolling glorified PowerPoint presentations, and the big screen monitor and PCs kick out enough heat to keep you warm in the winter.
For the record, I live in Phoenix. We really don’t have a winter here.
When I first got my hands on a Pi, I knew this would be better for getting the library’s messages out on digital signs. They’re tiny, produce little heat, could be velcroed to the back of a monitor, and they run on free software. Diving into different software packages I played withScreenly OSE, Concerto, RiseVision, and others before landing on something I really liked — an idea I got at an airport.
The Phoenix Mesa Gateway Airport, aka AZA, uses Pis for almost all of their digital signs from the ones dropping ads to the ones that tell you when your flight departs and from what gate. Even the monitors beside the gates use Raspberry Pis to display the gate number, flight number, destination, and so on. I talked with a couple of their IT staff to find out what they used and the answer was surprising and refreshing.
They use a web browser. When you look at those signs, you’re simply looking at a website, in a browser, in full screen mode. The website refreshes itself every so often, and there’s a quick blank screen while it does this, but then you’re presented with the latest information.
I went back to my desk and got to work.
An old server bound for surplus found new life in our racks with an Ubuntu Server installation. I knew I’d have to do things slightly different as our library district covers a huge area while the airport covers a single large building. Instead of using the Pis to call a website, I’d have them bring up web content stored locally, but synced from the server.
I installed Chromium on the Pis because I like how easily you can feed it switches through a command line. That’ll be useful later. I also need to make sure that the screens don’t go blank or into power-save mode. Turns out there are a couple of ways to worry about this, but an easy way to handle it is to simply install XScreenSaver and then disable it.
My Pi OS of choice is Raspbian, which uses LXDE as its desktop environment. That’s excellent because to make all the necessary changes I just need to edit a couple of files, maybe three if you’re running the latest version. Opening up LXTerminal and then running
sudo nano /etc/xdg/lxsession/LXDE/autostart
I added the following lines:
@xset s off
@xset s noblank
@chromium --kiosk --incognito /home/pi/display/index.html
(Depending on your version of Raspbian, you might need to put the @chromium line in
The other three can go in the first file.)
The first three lines disable all the screen blanking stuff that Raspbian would normally do, which forces our screen to stay on. The last one launches Chromium, in a full screen kiosk mode which. When you launch Chromium in incognito mode it won’t remember any previous shutdown errors and thus, never throws an error on startup. Then it displays my index.html in a local directory. Since we’ve put these in the autostart file(s), they will automatically happen when the pi user logs into the GUI. (Which you can set to happen immediately after boot up through
But how to update it?
Since the geographic area covered by the library district is bigger than some east coast states, I wanted things to update quickly, in the background, on a schedule, while reliably pulling down the data and resuming the odd failed transfer. Fortunately, you can do all of that with rsync and cron.
Remember that old server now running Ubuntu? That’s the only place I update the code and content. I can change and add slides, modify the code, save everything, and ten minutes later all the Pi displays are updated. Here’s how that works:
On each Pi, I set up rsync to talk to the server. To do this without a password you need to set up a keypair for the Pi and the server. First thing to do is make sure ssh works between the Pi and server. If so, generate a keypair on the Pi using ssh-keygen. Don’t use a password to generate the keypair and don’t use sudo as the user pi will be doing all the work. Once you have the keypair transfer it to the server using:
ssh-copy-id -i ~/.ssh/id_rsa.pub user@servername
Replace the user@servername with the user on the server where you’re hosting these files. In this case, the syncing directory is under my own username, dan, in a directory called display.
ssh-copy-id will ask for your login password to the server and, if all goes well, that’ll be the last time it asks for it. Once the keypair is set up between the Pi and the server, you should be able to ssh and rsync without a password.
Now we’re ready to sync things up! Set up a cron job using:
crontab -e -u pi
This will launch nano and you can set up a cron job to call rsync as you like. Me, I do it every ten minutes. That means that, on the very outside, any change I make to the master files will take up to twenty minutes to reflect on the monitors in the branches. I could set it to go more often, but there’s nothing so critical as flight information on those screens. So my cron job looks like this:
*/10 * * * * rsync -az --partial dan@piserver:/home/dan/display /home/display/
Looking back, let’s see what we’ve built. We’ve got a Raspberry Pi, connected to a monitor in a remote location. It’s running a slide show through Chromium and all the content is local, so it comes up fast with no lag. That content is synced to a server via rsync running as a cron job and everything updates every ten minutes, both the browser and the content.
So in the end, we’ve used no software geared specifically towards digital signage. The digital sign is powered by open source operating systems, running open source software, on open source hardware. As a librarian into open access, that’s the kind of thing that really makes my day.
“There is an app for that ! “. How many times have you heard that phrase, probably uttered by some smartphone waving geek who instantly shows you how to fix problem Xyz in your life using a pre-packaged app. And there is nothing wrong with that.. as long as there IS an app. But what if there is not ? What if you spend hours online looking for an app that doesn’t exist or doesn’t quite do what you want it to do ? Wouldn’t your wish to be able to TELL your computer exactly what to do ? Well there is ! It’s called programming. Don’t worry if it sounds weird but before the time of beard-sporting iphone hipsters with 5997 apps on their smartphones we used to PROGRAM our machines to work for us.
A great way to start to learn how to program is by using a raspberry pi. The inexpensive mini computer is a great place to start when you want to learn how to program. The Pi is geared heavily towards the Python language and offers great tools which you can use when you want to learn how to code (or teach your kid on how to code). But where do you start ?
The Full Circle magazine has been running a series on “how to program in python” for quite some time. They have collected all these articles into 3 PDF Issues of their magazine that you can download for free. Its a great way to start your first baby steps into Python scripting and discovering you don’t always need an “app for that”. Even with a few basic programming skills you can upstage those app-jockeys by saying ” I WROTE a script for that !”. So download the tutorial, grow a beard, put on sandals and start screaming profanities towards closed source software, because you’re on your way to becoming a Python Programmer !