- CMock – Make Support for Easier Integration of Testing April 10, 2015
- Keeping it Simple… Again and Again February 22, 2015
- Making a Game from Scratch with My 10-year-old Daughter April 27, 2015
- byte_array – The Missing Built-in Type for C November 28, 2014
I first delved into the world of computing when my Dad purchased an IBM Personal Computer, including one of the first luxurious RGB monitors with a whopping 16 colors! I started delving in deeper by getting books of BASIC programs, hand-copying them, tweaking them, and just playing around with how I could make this box do all sorts of cool things. This led to a deep love of robotics and using a computer to control various types of hardware.
I graduated from Michigan State University in 1998, with a B.S. in Electrical Engineering and Computer Engineering. I started my career in Tucson, AZ as a test tooling engineer at IBM, designing systems for validating the performance and robustness of networked storage libraries. From there, I went on to work at X-Rite, Inc., developing automated-test equipment for production testing of color measurement instrumentation and then moved on to embedded product development.
While at X-Rite, I worked closely with Atomic Object, a local software contract and consulting outfit that built their business and sparkling reputation by using TDD (test-driven development) and Agile methodologies to add continuous feedback and, more importantly, sanity back into the software development process.
I accepted the opportunity to join Atomic Object in 2006, in order to help Atomic Object expand TDD and continuous integration into the embedded realm, where we were told it was impossible. My fellow Atoms and I embarked on a journey to make TDD in the C language a reality. This adventure led to the creation of three awesome open-source tools geared towards the C language.
In my free time, I love to spend time with my wife Kelli and daughters Natalie and Sedona. I have a deep interest in music and performance, having played lead roles in stage shows and I also play guitar and sing. I share my musical interests with Kelli, who also sings and plays bass.
- Savant Automation: I Developed firmware for modular control and monitoring modules for AGVs (Automated Guided Vehicles).
- Chrysler: I helped develop a Rails/Ruby test architecture for testing handheld diagnostic devices and software for automotive ECUs.
- X-Rite: I developed hardware and firmware for color measurement devices and helped fit effective TDD and CI into the development process.
- Gentex: I helped the Embedded Group obtain Automotive Spice Level 3 compliance by using our open source tools for firmware development and created analysis and collection utilities using Ruby as the catalyst.
Open Source Contributions
- Unity: A lightweight, C-based unit test framework well-suited for embedded systems.
- CMock: A mock object framework for interaction-based testing in C.
- CException: A handy exception framework for C.
- Ceedling: A build tool that ties the preceding three together.
Papers and Presentations
- Mocking Your Way to the Bottom August 2012 - Design East
- Growing Your Embedded Application Organically with Ceedling and Friends July 2011 - AgileConf
- Mocking the Embedded World: Practical TDD, Continuous Integration, and Design Patterns April 2007 - Embedded Systems Conference
The Atomic Team
- GR Ce CarlCarl Erickson
- GR Mm MikeMike Marsiglia
- GR Sc ShawnShawn Crowley
- A2 Dh DarrellDarrell Hawley
- D As AlAl Scott
- D Bn BenBen Nash
- GR Cf ChrisChris Farber
- GR Dc DaveDave Crosby
- GR Dc DrewDrew Colthorp
- GR Es EricEric Shull
- GR Gw GregGreg Williams
- GR Jp JasonJason Porritt
- A2 Jh JeanetteJeanette Head
- GR Jh JesseJesse Hill
- GR Jv JobJob Vranish
- A2 Jf JohnJohn Fisher
- GR Jr JohnJohn Ruble
- GR Js JordanJordan Schaenzle
- GR Jd JustinJustin DeWind
- GR Jk JustinJustin Kulesza
- D Kd KaitlinKaitlin Davis
- A2 Kf KenKen Fox
- A2 Mb MattMatt Behrens
- GR Mf MattMatt Fletcher
- A2 Mn MattMatt Nedrich
- D Mk MelMel Klimushyn
- GR Ma MicahMicah Alles
- GR Me MikeMike English
- GR Ms MikeMike Swieton
- A2 Mw MikeMike Woelmer
- GR Mj MitchellMitchell Johnson
- GR Pb PatrickPatrick Bacon
- GR Pk PhilPhil Kirkham
- GR Ra RyanRyan Abel
- GR Sa ShawnShawn Anderson
- GR Sv ScottScott Vokes
- D Tb TonyTony Baker
- GR Wpr WillWill Pleasant-Ryan
- In InternsAtomic Interns
- A2 Bk BobbyBobby Kilpatrick
- GR Bh BrittanyBrittany Hunter
- A2 Be BryanBryan Elkus
- GR Jj JuliaJulia Jamieson
- GR Kw KimberlyKimberly Wolting