We're hiring!

We're actively seeking developers & designers for our new Detroit location. Learn more

Process & Practices

The how of building high quality software.

Keeping an Eye on Process

Too often, the HOW of development gets overlooked. In a rush to beat out the competition, corporations are harshly driven by fast approaching deadlines due to accelerated time-to-market for new products. Unfortunately, getting new products out the door often leads to increasing mountains of technical debt. Though development teams occasionally administer retrospectives to assess performance,…

Read More »

Also posted in Culture, Embedded Software, Iterative Development, Project Management | Leave a comment

Cooper’s UX Bootcamp Takeaways

A team of atoms recently attended a Cooper UX Bootcamp in Columbus, Ohio. The bootcamp was designed to take participants on a 4 day journey through the human centered design process. The design challenge revolved around developing a mobile app that would increase engagement, retention and participation in the young professionals association of the Columbus…

Read More »

Also posted in Culture, Tools, User Experience | Tagged , , , | 2 Comments

Simple Remote Pairing with wemux

Background Atomic Object is opening an office in Detroit. As part of the preparation for this new venture, I have been looking at ways to simplify remote pairing. I was happy to find out about a new project called wemux. Wemux is a script that simplifies the management of shared tmux sessions.

Also posted in Company, Pairing, Tools, Unix, Linux, and Bash | Tagged , , , , , | 5 Comments

Agile Estimation at the Company Level

Using story points to estimate how long a project will take works really great. One of the issues with using story points is that it’s very tempting to directly relate them to hours — like saying a point is worth four hours. This is because there exists a need to estimate development velocity of projects…

Read More »

Also posted in Estimating, Project Management, Project Planning | 1 Comment

An unlimited budget is almost as bad as no budget

The worst possible budget for a project is zero. If you have no funds or no time, you have no power to build anything worthwhile. That’s not a surprise to anyone – no one likes working under absurd constraints. The second worst possible budget is unlimited.

Also posted in Budgeting, Iterative Development, Project Management, Project Planning | Tagged , | 2 Comments

Better Key Events in Capybara-Webkit

As anyone who’s worked on key events in Javascript can tell you, it’s a stunningly, needlessly complicated mess. Not only are there three variables to choose from – keyCode, charCode, and the enigmatically-named which – but behavior differs from browser to browser, and between versions of the same browser. I found a pretty thorough summary…

Read More »

Also posted in Languages, Testing, Tools, Web | Tagged , , | Leave a comment

Andy Keller: Build vs Buy – Software GR

Recently we hosted Software GR with guest Andy Keller from Traction Software. Keller’s talk was on when to build or buy technologies in software development. In his presentation, Keller gives us some examples on buying vs building and shows how Traction Software developed their app with both custom and third party software.

Also posted in Design & Development, Tools, Uncategorized | Tagged , , | Leave a comment

Simple Network Prototyping in Objective-C

I find that when writing applications for Mac OS and especially iOS, it’s quite common to need to interface with a simple REST web service that delivers JSON payloads. Unfortunately, Cocoa’s networking APIs can be a bit cumbersome. To address this for my own needs, I wrote a simple asynchronous wrapper around NSURLConnection a few…

Read More »

Also posted in Prototyping, Tools | Tagged , | Leave a comment

Lightweight Objects in Embedded C

Although C doesn’t have full object-oriented language constructs, there is nothing keeping us from doing true OO implementation. Some attempts use heavy-weight patterns that abuse the preprocessor and take a significant hit on efficiency. All just for the sake of making C look something like C++… which is hardly a real benefit. In our experiences…

Read More »

Also posted in Design & Development, Embedded Software | Leave a comment

Building a Product in 20 hours – Startup Weekend Detroit Story

Last weekend I attended Startup Weekend Detroit with a group of 5 other Atoms from Atomic. On Friday night, Justin, Paul, Scott and I joined the Ghost in A Box team. Ghost in A Box is the brainchild of Melissa Price. The concept was simple, users buy a ghost online and receive a package containing…

Read More »

Also posted in Business of Software, Design & Development, Pairing, Project Management, Project Planning, Startups, Visual Design, Web | Tagged , , , | Leave a comment