Reading List

The most recent articles from a list of feeds I subscribe to.

Type Systems Explained With Examples

“My language is better because it has a strong type system!” screams Dave, your colleague developer, trying to push the programming language Cobol for the next micro-service of your company. Among developers, discussions about programming languages and their type systems can get quickly emotional. During these discussions, we often hear the words “type systems”, “data type”, “type inference”, “static typing”, “weak typing”, “coercion”, and more. The goal of this article is to see the meaning of all these words with examples, for you to have good foundations and understand the type system of your favorite programming language.

Type Systems in Software Explained With Examples

“My language is better because it has a strong type system!” screams Dave, your colleague developer, trying to push the programming language Cobol for the next micro-service of your company. Among developers, discussions about programming languages and their type systems can get quickly emotional. During these discussions, we often hear the words “type systems”, “data type”, “type inference”, “static typing”, “weak typing”, “coercion”, and more. The goal of this article is to see the meaning of all these words with examples, for you to have good foundations and understand the type system of your favorite programming language.

The Single Responsibility Principle Revisited

Once upon a time, at the beginning of my journey as a professional developer, I quickly heard about the principle which will save us all, part of the Sacred SOLID principles. The senior developers, the chosen ones, were calling it the Single Responsibility Principle, or SRP. The SRP looked like a magic spell I could cast for my code to be instantaneously better. But first I had to understand it. What’s a responsibility?

Configuring Zsh Without Dependencies

This article is part of a series about Zsh: Becoming a zsh master Configuring Zsh Without Dependencies A Guide to Zsh Expansion with Examples A Guide to the Zsh Completion with Examples A Guide to the Zsh Line Editor with Examples There are many boring tasks we repeat day after day: creating, copying, moving or searching files, launching again and again the same tools, docker containers, and whatnot. For a developer, the shell is a precious asset which can increase your efficiency over time.

The Art Of Learning For Software Developers

“I’m trying to go down a bottomless pit. I’ll never make it till the end.” That’s what I thought when I tried to create my own video game. I was young, beautiful, and I was struggling to use for loops and arrays at the same time. There was so much to learn! Fortunately, I found the strength to continue. More and more, the concepts behind programming began to make sense. From there, learning wasn’t a chore anymore, but an intrepid journey.