Testing Talks is a series of interviews highlighting well-known personalities from the world of software quality and testing. In this new episode, we had the pleasure to talk with George Dinwiddie. George Dinwiddie is a software development coach who helps organizations develop software more effectively. He helps organizations, managers, and teams solve the problems they face by providing consulting, coaching, mentoring and training at the organizational, process, team, interpersonal, and technical levels. He is also an Owner at iDIA Computing.
Can you introduce yourself and your background?
After 25 years of engineering, a few years of working in hardware and then transitioning to firmware and then software, I have been an independent consultant and coach for 18 years now. I actually wrote my first multiply routine from a Schematic. And before that, I had a number of jobs: I was an audiovisual technician, an organic vegetable farmer, a theater, lighting, and stagehand… And way back when I was 14, I was a TV repairman!
How did you get started in the software development industry?
In the early 1980s, I was working on a custom digital signal processing chip for a modem adaptive equalizer. The controller for this circuit was a state machine, and basically it was programmed in pure machine code. So I got some real inside information on how a processor works by working on that. Around the same time, I was working on building my own CPM computer too.
You wrote a few articles about Agile. What do you think about the future of the Agile Method?
When I discovered Agile, it mostly already made sense to me because it was similar to the way I already worked. To start with a small working system and evolve it over time, building along the way what you need to make. That way, it is easier to verify that things are working. So the part that didn’t make sense to me with extreme programming was the first part. Because coming from a hardware background, I couldn’t imagine how you could test something that didn’t exist. I was very skeptical. But I was communicating with people that I respected, and they said it worked for them. So, I gave it a try and that also worked very well for me. This was before the name Agile had been applied. It was called ‘Lightweight methodologies’ then, and these approaches and new refinements will continue to be used by people in organizations who want to get things done — both well and expeditiously.
There will also continue to be people in orgs that are somewhat insulated from the consequences of their actions, who will think that they can plan it all out and then have people follow that plan. That’s their loss.
What is the biggest challenge you have ever faced, and how did you overcome it?
There have been so many challenges and many of them very different from each other, and I survived them all. Perhaps, the hardest for me was learning how to effectively help people. I grew up thinking in technical terms, and I used to think that telling people the answer was sufficient. But that didn’t provide the results I saw. People like Dale Emery, Jerry Weinberg and Esther Derby helped me get on the road of learning more effective ways of working with people.
What do you love the most about coaching people in software development?
I love helping people, I really do. I also love to learn things. With the two of these, it gives me great joy to see other people brighten up when they learn something that helps them!
What advice do you always give about software development?