The Changelog

Ladybird, how QR codes work, GitUI, software vs systems & Stable Diffusion ported to Tensorflow

Changelog News for 2022-09-19


All Episodes

Andreas Kling’s new cross-platform browser project, Dan Hollick’s nerdy deep-dive on QR code tech, Stephan Dilly’s Rust-based terminal UI for Git, Miłosz Piechocki’s opinion on junior vs senior engineers & Divam Gupta’s Tensorflow port of Stable Diffusion.


Notes & Links

📝 Edit Notes



📝 Edit Transcript


Click here to listen along while you enjoy the transcript. 🎧

It’s Monday again…

I’m Jerod and this is Changelog News for the week of Monday, September 19th 2022.

If you dig these News episodes, maybe tell a friend about the podcast. That’d be a cool thing to do, I think.

Let’s get into it.

First up, Ladybird. A new cross-platform web browser from Andreas Kling, creator of SerenityOS. In his announcement blog post, Andreas says: “Since starting the SerenityOS project in 2018, my goal has been to build a complete desktop operating system to eventually use as my daily driver.

What started as a little therapy project for myself has blossomed into a huge OSS community with hundreds of people working on it all over the world. We’ve gone from nothing to a capable system with its own browser stack in the last 4 years.

Throughout this incredible expansion, my own goals have remained the same. Today I’m updating them a little bit: in addition to building a new OS for myself, I’m also going to build a cross-platform web browser.”

He originally imagined Ladybird as a debugging tool, but two months later he finds himself using it for most of his browser development work. So, the project is being upgraded from a browser engine for SerenityOS to a cross-platform browser engine.

This ain’t your typical Chromium fork. Both LibWeb and LibJS that drive Ladybird are novel engines.

Andreas works on these projects full-time thanks to his generous supporters on GitHub Sponsors, Patreon and PayPal. Pitching in your hard-earned cash at this point would go towards paying other devs full-time to join him.

Check out Ladybird and if you want us to host Andreas on The Changelog, let us know (and ping him too while you’re at it.)

Ever wondered how QR codes work? Dan Hollick takes us down the rabbit hole…

This is a nerdy deep-dive on the inner workings of this once-maligned but turns-out-actually useful tech. Finder patterns, Quiet zones, error correction and maskings abound in Dan’s highly visual and surprisingly easy to follow article. He saves the coolest fact for the end, which I’ll spoil for you now because why not right?

Dan says, “Perhaps the coolest thing about QR codes is that Denso Wave, the company that invented them, never exercised their patent and released the technology for free!”

That’s super cool. And to celebrate, here is an entire minute of cold and ice-related puns delivered by Arnold Schwarzenegger as Mr. Freeze in 1997’s Batman & Robin. The best-worst Batman movie in cinematic history.

From cool to hot, GitUI is a blazing fast terminal UI for Git.


Stephan Dilly does most of his git work in a terminal, but frequently found himself using git GUIs for some use-cases like: index, commit, diff, stash, blame and log. Unfortunately, he found that popular git GUIs all fail on giant repositories or become unresponsive and unusable. So he built GitUI, which provides you with the UX and comfort of a GUI but right in your terminal while being portable, fast, free and open source.

My usage mirrors Stephan’s. I use the command-line for 90% of my git interactions, but I do appreciate a GUI for staging and commiting changes. For years I used rowanj’s GitX-dev fork, but it eventually fell into disrepair so I switched to GitUP, which I like.. but don’t love.

So, I’m super-excited to try GitUI for myself. I’d love to hear how you get your git on, and the tools you use to do so. Let me know in the comments.

Here’s a long-standing question in the software world: what differentiates a junior engineer and a senior engineer? Miłosz Piechocki wrote up his thoughts on the subject. In brief: Junior Engineers care about writing software and Senior Engineers care about building systems.

What’s the difference?

Miłosz says writing software includes things like code quality, best practices, adopting cutting-edge technologies with the ultimate goal of creating elegant, performant, maintainable software.

Building systems, he says, means creating software is just one of the steps. You must also question whether the software needs to be built in the first place, ask what problems would it solve and why it’s important to solve them, inquire who will be using the software and on what scale. Stuff like that.

These are just Miłosz’s thoughts. I’m sure you have your own. Let us know in the comments. There’s a link to the discussion thread for this episode in your show notes.

Stable Diffusion continues to break the internet.

Divam Gupta, creator of the Diffusion Bee macOS app I referenced on the podcast, has ported the Stable Diffusion model to Tensorflow with Keras. This implementation is easy to understand, being about 500 lines of code, runs about 4 times faster on his 8GB M1 Macbook Air, and perhaps most importantly, brings the game-changing model to a whole new set of users and hackers.

What will happen next? I have no idea! But I can heartily recommend the Stable Diffusion subreddit to keep up with the latest.

That is the news for now. We’ll be back on Friday with an old friend, Lucas Da Costa returns to The Changelog for the first time since 2019. Back then he was telling us about his text-mode life. This time, we’re discussing his recent writings on product development structures, which Lucas sees as systems, not art or a series of guesses.

Velocity, scrum, stand-ups, TDD, sprints… all modern development practices will be questioned. There are no sacred cows on Friday’s episode.

Have a great week, we’ll talk to you then.


Our transcripts are open source on GitHub. Improvements are welcome. 💚

0:00 / 0:00