Getting new tires when you have no tread on your old ones costs money,
as do brake jobs.
I worked for nine years at a place, long enough to go from "don't waste
time on that quality stuff", to "quality is king", and back. So I can't
answer -- but when we did _all_ the right stuff, our code hit production
and stayed there, instead of bouncing back in our faces.
Yes, but even an inexperienced programmer can add value reviewing an
experienced programmer's code.
It works best if you can assign roles to different people: Paul the
Punctuation Nut gets assigned to check style, Susan the Demon of Type
Correctness checks structure, "No Race Condition" Ralph checks for
operational issues, etc.
That way you don't have five people hypothesizing a conflict between
your serial ISR and your parser, while no one notices that you're trying
to stuff 20 significant bits into a 16-bit integer.
Wescott Design Services
Do you need to implement control loops in software?
"Applied Control Theory for Embedded Systems" was written for you.
See details at http://www.yqcomputer.com/