Dealing with Project Bumps – Get Mad, Get Over it, Get Smarter

“The best-laid plans of mice and men go awry often.”
– Robert Burns (paraphrased)

Problems – Every Project Has Them

At Atomic Object, we do mostly project-based work. We spend a lot of time planning a new project. We plan before the project starts, and (because we use Agile practices) we continually plan while the project is in progress. This helps us catch things that can block a project from moving forward before they have a chance to do so.

Read more on Dealing with Project Bumps – Get Mad, Get Over it, Get Smarter…

Ember-Style Computed Properties in Ruby Gamebox

I’ve been using Ember.js on a recent project because it has a ton features for building web-apps, like routing, event handling, and templated views that use built in data binding. Ember also does a great job of managing data on its objects via its computed properties.

I wanted computed properties in Gamebox, but no Ruby gem existed. So, after reading some Ember.js source, I wrote my own.
Read more on Ember-Style Computed Properties in Ruby Gamebox…

Keeping a Non-Backlog To-Do List with Todoist

We’ve all had those times when we’re in the middle of a busy project, we’re working extra hours trying to hit a deadline, and that email comes in that you just don’t have time for. It might be something as simple as “Can you make it to this meeting next week?”, but when the stress and tension are high it feels like just one more stone on the mountain of things to do. Read more on Keeping a Non-Backlog To-Do List with Todoist…

Automating Artifact Generation on Capybara(-Webkit) Failures with Autopsy

System tests are a crucial piece of testing any application. I’m a big believer in isolated unit tests as well, but if I had to pick just one kind of test to use, it would be system tests. There is no substitute for actually exercising the full code base from top to bottom.

That said, I don’t know if any one thing about software development has caused me more frustration than system tests. Read more on Automating Artifact Generation on Capybara(-Webkit) Failures with Autopsy…

Empowering Our Customers to Deploy Their Own Apps

This was me at a recent sprint review meeting with the Local Orbit team:

What really got me excited during this sprint was our success in implementing continuous delivery. For each feature we delivered, Anna was able to test and approve it before promoting the code, pushing to staging, and deploying to production. We went through this cycle several times this week, and Anna is now completely in control of what features roll into production, and when. Read more on Empowering Our Customers to Deploy Their Own Apps…

Read more on Empowering Our Customers to Deploy Their Own Apps…

Five Steps to Finding Performance Bottlenecks

I recently had the opportunity to do some performance optimization work, and I enjoyed it maybe a little more than a reasonable person should. It reminded me of one of my favorite projects from years ago — tuning a Java 2D graphics library that had to beat a competitor’s implementation on industry benchmarks. Read more on Five Steps to Finding Performance Bottlenecks…

How to Perform an Unwind Segue Programatically

In my previous blog post, I introduced you to Unwind Segues in iOS. In that example, much of the work was done in the Interface Builder of Xcode. Now I’ll show you how to perform an unwind segue in code and how to pass data along the unwind segue. Read more on How to Perform an Unwind Segue Programatically…

Read more on How to Perform an Unwind Segue Programatically…

A Kanban for Every Occasion – Beyond “To Do”, “Doing” and “Done”

One tool you’ll hear discussed in Agile circles is kanban boards. You may have seen one, and chances are it had columns labeled “To Do”, “Doing”, and “Done”, perhaps with a few others thrown in for good measure.

Read more on A Kanban for Every Occasion – Beyond “To Do”, “Doing” and “Done”…