Nest Protect and Thermostat Integration Needed

I’m at that ten year mark when I need to replace all the smoke detectors in my house. I’m looking at the items on the market and in reviewing the Nest Protect I noticed a huge missed opportunity. I have a Nest Thermostat and love it. However, one shortcoming it has it that the temperature can vary a lot between where it is placed and the other rooms in the house. I have to put a smoke detector in almost every room to be up to code. If those also had a temperature sensor and could communicate to the thermostat then I could easily adjust or set rules when the bedroom is too hot or cold compared to the kitchen […]

Tower, Git, Springloops, Xcode and Authentication Errors

I installed an update to XCode and subsequently found I could not connect to git repositories on Springloops using Tower on macOS Sierra (that’s a nice pile of software). I was getting Authentication errors in Tower when trying to reach the repository. After trying a bunch of things to reconnect and getting rather frustrated by the whole thing I finally found that I need to agree to the XCode license again in order to use git. To do so open up Terminal and type: sudo xcodebuild -license Then hit space a bunch to get to the bottom of the license. Once you do you’ll be prompted to type the word agree. Once you do that quit Tower and start it […]

Docs Onsite Updates

We’ve added a few new features to Docs Onsite. Docs Onsite is the document and project management system that we’ve developed. We’ve been really pleased to see how it has worked for other client based companies who need to manage large quantities of documents with clear, simple, auditable access controls and logging. It is also how we manage our internal tasks, calendars, files, time tracking (which exports to QuickBooks for billing), support tickets, and bug tracking. The latest features are small looking updates, but are both very useful. We’ve added tagging to the Tasks, with color coding. This has really helped make it easy to quickly filter the task list to a related group of tasks. We’ve also integrated a […]

ColdFusion SQL Security

It’s common when working on a web application to interact with a database to read, insert, update, or delete data. In doing so you must take care when using variables in your SQL. The input may be coming from a search form or passed in the URL, but wherever it comes from there is a risk of SQL Injection, Cross Site Scripting or other attacks on your system. ColdFusion provides a few helpful tools for preventing people from executing malicious SQL queries or executing JavaScript injected into your database. One is the cfqueryparam tag. Assuming we set first_name = “Kevin” This would look something like this SELECT u.first_name, u.last_name FROM users u WHERE u.first_name = <cfqueryparam cfsqltype=”CF_SQL_VARCHAR” value=”#first_name#”> This will […]

A Good Router

I recently upgraded my home router from the one my ISP provided to the NETGEAR AC1750 Smart Wi-Fi Router, 802.11ac Dual Band Gigabit (affiliate link)  – which is a bit of a mouthful, but also a fantastic router right out of the box. Before I bought this our devices constantly lost their connection to the wi-fi router, requiring restarting the wi-fi on the device and also restarting the router regularly. Even doing that we were often lucky to get 1.5 Mbps or any connection at all. Turns out that router stunk. As soon as I hooked this up I was seeing the actual advertised speeds from my ISP and could easily connect and use multiple computers, phones, and tablets for […]

A Good Shave

I thought I’d try something new here. I’ve found the it’s very helpful when reading other blogs when people mention products and other things that they personally use and enjoy. So I thought I’d share some of those things here as they come up. Today I’d like to mention the Braun Series 7 790cc-4 Electric Foil Shaver (affiliate link). I just bought this after 2 of the 3 cutting heads on my 10 year old Norelco stopped working. And this thing is amazing. Apparently the slow, awful decline of my old razor had reached a point where I regarded razor burn and ripping rather than cutting hairs as normal. Apparently you can actually get a nice, smooth, pain free shave […]

Peer Review

We use Peer Reviews during coding for a variety of reasons. The three main reasons are: Quality Assurance – checking other developers work to make sure everything is done correctly and works as it should. Cross Training – the reviewers going over what was done ensures that at least two people have a good understanding of everything that is built and changed. By rotating reviewers for different tasks in the same part of a system many people will be looking at what is built as it is happening. Education – the developers and peer reviewers learn from each other during the review process – new tricks or techniques are shared and developed. Peer Review Checklist We use a detailed checklist […]


It is hard to avoid stagnation. It requires pushing yourself and the people around you out of your comfort zone. As you get better at what you do it actually becomes even harder – you know the “right” way to do things and become even more set in your ways. So how do we keep growing ? The Comfort Zone When we start learning something new we don’t have much of a comfort zone. I’ve been teaching my son to play basketball and I’ve been realizing that simple things like not pushing your knees together when you jump are not yet simple to him. It’s a good reminder not to take things that seem obvious to me for granted. I […]


We continue growing and looking to grow our team. We’ve been very fortunate with the people we’ve hired and have been so busy we haven’t really taken the time to introduce them or explain to people why they should join us in a while. We’re now up to 7 people here. Me (Kevin), Brad, Barrett, Kyle, Brian, Tom, and Eric. A diverse group with a variety of beards. People without facial hair are also welcome, though we made Kyle work from Traverse City when he refused to grow a mustache.   [your head here] We’re working out of our offices in Lake Orion and working on plans for a new building. Brian is fixing up the Ms. Pacman I bought […]

How to Start a Blog

Starting a blog is not hard. People do it all the time, by the millions. But if you’re not technically inclined it can be intimidating. We often talk to people who want to get a simple website and blog up and running. Sometimes we work with them, other times it’s enough to point them in the right direction and give a little advice. Today I’d like to share a bit of that advice. Step 1: Hosting Web hosting is both simple in concept and complicated to get right. There are a ton of hosting companies out there. You can sign up for a couple of dollars per month at Blue Host* in a few minutes and host your own blog. […]