This website does not display correctly in Internet Explorer 8 and older browsers. The commenting system does not work either in these browsers. Sorry.

Welcome! I'm Erik Dörnenburg, a software developer and consultant. I work at ThoughtWorks where I help our clients write and deliver custom software.

Somehow I also find time to speak at conferences and to maintain a couple of open source projects.  more

News and Events

Nov 2018: Presentations of the new ThoughtWorks Technology Radar will be in Berlin, Cologne, Hamburg, and Munich, between 14 and 22 December. more

1 Nov 2018: At the GOTO Berlin conference Stefan, Uwe, and I will talk about how to build a consultancy people enjoy working for. more

Latest blog posts

Podcast on Serendipitous Events published

11 Feb 2019

At the last meeting of the Doppler group, where we create the ThoughtWorks Technology Radar, my colleagues Evan, Neal, Zhamak and myself had a discussion about "serendipitous events". This is the idea of publishing events without knowing whether anyone will consume them, in the hope to create moments of serendipity, where someone discovers information in the enterprise that they can use to create new value. It's an intriguing idea that is too complex to fit the short description we can put on the radar.

Path to DevOps article published in IEEE Software

05 Oct 2018

The IEEE Software magazine’s September/October issue is about Software Engineering’s 50th Anniversary. I contributed an article that is loosely based on my DevOps talk. It is available without subscription here (PDF).

Rust: My first impressions

07 Sep 2018

At work I’m seeing more and more embedded software; over the past few years in, among others, coffee machines, forklifts, and cars. Embedded software needs to be fast and extremely efficient with hardware resources. In some cases it not even acceptable to have a tiny break for some garbage collection. So, typical tech stacks for backend development can’t be used, never mind anything that uses browser technologies. Unsurprisingly, almost all embedded software is written in C++, and, in fact, that is also what I used recently for a personal project with a micro-controller.

Now, if you’ve programmed in C++ you probably didn’t find the experience all too pleasant or productive compared to the developer experience we have in modern web development (server as well as browser). I certainly feel that way, and it seems like I’m not alone. Three hugely influential IT organisations, who had to deal with writing code in C or a C-based language, each decided to invent an entirely new programming language just so that they had a an alternative. The organisations are Apple (Swift), Google (Golang), and Mozilla (Rust).

My personal experience with Swift, when I wrote the Dancing Glyphs screensaver a couple of years ago, was mixed at best. I understand that a number of design decisions in the language that annoyed me as a programmer were made to help the compiler/optimiser generate more resource efficient code, ultimately giving the users longer battery life. Looking through the remaining choices, I went past Golang, which uses garbage collection, and set my eyes on Rust.

In this post I’ll describe my first impressions, some of the frustrating moments, but also the extremely impressive performance on a larger piece of code.

Read the rest of this entry

more blog posts

Popular content

Open Source projects:



Active Github repositories


all repositories