Better Remote Pairing with Keycastr and Presentify

We’ve all been doing a lot more remote pairing lately. Since March, our team has tried just about every remote collaboration tool available. For pair programming, we’ve relied on a blend of video conferencing, screen sharing, and VS Code LiveShare. LiveShare gives us Google Docs-like collaborative editing, while a shared screen lets both people see […]

Developer/Designer Collaboration on Single-Page Web Apps

Single-page web apps are an ideal environment for close designer/developer collaboration. Developers often lack the intricate knowledge of CSS and HTML layouts they need to implement a designer’s work as first imagined. Fortunately, many designers have experience with front-end web development. Cooperation between these two “teams” yields faster implementation of designs that represent the designer’s […]

Defined Docker Networks for Seamless Communication Between Projects

If you have a containerized application composed of multiple services, it can become a burden to string together in-network communication. Fortunately, Docker Compose solves this networking problem by making it easy for your containers to communicate without knowing one another’s context. In a couple of short steps, I’ll show you how to quickly get a […]

The Responsible Application Audit – A 7-Part Checklist

As developers, we commonly get asked to review codebases for existing software applications. The common thinking is that a skilled developer can simply: “give a look” to the existing codebase, provide an expert opinion on their ability to extend the application, and provide some level of certainty around the costs associated with new functionality. This […]

What Does “Run the Tests” Mean? – How Shared Symbols Can Speed Up Team Communication & Reduce Errors

On your project, what does “run the tests” mean? What about “add a feature?” “Fix a bug?” When passed through the brain of someone on your team, these phrases bloom into specific things — a command that you run in the Terminal on a developer’s laptop, a process that you follow to add new functionality […]