Ask Slashdot: What Books Should An Aspiring Coder Read?
Earlier this month Bill Gates released his summer reading list, which included Seveneves, by Neal Stephenson and mathematician Jordan Ellenberg's book How Not to be Wrong. Now an anonymous Slashdot reader asks for your book recommendations.
I've been trying to learn more about coding, but I need a break sometimes from technical documentation and O'Reilly books. Are there any good books that can provide some good general context and maybe teach me about our place in the history of technology or the state of the programming profession today?
In the U.S., Memorial Day is considered the "unofficial" first weekend of summer -- so what should be on this geek's summer reading list? Cracking the Coding Interview? Godel, Escher, Bach? This year's Nebula award winners? George Takei's The Internet Strikes Back? Leave your suggestions in the comments. What books should an aspiring coder be reading?
In the U.S., Memorial Day is considered the "unofficial" first weekend of summer -- so what should be on this geek's summer reading list? Cracking the Coding Interview? Godel, Escher, Bach? This year's Nebula award winners? George Takei's The Internet Strikes Back? Leave your suggestions in the comments. What books should an aspiring coder be reading?
What is the single most influential book every programmer should read?
"They that can give up essential liberty to obtain a little temporary safety deserve neither liberty nor safety."
Unix Power Tools is from O'Reilly but, it's not really a traditional book. It's more like 1000 pages of super useful Unix anecdotes. When I've worked at companies that had interns, I've always bought a copy for them and dropped it on their desk. I would consider it required reading for anyone working on Unix/Linux machines.
Jonnie Goodboy Tyler is the engineers hero. With his bare hands, ingenuity and scraps of knowledge, he takes down a power empire. Great read.
Snowcrash.
In the free world the media isn't government run; the government is media run.
Dianetics by L Ron Hubbard is a great read. Especially if you like tragic comedies.
Donald Trump: 'Think Big and Kick Ass in Business and Life'. To understand the 'thinking' behind the nightmarish dystopia you might be coding in for the next five years.
UNIX Power Tools by O'Reilly is a great treatise on programming in general because it does concepts such as loops, conditionals, environment, I/O, formatting, etc etc.... all via shell scripting, no "hardcore" compiled languages. Just 1056 pages of the concepts of programming, with examples and loads of documentation. You can take the concepts into oher languages easily enough later on. I've been re-reading it over and over for almost 20 yrs now, its that good.
C|N>K
If you include works of fiction, Cryptonomicon should be required reading.
The Prince by Niccolo Machiavelli
Like it or not, you got to survive dick-head bosses, power struggles and office politics to have a decent career (more than your coding skills or knowledge)
Did you read more than the title of the article? He wasn't asking for programming how-to suggestions, he was asking for NON technical book suggestions that provide a different perspective on programming that he could read when he needs a break.
Still, my suggestion would be - when you need a *break*, make it a real BREAK. You are better off reading something totally unrelated to your work/study that stimulates your imagination than something directly related.
Personally in the (still somewhat limiting) area of technical non-fiction, I got a more interesting perspective on science history and human nature out of books like Genome, Chaos, or Gun, Germs & Steel than something like The Mythical Man Month (which when read by experienced software engineers pretty much just points out what they have already experienced, or by novices what they will inevitably experience - those sorts of books need to be read by *managers*/executives who make the stupid decisions or they really don't do much good...)
Comment removed based on user account deletion
I thoroughly enjoyed The Cuckoo's Egg by Cliff Stoll.
A Pattern Language by Christopher Alexander. Really a book about architecture and urban planning, but sets out the idea of a pattern language that has been very influential in many fields, particularly software engineering.
The Mythical Man-Month by Frederick Brooks on a lot of the pitfalls of managing big software projects.
Depending on the anonymous reader's level of experience and literacy, Why's Poignant Guide to Ruby ( http://www.rubyinside.com/medi... ) may be a good introduction to the language, or to programming in general. It's a bit too whimsical to really teach you design patterns or anything, but as far as a first-time guide to the idea of variables and loops, it might be just what is needed.
Check out, "Design Patterns - Elements of Reusable Object-Oriented Software".
A philosophical joy ride.
Software development can be a grind. Perspective is valuable.
Geoffrey James, The Tao of Programming
http://www.mit.edu/~xela/tao.h...
Neal Stephenson, In the Beginning Was the Command Line
http://cristal.inria.fr/~weis/...
Vernor Vinge, True Names
Dale Carnegie, How to Win Friends and Influence People
https://en.wikipedia.org/wiki/...