Computing with a Mac Again

Page content

My First Mac

In July of 2012, I bought my first Macbook. It was a low-end model with the minimum RAM configuration and a 13-inch screen. I had come up through the ranks of 8-bit computing and I’d had a dalliance with the 16/32-bit Commodore Amiga, but I had spent most of my time with Intel-based PC’s running Microsoft operating systems. I wanted to try a few new things including writing an iOS app, at the time. I never published an iOS app, by the way.

I used that Mac for all sorts of things and I really grew to like it. I just wore it out, though. On one sad day in 2020, my little Macbook had a hard-drive failure. I was able to bring up the system in an all-RAM recovery mode, but I didn’t see the point. The newer Macbooks seemed to be outpacing them and I wasn’t sure that I wanted another one. I had become disillusioned with Macbooks in 2015 when they removed the ESC key. I went back to Windows laptops for a while.

Laptops and Podcasts

I publish a podcast called Stray Pointers. The podcast had initially been published in an audio-only format. My existing Windows laptop (which was a couple of years old) was more than adequate for the task of running Audacity and some ffmpeg scripts. However, I found that more people were tuning in to the podcast if it had video content. At that point, I began publishing with video.

I was working with some free or low-cost tools but it was just becoming tedious to edit the video for these shows. ffmpeg has been my reliable Swiss-Army-Knife to help with most things but when I needed to interactively edit video, I found that I wasn’t always able to do that comfortably on that laptop.

Macbook - Day One

I had been thinking about getting another Macbook for a few months, but I finally pulled the trigger yesterday. I bought an M4 Macbook with 36GB of RAM, more cores than I will likely ever use, and a bunch of other features. I spent some time that afternoon getting reacquainted with MacOS and the keyboard layout.

I set the trackpad so that I could just tap instead of having to push to click. I’d done that on my previous Mac.

I had to disable the capslock key. It seems like I’d had to do that before because my gorilla fingers kept hitting it while typing. I found that to be a handy configuration setting! There must be gorillas using Macbooks other than just me.

I noticed that the new default shell is the Z Shell and not bash. (I had heard about this some time ago.) I had the default shell changed back to bash for a while, but Apple has this annoying message in their bash startups that try to goad you into switching back to zsh. I did. It’s not like it matters … I can put the hashbang address of #!/bin/bash in any script that I want to run under bash and we’re good to go.

I checked the version of Perl. Seems recent. I checked Python. Not so recent and you still have to call out python3 as the executable name. Seems like people have had issues updating it. Not a huge deal for me yet.

I installed Homebrew, which installs XCode.

I brewed ffmpeg and Go. I might’ve done that for one more program but I can’t remember what.

I installed FileZilla as an FTP client and I installed VLC to watch videos/listen to audio.

I edited a few things with Vim. Using Vim was mostly very natural. I’ve forgotten how to delete blank lines so I think I need to do a refresher on things like that and copy/paste.

I’m sticking with Safari as the browser for now. I had never switched to anything else on my old Macbook and I really don’t see a reason to switch now.

I edited a video using iMovie. Well, I tinkered a bit. I didn’t actually do any editing. I had to convert one of my podcast episodes to .mov / QuickTime format before iMovie would process it. The conversion of the MP4 to MOV format went very quickly using ffmpeg. I’ve done the same on the old Windows machine to use as benchmarks. The elapsed time to convert a 43-minute MP4 file to QuickTime MOV format was 6 minutes 15 seconds. On the new Macbook, the same conversion took 56 seconds. I appreciate the faster conversion times as the last stage of my podcast-publishing workflow involves some ffmpeg scripts.

I’ll need to spend some time learning how to use iMovie.

Macbook - Day Two

I haven’t really done a whole lot with the machine today other than some tinkering. I decided that I needed some kind of GUI that would let me run scripts that I’d need to use now and again. I suppose I could have used Python/Tkinter to build something. I was kind of leaning toward something native. I was tempted to install Lazarus/FreePascal and build the GUI with that tool, but I wanted to keep the size of the executable file small. I decided on an Objective-C program. The only problem is that I’ve never written an Objective-C program that uses the Cocoa UI. Okay … off to ChatGPT.

Here’s the request that I posed to ChatGPT:

Can you write a single-file Objective-C program for MacOS Sequoia that presents a small GUI with five pushbuttons? Each pushbutton should invoke a script that I will fill in later. The code should be easy enough to modify to add additional buttons.

ChatGPT provided exactly what I had asked for. However, it suggested that instead of setting up the buttons in the code, perhaps the program would be better if it read in the list of buttons and the counterpart script names from a configuration file. I asked it to generate that code. ScriptLauncher was born. Here are some entries from my ~/buttons.cfg file:

Backup = /Users/jim/scripts/backup.sh
Update = /Users/jim/scripts/update.sh
Launch Server = /Users/jim/scripts/start_server.sh
Open Logs = /Users/jim/scripts/show_logs.sh
Quit App = /Users/jim/scripts/quit.sh

The UI that is displayed based on this configuration is :

Finding My Way

I’m sure that I’m not using the new computer idiomatically at this point in time but, I’ll get there. I’m very happy with the new machine.