3 of 3 people found the following review helpful
4.0 out of 5 stars Essential... if you're beginning
There is a great number of positive reviews for this book, and rightfully so, however there are some critics with a good deal of experience in programming that seem to have some majors problems with it. I believe it comes down to this: it is packed full of common sense and great tips but it's all advice that anyone that has had a few years of experience will probably...
Published 22 months ago by A Pragmatic Programmer
26 of 28 people found the following review helpful
1.0 out of 5 stars What rubbish!
I like to consider myself a master craftsman. My craft is that of programming. I live for programming. Programming is rarely from my thoughts. I am constantly thinking of ways to improve my craft. Learn a new skill. Develop a new tool. What went wrong? How can I do better next time?
Programming is a rapidly changing craft. A machinist can learn to work a...
Published on May 17 2000 by Jamie Oglethorpe
Most Helpful First | Newest First
3 of 4 people found the following review helpful
3.0 out of 5 stars Worth reading, but light compared to Steve McConnell,
This review is from: The Pragmatic Programmer: From Journeyman to Master (Paperback)The title "The Pragmatic Programmer" is very apt. Not a book written by a professor for teaching, this book is written by actual programmers to be read and used by actual programmers. There is a wealth of sound practical advice, and a gift for the memorable phrase or anecdote. I found this book to be a useful refresher, and well worth reading. The writing style is excellent - clear, entertaining, appropriate level of humour.
However I've given it only three stars. My favourite book on programming, "Code Complete" by Steve McConnell, is equally readable, but covers similar ground in far more depth. I make Code Complete required reading for my programming teams. The Pragmatic Programmer doesn't make it past "Suggestions for further reading".
3 of 4 people found the following review helpful
5.0 out of 5 stars Absolutely life changing.,
This review is from: The Pragmatic Programmer: From Journeyman to Master (Paperback)For the last year in two different companies I have been evangelizing many of the concepts in "Pragmatic Programmer", but had a hard time validating my thoughts to the more skeptical people in our group.
That's over now. "Pragmatic Programmer" has given me not only the ammunition I need to wage war against some of the more Philistine ideas that I must deal with, it has added to my thoughts and made me a better leader, better communicator and a much, much better developer. Any book that tells you to step away from the keyboard before you begin is good, but this book is a masterpiece because it tells you WHY you should take a step back.
Every chapter is a gem and stands alone, but taken together with the references and extremely well-written explanations, it almosts reads like a novel. I felt guilty putting it down!
If you are serious about software, serious about becoming a real craftsman and a leader in your field, then this book needs to be on your shelf, dog-eared and used.
5.0 out of 5 stars Must read,
Amazon Verified Purchase(What's this?)
This review is from: The Pragmatic Programmer: From Journeyman to Master (Kindle Edition)Very good book for software engineers caring about their craft!
Manage to put into words stuff that most competent already feel, but have trouble phrasing.
3.0 out of 5 stars Beginners Only,
This review is from: The Pragmatic Programmer: From Journeyman to Master (Paperback)What a bore! I got this book in hopes of acquiring something that would forever change my coding style, and introduce me to the many deeper concepts of programming that I didn't yet know of. Instead I was reintroduced to all of the basic concepts of programming, concepts that the average programmer should already be aware of.
5.0 out of 5 stars Extraordinary contents but too bulky,
This review is from: The Pragmatic Programmer: From Journeyman to Master (Paperback)I can only repeat what most other reviewers said: it's an extraordinary book, a real treasure. On a scale of 1 to 5 stars, this book would deserve 6 -- but I must draw one star for the bulky design ;)
Information density is high and actually the book could be a small pocket book ideal to take along everywhere. But unfortunately the publishers preferred to use big typefaces, thick paper and include a lot of empty space. They probably blowed up the book to make it heavier and look "more important" in order to sell it for a higher price. For me, they didn't hit the target because I didn't buy the thing. I swear I would spend $40 rightaway if it would be as handy as it could but for now I stick to the electronic version.
5.0 out of 5 stars A modern classic,
This review is from: The Pragmatic Programmer: From Journeyman to Master (Paperback)A friend of mine recommended this book to me a year ago and I finally got around to reading it. Not only do I wish I had taken him up on his recommendation immediately, I wish that I had read it years earlier. The book's subtitle "from journeyman to master" really sums it up nicely.
The book contains practical advice from experienced programmers that will help you become a more effective software developer. Unlike many books which dogmatically preach a specific methodology, this book focuses on (not-so-)common sense practices that are simple yet effective, as well as highlighting potential pitfalls to be avoided. Many of them can be applied to your own development process without requiring radical changes, while others will require team- or project-wide changes. Fortunately the nature of the recommended practices is such that you don't have to adopt all of them to be effective. You can pick and choose which ones are most appropriate and gradually incorporate them into your development process.
The range of topics covered is fairly broad, but the important themes are writing easy-to-maintain, reusable code, identifying and adjusting requirements quickly and effectively, managing large projects, and avoiding bad habits and developing good attitudes. Although I don't absolutely agree with everything the authors present, the justification they provide is thought stimulating and will probably change how you do things even if you don't consciously decide to adopt any of their practices.
I found the exercises (and their accompanying solutions) scattered throughout the book to be extremely useful in internalizing the principles being taught, as well as gauging how well I approach problem-solving. I'd highly recommend working through them as you read the book.
Finally, it's worth mentioning how enjoyable this book is to read. The authors' sense of humor and sprinkling of anecdotes make this an easy read without in any way detracting from the content.
If you're a brand new programmer, you probably won't appreciate many of the ideas presented in this book, but come back after you have a year or two of experience. Successful, experienced programmers will find that this book confirms many of the things you're already doing, while providing a lot of useful ideas to become even better. Even if you're not a programmer, but manage or otherwise work with programming teams, you'll find a lot of helpful information here. If there were one book I could require all of my coworkers to read, this would be it.
4.0 out of 5 stars A welcome kind of view,
This review is from: The Pragmatic Programmer: From Journeyman to Master (Paperback)"Any clod can have the facts, but having opinions is an art." (Charles McCabe)
By McCabe's definition, this book is very artful. That's a good thing - the opinions are founded on long experience and on broad familiarity with software development. The authors, true to their "pragmatic" promise, often omit the theory and case history that justify the opinions. They offer reams of advice on nearly every part aspect of industrial programming, and I think that all of the advice is good.
I don't agree with all of it - good advice is good within its limits, and my work often lies outside of their limits. Take, for example, their editor fanaticism. I've been hearing for 25 years how much more efficient my work will be if I use editor <xyz>. First, I move between development environments so much that learning funny key-pokes for one environment just gives me the wrong reflexes for the next environment and the one after that. Mostly, though, text entry is about 5% of my problem. Suppose, after a "near-vertical learning curve", that the cult editor cuts 20% off my editing time - data entry would then be 4% of my problem. The cost/benefit ratio underwhelms me. If you really love your escape-meta-alt-control-shift (emacs) editor, though, don't let me get in your way.
I still think that almost all of the authors' views are good ones, with good reasons behind them. I rabidly agree with lots of them (especially DRY - Don't Repeat Yourself), and for lots more reasons than they give. The book is helpful even where I disagree. When I rethink my own circumstance, it's not that their reasoning is wrong, but that different reasoning is more right.
This is one to keep, not just for the programmers in the trenches but for their managers, as well. Best, it doesn't try to dress up the -ism of the day as holy law - as the title says, it's about pragmatics.
4.0 out of 5 stars Excellent book with a good advice a day for weeks,
This review is from: The Pragmatic Programmer: From Journeyman to Master (Paperback)I really did like the book. It is an excellent book, a treasure chest of advice and excellent references to more reading. You can use it for reference and read it in almost any order and at any kinds of intervals.
But the field of general programming advice is so well equipped with excellent books that I can (unfortunately) only give four stars.
5.0 out of 5 stars Priceless,
This review is from: The Pragmatic Programmer: From Journeyman to Master (Paperback)I've had this book for a number of years now and skim it regularly. I've recommended it to starting and would-be programmers as well as hoary old "I remember punch-card" war horses. I often wish there were more books in this same vein.
The only downside that I could note is that the authors often refer to their own preferred languages & scripts, which both dates the product a little (more so with each passing year), and is also not so useful to those working in different environments or who have their own strong preferences.
However, the nuggets of wisdom and common-sense analogies in this book are golden. If you're like me, you'll often find yourself nodding along with the book while reading a passage that describes something you've experienced or espoused first hand and grimacing when it points out a trick you wish you had thought of when working on some past project.
This book really doesnt have much to do with _programming_ but is really more about _being a programmer_. It's sort of like a self-help for proggies, a mentor-in-a-book. The book's subtitle is "From Journeyman to Master", and this jives with the idea of the things in the book being the sort of Guild-lore a Master Craftsman might pass on to his favored Journeymen prior to retiring back in the days of yore.
I've been a professional developer now for 6 years, self taught and continuously employed at several companies during that time. This book appealed to me when I picked it up because it is true-to-life, and several of the real-world considerations mentioned jived with my own experiences. The ideas and practices that I already had were crystalized and refined by this book, and it also introduced me to ways of thinking that I had not considered.
Perhaps the most significant single line in the book for me is on page 255, "A project that falls below expectations is deemed a failure, no matter how good the deliverable in absolute terms". This struck home because I was once involved in a major project involving multiple programmers from multiple locations around the States, which met every design specification and delivered exactly what was promised, but which was mothballed after its completion because the management didnt understand it. Their expectation was something other than the specification which they had approved and thus we harried developers wasted the better part of a year on a system doomed to failure not because it didn't work or was a bad idea, but because the head honchos just didnt get it. I never understood why until I read that line in this book, and then it all came clear -- their expectations were not in line with the deliverable, and thus they did not want the deliverable despite the fact that it functioned exactly as planned.
Since then I've made it a point to personally do all that I can to ensure that the consumers of projects I'm involved with are "on the same sheet of music" when it comes to understanding what all the tech-speak and specifications actually MEAN. Prototyping and "Tracers" as described in this book have been used to provide mockups before any real code has been written. Documents couched in "Laymans Terms" have been produced. Sometimes it's overkill, but at the end of the projects no consumer comes back saying "thats not what I thought it was going to be". Some Project Managers dont like it, as they feel like it's stepping on their toes, but in the end no Project Manager will complain if the Project is successful -- they get to look good for a while, so kibitzing over the means isn't a priority ;) .
All that aside, if you are a working developer with a grounded approach to programming, and dont have the conceit that you already know everything, I think you should give this book a read thru.
5.0 out of 5 stars Comprehensive and approachable path to becoming an expert,
This review is from: The Pragmatic Programmer: From Journeyman to Master (Paperback)Provides a lot of what experienced developers would consider "commonsense" advice and philosophies. Also gives an excellent language for talking about this sort of stuff with others.
Short and to the point. It's sometimes hard to get "I'm too busy" developers to read, especially the big, dense books lots of folks like to produce around the programmer management area. It's easy to find sections in this book that are useful, can be thrown at someone and be consumed by them in a half-hour (not fully digested, though!). Absolutely wonderful.
What can I say? It's hard to find fault with this book. The only thing I can say that might have helped are a few stories about the risks of not following the practices, though it's questionable how much that would help things. If programmers were horses, you could lead them to water, but not until they'd suffered severe dehydration and a hospital trip or two would they convince themselves that advice you'd given around appropriate water consumption was actually useful...
Most Helpful First | Newest First
The Pragmatic Programmer: From Journeyman to Master by David Thomas (Paperback - Oct. 20 1999)
CDN$ 51.99 CDN$ 32.75