Books that made you a better programmer
-
The Moon Is A Harsh Mistress by Robert Heinlein. I want to meet Mike; what can I say?
Software Zen:
delete this;
Fold With Us![^]Yeah I would like to meet mike too. Though my book purchases seem to lag what the heck I am working on so I buy them but never get a chance to read them!
-
Everything by Douglas Adams, Michael Crichton, ...
Rama Krishna Vavilala wrote:
"Design Patterns" - GOF
Really only helps to discuss programming issues.
Amen
He who asks a question is a fool for five minutes. He who does not ask a question remains a fool forever. [Chineese Proverb] Jonathan C Dickinson (C# Software Engineer)
-
I know there are many people here who scorn technical books. But I like reading technical books and have always found them useful. I was looking back to see what books had maximum impact in making me a better programmer in my career. I am not just talking about the technology here sure there are many good books about technologies. I am talking about the whole outlook on programming, programming styles and approach. My list is as follows: 1. "The C++ Programming language" - Bjarne Stroustrup. The last part especially had very good insights. I can definitely say that reading that book made me a lot better. 2. "Design Patterns" - GOF. Luckily, I read it (C2C) before shifting jobs and the new job required an application design from scratch. I was able to apply many patterns judiciously and I am still working on the product today. 3. "Code Complete" - Steve McConnell. It should be a required reading everywhere. 4. Refactoring - Martin Fowler. Helped me decide what is refactoring and what not. I overcame many of my pre-dispositions about performance and stressed on code readability. I have read lot of other books, I could clearly see that these books made a great impact on me. So if you have to list books which had the maximum impact on you. What will they be? [Edit] Added Refactoring book.
Proud to be a CPHog user
I have a few gripes with GOF. OOP isn't the only paradigm available (just look at Erlang success: it's a freaken actor pattern!!!), you then have AOP which is improving the quality and maintainability at the same rate the GOF did when they published their OOP patterns. GOF is really useful, unfortunately some people see it as gospel. One of my old lecturers (I have since transferred universities) recently wrote a book on C# 3.0 design patterns and included an observer pattern implementation, cough, events. A decent T-SQL book is a must (Professional SQL Server 2000 Programming - Rob Vieira), as well as a subscription to MSDN magazine. Blogs such as Hanselman's are a vital source of information. I have a few books, but I have found that most of them are somewhat obsolete, the nice thing about the internet is that it keeps itself up to date.
He who asks a question is a fool for five minutes. He who does not ask a question remains a fool forever. [Chineese Proverb] Jonathan C Dickinson (C# Software Engineer)
-
I know there are many people here who scorn technical books. But I like reading technical books and have always found them useful. I was looking back to see what books had maximum impact in making me a better programmer in my career. I am not just talking about the technology here sure there are many good books about technologies. I am talking about the whole outlook on programming, programming styles and approach. My list is as follows: 1. "The C++ Programming language" - Bjarne Stroustrup. The last part especially had very good insights. I can definitely say that reading that book made me a lot better. 2. "Design Patterns" - GOF. Luckily, I read it (C2C) before shifting jobs and the new job required an application design from scratch. I was able to apply many patterns judiciously and I am still working on the product today. 3. "Code Complete" - Steve McConnell. It should be a required reading everywhere. 4. Refactoring - Martin Fowler. Helped me decide what is refactoring and what not. I overcame many of my pre-dispositions about performance and stressed on code readability. I have read lot of other books, I could clearly see that these books made a great impact on me. So if you have to list books which had the maximum impact on you. What will they be? [Edit] Added Refactoring book.
Proud to be a CPHog user
I belive that any list has to include Donald Knuth and the Art of Programming. In my time it was a standard and it definitely set the standards for many things that came later. Today you might read it like a history book but it explains most of the things that we take for granted now but in the olde days we had to figure out.
-
I know there are many people here who scorn technical books. But I like reading technical books and have always found them useful. I was looking back to see what books had maximum impact in making me a better programmer in my career. I am not just talking about the technology here sure there are many good books about technologies. I am talking about the whole outlook on programming, programming styles and approach. My list is as follows: 1. "The C++ Programming language" - Bjarne Stroustrup. The last part especially had very good insights. I can definitely say that reading that book made me a lot better. 2. "Design Patterns" - GOF. Luckily, I read it (C2C) before shifting jobs and the new job required an application design from scratch. I was able to apply many patterns judiciously and I am still working on the product today. 3. "Code Complete" - Steve McConnell. It should be a required reading everywhere. 4. Refactoring - Martin Fowler. Helped me decide what is refactoring and what not. I overcame many of my pre-dispositions about performance and stressed on code readability. I have read lot of other books, I could clearly see that these books made a great impact on me. So if you have to list books which had the maximum impact on you. What will they be? [Edit] Added Refactoring book.
Proud to be a CPHog user
-
I know there are many people here who scorn technical books. But I like reading technical books and have always found them useful. I was looking back to see what books had maximum impact in making me a better programmer in my career. I am not just talking about the technology here sure there are many good books about technologies. I am talking about the whole outlook on programming, programming styles and approach. My list is as follows: 1. "The C++ Programming language" - Bjarne Stroustrup. The last part especially had very good insights. I can definitely say that reading that book made me a lot better. 2. "Design Patterns" - GOF. Luckily, I read it (C2C) before shifting jobs and the new job required an application design from scratch. I was able to apply many patterns judiciously and I am still working on the product today. 3. "Code Complete" - Steve McConnell. It should be a required reading everywhere. 4. Refactoring - Martin Fowler. Helped me decide what is refactoring and what not. I overcame many of my pre-dispositions about performance and stressed on code readability. I have read lot of other books, I could clearly see that these books made a great impact on me. So if you have to list books which had the maximum impact on you. What will they be? [Edit] Added Refactoring book.
Proud to be a CPHog user
"Code Complete", Steve McConnell -- (almost) everything there is to know about programming, from the little code monkey all the way up to lofty architects "Programming Pearls", Jon Bentley -- too keep the fun in programming and thinking outside the box "Software Craftsmanship", Pete McBreen -- an alternative approach to teams "The Pragmatic Programmer", Andrew Hunt & David Thomas -- Stop fidgeting, get it done. "Facts and Fallacies of Software Engineering", Robert L. Glass -- When to walk and when to fight (richly spiced with humour:-) In no special order, even if Code Complete stands out as I run into it quite early. /Jonas
-
I know there are many people here who scorn technical books. But I like reading technical books and have always found them useful. I was looking back to see what books had maximum impact in making me a better programmer in my career. I am not just talking about the technology here sure there are many good books about technologies. I am talking about the whole outlook on programming, programming styles and approach. My list is as follows: 1. "The C++ Programming language" - Bjarne Stroustrup. The last part especially had very good insights. I can definitely say that reading that book made me a lot better. 2. "Design Patterns" - GOF. Luckily, I read it (C2C) before shifting jobs and the new job required an application design from scratch. I was able to apply many patterns judiciously and I am still working on the product today. 3. "Code Complete" - Steve McConnell. It should be a required reading everywhere. 4. Refactoring - Martin Fowler. Helped me decide what is refactoring and what not. I overcame many of my pre-dispositions about performance and stressed on code readability. I have read lot of other books, I could clearly see that these books made a great impact on me. So if you have to list books which had the maximum impact on you. What will they be? [Edit] Added Refactoring book.
Proud to be a CPHog user
-
Everything by Douglas Adams, Michael Crichton, ...
Rama Krishna Vavilala wrote:
"Design Patterns" - GOF
Really only helps to discuss programming issues.
-
I know there are many people here who scorn technical books. But I like reading technical books and have always found them useful. I was looking back to see what books had maximum impact in making me a better programmer in my career. I am not just talking about the technology here sure there are many good books about technologies. I am talking about the whole outlook on programming, programming styles and approach. My list is as follows: 1. "The C++ Programming language" - Bjarne Stroustrup. The last part especially had very good insights. I can definitely say that reading that book made me a lot better. 2. "Design Patterns" - GOF. Luckily, I read it (C2C) before shifting jobs and the new job required an application design from scratch. I was able to apply many patterns judiciously and I am still working on the product today. 3. "Code Complete" - Steve McConnell. It should be a required reading everywhere. 4. Refactoring - Martin Fowler. Helped me decide what is refactoring and what not. I overcame many of my pre-dispositions about performance and stressed on code readability. I have read lot of other books, I could clearly see that these books made a great impact on me. So if you have to list books which had the maximum impact on you. What will they be? [Edit] Added Refactoring book.
Proud to be a CPHog user
Not a book, but an article of sorts and its not humurous also this is serious stuff :) http://wilk4.com/humor/humore6.htm[^]
ACA
-
I know there are many people here who scorn technical books. But I like reading technical books and have always found them useful. I was looking back to see what books had maximum impact in making me a better programmer in my career. I am not just talking about the technology here sure there are many good books about technologies. I am talking about the whole outlook on programming, programming styles and approach. My list is as follows: 1. "The C++ Programming language" - Bjarne Stroustrup. The last part especially had very good insights. I can definitely say that reading that book made me a lot better. 2. "Design Patterns" - GOF. Luckily, I read it (C2C) before shifting jobs and the new job required an application design from scratch. I was able to apply many patterns judiciously and I am still working on the product today. 3. "Code Complete" - Steve McConnell. It should be a required reading everywhere. 4. Refactoring - Martin Fowler. Helped me decide what is refactoring and what not. I overcame many of my pre-dispositions about performance and stressed on code readability. I have read lot of other books, I could clearly see that these books made a great impact on me. So if you have to list books which had the maximum impact on you. What will they be? [Edit] Added Refactoring book.
Proud to be a CPHog user
I went through "Design Patterns" and the whole OO thing about 8-9 years ago. I then started learning about something that really changed the way I developed - functional programming. The papers Why Functional Programming Matters[^] and Haskell vs. Ada vs. C++ vs. Awk vs. ...: An Experiment in Software Prototyping Productivity[^] piqued my curiosity about FP in general and Haskell in particular. I pretty soon realised that some of the ideas of FP could be applied to the C++ I was writing - mainly the ideas of data immutability and functions as first-class members of the data type system (using Boost[^]'s Function[^] and Bind[^] libraries) - and found that using them made design and code easier and more capable. Do I use patterns? Yes, in places. But application of FP ideas has influence throughout my design and code.
-
"Code Complete", Steve McConnell -- (almost) everything there is to know about programming, from the little code monkey all the way up to lofty architects "Programming Pearls", Jon Bentley -- too keep the fun in programming and thinking outside the box "Software Craftsmanship", Pete McBreen -- an alternative approach to teams "The Pragmatic Programmer", Andrew Hunt & David Thomas -- Stop fidgeting, get it done. "Facts and Fallacies of Software Engineering", Robert L. Glass -- When to walk and when to fight (richly spiced with humour:-) In no special order, even if Code Complete stands out as I run into it quite early. /Jonas
In the original list the only obvious omission for me was "Code Complete". Weighty but well worth the effort. Good to see someone else has added it! I will add the classic "Object-oriented Software Construction" by Betrand Meyer. It may describe a language that most of us will never use, and take lots of ill informed swipes at C/C++/Java but for understanding what OO really means and design by contract can do it is marvellous.
-
I know there are many people here who scorn technical books. But I like reading technical books and have always found them useful. I was looking back to see what books had maximum impact in making me a better programmer in my career. I am not just talking about the technology here sure there are many good books about technologies. I am talking about the whole outlook on programming, programming styles and approach. My list is as follows: 1. "The C++ Programming language" - Bjarne Stroustrup. The last part especially had very good insights. I can definitely say that reading that book made me a lot better. 2. "Design Patterns" - GOF. Luckily, I read it (C2C) before shifting jobs and the new job required an application design from scratch. I was able to apply many patterns judiciously and I am still working on the product today. 3. "Code Complete" - Steve McConnell. It should be a required reading everywhere. 4. Refactoring - Martin Fowler. Helped me decide what is refactoring and what not. I overcame many of my pre-dispositions about performance and stressed on code readability. I have read lot of other books, I could clearly see that these books made a great impact on me. So if you have to list books which had the maximum impact on you. What will they be? [Edit] Added Refactoring book.
Proud to be a CPHog user
SICP is a real eye oppener ! Also there are video lectures[^]. - Structure and Interpretation of Computer Programs [^] - Refactoring: Improving the Design of Existing Code[^]
-
I know there are many people here who scorn technical books. But I like reading technical books and have always found them useful. I was looking back to see what books had maximum impact in making me a better programmer in my career. I am not just talking about the technology here sure there are many good books about technologies. I am talking about the whole outlook on programming, programming styles and approach. My list is as follows: 1. "The C++ Programming language" - Bjarne Stroustrup. The last part especially had very good insights. I can definitely say that reading that book made me a lot better. 2. "Design Patterns" - GOF. Luckily, I read it (C2C) before shifting jobs and the new job required an application design from scratch. I was able to apply many patterns judiciously and I am still working on the product today. 3. "Code Complete" - Steve McConnell. It should be a required reading everywhere. 4. Refactoring - Martin Fowler. Helped me decide what is refactoring and what not. I overcame many of my pre-dispositions about performance and stressed on code readability. I have read lot of other books, I could clearly see that these books made a great impact on me. So if you have to list books which had the maximum impact on you. What will they be? [Edit] Added Refactoring book.
Proud to be a CPHog user
I would add: "The C++ Standard Library" by Nicolai Josuttis "Beyond the C++ Standard Library (an introduction to Boost) by Bjorn Karlsson "Network Programming for Microsoft Windows" by Anthony Jone & Jim Ohlund. I think this is now out of print. "Writing Solid code" by Steve Maguire
-
I am not going to answer your question, but to comment your list, I find 1. absolutelly great, 2. and 4. mostly harmful, and 3. has good and bad points.
-
I know there are many people here who scorn technical books. But I like reading technical books and have always found them useful. I was looking back to see what books had maximum impact in making me a better programmer in my career. I am not just talking about the technology here sure there are many good books about technologies. I am talking about the whole outlook on programming, programming styles and approach. My list is as follows: 1. "The C++ Programming language" - Bjarne Stroustrup. The last part especially had very good insights. I can definitely say that reading that book made me a lot better. 2. "Design Patterns" - GOF. Luckily, I read it (C2C) before shifting jobs and the new job required an application design from scratch. I was able to apply many patterns judiciously and I am still working on the product today. 3. "Code Complete" - Steve McConnell. It should be a required reading everywhere. 4. Refactoring - Martin Fowler. Helped me decide what is refactoring and what not. I overcame many of my pre-dispositions about performance and stressed on code readability. I have read lot of other books, I could clearly see that these books made a great impact on me. So if you have to list books which had the maximum impact on you. What will they be? [Edit] Added Refactoring book.
Proud to be a CPHog user
-
I am not going to answer your question, but to comment your list, I find 1. absolutelly great, 2. and 4. mostly harmful, and 3. has good and bad points.
-
I know there are many people here who scorn technical books. But I like reading technical books and have always found them useful. I was looking back to see what books had maximum impact in making me a better programmer in my career. I am not just talking about the technology here sure there are many good books about technologies. I am talking about the whole outlook on programming, programming styles and approach. My list is as follows: 1. "The C++ Programming language" - Bjarne Stroustrup. The last part especially had very good insights. I can definitely say that reading that book made me a lot better. 2. "Design Patterns" - GOF. Luckily, I read it (C2C) before shifting jobs and the new job required an application design from scratch. I was able to apply many patterns judiciously and I am still working on the product today. 3. "Code Complete" - Steve McConnell. It should be a required reading everywhere. 4. Refactoring - Martin Fowler. Helped me decide what is refactoring and what not. I overcame many of my pre-dispositions about performance and stressed on code readability. I have read lot of other books, I could clearly see that these books made a great impact on me. So if you have to list books which had the maximum impact on you. What will they be? [Edit] Added Refactoring book.
Proud to be a CPHog user
O'Reilley's Java in a Nutshell was the single most impactful book on my programming career. Having been stuck in a rut of VB6 and VBA development, this book transformed all of my development into more useful OOP including all the .Net work I am doing today.
You are here - through no fault of mine!
-
I know there are many people here who scorn technical books. But I like reading technical books and have always found them useful. I was looking back to see what books had maximum impact in making me a better programmer in my career. I am not just talking about the technology here sure there are many good books about technologies. I am talking about the whole outlook on programming, programming styles and approach. My list is as follows: 1. "The C++ Programming language" - Bjarne Stroustrup. The last part especially had very good insights. I can definitely say that reading that book made me a lot better. 2. "Design Patterns" - GOF. Luckily, I read it (C2C) before shifting jobs and the new job required an application design from scratch. I was able to apply many patterns judiciously and I am still working on the product today. 3. "Code Complete" - Steve McConnell. It should be a required reading everywhere. 4. Refactoring - Martin Fowler. Helped me decide what is refactoring and what not. I overcame many of my pre-dispositions about performance and stressed on code readability. I have read lot of other books, I could clearly see that these books made a great impact on me. So if you have to list books which had the maximum impact on you. What will they be? [Edit] Added Refactoring book.
Proud to be a CPHog user
My book list includes: The Design and Analysis of Computer Algorithms by Alfred Aho, John Hopcraft and Jeffery Ullman. The AWK Programming Language by Alfred Aho, Brian Kernighan, and Peter Weinberger The Theory of Parsing, Translation, and Compiling, volumes I and II, by Alfred Aho and Jeffery Ullman The C Programming Language by Brirn Kernighan and Dennis Ritchie There is also a book on decision tables which taught me a different paradigm from the traditional control flow. When I locate my copy (it's in this room someplace!), I will post a reference. On a personal note, Alfred Aho was one of my instructors at the Stevens Institute of Technology in the 1970s and his classes were a big influence on how I design and code today.
-
I know there are many people here who scorn technical books. But I like reading technical books and have always found them useful. I was looking back to see what books had maximum impact in making me a better programmer in my career. I am not just talking about the technology here sure there are many good books about technologies. I am talking about the whole outlook on programming, programming styles and approach. My list is as follows: 1. "The C++ Programming language" - Bjarne Stroustrup. The last part especially had very good insights. I can definitely say that reading that book made me a lot better. 2. "Design Patterns" - GOF. Luckily, I read it (C2C) before shifting jobs and the new job required an application design from scratch. I was able to apply many patterns judiciously and I am still working on the product today. 3. "Code Complete" - Steve McConnell. It should be a required reading everywhere. 4. Refactoring - Martin Fowler. Helped me decide what is refactoring and what not. I overcame many of my pre-dispositions about performance and stressed on code readability. I have read lot of other books, I could clearly see that these books made a great impact on me. So if you have to list books which had the maximum impact on you. What will they be? [Edit] Added Refactoring book.
Proud to be a CPHog user
The Shack - William P. Young. Not a lick about programming in there, but it gives a great perspective on life and priorities. So, if you become a better person, you become a better programmer, right?
-
Everything by Douglas Adams, Michael Crichton, ...
Rama Krishna Vavilala wrote:
"Design Patterns" - GOF
Really only helps to discuss programming issues.