When working at a software consultancy, you may be asked to evaluate an unfamiliar codebase. There are a lot of reasons why you may need to make such an evaluation—for example, your company is going to take over development on a legacy codebase, you’re considering undertaking an application rewrite, or maybe you’re thinking of integrating […]
Making a big decision with a group of people is never an easy process. A big decision generally means a great deal is riding on the outcome, and thus, emotions will be high and opinions strong. How do you navigate those waters?
Managing a long-term client relationship, or any relationship for that matter, takes work. You have two organizations, each with its own business goals, attempting to interact with one another through two or more people. Those people also each have their own personal goals and their own way of interpreting and applying all of these goals […]
Releasing a new version of a mobile app can be a stressful process. The first few times you do it, your customer base is probably pretty small, so it doesn’t feel like a very big deal. However, after your user base grows into the thousands, the pressure really starts to build. The fear of releasing […]
One of the biggest challenges of building elegant mobile interfaces is making them adapt properly to the full gamut of screen sizes. This is especially true for Android development. Back in 2016, Google introduced a new container view class called ConstraintLayout which makes this task much easier. One nice feature of the ConstraintLayout class is […]
About a year ago, I took on a new responsibility as a Career Development Manager at Atomic Object. In addition to my normal consultant duties, I now get to work with a small group of people to help them plan out their professional development. I frequently get to have conversations with people about what their […]
Bluetooth is one of those technologies that seems like a very simple thing from the perspective of a user—you set it up once and forget about it. But in reality, there’s a lot of complexity hidden behind the scenes. As we all know, wherever there’s complexity, there’s more that can potentially go wrong.
The NeoPixel is a very cool little device. It combines three LEDs (red, green, and blue) with a specialized microprocessor, all in a package about the same size as a traditional LED. These smart LEDs open up a wide range of new project possibilities because they reduce the amount of circuitry and processor pins that […]
In the software development industry, you frequently hear people referring to software as DRY. Unlike a dry personality, DRY software is a good thing; it stands for Do not Repeat Yourself. The idea is that if you find yourself writing the same code over an over again, you should refactor it to enable the code […]
In my last post, I gave an overview of Amazon’s tools for building Internet of Things devices and discussed the unique features that Amazon brings to the IoT space. Amazon has a lot to offer, but figuring out exactly which tools or components you need—and how to make them work together—can be challenging. If you want […]