• Debugging Complex Scala Code: Tried and True Approaches

    11 months ago, I wrote an article about how I was fixing a Dotty bug. Back then, working under the processes I used, I produced a 60 pages long PDF document over the course of 10 days which documented the bug hunting workflow. The premise of the article was that if you adopt the right processes, the efficiency of the task in question increases dramatically. Back then, logging each step in a human-readable form was such a process for me.

    Read on →

  • Hacking on Dotty: The Diary

    Recently I was working on the solution to this bug in the Dotty compiler. While doing so, I was also testing an approach inspired by the Theory of Constraints (see my previous blog posts about the models) when applied to working with large code bases.

    Read on →

  • Effect Extensions Pattern

    When programming in a purely functional style, we aim to reify side effects into data structures called effect types. An effect type you are using should be the same throughout the entire application so that different parts of the application are composable.

    Read on →

  • Models for Life

    Our mind continuously builds models for the future. This way, you know exactly what you will be doing tomorrow morning. And you know whether you have enough money to make it to the end of the month. If you don’t, you know it, and you start to feel uneasy.

    Read on →

  • Strategic Problem-Solving

    In this article, I’d like to describe an approach in problem-solving I started to practice about a year ago. An approach I call Strategic problem-solving.

    Read on →