The package.json file is the heart of any Node.js project, but it often goes entirely undocumented. In this post, I’ll review a few areas that are worth documenting, and how I like to do it.
Okay, that’s a bit grandiose, I admit. But I often see tweets or posts about how people don’t “get” capital-A Agile. Tweets like this and this point out common faults. Everything they say is technically correct but not especially useful. Pointing out all of the not-get-its in the wild won’t make people “get it” better, […]
This is the third in a three-part series about strategies for synchronizing data between systems during a software replacement project. You can read about one-way integration and two-way integration if you want to catch up.
Terraform is a great tool for setting up and configuring architecture as code. However, it can be tricky to manage resources that were not created by Terraform. I recently worked on a project where most of our AWS infrastructure had been manually created in the AWS console. When we decided to manage all of our […]
When replacing large existing software systems, we need to be able to use both systems in parallel, or at least parts of the systems. And to achieve that goal, we often need to share data between the two systems. In this three-part series, we’ll look at a number of strategies that you can use.
Atomic Object was founded by a computer science professor, and during the company’s earlier stages, it only employed developers. That legacy is still felt today in the tooling we use to run the business. Case in point: We use a code repository tool—Subversion (SVN)—to securely store, manage revisions, and control access to some business documents. […]
The Agile principle of delivering value early and often is critical when replacing large, existing software systems. To achieve that goal, we want to be able to use both systems in parallel, or at least parts of the systems. And to achieve that goal in a rewrite situation we often need to share data between […]
Much has been written about the technical challenges of rewrites. In one of his most famous pieces, Joel Spolsky argued that rewrites are almost never a good idea. On the surface, it seems illogical to spend a lot of time and money duplicating code that’s already working, and in a lot of cases, it doesn’t […]
Source control is a vital part of software development, but you don’t always want it to keep track of everything. Passwords, temporary changes, and desperate debugging edits are best kept out of version control. I’ve found four effective ways to handle this.
Visual Studio Code has been gaining popularity and has replaced Sublime Text as my editor of choice, and it brought along many of my favorite features of Sublime, including its multiple cursor magic, which is especially great for refactoring. Here are some tips for getting started!