One of my favorite articles on the ‘net is Daniel Stenbergs “I could rewrite CURL”. In that article he shares a series of snippets of people stating that they could, if they really wanted to, rewrite one of the most used pieces of software in the entire developer sphere, with 28 years of legacy, in N-days. Easily. It humerously points at a very human tendency of overestimating…
One of the hardest things for me to grokk in enterprise programming, was dependency injection (DI). Namely because that word already had a meaning to me, which didn’t require a lot of book readin' to understand. In functional programming, DI means passing functions to functions. Here’s an example function (Erlang): -module(example). -export(add_one/1). add_one(N) - N + 1. Easy peasy;…
Often when browsing the internet, I bump into websites that look like this: Preamble The GNU General Public License is a free, copyleft license for software and other kinds of works. The licenses for most software and other practical works are designed to take away your freedom to share and change the works. By contrast, the GNU General Public License is intended to guarantee your freedom to share…
It’s 1975. The programmers have come back with the FORTRAN code, now in punch card form. The cards are taken back, with great consideration as to not to drop them, over to the mainframe. By the time they’ve been fed in, read, compiled, linked and executed by the computer, it has taken more than a week for the result to come back "[File name specification error]". At this stage, the…
Twenty years ago, I wrote my first piece of Erlang. I was a kid, and hadn’t yet experienced the gripes and stresses of developing software to be used by other people. I loved to program and build things, but those things were for myself, under no deadline, on one machine. Many years later, I started working as a developer. It took some time to get used to enterprise programming, and the…
I love static websites. I wrote my first one in 1998, when I was eight years old. Back then, HTML3 and CSS2 were the cutting edge technology for making just those. Over 20 years later, not much has happened to further this goal. And for good reason; it already worked. Well. The generator I’m using for this blog, Hugo, builds and serves a webpage during active development in roughly 20ms.…