I strongly disagree with this sentiment. I see a lot of The Kid in myself in many ways, and I don't think that this individual is striving for some local optimization point which is going to make them extremely valuable, but is instead headed for mastery of his or her discipline. This might be presumptuous and even a little pretentious (apologies!), but I honestly don't think simply sticking to one side of the fence is the path to mastery.
Giving a damn is mostly about pursuing the end goal, which is pretty much just to ship incredibly high quality software which meets the demands that that piece of software is responsible for meeting.
Sometimes that means applying formal verification techniques or running nightly static analysis runs over your build. Other times, just enforcing code review is enough. On the other hand, in those insane, crucible, diffuse-bomb-with-paperclip moments, all you really have time for is the awful hack. There's a huge spectrum, but the point is context is everything.
Having experienced both ends of the scale spectrum, from the ivory tower of spaceflight software verification into the heart of a fast-paced, scrappy startup, I've only really realized how much more experience I need practicing software engineering principles to master my craft and profession.
Giving a damn is mostly about pursuing the end goal, which is pretty much just to ship incredibly high quality software which meets the demands that that piece of software is responsible for meeting.
Sometimes that means applying formal verification techniques or running nightly static analysis runs over your build. Other times, just enforcing code review is enough. On the other hand, in those insane, crucible, diffuse-bomb-with-paperclip moments, all you really have time for is the awful hack. There's a huge spectrum, but the point is context is everything.
Having experienced both ends of the scale spectrum, from the ivory tower of spaceflight software verification into the heart of a fast-paced, scrappy startup, I've only really realized how much more experience I need practicing software engineering principles to master my craft and profession.