When I started writing the landing page for The Hacker's Guide to Python, I wanted to try new things at the same time. I read about A/B testing a while ago, and I figured it was a good opportunity to test it out. A/B testing If you do | Continue reading
Many Python developers are unaware of the extent to which you can use functional programming in Python, which is a shame: with few exceptions, functional programming allows you to write more concise and efficient code. Moreover, Python’s support for functional programming is exte … | Continue reading
It has been close to a year now that I've incorporated my new company, Mergify. I've been busy, and I barely wrote anything about it so far. Now is an excellent time to take a break and reflect a bit on what happened during those last 12 months. What problem | Continue reading
At Datadog, we're really into metrics. We love them, we store them, but we also generate them. To do that, you need to juggle with integers that are incremented, also known as counters. While having an integer that changes its value sounds dull, it might not be without some surpr … | Continue reading
There's not a single month where I don't have to explain this. I thought it'd be a good opportunity to write about this .gitignore file so everyone is up to date on this magic file. The purpose of .gitignoreThe .gitignore file is meant to be a list of files that | Continue reading
Dependencies are a nightmare for many people. Some even argue they aretechnicaldebt[https://thenewstack.io/to-reduce-tech-debt-eliminate-dependencies-and-refactoring/]. Managing the list of the libraries of your software is a horrible experience.Updating them — automatically? — s … | Continue reading
Logging is one of the most underrated features. Often ignored by softwareengineers, it can save your time when your application's running in production.Most teams don't think about it until it's too late in their developmentprocess. It's when things start to get wrong in deployme … | Continue reading
Whatever your programs are doing, they often have to deal with vast amounts ofdata. This data is usually represented and manipulated in the form of strings.However, handling such a large quantity of input in strings can be veryineffective once you start manipulating them by copyi … | Continue reading
A while ago, we've seen how to write a simple filtering syntax tree with Python. The idea was to provide a small abstract syntax tree with an easy to write data structure that would be able to filter a value. Filtering meaning that once evaluated, our AST would return either | Continue reading
If there's something that I hate, it's doing things manually when I know I could automate them. Am I alone in this situation? I doubt so. Nevertheless, every day, they are thousands of developers using GitHub that are doing the same thing over and over again: they click on this | Continue reading
Working on various pieces of software those last years, I noticed that there's always a feature that requires implementing some DSL. The problem with DSL is that it is never the road that you want to go. I remember how creating my first DSL was fascinating: after using programmin … | Continue reading