Gary Brown wrote:
> Hey, Cory,
Hi Gary!
> In your travels with Microsoft, how much quality code did you see?
It's a good question. I saw good code at places with crappy practices.
And I saw crappy code at places with good practices.
But in almost all of the places, I saw code that was on par with the
motivation of the teams in place. In other words, teams that were
excited about what they were doing, and kept up with trends, etc, often
had code they were proud of. Teams that liked their job, but basically
were just there had code that worked and had issues, but they didn't
mind. And teams that were just in a crappy place had code that was crappy.
We had one customer where if we were on site for a CritSit, and the code
was discovered to be yours, you were pretty much fired on the spot.
Turnover was something like 70%. Not a little customer either.
> What is the genesis of quality code? How is that quality maintained over
> time?
>
> Is it the people or the process?
It's really a sliding scale. There are multiple factors at play - how
motivated the developers are, how engaged the customers are (or want to
be), what language they are programming in, how they are treated by
management, and what kinds of politics are at play.
In each case, certain low ends of one area can be overcome by higher
ends of others. For example, crappy management can be overcome by highly
motivated developers. But when it stays out of balance, it eventually tips.
> To me, XP makes quality code accessible to the
> majority, if they can muster the discipline. Sadly, discipline remains in
> short supply!
You can learn a lot by dropping a napkin on the floor. See how many
people walk past it.
--
Cory Foy
http://www.cornetdesign.com