Rob Fahrni

Follow @fahrni on

Saturday Morning Coffee

Good morning from Charlottesville, Virginia! ☕️

Cold EspressoWelcome to this Special Sunday Edition of Saturday Morning Coffee. What makes it special you ask? Nothing! 😆

Kim, my lovely bride, let me sleep in yesterday. It was glorious! And since we had plans to be out of the house by around 10AM, well, that meant I couldn’t put things together yesterday. Now you know why you’re seeing this on Sunday.

Grab some coffee and enjoy the links!

Adele Peters • Fast Company

Last Saturday, as 39 million Californians went about their daily lives—taking showers, doing laundry, or charging their electric cars—the whole state ran on 100% clean electricity for more than nine hours.

I find this very encouraging and I believe it’s only going to get better.

Down the hill from where we live one of our power providers is installing a large field of solar panels. I don’t know how large it is or how much power it’ll generate, but I’m here for it.

Naomi Hartono •

For the first time since November, NASA’s Voyager 1 spacecraft is returning usable data about the health and status of its onboard engineering systems.

Engineers this smart blow my mind.

“Oh, the thing I need to repair is millions of miles away? No problem.” 😳

Rick Perlstein • The American Prospect

And that’s when the man in the castle with the seven fireplaces said it.

“I’m glad there’s OxyContin and video games to keep those people quiet.”

Andreessen is another piece of Silicon Valley garbage. Even if he said he was joking there’s always a nugget of truth in there. I’d say he really believes what he said.

Jesse Wegman • New York Times 🎁

Trump’s Immunity Case Was Settled More Than 200 Years Ago

That seems about right. We’ve managed to have 240+ years of Presidencies without one committing crimes against the nation that I doubt our founding fathers expected it to happen like this.

Trump is a rapist and a mob boss looking to use the Presidency as his own personal piggy bank.

I hope the Supremes do the right thing and declare the President isn’t above the law.

Wojciech Kulik

In my previous post, I just scratched the surface of iOS development in Neovim. Since then I discovered many new things that allowed me to move my development almost completely to Neovim.

If you’re really good with keyboard commands this could be the editor for you. I’ll stick with Xcode and BBEdit. 😄

AJ Willingham


Better be careful! The Swifties won’t be happy!

Remember the hubbub caused by Tool releasing their first album in 13 years keeping Ms. Swift’s new album out of the top spot? I do. It was kind of funny.

She’s a cultural phenomenon and apparently a very kind, caring, human being. What’s not to like?

John Viega

A few weeks ago, I got a bit miffed reading yet another article that was too dismissive about memory safety, basically being mostly dismissive about the need for change. The following weekend, I started seeing flippant responses from security luminaries, saying essentially that you’re irresponsible and dangerous unless you drop C and C++ faster than I dropped my 8 am classes my first year in college.

I’m an old curmudgeon and I still love C++ as a development language, especially if you’re doing something that needs to be cross platform. But, I certainly understand the trend and the desire to move to memory safe languages. Swift and Rust are both great choices. Swift has made development on Apple OS’es easier and safer. I love it! Rust is on my to learn list but given my latest project is React Native it makes more sense for me to learn JavaScript. Rust will have to wait.

Jonathan M. Gitlin • Ars Technica

Honda announced today that it will spend $11 billion to expand its electric vehicle manufacturing presence in North America. The Japanese automaker already has a number of factories in the US, Mexico, and Canada, and it’s this last one that will benefit from the expansion, with four EV-related plants planned for Ontario.

That’s a lot of money and it’s interesting it’s happening in Canada instead of the US.

Here’s to Honda building better, more affordable, EV’s than Tesla.

Gary Bernhard • Destroy All Software

This science fiction / comedy / completely serious talk traces the history of JavaScript, and programming in general, from 1995 until 2035. It’s not pro- or anti-JavaScript; the language’s flaws are discussed frankly, but its ultimate impact on the industry is tremendously positive. For Gary’s more serious (and less futuristic) thoughts on programming, try some Destroy All Software screencasts.

It’s easy to poke fun a JavaScript but equally as important to understand how important it’s become to our industry.

Dick Uliano •

Archeologists have made a remarkable find at George Washington’s Mount Vernon in the ground beneath the cellar — two sealed bottles containing plump cherries.

Very cool! Now what? Who wants to open a jar and eat one? I kind of do, but there’s no way that’s gonna happen. 🤣

Did you know that while George Washington was away fighting the American Revolutionary War he was also writing home to instruct his brother how he wanted his home renovation to proceed. Then he’d go off and fight some redcoats.

Alex Franchuk • Mozilla

Porting a cross-platform GUI application to Rust

This is something my cross platform loving brain could get behind. The Mozilla team rewrote — not something I recommend — their crash reporting tool in 100% Rust. Nifty!

That included writing four abstractions for different UI toolkits; Mac, Windows, Linux, and one for testing. So three plus. 😄 Love it!


The possibility of a TikTok ban is inching closer to becoming a reality at this point. On Tuesday, the Senate passed the bill that would bar the social media platform from operating in the U.S. unless ByteDance, its Chinese parent company, sells its stake.

So this was earlier in the week. The President signed it. Now ByteDance has nine months to get the deal done or pull out of the United States.

I still feel like this could’ve been handled differently but I have no idea what that would entail.

Jordan Rose

So let me re-iterate: the three-and-a-half features listed at the top are the only forms of run-time polymorphism in Swift. Now when someone asks “how can I allow arbitrary different argument types to result in different behavior”, you know the answer: make a protocol.

You heard the man! Make a protocol! That will cause the compiler to enforce the contract between your implementation and the definition. You’re obliged to implement it.

If you only need to know an object “is-a” thing that protocol doesn’t actually need to define any properties or methods. Yes, it can be that simple.

Manton Reece

Ghost has announced they are working on ActivityPub support

Manton has been on the open standards software train for years and years. That’s why implements ActivityPub, BlueSky’s AT Protocol, and Micropub. is a great blogging tool for $5/month. I use it to post here.

Seth Godin

Don’t ignore AI because it’s dumb. Figure out how to create patterns and processes where you can use it as the useful tool it’s becoming.

Keep in mind that AI is just another tool, created by humans, full of flaws. Yes, it’s extremely useful, yes it can get things wrong. But, it’s still growing and changing. Hopefully it’ll will get better over time.

Tiny Apple Core