Theodo logo

Write tests for humans

September 07, 2020Adèle Gauvrit6 min read

Let me tell you the story of the day I almost quit testing my code altogether. For the tenth times this week, the CI failed with this cryptic error message "Received value does not match stored snapshot" and a diff that looked something like: It felt pointless to fix this test : why does it matter…

Continue reading →

Software-based CPU power consumption using PowerApi

September 03, 2020Maxime Thoonsen6 min read

The ICT sectors carbon footprint represents now around 4% of the global CO2 emissions. To minimize that, one of our goals at Theodo is to design sustainable web applications with minimal carbon footprint. And in order to know how performant we are at this, we need to be able to evaluate the power…

Continue reading →

Prevent AWS from Reading Your Step Functions Data

August 31, 2020Axel Fournier5 min read

AWS Step Functions is the perfect tool to handle long-running, complex or business-critical workflows such as payment or subscription flows. However, a naive implementation could put sensitive data at risk. What is AWS Step Functions? AWS Step Functions is an Amazon cloud service designed to create…

Continue reading →

Typescript: use the nullish coalescing operator to prevent bugs

August 04, 2020Maxime Thoonsen2 min read

My goal as a CTO is to improve quality. The score of this game is the number of bugs we find each week. Today I share with you a typical bug that more than one person got caught by. Let's say you want to initialize the audio volume of your react application with the value previously saved in the…

Continue reading →

Get rid of bugs due to front-back and back-back communication, by implementing contract testing with Pact

July 05, 2020jeanlucc9 min read

Image from the Pact documentation Exec summary Modern software development organizations scale their development efforts by spreading the development of a system across different teams. Such projects can have team work issues because interconnected applications that change often, create a lot of…

Continue reading →