Category: Coding

  • From Clojure to Ruby

    Back in 2017, when dinosaurs roamed the earth and I got my first coding job, I was super excited about Clojure. And what’s there not to be excited about? It’s super fast, it’s concise, and it’s a lisp. But now I’m coding in Ruby. Why? Superficially, Ruby and Clojure are similar (bear with me): They’re…

  • Become a Full-Stack Person

    Let’s look at how most software is developed. I’m not talking about those shiny SaaS products like Slack. Those were built for developers, by other developers. No, I’m talking about the large underwater iceberg of boring software running enterprises, governments, hospitals and nuclear reactors. Real-world software. Software outside the Silicon Valley tech bubble. How does any such…

  • The (Un-)Natural Progression of Machine Learning

    Machine Learning is everywhere. Unfortunately. Most industries aren’t ready for it. We tend to ignore the natural progression of software. To illustrate this, let’s look at an example: Written communication. In the beginning, there was no software. There were only paper letters, typed on a type writer and sent off via snail mail. Communicating was…

  • Don’t Be an Engineer, Be a Producer

    I’m currently reading Range by David Epstein [1]. I was deeply impressed by the section about Gunpei Yokoi, the guy at Nintendo who was the driving force behind the NES and Game Boy. I have fond memories of the Game Boy; everyone who was a kid in the nineties does. This awesome thing you could hold in our hands,…

  • Abstracting Light Switches: How to Solve Real Problems

    Zigbee-enabled light bulbs. Wifi-connected air purifiers. Autonomous thermostats. The smart home. Great technology. And just like with machine learning and blockchain, we humans don’t quite know yet what to do with it yet. Similar to those technologies, the smart home offers solutions for non-existent problems. Now I can control my light bulbs from an app…

  • We need more Hackers

    The Hacker’s First Project When I was a kid, I wanted to code my own website. I was already using Dreamweaver to crank out static HTML web pages but this was different. I needed to learn PHP to create a website which would earn passive income for the rest of my life. Very important! The…

  • Thread-safe queues in Clojure

    Imagine the following: You have a pool of workers. Each worker should get an item from a queue and process it. Using “workers” from core.async Great! How do we launch those workers? Let’s use core.async for that, specifically go: By the way, core.async has a fixed-size thread pool of 8 workers, but that’s stuff for another post. Every time dotimes runs with…

  • The Correlation Project

    As a coder, concentration and mental focus become very important. Writing code is a very brain-intense activity which makes daily fluctuations of mental focus very obvious. I already noticed this while studying medicine. Luckily, studying medicine is not an activity which requires a lot of brain activity (it’s more about being organised). When I started…

  • Writing a HTTP API Client in Elixir for the Noun Project

    Doing some HTTP requests is usually one of the first things I do when I’m learning a new language (apart from comparing its performance in highly artificial benchmarks and checking whether it scales). Of all the “up-and-coming languages with great concurrency” Elixir is one of the most promising. While the community is awesome, the library…

  • Dockerizing Django, uWSGI and Postgres the serious way

    So you want to get in on the hot new stuff and decided it’s time to learn Docker. Good on you! Docker is the new kid on the block which allows you to containerize stuff. Well, not really – it’s not that new at all. I tend to miss these pieces of software which emerge…