Articles

For the last five years I have been test driving pretty much all the code I have written. This is a retrospective on why it took so long to get started, where I see the greatest benefits and where it is still hard.

The fear of releasing is real, it is the fear of failure.

What is technical debt, who owns it and when is it due? Post #2 in a series of post about obstacles around software development.

Why do we have obstacles in software development when software is almost free from constraints?

Writing clear, consice and maintainable tests can be quite challenging regardless of tool and language. Following the practices discussed here will hopefully help you achieve this if you are using ScalaTest.

Now that we have defined what we want the Sequence language to look like, we need to formalize this in a grammar and then build a parser to parse our input into an Abstract Syntax Tree

Even a tiny language as Sequnce requires a careful and iterative process, you need to consider both the semantics and the synatax.

The need for different types of computer languages is growing rapidly — luckily it turns out that creating your own Domain Specific Language does not have to be all that hard.

Have you ever come across a poorly written software where you thought to yourself — this has grown out of control!

Are we littering the JavaScript ecosystem, or are we setting up a smorgasboard of choices?

JavaScript has a fast moving ecosystem and if you do not manage your dependencies you risk breaking your application.

Python 3.5 comes with support for asynchronous IO, which seems like a perfect fit when implementing a BitTorrent client. This article will guide you through the BitTorrent protocol details while showcasing how a small client was implemented using it.

This article gives a gentle introduction to the asyncio that arrived in Python 3.5. The purpose is to set the scene for a future article where I use asyncio to build a BitTorrent client in Python.

Visual Studio Code comes with great features, one of which is debuging. Let's set it up for debugging tests implemented with Facebook's Jest framework.

My personal notes on how to setup virtualenv for Python 2.7 in Windows

Liquorice gets updated to support taxonomies in Hugo.

I made my first baby steps in the world of Go. Will this little adventure lead me to a world where the grass is green, or will it lure me into the shadows?

Changing from handmade pages to Hugo