The Changelog: Software Development, Open Source - Ladybird, how QR codes work, GitUI, software vs systems & Stable Diffusion ported to Tensorflow (News)
Episode Date: September 19, 2022Andreas 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 engin...eers & Divam Gupta's Tensorflow port of Stable Diffusion.
Transcript
Discussion (0)
It's Monday again.
Just another manic Monday.
Wish it was Sunday.
That's my fun day.
I'm Jared 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. All right, let's get right into it.
First up, Ladybird, a new cross-platform web browser from Andreas Kling, creator of SerenityOS.
In his announcement blog post, Andreas says, quote, since starting the Serenity
OS 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 four 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, end quote.
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 Serenity OS to a cross-platform browser engine.
This ain't your typical Chromium fork. Let me upgrade you, upgrade you. Panna, panna, panna. Let me upgrade you.
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 Lady Bird, and if you want us to host Andreas on the changelog, let us know.
And let him know, too, while you're at it. That usually helps make it happen.
Have you ever wondered exactly 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 technology. is a nerdy deep dive on the inner workings of this once maligned, but turns out actually useful,
technology. 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 right now because why not, right? Dan says, quote, 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 and Robin,
the worst Batman movie in cinematic history.
Take it away, Arnold. The Ice Age! Stay cool, bird boy.
Let's take some ice.
Show some mercy.
I'm afraid that my condition has left me cold.
To your pleas of mercy.
All right, everyone.
Chill.
It's a cold town.
Cool party.
Can you be cold, Batman? Chill. Hey everyone! Chill! It's a cold town. Cool party! Ha ha ha ha ha ha!
Can you be cold, Batman?
Chill!
To perfection!
Revenge is a dish best served cold.
Winter has come at last.
Freeze.
Freeze ice!
Freeze icy winter fiber frozen icy.
Freeze winter ice. Ice freeze winter winter! Freeze ice. Freeze icy winter fiber. Frozen icy freeze winter ice.
Ice freeze winter winter.
Freeze cold frosty.
From cool to hot, Git UI is a blazing fast terminal UI for Git.
Smoking!
Stefan Dilley 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 the popular
Git GUIs all fail on giant repositories or become unresponsive and unusable. So he built Git UI,
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 Stefan's.
I use the command line for about 90% of my Git interactions, but I do appreciate a GUI
for staging and committing changes.
For years, I used RoenJ's gitx-dev fork, but it eventually fell into disrepair, so
I switched to GitUp, which I like, but I don't love.
So I'm super excited to try GitUI for myself. but it eventually fell into disrepair, so I switched to GitUp, which I like, but I don't love.
So I'm super excited to try GitUI for myself.
Here's a long-standing question in the software world.
What differentiates a junior engineer from a senior engineer?
Milaz Piaczki 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? Malaz says writing software includes things like code quality, best practices,
adopting cutting-edge technologies with the ultimate goal of creating elegant,
performant, maintainable software.
On the other hand, building systems 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 Malaz'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.
I'm starting to understand
why people like this game.
Very zen.
Devam Gupta, who's the creator of the Diffusion B
macOS app that 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.
It runs four 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 secret cows on Friday's episode.
Have a great week.
We'll talk to you then.