There is a correct way to install Java on macOS. If you don't follow it, everything will probably work just fine... at least until you need to switch which version of Java you're using. Unfortunately, it's pretty common to want to specify a particular Java version for your project. For example, the version of Gradle […]
When I first started working in Swift, I assumed it was like an Objective-C clone with cleaner syntax. I was wrong. Swift has several idiosyncrasies and potential pitfalls you need to be aware of — whether your background is in Objective-C or some other language. Here are ten lessons I’ve learned about what sets Swift […]
I’ve worked with a few teams who found React’s Contexts somewhat difficult to understand at first. This started me thinking about how best to explain them. What I realized is that Contexts are essentially nothing more than dynamic scope. What’s Dynamic Scope? As a programmer, you’re most likely very comfortable with lexical scoping, even if […]
Have you ever wanted to quickly chart some data without coercing it into a spreadsheet? Perhaps you even want to do something mildly complex, like differentiate the data based on some facet that isn’t being charted, or have the ability to interact with multiple visualizations at once? Vega-Lite provides a lot more power than spreadsheets […]
Since the upgrade to macOS Catalina, I’ve had two serious annoyances with Emacs. Here’s a little insight into how I fixed them.
It’s likely you have heard about git-bisect plenty of times before. Hopefully, it’s not a tool that you need to reach for often, since it essentially indicates that there’s something wonky or broken, and your best hope for identifying the actual problem is to look back in time. Despite this, sometimes git-bisect is the right […]
These days, it’s standard practice to run your unit and system tests with some degree of parallelism. When doing so, it’s important to ensure that the code being tested doesn’t interfere with other running tests. Usually, this comes down to the database layer. There are a few options for accomplishing isolation at the database layer. […]
Did you know that there’s a relational database hiding in your Unix shell? There really is, it turns out. A friend of mine was recently telling me about his discovery of the join command, which allows you to combine data from multiple files that contain tabular data. Let’s take a closer look.
One benefit of working at Atomic Object is our bicycle commuter reimbursement program. Although the benefit’s origin is a 2008 tax law that is no longer in effect, Atomic has decided to continue the program. The gist is that for each month that you bike to work at least 10 days, you can be reimbursed […]
Looking to level up your consulting skills? One thing I’ve observed among our more senior Atoms is a mastery of approaching work strategically.