Why TDD? Test-Driven Development flips the usual workflow on its head: instead of writing code and then testing it, you write a failing test first, then write just enough code to make it pass, then clean up. The result is a growing suite of tests that document exactly what the code must do — and a codebase that is only as complex as the tests demand. We will build a classic toy app — a Magic 8-Ball (Github)— from scratch using this discipline. The Red → Green → Refactor Cycle Every increment of TDD follows three phases: Phase Goal 🔴…
J O H N R A . M E Posts
I recently purchased a CyberPower CST135XLU Uninterruptible Power Supply (UPS) for my linux server, Orbi Wifi Router, and Synology NAS. However, I only need my Orbi running on UPS in the event of a power outage; the others don’t need to be running. With my Fios on a dedicated UPS and Orbi on this new UPS, I will be able to stay on line while I wait for the power to be restored. This means I need to setup Network UPS Tools (NUT) so that I can gracefully shutdown my Synology NAS and linux server – giving my Orbi extended…
Understanding context is essential in becoming an effective software engineer. It is not sufficient to possess deep technical skills. Understanding the context (business domain) you operate in provides the necessary background to build the right solution. It elevates the skill programmer to a value-added software engineer. It allows software engineers to ensure solution fit the situation, background, and purpose, thereby enhancing clarity and reducing the likelihood of misunderstandings. Misunderstanding will only lead to defects. By being mindful of the contexts, software engineer can navigate complex landscapes and build stronger, more meaningful solution. In the realm of building the right solution,…
Confirmation bias – the tendency to discredit non-confirmative evidence, or to seek out (actively or subconsciously) primarily confirming evidence – is part of all of us. We all suffer from it, every day. As technologist, we could do better. We should always re-evaluate all the facts and not fall into the traps of our dogma/orthodoxy – what we see or want to see. Rather than reviewing all the facts, we too often hold onto our beliefs. Ask a front-end developer which library/framework should be used for a given project, it’s rarely followed by a question on what the requirements are.…
Unless you’ve abstained from social networks, you’re probably heard of Wordle or have seen blocks of green, black, and yellow on your social feed. I have to admit, I’ve been caught up on the riptide – even google has acknowledged the popularity of it I tend to stay away from mainstream fad – especially those on social media platforms. I did, however, read the article on New York Times – who later purchased it for 7-figures. Eventually, I gave in and played to see what the craze was about. To my surprise, I was instantly hooked. I was surprised by…




