Avatar image

Dan Coleman

Senior Mobile Engineer

Dan Coleman started modding video games at 12. After studying physics in college, he spent a year working at Lawrence Berkeley National Lab where he wrote code for the simulation of a climate-measuring satellite. Dan has been working with iOS since 2016, and co-created an astronomy and exoplanet cataloguing app called Cosmic Atlas, which you should download even though we didn’t make it.

Published Posts

Effective Test Automation in iOS Development

Test automation is probably the single most important factor within an agile software project. Providing a customer with small, working increments of a product, delivered frequently, requires the pipeline from feature design to product delivery to operate very fast. The biggest hurdle in delivering a small change quickly is regression testing. The trouble stems from …

Effective Test Automation in iOS Development Read More »

Green Is Home Base

A developer’s typical working procedure is: Create a feature branch off of master. Implement the feature, which will destabilize the code… Then, spend time getting everything back into a working state. It’s as if you needed to replace a part in your car that is buried deep inside of it — so first, you have …

Green Is Home Base Read More »

Common Pitfalls of BDD

Introduction So you’ve decided you want to drive development from behaviors, created with a shared understanding in a shared language among the Three Amigos (product owner/designer, developer, and tester). You will, most likely, immediately start seeing some benefits. But you’ll probably also encounter some difficulties. It’s important to understand that these difficulties are common. They …

Common Pitfalls of BDD Read More »

The Line Between “What” and “How”

Introduction A pervasive problem in software development is finding the line between what is a sufficiently detailed description of a product requirement and describing the "implementation details" of that requirement. Put simply; it is a problem of finding the line between what and how. A product requirement should contain everything about the "what" (and leave …

The Line Between “What” and “How” Read More »

BDD as Evolved TDD

Introduction I see Behavior-Driven Development (BDD) as an evolution of Test-Driven Development (TDD). If we think about what the purpose, and real benefit, of TDD is, it’s almost impossible not to find ourselves talking about BDD, even if we aren’t calling it that. TDD means, literally, tests drive software development. What do we mean by …

BDD as Evolved TDD Read More »