Hacker News new | past | comments | ask | show | jobs | submit login
How to be a Programmer: A Short, Comprehensive, and Personal Summary (mines.edu)
128 points by t0pj on Nov 20, 2008 | hide | past | favorite | 28 comments



Wtf: "Since I have children, I try to spend evenings with them sometimes. The rhythm that works best for me is to work a very long day, sleep in the office or near the office (I have a long commute from home to work) then go home early enough the next day to spend time with my children before they go to bed. I am not comfortable with this, but it is the best compromise I have been able to work out. Go home if you have a contagious disease. You should go home if you are thinking suicidal thoughts. You should take a break or go home if you think homicidal thoughts for more than a few seconds. You should send someone home if they show serious mental malfunctioning or signs of mental illness beyond mild depression. If you are tempted to be dishonest or deceptive in a way that you normally are not due to fatigue, you should take a break. Don't use cocaine or amphetamines to combat fatigue. Don't abuse caffeine."


Some programmers I knew in college could have used this paragraph. It seems crazy and out there, but it reaches a very small sect of the programmer community.


I and some coworkers plan to wikify this and update it with more of a web development spin on it. It's a truly astounding document, with lots of good information relevant for programmers.


You're gonna share this wiki with the rest of us when it's up and running, right? ;)


but of course, what kind of hacker would I be if I didn't?



Is it online anywhere? I'd be willing to help out. Undeniably, the best way to learn (to a level of expertise -- that last 10-20%) is to teach.



Ah, good to know. I was going to send Dr. Read some typographical errors I had found, but a wiki makes that rather moot.


Are you sure you mean typographical? I'm not sure that baseline rhythm counts as errata.



http://en.wikipedia.org/wiki/Baseline_(typography)

http://en.wikipedia.org/wiki/Leading

hmmn HN doesn't handle wikipedia links all that well.


Fascinating! However, I meant errors to do with the typing process.


Not going to read it right now, but that is a truly impressive Table of Contents. The relatively few number of entries that involve sitting with hands on keyboard and code editor open accurately reflects the distribution of skills required to be a good programmer.


"Not going to read it right now"

I said the same thing when I first found this a couple of years ago. Any day now...


I also like the large section on people skills. Definitely useful for me.


Haha. He gives a practical use for divination:

"The multitude of available divination techniques are very useful for determining your own semi-conscious desires, as they each present a complete ambiguous and random pattern that your own subconscious will assign meaning to."

It reminds me of Douglas Adams' speech, "Is there an artificial God?"

"Apparently, we need to think about the building being inhabited by dragons and look at it in terms of how a dragon would move around it... This sounds like complete and utter nonsense, because anything involving dragons must be nonsense... Nevertheless... it may be there is something interesting going on... You figure out how the dragon's going to be happy here and lo and behold! you've suddenly got a place that makes sense for other organic creatures, such as ourselves, to live in."

http://www.biota.org/people/douglasadams/


"It is an odd fact that is not reflected in salaries that a good programmer is more productive than 10 bad programmers. This creates a strange situation. It will often be true that you could move faster if your weak programmers would just get out of the way. If you did this you would in fact make more progress in the short term. However, your tribe would lose some important benefits, namely the training of the weaker members, the spreading of tribal knowledge, and the ability to recover from the loss of the strong members. The strong must be gentle in this regard and consider the issue from all angles."

This makes a lot of sense to me.


I read it a few years ago when I was a rookie programmer. It gave me a more accurate picture of the job than I had held previously.


" It gave me a more accurate picture of the job than I had held previously."

Wouldn't it be hilarious if that was one of the reviews on the backcover of a book?


The last time I saw that sentiment in a book review it was on a Dilbert book.


See: _Microserfs_ by Douglas Coupland.


Comprehensive? Maybe.

Short? No way.


Can anyone shed some light on who the author is?


I thought the same thing. Who is this guy and why haven't I heard of him before.

My initial research...

Started with his email read@hire.com. From there I went to hire.com which forwards on to Authoria. Apparently Authoria bought Hire.com in 2005.

After a little bit of googling I found an article that was published on him shortly after his orignal "how to be a programmer" article was published.

http://www.theage.com.au/cgi-bin/common/popupPrintArticle.pl...

Robert Read, 37, of Austin, Texas, is a principal engineer at Hire.com. Before that he founded 4R Technology, which made a scanner-based image analysis quality control tool for the paper industry.



Short?


Well it's only a hundred pages. Short for a book.




Consider applying for YC's W25 batch! Applications are open till Nov 12.

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: