Send Wingman info email | Send pricing email | Send email asking for more for
Edit |
All Contacts |
Destroy
Send Wingman info email | Send pricing email | Send email asking for more for
Name:
Alex Brown
Email:
alex@the-browns.gb.net
Company name:
Company url:
Office phone:
Mobile phone:
+44 7708 939 764
Company location:
Remote delivery timezones:
Interest:
I want to submit a TDD experience story
Number of people:
How did you find us:
James Grenning's book on TDD
Initial contact date:
Next follow up date:
2021-05-08 16:44:49 UTC
Message:
Hi,
I have just finished reading your book and would like to pass on my gratitude for putting the book together. It has had an immediate and measurable impact on both my professional and personal projects.
My journey into unit testing was somewhat forced but I can now say I am grateful for the introduction. I started a new job and the software manager pushed unit tests heavily... "Fine for new stuff, but what about all this legacy code?", I thought.
One evening I sat down to work on one of my own projects. I got the dev boards out and tried to remember where I left of. I had only spent 20 mins actually programming when my wife asked me when I was coming to bed. "where had that time gone?" I asked myself. "I have spent more time setting up hardware and loading firmware than I have writing code". “There must be another way I thought" I had a feeling unit testing would be an option and then I found your book (10 years too late in my opinion)!
I have had more than one "ah ha" moment. "why didn't I use this stuff before, I could have been so much more efficient and would probably have avoided a ton of late nights and the stress that goes with pressured deadlines.
Last week, I started a task to add a small bit of functionality to our legacy code base at work. We are talking cpp classes that are 20K lines long and the change was to a core component that must not fail. I decided to have a go at the TDD approach and it worked. It took 2.5 days to get through the compile & link phase but it was worth it. Not only could I assure existing functionality remained intact, I could implement my new changes faster than the old approach. I also found a few other "unexpected features" whilst I was in there.
We had some interesting conversations to classify these into bugs or features and whilst all the devs (myself included) classed them as bugs our customers relied on it, guess its a feature then :-) With tests in place to ensure this odd functionality remained I could make the changes safely. This is the thing with legacy code, what looks like a bug can be valuable feature to a customer.
As a team we had no idea how to tackle legacy c/cpp code base. How do we make changes safely? How do we get a better understanding about what it does? How to we refactor it into something more manageable? We have a route now!. I am flavour of the month for finding a way to unit test the legacy code.
Id love to say more but char limit! Once again THANKYOU!
Timeframe:
Other
Domain:
wingman-sw.com
Remote IP:
212.159.12.156
Request URI:
Notes:
Edit |
All Contacts |
Destroy
Send Wingman info email | Send pricing email | Send email asking for more for