About Atomic Object
We design and build world-class software for all sorts of clients.
Atomic Object Contact Us: +1 616 776 6020 contact@atomicobject.comCategories
Stay Connected
Tools
Balancing safety and convenience
In most languages, such as C, C++, Ruby, Python, and Java, if you ever attempt to send a message to nil (or dereference a NULL pointer), one of two things will happen: either your program will crash, or a runtime exception will be thrown, which could also lead to your program crashing.
Also posted in Languages, Uncategorized 6 Comments
Your Business Will Fail Without Maintenance and Improvement
Even since cavemen invented the wheel, people have been using specially designed tools to make their work and their day-to-day lives simpler. Can you think of a single profession today that does not benefit from the use of a tool of some kind? In an ideal world, a tool would be something that you invest…
Also posted in Culture, Iterative Development, Process & Practices, Risk, Workplace Tagged business, maintenance, TDD, tools Leave a comment
2D Axis Aligned Bounding Box Trees
Here at AO we have a few game developer hobbyists. I’ve been tweaking the basic 2D collision detection in Gamebox for awhile now. When Chipmunk 6 released with performance gains, I decided to take a look. Part of the secret sauce was the use of an axis-aligned bounding box tree (AABB tree). Porting this simple…
Less Perplexing Terminal Multiplexing with tmux
Tmux has been getting a lot of attention lately. As George Nachman works toward a deeper integration of iTerm2 with tmux, more people are becoming aware of the ‘other’ terminal multiplexer. Around the office, people have been asking how I use tmux. While I’m also an avid iTerm2 user, I’m not sure if the new…
Also posted in Pairing, Unix, Linux, and Bash Tagged cli, muliplexer, pairing, screen, terminal, tmux 1 Comment
Safeguarding Your Productivity
Recently, my Mac greeted me with a kernel panic (an unusual occurrence for most people). It seems that one of the RAM modules in my Mac failed. It shouldn’t have been terribly exciting. Things like this happen. My Mac had two SO-DIMMS (2x4GB) so it shouldn’t have been a problem. Regrettably, when the RAM module…
Understand Design or Fail
Design is a loaded word. It means something different depending who you talk to. For example, design in the context of an innovation services firm (like AO) means something entirely different than design at an ad agency. Unfortunately for many, lack of understanding for what design is and what it can do for products, goods…
Also posted in Design & Development, Visual Design Tagged design, design thinking, ucd, user centered design Leave a comment
Highlight strings in Cucumber features with Vim

I am currently working on a project that is using Cucumber for its system/integration testing, and I am using MacVim as my primary editor. MacVim comes with Tim Pope’s excellent vim-cucumber plugin pre-installed, so you get syntax highlighting of .feature files right out of the box. After having used TextMate to edit Cucumber features in…
A Modern Web Development Syllabus
If you have programming or Computer Science experience, want to take the plunge into web development, and don’t know where to start, then start here. Before you signup for Pusher and Twilio and start copying and pasting Ruby and JavaScript code, you should have a firm understanding of how the many pieces and layers of…
Also posted in Design & Development, Languages, Web Tagged backbone.js, coffeescript, haml, javascript, mongodb, ruby on rails, SASS 21 Comments

