Hacker News new | ask | show | jobs
by NoahSussman 4926 days ago
> Unless there is a culture of teaching (incremental code reviews are not enough) within the company, you will not have good code for very long.

Very insightful observation. Bad code is a problem that is both technical and social. Purely technical solutions won't cut it.

1 comments

The problem is the low social status of software engineers. We're well paid because of our rarity, but we've done an absolutely terrible job of getting respect for ourselves, so most of our work is treated as a commodity.

Consequently, business people don't trust us to do anything that resembles leadership. It's not just that they won't rely on us. They won't even let us take the time (which is why it's better to just do and ask for forgiveness, not permission) to do anything that involves future orientation or leadership.

The reality is that programming is a leadership role. When you write code and design systems, you will affect how other people work, unless your work is of such low quality that no one can use it.

The result of this is that we have a Greenspun's Tenth Law situation where the failure to address a capability results in it being met in an ad-hoc, ineffective way. Programmers aren't supposed to be multipliers, but such responsibilities emerge naturally and, when they do, the people picked to handle them (usually for political reasons, since business people are hopeless at evaluating software ability) are usually incapable of doing it.

Blog plug on this: http://michaelochurch.wordpress.com/2012/12/14/the-unbearabl...