?

Log in

No account? Create an account
current entries friends' entries archives about me Previous Previous Next Next
Managing Programmers - cellophane
the story of an invisible girl
renniekins
renniekins
Managing Programmers
They say managing computer programmers is like herding cats.

Here is an interesting article on the "Psychology of Programming".

I have always said that the most important factor in making a good programmer is not creativity, but laziness. Well, you definitely need both....laziness alone isn't good enough. But a truly determined laziness is essential!

Think about it. How has any innovation come about? It isn't from the person who scrupulously follows step after tedious step of the current methodology...it's the person who says to herself, "My god, this is taking forever!! There must be a faster/easier way to accomplish this!" So she creates a tool to save herself the time and trouble....and everybody profits from it.

The whole idea of computers is to do tasks more quickly, more easily. What kind of personality do we need to come up with new programs/tasks/processes? Somebody who refuses to do anything slowly. Somebody who can't stand tedium. Somebody who is way too lazy to do any sort of repetitive work....so she finds a way to make the computer do it for her.
read 15 comments | talk to me!
Comments
From: traceyb Date: March 29th, 2003 09:02 am (UTC) (Link)

I like that

But a truly determined laziness is essential!

I also like the flow of the she she she fixing things. Go Rennie!

Tracey
renniekins From: renniekins Date: April 1st, 2003 09:53 am (UTC) (Link)

"She"

Well of course she....wait, do you mean that sometimes men are capable of fixing and making things!? I thought all scientists/engineers/programmers were female...
zenmondo From: zenmondo Date: March 29th, 2003 02:25 pm (UTC) (Link)
The best line in that article:

"I know what you'll argue: Think of the expense! If that was the first thought in your head, then you've missed the whole point of this column. Start again at the top, and pay attention this time."

Man too too true. I'd probably still be a paid coder if my managers/bosses/Contractees would heed the advice of that collum. But now I am strictly a freelance codepoet, programming for the sheer joy of it. I am like any other artist I guess, I don't code because I want to, I code because I NEED to.

Thank you for posting this article.

But I take a lil umbrage at casting programmers as "lazy" -- even a productive kind of lazy. Personally I think its more of deep-seated desire of "real" programmers for efficiancy.
From: nicegeek Date: March 29th, 2003 07:24 pm (UTC) (Link)
I think she's got it just right...productive laziness is a large part of the motivation of both myself and most of the programmers I know. :-)
bjorng From: bjorng Date: March 29th, 2003 06:54 pm (UTC) (Link)
I loved that "think of the expense!" line too.

This is the same thing that Larry Wall says in the Perl doco. The three essential qualities of a good programmer are Laziness, Impatience, and Hubris. Of course, it's all about the right kind of laziness. I try to explain it to folks, and even get caught in the trap myself sometimes. The idea that "it's easier just this once" often leads to doing it that way a thousand times. Really solving it once rarely takes more than three times the "easier" way (and is often faster), and is always more satisfying.
cannibal From: cannibal Date: March 31st, 2003 11:53 am (UTC) (Link)
I pulled out my copy of Programming Perl by Larry Wall and Randal Schwartz to answer this post, flipped to the Glossary, looked up Laziness, and then saw that you'd already provided a good reference... except that the web page claims Schwartz said it, and Wall is the one generally credited with proclaiming laziness as the first great virtue of a programmer. The book is (C) 1991.

Hmm, Rennie, didn't I make this same comment to your journal a year or two ago? My favorite is Hubris, it makes you a perfectionist... Impatience just makes me cuss at compiler bugs.
bjorng From: bjorng Date: March 31st, 2003 12:46 pm (UTC) (Link)
As I understand it, Randall did most of the "writing" in the book, i.e. he put the word-glue around the essential stuff from the documentation. It's been a while since I read it, but as I recall much of the book doesn't sound like Larry. I found a different link that prefaced the content with the phrase "Randall Schwartz explains Larry Wall's three principles...", but that link was too slow. The doco says:
The three principle virtues of a programmer are Laziness, Impatience, and Hubris. See the Camel Book for why.

I'd guess that if Larry wrote the text, he would have simply put it in here instead. (Unless he was trying to sell books....:)
bjorng From: bjorng Date: March 31st, 2003 12:47 pm (UTC) (Link)
As I understand it, Randal did most of the "writing" in the book, i.e. he put the word-glue around the essential stuff from the documentation. It's been a while since I read it, but as I recall much of the book doesn't sound like Larry. I found a different link that prefaced the content with the phrase "Randal Schwartz explains Larry Wall's three principles...", but that link was too slow. The doco says:
The three principle virtues of a programmer are Laziness, Impatience, and Hubris. See the Camel Book for why.

I'd guess that if Larry wrote the text, he would have simply put it in here instead. (Unless he was trying to sell books....:)
cannibal From: cannibal Date: March 31st, 2003 02:59 pm (UTC) (Link)
It doesn't seem to be in the man pages, at least at a quick grep, so you're probably right, but Wall has talked about it at conferences... I found one place where a magazine posted a retraction when they said Schwartz said it, saying that the three principles were Wall's... eh, doesn't really matter that much.
renniekins From: renniekins Date: April 1st, 2003 09:57 am (UTC) (Link)
I don't know that it ever made it into my journal in the past, but yes you've shown me those quotes before, because I've expounded on my theories to you before. (I came up with it (the idea of laziness being so useful) all by myself, I just didn't come up with it first!)
cannibal From: cannibal Date: April 1st, 2003 10:56 am (UTC) (Link)
Heh, okay, yes.
cannibal From: cannibal Date: March 31st, 2003 12:06 pm (UTC) (Link)
I think your comments are more interesting and accurate than the article... but the article may be useful to justify headphones for programmers. Here's the EDS "Herding Cats" ad.

How do you define a personality that can't stand tedium? It's not precicely laziness, maybe it's more Impatience, just that it's more *interesting* to write a program to solve the problem than to slog through the grunt-work of solving it. That's why I decided I couldn't stay in biology for a living, I realized that I was no good at the repetitive tedious crap, over and over again, that is 90% of laboratory science.
renniekins From: renniekins Date: April 1st, 2003 09:50 am (UTC) (Link)

Tedium

A personality that can't stand tedium...maybe ADD? hee. Really I guess my wording shows my bias, since "tedium" has a negetive connotation. Maybe "repetition" is a better (non-biased) term.

Impatient, requiring challenge, lazy, yet creative...? It's hard to quantify, of course.
cannibal From: cannibal Date: April 1st, 2003 10:58 am (UTC) (Link)
Maybe ADD... maybe creativity, maybe lack of discipline. ;-)
From: (Anonymous) Date: January 7th, 2005 10:09 am (UTC) (Link)

phentermine

You are invited to visit the pages about phentermine (http://www.canadianlabels.net/) phentermine http://www.canadianlabels.net/ (http://www.canadianlabels.net/)
online poker (http://www.8gold.com/) online poker http://www.8gold.com/ (http://www.8gold.com/)
viagra (http://www.cheapest-viagra-on-line.co.uk/) viagra http://www.cheapest-viagra-on-line.co.uk/ (http://www.cheapest-viagra-on-line.co.uk/)
debt consolidation (http://www.debt-help-bill-consolidation-elimination.com/) debt consolidation http://www.debt-help-bill-consolidation-elimination.com/ (http://www.debt-help-bill-consolidation-elimination.com/)
online casino (http://www.onlinegamingassociation.com/) online casino http://www.onlinegamingassociation.com/ (http://www.onlinegamingassociation.com/)
casino (http://www.mediavisor.com/) casino http://www.mediavisor.com/ (http://www.mediavisor.com/)
credit cards (http://www.911easymoney.com/) credit cards http://www.911easymoney.com/ (http://www.911easymoney.com/)
online casino (http://www.popwow.com/) online casino http://www.popwow.com/ (http://www.popwow.com/)
poker (http://www.oiline.com/) poker http://www.oiline.com/ (http://www.oiline.com/)
mortgages (http://www.spoodles.com/) mortgages http://www.spoodles.com/ (http://www.spoodles.com/)
loans (http://www.houseofsevengables.com/) loans http://www.houseofsevengables.com/ (http://www.houseofsevengables.com/)
diet pills (http://www.crepesuzette.com/) diet pills http://www.crepesuzette.com/ (http://www.crepesuzette.com/)
debt consolidation (http://www.sportsparent.com/) debt consolidation http://www.sportsparent.com/ (http://www.sportsparent.com/)
payday loans (http://www.instant-quick-money-cash-advance-personal-loans-until-pay-day.com/) payday loans http://www.instant-quick-money-cash-advance-personal-loans-until-pay-day.com/ (http://www.instant-quick-money-cash-advance-personal-loans-until-pay-day.com/)
student loans (http://www.tmsathai.org/) student loans http://www.tmsathai.org/ (http://www.tmsathai.org/)
private mortgages (http://www.stmaryonline.org/) private mortgages http://www.stmaryonline.org/ (http://www.stmaryonline.org/)
personal loans (http://www.flafeber.com/) personal loans http://www.flafeber.com/ (http://www.flafeber.com/)
home loans (http://www.thatwhichis.com/) home loans http://www.thatwhichis.com/ (http://www.thatwhichis.com/)
travel (http://www.condodream.com/) travel http://www.condodream.com/ (http://www.condodream.com/)
hotels (http://www.royalmailhotel.com/) hotels http://www.royalmailhotel.com/ (http://www.royalmailhotel.com/)
mortgage (http://mortgage.top.uaeecommerce.com/) mortgage http://mortgage.top.uaeecommerce.com/ (http://mortgage.top.uaeecommerce.com/)
mortgage rates (http://mortgage-rates.uaeecommerce.com/) mortgage rates http://mortgage-rates.uaeecommerce.com/ (http://mortgage-rates.uaeecommerce.com/)
clonazepam (http://www.uaeecommerce.com/) clonazepam http://www.uaeecommerce.com/ (http://www.uaeecommerce.com/)
diet pills (http://www.newtruths.com/) diet pills http://www.newtruths.com/ (http://www.newtruths.com/)
loans (http://www.fidelityfunding.net/) loans http://www.fidelityfunding.net/ (http://www.fidelityfunding.net/)
...

read 15 comments | talk to me!