Six principles of debugging

Debugging is an underrated skill. Even though we spend 50% of time on debugging at work, it is barely trained in the universities. The ability to debug might be the most important factor differentiating the 10x developers from the rest, and therefore can be a predictor for our job satisfaction and compensation. Debugging is Unintuitively, …

Four generations

Degenerate world!Anne of Austria, “Twenty years after” The Titans Like in any mythology, the first generation has to be titans: people who have made impossible things, many times, consistently, and seemingly with no effort. Gauss with his linear regression and normal probability distribution has laid foundations to numerous science disciplines. Student’s t distribution created as …

Five mistakes interpreting data

We’re living in the age of data and everybody is making data-driven decisions by interpreting data. As a data scientist, I often see people making the same mistakes again and again. Here are the top five most common mistakes. Failing to relate the numbers Data analysis shows that one of the KPI is 65%. The …

Basic Error handling in Rust

In the first part of the series we’ve seen some first examples of error handling in Rust, using unwrapping or pattern matching. This post will try to show you how Rust is making error handling a little more convenient than this. Let’s start with a simple program that reads this CSV file: and calculates the …

Rust as an untroubled programming language

Lately I had a chance to implement the same simple prototype in three languages: Python, Go, and Rust. Python, being my primary programming language in the last 10 years, took me an hour. The version in Go took me a day. And I’ve spent a week (with pauses) to implement the same functionality in Rust. …

Data Scientists and Secret Management

β€œIt is practically impossible to teach good programming to students that have had a prior exposure to BASIC: as potential programmers they are mentally mutilated beyond hope of regeneration.”― Edsger Dijkstra Already 1975 it was a common knowledge that software development tutorials, primers and courses can teach students bad habits. Nowadays, in my opinion, data …

Do we really need a staging system for data science?

So you are an infrastructure guy (a DevOp or an IT admin) and your data scientist or data engineer has told you they don’t need a staging system. You know for a fact that any professional software development needs a development system, a staging system and a production system, and that developing in production is …

A three minute guide to Ansible for data engineers

Ansible is a DevOp tool. Data Engineeres can be curious about tech and tools used by DevOps, but rarely have more than 3 minutes to spend for a quick look over the fence. Here is your 3 minutes read. To deploy something into an empty server, first we need to instal python there. So we …

How to make yourself to like YAML

2003 when I was employed at straightec GmbH, my boss was one of the most brilliant software engineers I’ve ever met. I’ve learnt a lot from him and I am still applying most of his philosophy and guiding principles in my daily work. To make an impression of him, its enough to know that we …