Categories
Hardware Process Programming

Building a lean and mean (and frugal!) Python development machine with Peppermint OS

I always keep an old computer or two around “just in case,” and it often turns out that they’re useful for all sorts of things. In an age when online access is a necessity and in a line of work where being able to put together a quick web page, application, or server is important, a spare computer — even one that’s a little bit backward by today’s standard — can be a handy resource.

Enter “tinymint,” a Compaq 610 laptop that Anitra got from her old workplace a couple of years back for $50. (You should be able to find a used one, or one with similar specs, for about $100.) We originally got it to give to her parents so that they’d have a half-decent machine on which to surf the web, but we’ve since replaced it with a Chromebook, which requires less maintenance. They gave the Compaq back to us, and I’ve since boosted its RAM to the maximum: A whopping 4 GB, which was pretty respectable in the Windows Vista era when it was manufactured.

Diagram showing the parts of the Compaq 610 laptop as viewed from the front and left sides.
An excerpt from the QuickSpecs manual for the Compaq 610.

In case you’re curious, here’s a quick rundown of the specs of my particular Compaq 610. Remember, this laptop is almost old enough to get its own YouTube account or Bat/Bar Mitzvah:

  • Chipset: Mobile Intel GME965 Express chipset with ICH8M, 800 MHz front side bus. This chipset is from around 2007.
  • Processor: Core 2 Duo T5870 (2.0 GHz, 2 MB L2 cache, 800 MHz FSB). This is better than the other options: The dual-core Celeron T1500 and the Celeron 560, both of which had the slower 533 MHz bus.
  • RAM: 4 GB. This is the maximum, which isn’t surprising for a 2009-era computer. 32-bit operating systems were the standard then (64-bit OSs were available, but at a premium), and they’re limited to accessing about 3 GB of memory. The machine originally had 2 GB, and I got replacement RAM from NewEgg for about $20.
  • Hard drive: 250 GB. Not all that different from what you’d get with the lowest-end MacBook Pro today.
  • Wireless networking: Intel PRO/Wireless 3945ABG wifi a/b/g
  • Wired networking: Marvell Yukon 88E8042 PCI-E Fast Ethernet Controller
  • Webcam: 2 megapixels, so it’s 1080p.
  • Other goodies marking it as a 2009-era computer:
    • A 56K modem! I don’t think I’ve had dial-up service since 2000. Even during those rare occasions when I need to send a fax, I do it through online fax services.
    • Separate 1/8″ mic and headphone jacks.
    • VGA output. Good thing I hung onto that Acer VGA monitor.

There were a few variants of this machine, and I’m a little surprised that this turned out to be one of the better ones — normally companies go with the bottom-of-the-line configurations, especially for computers whose primary purpose was probably producing cover sheets for TPS reports.

Desk with a Compaq 610 laptop on a wooden box, Acer VGA monitor on a stack of Smalltalk-80 books, an Apple wired keyboard and a Microsoft mouse.
Installing Peppermint Linux on the Compaq 610.

I like to think of “tinymint” as a Raspberry Pi with a built-in monitor, keyboard, and battery (although I need to pick up a replacement battery; this one no longer holds any charge). This means that it’s still got some years left in it, where it could function as a server, a runner of automated tasks, or as a budget Python programming machine.

I’m scheduled to teach an “Intro to programming with Python” course in July, and I may actually use this as my demo machine, just to show what’s possible even on a limited budget.

In order to get the most out of this machine, I replaced the Windows with something considerably more lightweight: Peppermint.

Peppermint is a Linux distribution based on Ubuntu, and it’s designed to run on systems with limited resources. To this end, it uses a desktop environment that’s a mix of LXDE’s lxsession session manager and Xfce’s panel and applications menu. Simply put, it’s not going to look as slick as commercial OSs or even other Linux distros, but it’ll be reasonably good-looking and run quite well.

Since Peppermint is a Linux distro, it has all the command-line goodness that a developer needs. I wanted to make “tinymint” a lean mean Python machine, so immediately after Peppermint finished installing, I installed Anaconda Individual Edition and Visual Studio Code, both of which installed and run without any issues.

I’m going to make regular use of “tinymint” and post the occasional report about my experiences with it. If you’re a developer with an older computer and a limited budget, you should look into Peppermint — you might find that it’s exactly what you need.

The current version is “Peppermint 10 Respin,” which came out in December. It’s based on Ubuntu 18.04 LTS, and if you want to know more about this release, check out their announcement.

Want to know more? Here are a couple of recent video reviews of Peppermint:

Categories
Current Events Hardware

I’m a little worried about this episode of “Black Mirror” (or: Boston Dynamics’ robot “dog” is now commercially available)

It’s official — if you’ve got $74,500 burning a hole in your pocket and the possibility of turning the world into one of the bleakest episodes of Black Mirror doesn’t faze you, you can order Boston Dynamics’ the Spot Explorer development kit from shop.bostondynamics.com.

The kit includes the following:

  • 1 “Spot” robo-dog / soulless future ravager of humanity
  • 2 batteries
  • 1 battery charger
  • 1 tablet controller
  • 1 robot case
  • 1 power case
  • Python client packages for Spot APIs.

Wait a minute…it’s programmable in Python? Okay, now I’m very interested…

For more, see this new ad for Spot:

Categories
Design Hardware Humor

“Hey, Siri! Show me why Mac users have a reputation for being rich idiots.”

Categories
Business Hardware Mobile

Samsung ups the version-number and number-of-cameras-on-a-phone ante, reminds me of Macromedia and Gillette

Leaked Samsung Galaxy S20 photo showing the back of the new phone

XDA Developers has released what is purportedly a leaked photo of one of the next Samsung Galaxy phones, shown above. The series is expected to go under the name “S20”, with the phone above being the Galaxy S20+.

The version number of the Galaxy phones have generally followed the iPhone’s, which is probably why they’re leaping from 10 to 20 (in case you’d forgotten, the current flagship iPhone is the 11).

While Samsung’s leap in version numbers is a big one, the concept of a version number leap is nothing new. Those of us who were working in the industry in the ’90s may remember Macromedia Freehand’s leap from version 5 to 7, completely bypassing 6, back in 1996. This was a response to Adobe Illustrator 6:

Jumping version numbers is easy compared to actual hardware changes, but Samsung are doing it anyway, with a fourth camera to counter the iPhone 11’s three. It reminds me of this Onion article which became real:

I’ll close this article with the early contender for the title of “Sticker of the Year”:

Categories
Hardware Mobile

When my Android phone (and its FM radio) proved clearly more useful than my iPhone

Moto G4 Android phone displaying its FM Radio app. The screen shows that the radio is tuned to 107.3, and the readout below the frequency reads 'CANE - Hurricane Irma coverage.
A photo I took during Hurricane Irma, which shows my Motorola Android phone
running the FM radio app.

When Hurricane Irma closed in on the Tampa Bay area Sunday evening, the power went out at around 7:30, and soon afterward, cellular service became spotty and then disappeared entirely. However, we weren’t cut off from information about Irma because we fell back on a 1930s technology, FM radio, which is built into every smartphone, and accessible on many Android phones (including mine).

In the age of the smartphone, you might think your Android or iPhone can replace a radio receiver as a lifeline during a disaster. After all, while a radio receiver is audio-only and one-way, your smartphone can both send and receive text, audio, picture, video, and location information — but only if the cellular towers nearby are up and running. If the nearby tower is damaged, loses power, or gets overloaded, you’ll be cut off and left with the dreaded “No Service” indicator on your phone.

Consult just about any disaster preparation guide for a checklist of “must-haves”, and one of the items on that checklist will be a battery-powered radio. When phone and internet service fails, you can fall back on radio as long as you have batteries. (Better still, if you have a radio with a hand-crank generator, you don’t even need batteries.)

We have a nearly century-long tradition of radio stations providing vital information during disasters of all kinds. In the case of Irma, they did one better and teamed up with TV newsrooms. During the storm, many radio stations in the Tampa area teamed up with TV stations to provide continuous coverage of and information about the storm, such as where it was, how quickly and in which direction it was moving, and what to do. It was a valuable resource for many people, and it may have even saved a few lives.

You may think that you don’t own a portable FM radio, but chances are that you do. It’s just hidden away in your smartphone.

Just about every mobile phone maker — even the big ones who manufacture their own processor and graphics chips, such as Apple and Samsung — gets their cellular modem chipsets from a single manufacturer: Qualcomm. In fact, Qualcomm pretty much has a monopoly on these chipsets, which in addition to sending and receiving cellular signals, have an FM receiver baked in. You wouldn’t know it in the U.S., as fewer than half the smartphones have the FM receiver enabled, and they’re all Androids.

My Android phone is a Moto G4, and in addition to having an enabled FM receiver, it also comes “out of the box” with the FM Radio app, which simply provides a user interface for the FM radio capability. When the power went out in our part of Tampa on Sunday at around 7:30 p.m. and the cell service disappeared shortly after, I fired up the FM Radio app and we had updates on the storm’s progress all night long. In fact, I also used the phone’s FM radio and all day the next day — and there was still battery power to spare and the end. That’s because FM radio uses considerably less power than just about any smartphone function (and it uses no data at all!).

My iPhone doesn’t expose its FM radio capability, and it was useless as a source of updates until the cellular connectivity improved the next day, well after the storm had passed. I can’t say for certain, but I’ll just blame Apple designer Jony Ive, who’s never met a much-loved traditional feature that he didn’t like to remove. I get the feeling that FM radio is too distastefully old school to include as an iPhone capability, even though it’s already there.

While I experienced the usefulness of FM radio in smartphones during an emergency firsthand for the first time during Irma, it’s been clear to broadcasters and public safety officials — FEMA (the Federal Emergency Management Agency) included (see the video above) — that there are great benefits to unleashing this capability. The National Association of Broadcasters (NAB) has been lobbying to require the FM radio capability to be enabled in smartphones, and even Ajit Pai, chairman of the Federal Communications Commission (FCC) has been advocating for this (but he won’t go beyond advocacy). At an NAB event in February, he said:

“It seems odd that every day we hear about a new smartphone app that lets you do something innovative, yet these modern-day mobile miracles don’t enable a key function offered by a 1982 Sony Walkman.”

In Mexico, where there’s a strong radio culture (and a rise in non-commercial and community radio over the past decade), the Federal Telecommunications Institute (CIRT) approved a new rule in April requiring all smartphone manufacturers to enable the FM receiver. CIRT’s rationale was that in emergencies and disasters, having the FM capability would make it possible for people to get alerts and vital information when cellular networks failed. Mexico is the first country to pass such a law, and it’s hoped that other countries will follow suit.

Find out more

The go-to place for the movement to make the FM radio capability that’s already in our phones, waiting to be unleashed, is FreeRadioOnMyPhone.org. It has the latest info on the movement to enable FM radio on smartphones, including:

  • How to get FM radio working on your Android phone
  • How to contact Apple to ask them to enable FM radio listening on their phones
  • How to contact the FCC and ask them to require FM radio be made available on phones
  • The latest new about the movement

You may also find these articles of interest:

And finally, an article that needs to be pointed out because it’s dead wrong (and unsurprisingly, published by 2010-era Business Insider, from the time they were almost stealing content): Mandatory FM Radio: A Dumb Idea For Smart Phones, in which its clueless author says that it’s just a move to prop up the dying terrestrial radio industry.

This article also appears in The Adventures of Accordion Guy in the 21st Century.

Categories
Hardware What I’m Up To

A quick picture guide to upgrading the RAM on a Lenovo ThinkPad T430

The oldest-model computer in my stable is a Lenovo ThinkPad T430 (pictured above). Released in 2012, it’s a business workhorse powered by a dual-core i5-3230M processor running at 2.6 GHz (suitable for writing TPS reports and even playing older 3D games) that’s still issued to worker bees at offices everywhere. I acquired mine in 2013 in lieu of payment owed to me from a deadbeat, and since then, it’s been performing yeoman service in its role as a backup machine for tasks that specially require Windows or Linux.

It came with a stock 4GB RAM, which has caused me to run into some limitations, especially with heavier-weight development tools such as Visual Studio and Android Studio, the video capture and recording tool Camtasia, and to a lesser extent, graphic design and audio tools. It was time for that most effective and universal of computer upgrades: more RAM!

The T430 takes two 1600 MHz PC3-12800 SO-DIMMs and supports up to 16GB memory. I ordered a pair on NewEgg for less than $100, which came with two-day free shipping. The DIMMs arrived via FedEx Friday morning, and like any geek with a new tech toy, I took out my set of teeny computer screwdrivers and got to work on installing them right after they arrived.

The first step was to remove the battery. ThinkPads from that era (I’m not certain about present-era ones) followed the old-school philosophy to batteries and kept them external and easily swapped out:

I remembered seeing a RAM upgrade on one of these computers years ago, so I knew that there was a RAM slot located on the bottom of the machine, just underneath the central panel…

…and only two screws stand between you and a RAM upgrade…

…and until you realize that there’s just one RAM slot there. Upon seeing this, I looked around, confirmed that there was only one RAM slot under that panel, and then checked the online specs for the T430. It says two SO-DIMM slots. Where’s the other one?

Here’s the interesting thing about adding RAM to the T430: its two RAM slots are in quite different places with different levels of difficulty to access.

The second RAM slot — where the factory-installed RAM goes — is under the keyboard, and getting to it takes a little more work. My guess is that Lenovo’s engineers expected most users to buy a single DIMM to expand their machine’s RAM, and that they’d install it into the easier-to-access slot at the bottom of the machine.

Even if you have no plans to add or remove RAM from the more easily accessed underside, you still need to open the central panel at the bottom of the machine to access the RAM under the keyboard. That’s because there are two screws inside the central panel that you have to remove in order to get under the keyboard:

These two screws anchor the keyboard, and if they’re in place, you won’t be able to access the RAM slot underneath it.

When you’ve removed those two screws, you can remove the keyboard. Pry it up gently, starting with the edge closest to the trackpad. I used a metal ruler to help me with the process, taking care not to scratch the casing:

Lift the keyboard. You’ll see that it’s connected to the motherboard by a short strip of ribbon cable. There’s a thin piece of dark, slightly translucent plastic to the left of where the ribbon cable meets the motherboard; the RAM slot is underneath it:

To make it easier to pop in the RAM, I disconnected the keyboard. You might not have to do it in order to insert the RAM, but it was pretty easy:

I flipped back the panel, where the factory-installed 4GB DIMM lived…

…and replaced it with the new 8GB DIMM.

With the RAM installed, I reversed my steps, fired up the ThinkPad, and checked my RAM the fun way: by asking Cortana using my voice. Here was her response:

Success! The ThinkPad is back in action, and ready for development work. In the short time with maxed-out RAM, I’ve found that Visual Studio, Android Studio, and Camtasia work wonderfully, and video performance is improved as well (my model has integrated graphics, which relies on system RAM).

If you prefer a video walk-through of the ThinkPad T430 RAM upgrade procedure, try this one:

Categories
Hardware What I’m Up To

Unboxing the CanaKit Raspberry Pi 3 Complete Starter Kit

raspberry pi 12
Click the photo to see it at full size.

On the most recent Amazon Prime Day — an annual trick that Amazon pulls in order to boost sales in the same vein as Cyber Monday, but in the summer — I managed to limit myself to buying just one sale-priced thing that I didn’t really need: the CanaKit Raspberry Pi 3 Complete Starter Kit. It normally sells on Amazon for US$75, but it was on sale that day for US$60.

The Raspberry Pi 3 is the current version of a series of single-board computers about the size of a deck of playing cards, and are:

I plan to use the Raspberry Pi to make some initial delving into IoT (Internet of Things) development, and as part of my journey into developing for that category of computer that I call “tiny and shiny” — smartphones, tablets, and now Raspberry Pi / Arduino-type boards.

Here’s the CanaKit Raspberry Pi 3 Complete Start Kit box:

raspberry pi 01

When I opened it, I saw this:

raspberry pi 02

The first thing you should see is a greeting card that also provides an email address for assistance, should you need it. The other side of the card has a diagram explain what each of the GPIO interface pins on the Raspberry Pi 3 board is for.

Below the card was an HDMI cable:

raspberry pi 03

And below that were three boxes:

raspberry pi 04

From largest to smallest, the three boxes contained the Raspberry Pi 3 board and SD card (which functions as its “hard drive”)…

raspberry pi 05

…a case for the board…

raspberry pi 06

…and a power supply for the board:

raspberry pi 07

Below the boxes were these items:

raspberry pi 08

One bag contained a USB microSD card reader. It allows you to use your regular computer to download updated or different versions of the Raspberry Pi OS or software and transfer them onto the microSD card:

raspberry pi 09

The other bag contained two heatsinks for its chips. They already have heatsink adhesive attacked to them; you just have to peel off the backing and stick them onto their respective chips:

raspberry pi 10

At the bottom of the box was the “quick start” guide:

raspberry pi 11

Here’s the board mounted in the lower tray portion of the case:

raspberry pi 13

And here’s the board with the middle section of the case attached:

raspberry pi 14

And here’s what the Pi looks like once the case is assembled:

raspberry pi 15

Assembling the case is pretty easy, as no tools are required. It simply snaps together.

Here’s the case on my desk, placed beside a $20 bill for size comparison:

raspberry pi 16

The Pi case is smaller than the hard drive that I connected to it (you can see it below the Pi):

raspberry pi 18

I decided to take the beginner route and start up the system using NOOBS, short for “New out of the box software”. It came pre-loaded onto the SD card that came with the board, and it installed Raspbian, the official supportedRaspberry Pi OS, and based on Debian. Once the OS is installed, here’s what you see when you boot up the Pi:

raspberry pi 19

Once it finishes booting up, you’re taken to a GNOME desktop:

raspberry pi 20

I used to have a stack of USB keyboards, but I’d given most of them away to friends and family, and my last couple are still back in Toronto. Figuring that I’d end up taking the Pi to meetups, BarCamps, and other demo sessions, or perhaps use it as a living room media center / internet device, I went with the Logitech K400 all-in-one keyboard, shown below. It’s currently on sale at Walmart for US$20:

raspberry pi 21

And thanks to Anastasia Sistevaris, an intern at Wiley, I got hooked up with a set of Raspberry Pi books, the first of which arrived recently: Exploring Raspberry Pi by Derek Molloy. I’ll do a writeup of this book in a later article:

raspberry pi 22

Watch this space for more Raspberry Pi articles as I start noodling with my new toy!