I've been developing and managing software for decades now. Starting in embedded, but doing more than embedded. Many of the mainstream software development techniques have crossover value to embedded. My mission is to spread some of those techniques to the embedded community.
My company is
Please visit my site.
High-Low Story Showdown, Deal and Slide, Developer Guts, and Customer Guts
It’s sprint zero and you have a stack of stories needing their first estimate? You need an initial release plan. What should you do? It’s kind of hard to start on day one with Planning Poker. There is a missing baseline to estimate against. Continue reading →
Imagine you are trying to cross a mountain stream. You could make a running leap and get to the other side. Sometimes that works, other times you get wet. When there are rocks sticking out of the rushing water, you can step from rock to rock and get across the stream without getting wet. Sure there are some streams you can jump across, go ahead and jump. Other streams require a more careful approach. Continue reading →
My son is studying computer science at U of I in Chicago. He is taking an operating systems class and has to do some projects in C. (Some things change, some things stay the same.) He had an internship over the last 8-9 months and was doing TDD in Java. So he might be in the early stages of a test infection.
He has not done much C so he’s got some learning to do. I thought I better show him CppUTest. He could use it for a play ground to learn some of the subtleties of C, as well as use TDD. Continue reading →
Coupling and cohesion have been discussed for a long time as the right criteria for judging a design. But there seemed to be no objective way to determine if code exhibited those qualities. Could TDD lead to higher cohesion and loose coupling? Continue reading →
LinkedIn is fun. Every now and then a person from the past pops in. A colleague from my early days at Teradyne had just heard about agile and she asked me what it was and how to learn more. Here’s what I told her. Continue reading →
Adding tests to legacy C or C++ code can be a challenge. Code not designed to be tested won’t naturally be testable. Dependencies will be unmanaged and invisible. Getting that first test written will hurt, a lot. Don’t despair! The first test is the hardest, but subsequent tests are much easier.
Knowing what to do and what to expect, when you start adding tests to your legacy code, can ease the journey. This article will give you an idea of what to expect when getting that first bit of C or C++ into the test harness. Continue reading →
In TDD next to the Big Framework we looked at a design that helps to isolate your code from the BigFramework. That article only showed half the story. Lot’s of times the big framework has the attitude “don’t call us, we’ll call you” built right in. Your code has to register somehow with the framework, then when you ask it to do things, it calls you back, asynchronously, with the result. Continue reading →
I’m just completing my fourth trip to China to coach Chinese engineers in TDD. I’ve learned a few things, I hope, about coaching people who don’t speak my language as a first language. I also had occasion to use what little I know on the subject while at the Scrum gathering in Shanghai, the first in China. Before I get into that, let me tell you about my adventure getting the the Scrum gathering. Continue reading →
My friend Bas introduced me to Vikki, the computerized text-to-speach voice on my Mac. I had met her once before but thought, what good is she? I don’t need text-to-speech.
Vikki is becoming a very valuable companion helping me to write my book on TDD for Embedded C. Like many writers I have heard from, I find it very difficult to find problems with what I have just written. Jeff Langr suggested reading out-loud as part of the proof reading process. That helped a lot. But I often still read what was in my head rather than what was on the page.
With Vikki by my side, I can select a paragraph and have her read to me. She sounds a little like a Scandinavian that has had a few, but she actually reads what is there on the page. I even have discovered
I can edit out the problems as she is reading.