Must have for any ambitious programmer in training!
346734
As an auto-didact; one who teaches himself, I have been on a programming kick with the orientation of a book in an upward position in relation to my computer, many things were learned and many tasks were conquered using this readaeer.
3339514
I purchased this book for a programming class that I was taking. We relied pretty heavily on the book throughout the class...especially for assignments. The assignments were always interesting and were very "real world" assignments. I felt like everything that I programmed could be used in day-to-day life.

The author provides plenty of example code and the book even comes with a copy of Visual Basics.

Whether you are just a beginner or you just want to touch up a foundation that you've already built, this book is great!
4096092
I purchased this book for two reasons.
1.  My compiler class in college was the only CS class I took that really kicked my butt in the code.  Maybe because it was the first application I had to write in school and live with it for a whole semester?  Always felt guilty about my 'lack' of knowledge in this area and wanted to do something about it.
2.  I was hitting the wall with how far I could push XML at work.  I had been converting a config data file to an XML file as a go between for an embeded system and a Java application.  The embedded guys added meta information to the legacy config file with special comments.  All of the sudden a simple convert to XML and back via XSL wan't going to cut it!  Panic!!!  <grin>
I stumbled over this book last week while getting the new Applied Java Patterns book.  The preface for this book was by one of the authors from the GoF book.(Vlissides)  After reading his comments I figured he was a smart guy and learned something so surely I could as well.
WOW!
With this book and the excellant supporting code library I was able to write a parser that contained around 15 simple tokens in one week.  The author's code is free to use as long as you don't claim it as your own.
The supplied code is one of the best uses I've seen to date on how to solve a serious and complex problem with design patterns.
College kids having to build a parser from scratch for a class may not like this book.  I would still consider this a great intro or refresher since you have working code to play with.
Caution:
If your new to 'design patterns' AND parsers your not ready for this book.
If you know design patterns 'just a little' and your curious about parsers think of this book as a working model to play with, embrace and extend.
You could possibly use this book to learn design patterns.  It is well written code that solves some cool problems.
Oh!  Before I forget.  If you do not know what recursion means or how it works.  Your not ready for this book.
If your on a deadline an you need something quick, look here first.  Best code I've seen packaged with a development book.  I also liked how the code was installed by using an install.html file that detected your OS with a trusted applet and then installed the code AND the JVM.  Nice touch for people that can't download a 30MB JDK over a 56K modem.  :-)
Great book I would highly recomend to any Senior Level Java Developer or college student in a compiler class.
3741640
I'm a programmer by profession, and concepts inside this book continue to cross into my day job from night hacking with Arduino. Mr. Igoe could have edited out many concepts not really required for completion of the many cool projects inside this book, but he chose to complete this book with his expansive writing, motivating the reader to approach new horizons of knowledge with accurate and pleasurable topics. This is a must read for the novice Arduino hacker.
1906705
This is a book about general aspects of the art of programming, like wich names you have to assign to variables, how long need to be the functions, how complex needs to be a module... All this things are aplicable to all the programming languages.
The book has a lot of examples in C and in Basic, and the most important, a lot of errors that even the most experienced programmers make.
This book it's a must have for any programmer. Be sure that after reading it you will write a cleaner and more beautiful code.
1487251
Over two years back, I had to write and test huge amount of code (about 200-330K LOC) in Ada 95 (I had over 8 yrs. Ada 83 experience) in very short time. A colleague suggested to use this book. It has helped me in every  way. The book contains very clear explanations about all the new concepts  in Ada and it also covers the real-time issues, OOP, low-level multilingual  programming, distributed programming etc.
Although, it was written for  the "C" programmers who are new to Ada, I have since then worked  on two more major programs and this is the only Ada95 book I am  continuously using together with the Ada 95 LRM.
497754
Great book! It helped me to "hook" my 9-year old son on programming. I think the key here was the comics. He used to read them first and then he got interested in reproducing the scripts. He copied 3 or 4 of them and then started writing his own games. I was impressed how fast he's understood not only basic concepts but also message passing interface used in most of the games. Highly recommended!
1738227
This appropriately sized book is like a pocket reference. I found tons of  code snippets that I could use in production. For that I did not even have  to read the book from cover to cover! Within 2 hours of my buying the book  I was not stuck any more - great feeling!
This book is succinct, and does  not inundate you with verbage, which save a lot of time (and hence,  money!).
2493960
This is a great book.  It is exceptionally well written.  It's clear and well organized, and its presentation of topics is very logical.
I am new  to programming but still I've been able to write a fairly sophisticated and  involved application after reading through this book.  It presents the  concepts in the order that is most useful for anyone having to do real,  practical work.
The more I refer to it, the more I realize there is lots  of information in there.
Now I understand WHY I need to do certain tasks.  The explanations in the book even helped to teach me good style and  technique.
I highly recommend this book.  I'm looking forward to volume  2.
3228308
This book has helped me tremendously.  It was written well, easy to understand, with great real-world coding examples.  I believe that anyone with any level of programming skill and experience would find this book useful for the development of PowerPoint.  It's an affordable book that's worth the small investment.  While developing my own PowerPoint presentation, I was challenged with a particular, more specific coding issue.  I searched and search the internet for hours and could not find a clear answer on how to resolve the issue.  So, I emailed the author.  He so kindly and promptly answered my email and helped me to code and resolve the challenging issue that I was having in the development of a busy, complicated slide.  Thank you David for all of your help!  & Happy coding to all you developers!
1769446
I LOVE LOVE LOVE this book!  The repetitive exercises that the author put together are what make this product so amazing.  I've struggled to learning programming on and off for years.  Off because each time I tried, I couldn't get past basic roadblocks. Those roadblocks were from not understanding the very basic fundamentals of programming.  Through repetitive exercises and simple, easy to digest chapters, this book has given me the tools to understand the basics and move forward. The author gets VERY specific about spaces. About getting syntax exactly correct.  It's a GOOD thing. As he clearly mentions in the book, leave the ego at the door, follow directions exactly, enjoy watching yourself learn a wonderful, life-changing thing.  I highly recommend. Great for parents who want to introduce their pre-teens to programming, adults like me who are self-learning and developing a career.  Thank you so much Mr. Myers for breaking it down and giving me the tools to empower myself.
2796994
I have read this book five times front to back and back to front, as a C\C++ Systems programmer this book proves invaluable in manipulating data more effiiciently than any other book on the subject. This book is well  diagramed and supported with text dissections that explain why the code was coded the way it was, not leaving you directionless and frustrated. I suggest for the novice programmer to get this book, because it will give you a head start over the average beginner. I would couple this book with some real world working code, perhaps in C\C++ Journal and correlate the how syntactically and semanctically the pointers tie together. Figit with the code examples and be prepared to experiment, you will not regret it. Great reference for advanced professionals as well. Only inkling that is the ugly book cover and wish to have a smaller textbook, like Addison-Wesley's C++ Primer 2nd Edition by Stanley Lippman
2204646
I had given myself a period of 4 months for relearning the algorithms and improving my whiteboard coding. In this time, I used 3 books. EPI, Cracking the Coding Interview(CTCI) and Programming Interviews Exposed(PIE) and covered all the mentioned books from index to appendix.

Among those books, I found EPI to be most challenging and useful book overall. Eventually, I did not even get an interview offer from your top companies cause it seems, outside the Silicon Valley, the top notch companies interview criteria is a total mystery. I even did not get an interview. Nevertheless, I know that what Ive leaned from those books, especially EPI helped me a lot in expanding your perspective on looking at problems. And if interviewed, I'm confident that I could make it in these top companies. But that's another story :)  Let's get to the book, shall we?

-This book deals with C++11 features and lets be honest; Even though Im a Java guy mostly, the best language for interviewing is C++ thanks to its conciseness and its attention to detail. Besides, while surfing thorugh this book; I for the first time in my professional career can say that Ive gotten a good grasp of C++ finally. C++ usage in EPI is so elegant!

-There are honestly so many genius approaches to solving problems. Lots of Eureka moments while you're debugging the source code. Also, the Design problems chapter is a total goldmine!

-Truly responsive writers where you can ask and get your answer in their forum on Quora.

- This book also covers kinds of interview questions that could be asked at famous companies that are not doing IT thanks to its extensive last 3-4 chapters on Probability.

-Yes, there were some bugs in initial versions of the book. I even myself found 3 of these and informed the writers. But bear in mind the fact that these writers do not have the backing of editorial approaches as Gayle Laakman (CTCI) would have. This is like an open source book, in a way :) The latest version which I was presented thanks to my bug discoveries and proper solutions, is clean and without any bugs.

Even though you might not be thinking of applying for these big guys like Google, Microsoft, Apple etc.., if you consider yourself a serious developer whos in a position where he/she has to develop efficient solutions/algorithms, theres so much you can benefit from this book! Get one, you definetely won't regret it!
When compared to other books;

Ctci  To my mind, Epi is better than CI, there are much more questions in this book with proper solutions. Also, Java (Im ajava guy) feels awkward while whiteboard coding. So much boiler-plate.. Besides, there are so many topics that Ctci only covers in a shallow manner. Graph algorithms for ex. Are almost non existant in Ctci..The infaous knapsack problem for ex, is not present in Ctci..

Pie- Pie is a good effort; if you're not aiming for the companies I mentioned. Its coverage of interview questions is simply too little. Otherwise, its ok. But in no way, it can compare to EPI.

Bottom line is, get this book! It might have been the best 20 or 30 $ you have spent in a long time!
1872262
I am somewhat more than an amateur at coding, but in my opinion, far from being a real powerhouse pro. I am slow since I don't code often and need to constantly refer to manuals. But I do understand programming concepts, so I can spec the job out and get it done, either by myself or hiring someone.

 That may change, though. Im sitting here, actually excited about the possibilities and potential of the Wolfram Language.

 It is totally mind-blowing.

 I am particularly interested in text and image processing. To date, I have been using Python for text processing because it is an easy, yet powerful, language to learn and use.

 But processes and functions that would be fairly complex and time consuming to create in Python can be expressed in a single line of Wolfram Language code.

 Likewise, I wouldnt think of attempting image processing myself in Python  but in Wolfram, I can invoke very sophisticated image analysis processes in a single line.

 Totally mind-blowing.

 It is unfortunate that the Amazon See Inside feature has not yet been implemented for this book because it would be immensely valuable to potential purchasers who know nothing of the Wolfram Language. In lieu of this, you might check the Wolfram Language website for the Fast Introduction For Programmers. This may seem a bit of a cop-out in a review of a book about the language, but this language is radically different than any language Ive ever used and I needed an overview before I could really believe what I was seeing and reading.

 The book itself is very clearly written with dozens, if not hundreds, of operations and functions described in one or two paragraphs, each containing examples.

 I would not recommend skipping around in this book: start at the beginning and read it through to the end, working the examples (even for the parts that may not be of great interest to you) on Wolframs website. Wolfram Language is so powerful and so unique I really think you need to go for a complete overview in the beginning and then begin developing your specialized knowledge of the aspects that interest you.

 The oddest thing I found in the book is that the locations where you can learn about and use the language are kept obscure. Youll find the list under Other Resources on Page xv pf the Introduction.

 People who have experienced Wolframs Mathematica may find many, most or all the concepts enumerated. I had no such familiarity and, frankly, am blown away by the elegant power of the Wolfram Language, which is clearly explained for beginners in this excellent book.

Jerry
1945319
This book makes it so much easier to learn to code! I love the interactive exercises that come along FREE with the book, how good is that? The lessons are broken down into short, easy to master concepts and then you get to reinforce what you've learned after every single chapter. You can even go back over the exercises again and again to really drill it home. Every few chapters I go back and repeat the exercises from the earlier lessons just to make sure I've got it. Best way to learn code I've found, highly recommended. :)
3255580
This is not a book with big pictures and lots of redundant information: it's packed with valuable information, extremely well structured and geared towards the needs of the beginner as well as the more advanced student. Each chapter is preceded by an introduction to the respective topic followed by programming projects exemplifying the use of commands, procedures, data types, etc. It is rounded off by concise recap of the material covered. All programming examples are supplied on the accompanying CD ROM which also includes - lo and behold! - a MS VISUAL BASIC 6.0 Working Model Edition as a FREEBIE. So you do not even have to have your own Visual Basic Programming environment in order to do all the exercises and try out the examples given in the book. Algorithms and theoretical background are supplied where necessary and just add to the fun of learning. A wealth of good tips is summarized for each chapter under the headings of "Common Programming Errors", "Good Programming Practices", "Software Engineering Observations" and "Testing and Debugging". The practical hands-on approach to programming of the book is topped off by self-review exercises at the end of each of the 21 chapters for which solutions are supplied and discussed adequately to make them a true learning experience. More challenging exercises are offered to the more ambitious student. This is one of the most instructive and comprehensive books on Visual Basic I have ever had a chance to  lay my hand upon. Highly recommendable!
4967792
Any serious programming will require more than the free edition of C++!  This is a great book to learn the language comprehensively from the bottom up - I have recommended it to several colleagues and none of them have been disappointed to date - well done again Mr Horton...