Yesterday, I posted an article positing that WeWork’s CEO might just be indirectly and accidentally responsible for drastically changing the processor industry:
The article got a record number of pageviews, and I got a number of emails and direct messages asking all sorts of questions about Arm chips, from “What makes Arm processors so different?” to “Has anyone seen an Arm-based Mac in action yet?”
Here are some videos that should provide lots of background material to better help you understand Arm chips and Apple’s move to their own custom silicon.
Let’s start with this CNET supercut of the parts of the WWDC keynote where Tim Cook and company talk about Apple’s transition from Intel chips to their own Arm-based ones:
This is Max Tech’s best guess as to what the Arm-based Mac release timeline will look like:
Many people have a take on what Apple’s move to Arm means. Here are CNET’s top 5 guesses:
Here’s a video from a year ago that asks “Is Intel in trouble? Is ARM the future?”. It’s worth watching for its history lesson about Arm:
Here’s a really quick (under 6 minutes) look at Arm CPUs:
Here’s a more hardcore explanation of how CPUs (in general) work:
CPUs used to be stand-alone things, but we’ve been migrating to SOCs (systems on a chip) for some time. Here’s an explainer:
This Gary Explains video explains the differences between Arm’s and Intel’s architectures:
Here’s a reminder from Computerphile that Arm design chips — they don’t make them. There’s a difference:
Here’s a treat: an unboxing of Apple’s “developer transition kit”, which registered Apple developers can apply to try out to test their apps on Apple silicon. It’s a Mac Mini powered by an Apple A12z chip, which is the same processor that drives the iPad Pro.
Softbank is considering this move because it needs the money. It has an activist investor that wants to see some changes, because it’s made some embarrassing investments leasing to considerable losses of both money ($16.5 billion for the financial year ending March 2020) and face.
Simply put, Neumann’s hijinks cost Softbank a lot of money, and they now have an investor putting serious pressure on them to sell off assets to raise cash. Arm could be one of those assets.
At the same time, there are a number of interesting developments where Arm chips are concerned…
Any talk about what Arm chips will mean for Apple is all speculation right now, but if you want to hear some really good speculation, as well as a decent Arm vs. Intel discussion, check out episode 777 of This Week in Tech:
In that episode of This Week in Tech, host Leo Laporte and his panel agree that Windows PC OEMs will probably end up switching to Arm processors, and they’re not the only ones saying it.
There’s a pretty good chance that Arm will end up being the de facto chip design to rule them all in the 2020s — and their maker is up for sale. In fact, there’s an unnamed interested buyer. I have a guess, and I’m not the only person to have the same idea:
If only there were a tech company making a move to ARM silicon with a huge pile of cash laying around… https://t.co/lGqnDfG9SI
I saw these two posts about printers this morning — one on Twitter, the other on Facebook, in a neighborhood forum where someone was asking for office equipment and furniture that people were no longer using:
I find that I use our home printer about once a year, typically for printing a letter that I need to enclose with a paper form that I’m sending via snail mail.
How often do you use your printer at home (if you have one) these days?
This is an election year, and The Mad Botter’s contest is an election contest. Contestants are asked to develop an open source project that addresses ballot access or in some other way assists with voting. Perhaps something to help people find the closest polling station? Virtual “I voted” stickers? An aggregator for open information about candidates? A “Yelp” for polling places? (You can find more ideas here.)
Here are the contest details:
No purchase is required to enter.
Your solution must be posted to a publicly accessible Github repository with the appropriate license included.
You must be a US high-school or undergraduate college student.
If you are below the age of 18, you must provide written parental consent to have your submission considered; this can be done via email.
In the event that you win, The Mad Botter INC is granted the right to post a picture of you in the winning announcement and other applicable venues; if you are below the age of 18 your parent or guardian also provides permission for this by consenting to your entering the contest.
The winning entry will be the one that shows the most practical potential and creativity and will be selected by The Mad Botter team.
All submissions should be sent to sales@themadbotter.com and include a brief bio, explanation of the solution, and a link to the Github repository.
I was a recent guest on the show (Episode 25), and we talked about how the Toronto tech scene changed from dismal to dynamic, how I stumbled into developer evangelism, learning iOS programming via raywenderlich.com and then joining them, SwiftUI, Python and Burning Man, the hidden opportunities that come with having to stay inside during the pandemic, and more!
The current coronavirus pandemic has given me a chance to do some spring cleaning at home, which in turn led me to revive some old computers that have been sitting idly in a closet. I figure I could put them to work doing interesting things.
Compaq 610 (2009-era 4GB Core 2 Duo)
I’ve given an old Compaq 610 a new lease on life with Peppermint OS, a lightweight Linux distro that runs really well on old machines (the Compaq is a 2009-era machine with a Core 2 Duo processor). I also installed VS Code, Node, Anaconda, and React on it, making it a lean, mean machine for that upcoming Python course I’m teaching.
As with the Compaq, I set up the ThinkPad with VS Code, Node, Anaconda, and React. Since it’s got the processor power and 16 GB RAM, I also put Android Studio 4 and Flutter on it. Between some mobile projects in my near future, and the need to have a machine for running servers and other automated tasks, it’s going to prove to be quite useful.
The Raspberry Pi’s “hard drive” is actually a microSD card that fits into an easily-accessed slot near one of the edges of the board. The process of updating the Pi’s OS is pretty simple: You use the Raspberry Pi imager on another computer with an SD card slot (and a microSD-to-standard SD card adapter) to rewrite its contents.
The Raspberry Pi is a pretty good Python machine, and I may end up using it while teaching that Python course, if only to show what’s possible on a computer that’s smaller than a deck of cards (when it’s not in a case) that you can get for about $50.
Since it’s powered by an ARM chip, it offers an opportunity for a kind of programming that most other machines don’t offer: ARM assembly programming!
It looks like it’s going to become an ARM-based world:
ARM-based chips power IoT devices,
Smartphones are generally powered by ARM-based chips, and
With this upcoming sea change, it doesn’t hurt to have some familiarity with ARM assembly language. Even though smartphones have ARM chips, the Raspberry Pi is a much better platform on which to learn ARM assembly, as it allows you to do development and execution in the same place.
It may have been a while since I’ve done assembly language programming — first on the 6502 in high school on Apple ][s and Commodore PETs, and later in university on NS32000 boards connected to Digital Unix machines — but I found my return pretty simple. It didn’t take long for me to cobble together a “Hello World!”-style app on the Pi.
I’ve hung onto an old Lenovo ThinkPad T430 that’s been performing yeoman’s service over the past few years as a trusty Linux development machine and server. Its CMOS battery finally ran out, which meant that it no longer kept proper time when removed from power, which meant that I always got this message on startup:
As promised, it arrived the next day. Here’s the box it came in:
I’m not complaining. There are all sorts of economics-based reasons for shipping something so tiny in that size box, and I’m grateful for the huge “crumple zone” provided by that box.
Replacing the battery was a snap: Disconnect the old battery’s connector, and then attach the the new battery in the same way.
I got curious. What was under the yellow protective plastic cover?
I peeled it off the old battery and found this:
The yellow protector concealed a run-of-the-mill CR2032 3-volt “coin”-type battery, and nothing more. The remote for my BOSE speakers uses one, as does my hand-held luggage scale. They also power the light on proctoscopes, in case you were wondering what kind of batteries yours took:
You can buy them in 5-packs at your local drug store, and their unit price comes to about 50 cents each.
I have a bunch of them in my drawer, and could’ve simply taken the connector from my dead battery and taped it to a fresh one. The red lead goes to the battery’s + side, while the black lead goes to its – side:
The money doesn’t bug me as much as the missed DIY opportunity, even if it was an incredibly minor one. I’m posting this for the benefit of anyone who has to replace a CMOS battery soon: You can do it without shelling out for an “official” battery!
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.
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.
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.
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: