

Books of a Highly Effective Programmer (2009) - krat0sprakhar
http://blog.fogus.me/2009/03/11/seven-books/

======
meaty
I think this should be:

7 books of a highly academic programmer.

A highly effective programmer probably should be reading other topics as to be
honest, most of programming is laborious non comp Sci stuff.

~~~
Toshio
And what books would you recommend instead?

~~~
meaty
None at all. Id recommend reading other people's code and thinking about it
for a while.

~~~
minikomi
Just out of curiosity: if you (or anyone else!) had to make a "must read code"
list, what would be on it?

~~~
meaty
Gcc,gnome,openoffice - how not to do something.

FreeBSD,llvm,trac,vim - how to use sound engineering.

------
tinco
Hi, could anyone help me with understanding why the lambda papers deserve a
whole book? What I understand from the history is that they are a set of
papers that define and explain the Scheme programming language.

If so, shouldn't the book be broader by including more of literature on LISP
or even AI programming in general?

~~~
cchooper
Although the lambda papers talk about Scheme, that's not what they're really
about. They're really about... lambda. The takeaway is that many common
features of languages can be thought of as disguised uses of the lambda
operator. So lambda is actually the unifying abstraction behind many
languages, even if they don't know it.

The original 'Lambda the Ultimate X' papers are very short, so no reason not
to give them a try.

------
econner
If the first link under Core to the 10 papers is not up for you:
[http://web.archive.org/web/20100819054526/http://blog.object...](http://web.archive.org/web/20100819054526/http://blog.objectmentor.com/articles/2009/02/26/10-papers-
every-programmer-should-read-at-least-twice)

------
keefe
If I'm going to diverge from read code, write code long enough to do this much
reading... I'd rather start with the papers and books recommended for the phd
qualifying exam at the top 10 universities.

~~~
quentusrex
Links to any of those recommended reading lists?

The closest I see to such a list is:
<http://www.eecs.berkeley.edu/GradAffairs/CS/Prelims/>

~~~
keefe
stanford's is pretty sparse <http://www-cs.stanford.edu/content/qualifying-
exams>

[http://www.cs.purdue.edu/academic_programs/graduate/curricul...](http://www.cs.purdue.edu/academic_programs/graduate/curriculum/doctoral.sxhtml#top)
Purdue's is a little more interesting but still will have to dig into the
courses

that's like 10 years ago for me, it used to be easier to find lists of papers
on this : ]

------
phillmv
1\. Couldn't he have linked to some of this stuff?

2\. Some of this stuff is absurdly broad and weirdly pandering.

3\. "I have no idea what the copyright implications of this are, so I will be
printing out only my own private copy and not making them available
publically;" is a totally inadmissible position for a professional programmer
to have. The answer is, no, of course you can't make a printed compilation of
other people's work and put it up for sale.

~~~
fogus
> 1\. Couldn't he have linked to some of this stuff?

Probably, but as far as I can tell it's all a Google search away.

> 2\. ... weirdly pandering.

Pandering to whom?

> 3\. ... is a totally inadmissible position

This one has me flummoxed. Should I, as a professional programmer, have a
complete working knowledge of copyright law? As it turns out, I do not, so I
erred on the side of safety and never offered any of the articles up for sale.
Or did you miss that minor fact?

------
dschiptsov
Books? <http://karma-engineering.com/lab/wiki/Books>

------
darkxanthos
And they're all comp sci books. Someone has a very narrow view of what it
means to be a programmer.

~~~
fogus
I would be interested to know how you would change the list to facilitate a
broader view.

~~~
darkxanthos
Here's a couple to give an idea of where I'm going. The main thing I would add
to the OP's list are books on the squishier topics of emotional intelligence
and working as a team.

A book on communicating designs (this helped me a ton even though I only use
it where necessary which isn't too often) [http://www.amazon.com/Applying-UML-
Patterns-Introduction-Obj...](http://www.amazon.com/Applying-UML-Patterns-
Introduction-Object-
Oriented/dp/0131489062/ref=sr_1_1?ie=UTF8&qid=1354546879&sr=8-1&keywords=uml+patterns)

Also this was transformative for how I approach leadership:
<http://sivers.org/ff>

Also the Lean Start Up was big in spite of the hype just for articulating how
thinking strategically about what you're building and for who can lead you to
success.

Hopefully that paints a picture of how I think this list could be better
balanced.

~~~
fogus
Thank you for the reply. I think some (most?) of the issues that you raise
could fall into the purview of book #6 "Software Development Management" --
although what you mention would require a better word on my part than
"Management".

------
fnaticshank
yoness! moti nice post. :D

