May 11, 2021

Safe coding

Testing is pretty uncontroversial these days, most people involved in software engineering will at least pay lip service to the idea that code should always be tested. Although all tests are equal, some are more equal than others. Over the years I’ve come to think that the best tests share the same overarching design philosophy. I think working in a well tested codebase is truly an eye opening experience, it is radically different from working in the (more common) “hacked together with duct tape and prayers” kind of projects. Read more

April 17, 2021

Software as a cost center

I think it’s fair to say that most devs will cringe at their department being called “IT”. It evokes images of old fashioned big faceless corporations, as parodied in the show “The IT crowd”. Generally when someone uses the term “IT”, it betrays the paradigm through which they view developers: software as a cost center. Developers in this model are a resources whose costs are to be carefully managed, they are solely here to keep the machines running, not decision makers or a core part of the business. Read more

October 2, 2019

The scientific framework is in dire need of an update

For a discipline that prides itself on its ability to question the status quo, the way in which we do science has not changed much since the scientific revolution. This conservatism in methods has become so entrenched that it can start to feel unavoidable, and a whole ecosystem of self-interested parties has emerged to defend it. It feels almost transgressive to suggest that we can do better, to the point that I often feel like a madman when talking about the subject. Read more