10 Must-Read Books For All Programmers - InformationWeek

InformationWeek is part of the Informa Tech Division of Informa PLC

This site is operated by a business or businesses owned by Informa PLC and all copyright resides with them.Informa PLC's registered office is 5 Howick Place, London SW1P 1WG. Registered in England and Wales. Number 8860726.

IoT
IoT
Comments
10 Must-Read Books For All Programmers
Threaded  |  Newest First  |  Oldest First
ClementO702
50%
50%
ClementO702,
User Rank: Apprentice
5/16/2016 | 8:41:49 AM
Missing one
This is the best start for anyone thinking of programming -- How To Think Like A Programmer by Paul Vickers: https://www.amazon.co.uk/How-Think-Like-Programmer-Bewildered/dp/1408065827
Curt Franklin
50%
50%
Curt Franklin,
User Rank: Strategist
5/17/2016 | 7:48:34 AM
Re: Missing one
@ClementO702, thanks for the pointer -- I'll check that one out. I agree that a key piece of becoming a developer -- rather than simply someone who knows how to write code -- is learning the thinking process that goes along with solving problems using programming.
erlrodd1
50%
50%
erlrodd1,
User Rank: Apprentice
5/16/2016 | 9:22:25 AM
Brooks' newer book "Design of Design"
Everyone knows Brooks' book "The Mythican Man Month", but few know a more recent book, "The Design of Design". In my career, I was often asked by management, "How can we teach someone to design?" It's a tough question. This book tries to do that. At first read, it seems like a meandering book from a life full of experience. But on reflection, I think it really does start to teach what it is to "design' which is of course, quite different from coding. There is an appendix on OS/360, but also on building a beach house and doing a home extension. These real life examples bring to life "design".
Curt Franklin
50%
50%
Curt Franklin,
User Rank: Strategist
5/17/2016 | 7:59:38 AM
Re: Brooks' newer book "Design of Design"
@erlrodd1 I'll take a look at "Design of Design." It seems like the whole world of design is getting a much closer look from software developers -- "Design Thinking" is a term I hear used a lot when companies are talking about their development discipline. Learning how to not just design, but design well, is going to be a critical skill going forward.
Stephane Parent
50%
50%
Stephane Parent,
User Rank: Moderator
5/16/2016 | 10:31:22 AM
Psychology of Computer Programming
I would add The Pyschology of Computer Programming by Gerald Weinberg, to the list. Like Brook's Mythical Man Month, it still provides truthful insight into the psyche of programmers and their art.
Curt Franklin
50%
50%
Curt Franklin,
User Rank: Strategist
5/17/2016 | 8:53:07 AM
Re: Psychology of Computer Programming
@Stephane, I'm not really familiar with that one -- would you say that it's aimed more at the programmer trying to become a better programmer or to the manager trying to understand the programmers he or she is managing?
StéphaneP117
50%
50%
StéphaneP117,
User Rank: Apprentice
5/17/2016 | 2:23:07 PM
Re: Psychology of Computer Programming
I read it as a programmer and found it useful to understand my colleagues and myself.

I certainly think managers could also get some insight into cat herding.

I would say the book is targeted at both audiences equally.
jries921
50%
50%
jries921,
User Rank: Ninja
5/16/2016 | 12:10:38 PM
While The Prince is an interesting choice...
...it strikes me as most useful in identifying and defending oneself and one's colleagues against the dark side of office politics.  There are already too many Machiavellian princes in this world; what we need are ways to make the game less profitable.

 
Curt Franklin
100%
0%
Curt Franklin,
User Rank: Strategist
5/17/2016 | 8:57:48 AM
Re: While The Prince is an interesting choice...
@jries921 I agree that too much time is spent (and too much energy wasted) in many organizations playing silly political games. I think the reason I like The Prince is that it helps you understand the game and recognize how others are playing. The game is at its most dangerous when you're in the middle and don't realize that a game is underway.
TerryB
50%
50%
TerryB,
User Rank: Ninja
5/16/2016 | 1:33:15 PM
Must Read?
I guess it depends on how you learned programming and how long you have doing it. But I'm going on 30 years now and haven't even heard of those books, much less read them. Four years of school taught me how to program, after that it was just chasing changes in tech doing it. I was looking at books on my desk, mine are all focused on a particular type of tech that was new at one point in time: Java, The XML Handbook, Webmaster in a Nutshell, Hacking Exposed, Proven Portals, ExtJS 4 Web Application Cookbook, etc.

Most of my reading was focused on the business side (I've always worked for Mfg companies). From the Peter Principle, If it Ain't Broke, Reengineering the Corporation, several books on Lean, etc. To me, understanding what you were trying to apply computer programming to was the challenge, not executing it. The only programming challenge was chasing all the languanges (COBOL to ExtJS/HTML5) and methodologies (green screen to web to Touch) which changed so incredibly over past 30 years.
hho927
50%
50%
hho927,
User Rank: Ninja
5/16/2016 | 8:37:29 PM
Re: Must Read?
Me too :) None of these are on universities' book lists.

I guess these are for script kiddies who took a few programming classes and become 'programmers'. Especially, web programmers, ah ah terrrible codes, spaghettis.
Curt Franklin
50%
50%
Curt Franklin,
User Rank: Strategist
5/17/2016 | 9:06:24 AM
Re: Must Read?
@hho927, I'm going to disagree with you. While these might not be on university book lists I think they're useful for developers at different points in their careers who want to get better. Some of them -- the ones that present problems and help you work through solutions -- are for those who want to go beyond the basics taught in the universities. Others, such as those on design, are for those who want to build their skills beyond basic problem solving.

I suppose I'm going to disagree most, though, because no one's ever called me a "script-kiddie" (I was well into my career before the term was coined) and many of these were suggested by professionals well out of the script-kiddie pool themselves.

But I appreciate your opinion and I have a question: Which books have you found to be most helpful in your career?
TerryB
50%
50%
TerryB,
User Rank: Ninja
5/17/2016 | 12:40:58 PM
Re: Must Read?
I don't think @hho927 was calling you script kiddie, Curtis. I get what he meant though, people that go to ITT for two years and get "programming" degree. No question the books you mentioned would be useful to them.

Web programming certainly didn't create spaghetti code though. By far the worst code I've ever seen was the RPG people used to write back on IBM Sys 34/36 midranges. Nothing else compares to that.  I remember having to use the "structured goto" approach in RPG until newer versions implemented LEAVE and LEAVESR opcodes.

Server side web programming was a challenge to organize in the pure CGI days. That was first time I ever applied MVC, just to get some maintainability in the code.
Curt Franklin
50%
50%
Curt Franklin,
User Rank: Strategist
5/17/2016 | 3:01:00 PM
Re: Must Read?
@TerryB, I agree that pretty much no one would mistake me for a script-kiddie: The photo, alone, should take care of that!

It may be that I'm unusual in that I like to read books in subjects for which I have some expertise -- from programming to photography to audio production. I think it's a good technique for getting better and getting better is typically a good thing.

And I do think the question of how people who don't go to university can improve will become more and more important as a growing number of people question whether a batchelor's degree is necessary for a programmer. I'm not sure the answer is "yes" and I'm not sure what hiring managers are going to do to replace the credential. I suspect that something like a programming portfolio is going to become more and more important.

Maybe github will become the Linkedin for programmers!
Jocelyn78
50%
50%
Jocelyn78,
User Rank: Apprentice
5/19/2016 | 1:18:21 PM
Re: Must Read?
Thank you for this information.
hho927
50%
50%
hho927,
User Rank: Ninja
5/19/2016 | 3:30:46 PM
Re: Must Read?
Oh yeah I forgot most very old programmers (Basic). Basic , VB programmers.

4 years of college teaches most programmers to write pseudocodes first then clean, clear, methodology, codes.

Not all of them though.

Programmers without college write clean, good codes too. But it's rare. I guess it depends on the first trainers.

If they establish bad habbits is a hard thing to change. Most programmers are very strong and opionated.
vnewman2
50%
50%
vnewman2,
User Rank: Ninja
5/20/2016 | 3:40:33 PM
Re: Must Read?
So here is an interesting tidbit from a study done by Triplebyte, a company that matches engineers with startups, regarding the skill difference between those who have attended college vs bootcamps for coding. They found that bootcamp grads match or beat college grads on practical skills, defined as understanding a problem devising a solution and coding it).  But, college grads do better with algorithms, low-level systems and how a computer actually works.  
hho927
50%
50%
hho927,
User Rank: Ninja
5/23/2016 | 2:51:38 PM
Re: Must Read?
The new timers (bootcamp grads) tend to jump into program it (coding). Works well with Agile software development.

It's fine for a few pages of codes. Beyond that maintenance or debug is painful for somebody else.

Web programming is a few lines of codes here & there. Most websites, mgt don't know what they want before they see it. Since it's changing constantly, it fits agile; young programmers.

Universities taught 'waterfall' method, they barely touch agile.

 

 
Curt Franklin
50%
50%
Curt Franklin,
User Rank: Strategist
5/17/2016 | 9:01:45 AM
Re: Must Read?
@TerryB I also learned to program when at least some of my work involved spending time at a card punch machine. I think that I'd put most of these in the same category as the business books you talk about -- trying to understand what you're doing (and, in the context of the organization, why) so you can be better at the craft within the organization.

And I think some of them apply at different levels depending on how you approach programming. I like thinking about things from different perspectives because it helps me be open to trying new solutions to problems. Others have approaches that work best for them -- that's why looking at the books someone finds useful is so interesting!
Somedude8
50%
50%
Somedude8,
User Rank: Ninja
5/20/2016 | 12:07:25 PM
Some additions
Will be checking in to a couple of those books! I was surprised that these were not on th elist:

Code Complete

Design Patterns

Additionally, there is a little known book called Code Craft which I found incredibly useful and interesting. Then one out of left field for this list: SOA: Principles of Service Design by Thomas Erl. "What? SOA?!?!" I found that book changed the way I though about coupling and design quite a bit, and has affected nearly all design work I do, SOA or not.


The State of IT & Cybersecurity Operations 2020
The State of IT & Cybersecurity Operations 2020
Download this report from InformationWeek, in partnership with Dark Reading, to learn more about how today's IT operations teams work with cybersecurity operations, what technologies they are using, and how they communicate and share responsibility--or create risk by failing to do so. Get it now!
Slideshows
IT Careers: 10 Industries with Job Openings Right Now
Cynthia Harvey, Freelance Journalist, InformationWeek,  5/27/2020
Commentary
How 5G Rollout May Benefit Businesses More than Consumers
Joao-Pierre S. Ruth, Senior Writer,  5/21/2020
News
IT Leadership in Education: Getting Online School Right
Jessica Davis, Senior Editor, Enterprise Apps,  5/20/2020
Register for InformationWeek Newsletters
Video
Current Issue
Key to Cloud Success: The Right Management
This IT Trend highlights some of the steps IT teams can take to keep their cloud environments running in a safe, efficient manner.
White Papers
Slideshows
Twitter Feed
Sponsored Live Streaming Video
Everything You've Been Told About Mobility Is Wrong
Attend this video symposium with Sean Wisdom, Global Director of Mobility Solutions, and learn about how you can harness powerful new products to mobilize your business potential.
Sponsored Video
Flash Poll