TDD (Test-Driven Development) Overview with Python Example

Test-Driven Development (TDD) is a software development approach where developers write tests before writing the code itself. TDD emphasizes writing tests that fail initially, then writing the minimum amount of code necessary to pass the tests. This process is repeated until the desired functionality is complete. TDD provides a number of benefits, including increased confidence in the code, better documentation, and reduced time spent debugging. How TDD Works TDD is based on the Red-Green-Refactor cycle:...

February 2023 · Michael John Peña

Using WSL2 (Windows Subsystem for Linux) for Blockchain Development

In the past, I’ve been using my Macbook Pro to do all things blockchain and smart contracts development. One of the hurdles I encountered in the past is that some tooling and frameworks were not first class citizens on Windows. Majority of these tools, especially those that come with scripts and complex networking architecture (circa 2015) just works in MacOS and Linux:Ubuntu. Introduction Of course there have been a lot of improvements now in the ecosystem since then....

August 2021 · Michael John Peña