Yesterday, I explained the different ways that errors can be represented in your code. Today I’ll talk about error handling, which is what makes errors such a tricky subject to begin with. Why is error handling so difficult? There are typically many more ways for a system or operation to fail than to succeed. Error […]
Yesterday, I talked about the many types of errors in software and how you can categorize them strategically. Now let’s talk about how you can capture and represent errors in a useful way.
Errors are under-appreciated. I discovered that on a greenfield project when it occurred to me that I had essentially no tools in my developer utility belt for architecting them.
I’ve completed a few projects that involved prototyping software in a very short timeframe. This situation can differ drastically from the normal pace of agile projects because results and certainty have to be prioritized above long-term considerations. If you find yourself in a situation where you need to push code out quickly (and won’t be […]
I recently worked through a seemingly-endless problem inside of a tech stack that I have little experience with. After about half a year inside of a different project that I knew everything about, this process felt pretty painful and frustrating. In fact, I had to experiment with a number of solutions before I found one […]
At Atomic, many people have read and enjoyed Cal Newport’s book Deep Work. This book is all about the importance and the art of achieving great things by eliminating distractions and maximizing flow.
Recently, I needed to implement an unusual feature for a React front end: a reusable component that displays server-rendered pages from a legacy version of the same app. If you’ve found yourself in a similar situation, I hope this guide will make life easy for you!
I recently had to implement a local file cache for a React Native app so that users could play audio and video when offline. There are a number of reasons you might need to make a similar caching system, and this post explains how to set up the basic code.
Good code is easy to change. I read that somewhere in the depths of the internet about a year ago, and it’s substantially affected the way I code. It’s a pretty simple statement at face value, but it takes on a new meaning when read in terms of equivalence: Good code is code that’s easy […]