I have become very interested in patterns that cause software code to end up in the famous big ball of mud. One of the phenomena that I want to explore today is the fact that every business decision leaves a trace. This article includes a tourist guide for those interested in diving into the code... Continue Reading →
The Trouble With Platforms
It almost seems like a rite of passage: Every company sooner or later discovers they need to build a “platform”. The idea is simple: If you find the common denominator behind the company's development activities, you can build the tooling that allows future projects to be more cost-effective provided they make use of the same... Continue Reading →
On CV-Driven Development
When someone first mentioned the term CV-driven development to me, I remember finding it both extremely apt and equally funny. The concept describes the propensity of software professionals to select a tool not only by its ability to do the job but by its effect on the engineer’s career prospects. Indeed, some risky bets on... Continue Reading →
Problem Space and Solution Space
An extremely fundamental concept that is influencing most of my thinking around software projects is the distinction between the problem space and the solution space. It is one of the best models that I have found so far to think about the software development process on an abstract level. In this article, I would like... Continue Reading →
Software Projects and the Tower of Babel
The biblical myth of the Tower of Babel mourns what humanity had been capable of, had the Lord not chosen to confound our languages lest we learn to work together effectively. I want to argue that even teams that share a common mother tongue get lost in translation more often than we might think and... Continue Reading →
The Inverse Darwinism of Software Projects
I have become increasingly interested in understanding why it is so common for softwares projects to end up in the famous “Big Ball of Mud”, a state in which the incidental complexity of a system reaches a point that makes every small modification extremely painful. Only once we understand the reasons we can design strategies... Continue Reading →
Integrate Astrid with Thunderbird
The story of how I tried to make Astrid and Thunderbird talk to each other.
Training a POMDP (with Python)
A tutorial on how to learn a Partially Observable Markov Decision Process with Python
Hello Yampa
A log of my learning experience