Sniffnet, what makes a good team, 7 things after 25 years, writing a good design doc, codename goose, Temporal is coming & more!

Changelog News

Developer news worth your attention

Jerod here! đź‘‹

Last week’s freak out about DeepSeek subsided after people realized that its $5.6 million price tag was “just the GPU cost of the pre-training run” and the actual total cost is likely up in the billions where we’d expect it to be.

This week’s freak out is all about the tariff-induced trade war. What will next week’s freak out be? Hang tight, friends. I’m sure the writers will come up with something…

Ok, let’s get into what’s new in the software world.


🎧 Turso is rewriting SQLite in Rust

Glauber Costa joins us to discuss libSQL, Limbo & rewriting SQLite in Rust! VIDEO

Art for the episode: Smiling faces. Title text. That kind of stuff.

đź“Ť Everyone knows your location

After learning of a massive data leak that exposed 2k+ apps secretly collecting geolocation data without user consent, Tim “Sh” looked into the list and found three apps he has installed on his iPhone in the list. That gave him an idea… could he track himself down externally, e.g. to buy his geolocation data leaked by some application?

So, he grabbed an old iPhone 11, restored it to factory defaults with a brand new Apple ID, set up Charles Proxy to record all traffic coming in/out, installed a single game (Stack by KetchApp), and logged all his findings. The results are troubling, but not surprising. He even made a flowchart of the data coursing its way through the network.

A flow chart (left to right) of data flowing out of your phone, through SSP/DSPs, and landing in data brokers and advertisers hands

This is the worst thing about these data trades that happen constantly around the world - each small part of it is (or seems) legit. It’s the bigger picture that makes them look ugly.

🕵️‍♂️ Comfortably monitor your Internet traffic

After a story like the above, I figured you might want a quick and easy way to monitor your network traffic… Sniffnet is a cross-platform app (written in Rust) that looks like a great, free option. Here’s what sets it apart:

Sniffnet is a technical tool, but at the same time it strongly focuses on the overall user experience: most of the network analyzers out there are cumbersome to use, while one of Sniffnet’s cornerstones is to be usable with ease by everyone.

Sniffnet screenshot: Overview tab shows traffic rates chart over time,top network hosts, etc

🤝 What makes a good team?

It’s easy to know a bad team when you see one. Likewise, good teams are often evident. Most teams, however, are somewhere in the middle. So what actually makes a team good? Cate Huston takes a crack at answering that by listing out attributes of good teams.

Clarity of purpose (people understand why the team exists) and defined work streams aligned with that purpose (people understand what the team is doing, and why) are where she starts. Layer in good communication and connectedness, and Cate thinks you’re off to a great start. From there, it’s all about fundamentals:

Good delivery fundamentals – the team delivering its purpose, consistently and over time

Good people fundamentals – the necessary ongoing maintenance work for any team

Good process fundamentals – the base level organization that facilitates team effectiveness

đź’° How coding AIs will support large-scale engineering

Thanks to Augment Code for sponsoring Changelog News

This post is from Scott Dietzen, CEO of Augment Code. The TL;DR:

Large, long-lived software projects are essential for human endeavor, but profoundly hard to craft and evolve. Today’s coding AIs come up well short of solving the real pain points of software engineering. Augment Code is empowering teams to overcome these challenges — from inspiration to software excellence easily and quickly.

His “7 essential beliefs for delivering an AI for software engineering‍” are well illustrated. The seventh one will shock you! Just kidding, I hate when people do that. The seventh one is, “AI will actually increase demand for software engineers”…

đź‘´ Seven things I know after 25 years of dev

Victor Shepelev, drawing on 25 years of coding experience and 10 years of war experience. Yes, actual war. Victor is a Ukrainian who serves in the Armed Forces. This post is a loose transcript of a keynote he gave at the EuRuKo conference in September 2024. I’ll give you his seven things, but definitely click through for some deep insights on each one:

  1. You outgrow every framework
  2. Patterns and methodologies fail
  3. Scale only grows with time
  4. Pay attention to stories
  5. The goals are truth and clarity
  6. This might be a lonely experience
  7. Never give up seeking truth

đź“ť Writing a good design document

I made a short plea for design documents (just give us a paragraph, please!) while discussing documentation strategies on Friends a couple weeks back. In this post, Grant Slatton does a much better job of discussing the topic, because he actually tells you how to do it (well). What’s a design document?

A design document is a technical report that outlines the implementation strategy of a system in the context of trade-offs and constraints… Think of a design document like a proof in mathematics. The goal of a proof is to convince the reader that the theorem is true. The goal of a design document is to convince the reader the design is optimal given the situation.

Grant lays out your goal when writing, how to organize it, editing, and more. Then, he drops a bunch of nice tips he’s learned over the years: use short paragraphs, use an appendix, etc. Useful stuff!


🎙️ Over the top auth strategies

Dan Moore from FusionAuth joins us for a wide-ranging discussion about modern auth strategies. We talk magic links, OTP, MFA, passkeys, password managers & so much more. VIDEO

Art for the episode: Smiling faces. Title text. That kind of stuff.

🪿 Introducing codename goose

The team at Block have open sourced an on-machine, AI agent built to automate your tasks.

Powered by your choice of large language models (LLMs), a user-friendly desktop interface and CLI, and extensions that integrate with your existing tools and applications, Goose is designed to enhance your productivity and workflow.

You can think of Goose as an assistant that is ready to take your instructions, and do the work for you.

⌛️ JavaScript Temporal is coming?

The headline doesn’t sound like news as JavaScript’s new Temporal object has been coming for so many years now, but SERIOUSLY GUYS WE’RE CLOSE THIS TIME! Here’s MDN’s Brian Smith:

We’re a long way away from stable, cross-browser support, and there may be changes as implementations develop, but we can already take a look at Temporal as it stands now, why it’s exciting, and what problems it solves.

Dang, I got excited there for a minute. Jumping straight down to the browser support section… looks like Firefox has it in their Nightly build and both Crome & Safari are working on it.

🥯 An expense tracker that lives in your terminal

Tired: “There’s an app for that”
Wired: “There’s a TUI for that”

Screenshot of the Bagels TUI: Spending line chart on the left, categories and people on the right


🗡️ It’s dangerous to go alone…


That’s the news for now, but this is issue #130, so that means it’s time once again for some Changelog++ shout outs!

SHOUT OUT to our newest members: Maryam M, Ceri H, Samuel R, Seth H, David J & Marcel B!

We appreciate you for supporting our work with your hard-earned cash!

(If Changelog++ is new to you, it is our membership program you can join to ditch the ads, get in on bonus content, receive a free sticker pack in the mail & get shout outs like the ones above. 👆)

Have a great week, forward this to a friend who might dig it & I’ll talk to you again real soon. 💚

–Jerod