Programming and keeping context in mind
Aug. 21st, 2010 09:14 am![[personal profile]](https://www.dreamwidth.org/img/silk/identity/user.png)
From DotMac:
I'm not sure how much of this is really new, and it parallels the detailed material in The Logic of Failure about the ways people who were good at complex computer simulations were different from those who were bad at them. In particular, those were good put work into thinking about whether what they were doing made sense and checking on it, while those who were bad either gave up easily on the whole take, or spent their time on small problems which were easy to define but not very important.
Link thanks to Geek Press.
A programmer spends about 10-20% of his time writing code, and most programmers write about 10-12 lines of code per day that goes into the final product, regardless of their skill level. Good programmers spend much of the other 90% thinking, researching, and experimenting to find the best design. Bad programmers spend much of that 90% debugging code by randomly making changes and seeing if they work.
I'm not sure how much of this is really new, and it parallels the detailed material in The Logic of Failure about the ways people who were good at complex computer simulations were different from those who were bad at them. In particular, those were good put work into thinking about whether what they were doing made sense and checking on it, while those who were bad either gave up easily on the whole take, or spent their time on small problems which were easy to define but not very important.
Link thanks to Geek Press.
no subject
Date: 2010-08-20 01:04 pm (UTC)That is, when you do batch programming and it takes a while to get your results printout, you are more likely to think things out carefully like a Good programmer above, and less likely to make random changes like a Bad programmer above.
no subject
Date: 2010-08-20 01:34 pm (UTC)Seriously, "lines of code" isn't all that useful a measure of productivity. If you're good about reusing libraries, you can do a complicated task by writing just a few lines of code to invoke it. A bad programmer, or one without a suitable infrastructure to work from, might write pages of code to do the same thing.
no subject
Date: 2010-08-20 02:13 pm (UTC)no subject
Date: 2010-08-20 03:18 pm (UTC)When I went into computers, I assumed it would be the perfect field for me because the outcomes were binary and indisputable: either the (expletive) code works, or it doesn't. What ruined the industry for me was that managers lowered their expectations for what counted as "working code" and that my work was being judged, in general, by people who had no idea what the heck I did for a living. Now part of my general advice for kids thinking about a career is don't ever, ever, ever consider going into a line of work where your boss, and his boss, will have no idea what you do all day.
no subject
Date: 2010-08-20 04:00 pm (UTC)Science
Date: 2010-08-20 05:09 pm (UTC)Re: Science
Date: 2010-08-20 05:38 pm (UTC)Re: Science
Date: 2010-08-29 06:43 pm (UTC)no subject
Date: 2010-08-21 04:04 am (UTC)no subject
Date: 2010-08-21 12:33 am (UTC)today I and another programmer added a minor feature to our product. It was indeed about 20 lines, across a dozen or so files. Sometimes we might write a huge screed-I have one of those coming next Monday, in fact, and it requires no thought whatsoever.
I guess I'm just agreeing from my experience.
At 30 developers, we're a fairly big shop-and 10% of the company! But we still have second level managers doing some hands-on coding. I wouldn't be quick to take a job where the boss doesn't code, and very cautious if he/she can't code.