RSSAmplifier

Blog

The Ivory Tower

The Ivory Tower is a blog about software engineering and development philosophy by Anders Sundman.

4zm.orgRSS feed ↗10 posts

Latest posts

Building Awesome APIs

Building Awesome APIs I've recently delivered two talks on API design best practices for libraries . First at ACCU 2025 and then again in the Stockholm C++ Meetup . It's a fun topic and even if the presentations start out the same way they soon diverge both in style and contents.

The Bitter Prediction

The Bitter Prediction I'm one of many developers experiencing the whirlwind emotional phases of AI's introduction: dismissal, disbelief, excitement, and acceptance. But after working with Claude, Copilot, and Gemini for a while, I have concerns...

Low, Lower, Lowest Level Programming

Low, Lower, Lowest Level Programming How low can you go? When it comes to embedded programming, the 'full stack' starts at the PCB. In a recent talk at our local C++ meetup in Stockholm, I explored this in depth. Let's find out what's at the end of the rainbow by diving into topics like memory management, interrupt vector tables and electronics!

A Simple ELF

A Simple ELF Let's write a simple program for Linux. How hard can it be? Well, simple is the opposite of complex, not of hard, and it is surprisingly hard to create something simple. What is left when we get rid of the complexity from the standard library, all the modern security features, debugging information, and error handling mechanisms?

ELF Shenanigans - Holiday Special

ELF Shenanigans - Holiday Special Did you know that it's possible to use ANSI color codes and emojis in the section names of yor ELF binaries? I didn't. So, I had to try, and objdump output has never been prettier. 🎄

Git - Beyond the Basics

Git - Beyond the Basics How well do you know Git? Many of us use it daily and pick up the basics as we go. After a few years, you might start to think that you know Git pretty well. But there are more things in the Git man pages than are dreamt of in your philosophy...

Control is an Illusion Anyway...

Control is an Illusion Anyway... Code review is an indispensable practice in any self-respecting software engineering organization. We get higher quality code and knowledge sharing. It's awesome. But, it’s also not awesome. To be honest, it can be a nightmare. Sometimes we get blocked for days waiting for approval or end up in a never-ending context-switching game of review ping-pong.

Steal this Class

Steal this Class Class design in C++ is hard. Really, really, hard. I love C++ but, sadly, all the defaults are wrong.

Welcome to the Jungle

Welcome to the Jungle Your coding conventions, branching strategy, and review guidelines may seem like superficial policy hygiene. But these, along with seemingly random and disconnected activities like fixing a flaky unit test, are connected and can have a profound impact on how your team works with code.

State of the Art Python in 2024

State of the Art Python in 2024 Software development is about making choices. But available options change and so do the tradeoffs. Are you up to date with the best practices for creating a Python application in 2024? Let’s take a look at some great default choices.