Testing legacy code
How do you rescue a legacy codebase that has no tests? Let's look at some techniques for clawing your way back to maintainability, one test at a time.
How do you rescue a legacy codebase that has no tests? Let's look at some techniques for clawing your way back to maintainability, one test at a time.
Introduction Everybody knows JSON, it’s a simple serialization format and the default format for REST APIs. Like many other topics, there are fine points you should know in order to work with JSON more effectively and avoid common mistakes. In this article we’ll explo...
#528 — October 22, 2024 Unsub | Web Version Go Weekly A Taste of Go Code Generator Magic: A Quick Guide to Getting Started — There aren’t many tutorials on Go code generation, which inspired the author to show how they crea...
Embassy is a powerful framework for building asynchronous embedded applications in Rust. Embassy focuses on safety, performance, and efficiency makes it an excellent choice for latency-sensitive systems. This guide provides junior and mid-level engineers with a comprehensive unde...
Introduction: Welcome to Episode 2 of JSON for Engineers! In this episode, we explore the unique characteristics of JSON as a schema-less format, discussing both its benefits and challenges. You’ll learn how JSON’s flexibility, while enabling rapid development, can cr...
Recently, I struggled for a couple of hours to understand why the API tests of one project were slow. In theory, we designed tests to run in a fully parallel way – the duration of tests should be close to the longest-running test. Unfortunately, the reality was different. T...
#527 — October 15, 2024 Unsub | Web Version Go Weekly ▶ Russ Cox on Passing the Torch — Former Go tech lead Russ Cox went on the Go Time podcast recently to talk about the process of stepping down and handing over the rei...
I was fiddling with graphlib in the Python stdlib and found it quite nifty. It processes a Directed Acyclic Graph (DAG), where tasks (nodes) are connected by directed edges (dependencies), and returns the correct execution order. The “acyclic” part ensures no circular...