Customer Reviews


14 Reviews
5 star:
 (4)
4 star:
 (5)
3 star:
 (2)
2 star:
 (2)
1 star:
 (1)
 
 
 
 
 
Average Customer Review
Share your thoughts with other customers
Create your own review
 
 
Only search this product's reviews

The most helpful favorable review
The most helpful critical review


14 of 15 people found the following review helpful:
5.0 out of 5 stars Just Plain Fun!!!
Okay, maybe I should say, just plain fun in a geeky kind of way. This book is relatively inexpensive, thus making it well worth the price. If you programm in C++ (or even in C, C#, or Java), then you will most likely enjoy this book.

Unlike most computer books, this is not a book you read in order to learn how to to something. Rather, this is a book you read (1) to see...

Published on March 31, 2003 by Bradley Jones

versus
54 of 57 people found the following review helpful:
1.0 out of 5 stars Only for extreme novice C++ programmers
The concept of this book is good, but the execution is seriously lacking.

The "bugs" in Mr.Oualline's programs are the kinds of errors only the most unskilled novices would make: a missing space character in a format statement; accessing a 5-element array with index values of 1 thru 5; a class whose constructor allocates storage but whose destructor doesn't...

Published on April 4, 2003


‹ Previous | 1 2 | Next ›
Most Helpful First | Newest First

54 of 57 people found the following review helpful:
1.0 out of 5 stars Only for extreme novice C++ programmers, April 4, 2003
By A Customer
This review is from: How Not to Program in C++: 111 Broken Programs and 3 Working Ones, or Why Does 2+2=5986 (Paperback)
The concept of this book is good, but the execution is seriously lacking.

The "bugs" in Mr.Oualline's programs are the kinds of errors only the most unskilled novices would make: a missing space character in a format statement; accessing a 5-element array with index values of 1 thru 5; a class whose constructor allocates storage but whose destructor doesn't release the memory. Trivial, easy-to-spot errors that don't really expand anyone's grasp of C++.

To add insult to injury, large portions of the book are filled with Mr.Oualline's tiresome war stories and aphorisms.

A much better source of knowledge is "C++ Gotchas", any of Scott Meyers' books, or the "C++ FAQ".

Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No


14 of 15 people found the following review helpful:
5.0 out of 5 stars Just Plain Fun!!!, March 31, 2003
By 
Bradley Jones (Fishers, IN United States) - See all my reviews
(REAL NAME)   
This review is from: How Not to Program in C++: 111 Broken Programs and 3 Working Ones, or Why Does 2+2=5986 (Paperback)
Okay, maybe I should say, just plain fun in a geeky kind of way. This book is relatively inexpensive, thus making it well worth the price. If you programm in C++ (or even in C, C#, or Java), then you will most likely enjoy this book.

Unlike most computer books, this is not a book you read in order to learn how to to something. Rather, this is a book you read (1) to see if you already know how to do something, (2) if you like solving puzzles, (3) if you want to learn about a number of typical 'gotchas'.

This book presents listings (about 111+). Each seems to have something specifically wrong with it. You try to figure out the issue with a hint. You are can then get additional hints using a jump table. You are also given the answer as to what the gotcha is.

The book also contains a large number of trivia type information. This is folklore, funny stories, and more.

This is a book that I find myself picking up over and over to read just a little farther. It is fun. It is interesting. I'm even learning a thing or two. I've enjoyed it so much, I'll be writing a review on it for CodeGuru.com!

Congratulations to Steve Oualline on putting together one of the few fun-to-read computers books.

Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No


10 of 11 people found the following review helpful:
3.0 out of 5 stars unpolished, May 8, 2003
By 
David Minogue (San Francisco, CA United States) - See all my reviews
This review is from: How Not to Program in C++: 111 Broken Programs and 3 Working Ones, or Why Does 2+2=5986 (Paperback)
This book illustrates several common errors that every C++ programmers will encounter. There is no substitute for learning from your own mistakes, but forewarned is forearmed. If you read this book before you make the mistakes, you will save yourself some time. The humor scattered through the book helps keep the subject light.

Unfortunately, the book is flawed beyond those bugs which were introduced intentionally. In one case a program was unintentionally corrected, leaving no errors to be found. Some of the programs seem unnecessarily long for the bug they are illustrating. Like most computer programs, this book would have benefitted from peer review prior to its release.

Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No


6 of 6 people found the following review helpful:
4.0 out of 5 stars Good refresher of C++, March 1, 2004
This review is from: How Not to Program in C++: 111 Broken Programs and 3 Working Ones, or Why Does 2+2=5986 (Paperback)
Are you the type of programmer who also likes logic puzzles, or chess problems and crosswords in newspapers? Did you ace the logic part of an SAT or GRE exam? Then this book is for you!

You are learning C++. Or perhaps you need a refresher. You may not be facile with all the nuances. Learn by doing. The book has 111 programs that don't quite work. All you need is enough discipline to work through the programs without peeking at the answers until you have give it your best try. The book assumes that you are already mostly familiar with the syntax of C++. While some programs explore the subtleties of this, the author expects that you can at least code a simple C++ task.

The programs are not antipatterns, though. I could not discern any higher level structure across the programs to suggest this.

Perhaps the best way to regard this book is as a cheap refresher exam. Mental stretching exercises.

Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No


2 of 2 people found the following review helpful:
2.0 out of 5 stars Puzzle book for the "my teletype has both colors, black and white" crowd., January 15, 2010
By 
Yaverot (spring of drowned cabbit) - See all my reviews
Amazon Verified Purchase(What's this?)
This review is from: How Not to Program in C++: 111 Broken Programs and 3 Working Ones, or Why Does 2+2=5986 (Paperback)
I am not a C++ expert by any means, but whoever titled this book didn't attempt to read it.
And I may be completely unfair, I am reviewing a computer book 7 _years_ after publication.
The title clearly indicates a book, where a sample program is given, and then an explanation of how and why it is wrong, and finally how to avoid those mistakes.
Instead, you're given a program listing (in standard black&white like most books instead of the color highlighted of a modern editor or IDE), and basically told there is a problem within the category of the chapter. Then it gives a hint & answer number (but not the page number those items reside on). Occasionally in the hints you receive the output of the program. A programming puzzle book of this nature could be quite interesting, but if that is the goal, mark it as a puzzle book and give it a difficulty rating.

Some of the problems with this book include the fact that the publisher's spellcheck fixed the bug on page 30, so that there is none to find. Page 32 would be clear from syntax highlighting (and has needless use of pointers and alters comment style part-way though so that the 'broken' one will compile). Chapter 5 is about C, not C++, while much C appears in C++ the book is about the later, not the former. Many of the bugs come from ignoring basic features of the language or coding idioms. In C++ you avoid the preprocessor as much as possible because C++ gives you language tools (templates to replace macros, global consts to avoid #DEFINEs). The book avoids const correctness and RAII.

So, what is good about the book?
The humor posted between the puzzles, including indicating what of the story is folklore. "This page left unintentionally blank." 'BASIC programmer: if I type WALK will it go slower?' Given the Marketplace price (instead of Amazon's new) it could be a 5 star computer humor book, with a bunch of other junk also in it, if you have that mindset when you pick it up.
Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No


2 of 2 people found the following review helpful:
2.0 out of 5 stars Nice examples, but poor editing, January 19, 2008
This review is from: How Not to Program in C++: 111 Broken Programs and 3 Working Ones, or Why Does 2+2=5986 (Paperback)
I have not read the whole book yet, but I'm only on page 24 and I saw enough errors to make a review. I like the examples in this book (as a novice C++ programmer), but some of these errors I've seen would make the program error out at compile time.

For example, in Programs 2 & 3 in the book, the author wrote:

return (o); // Now that's the LETTER 'o', not ZERO like it should be

At first I was like, "Alright! That's an easy one." But when I checked the answer, that was not the error the author was looking for.

In Program 3, the function "matrix_multiply" parameters are:
int result[3][3], // Okay so far
int matrixl[3][3], // Notice it is 'matrix' and the LETTER 'l', not ONE
int matrix2[3][3]

And inside the function they use "matrix1" instead of the defined "matrixl". This is one of the errors I thought it might be, but once again, it was not the error the author was looking for.


Maybe I'm being a bit harsh, but if you're going to write a book on how to NOT code (but provide the solutions), you should have another programmer review the code, not a regular editor who doesn't know any better. Or at least mention these 'extra credit' errors that I, a novice, found. Speaking of which, I'm really surprised nobody else has mentioned this.

All-in-all, great intent, but they should have reviewed the code a little better.
Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No


1 of 1 people found the following review helpful:
4.0 out of 5 stars Interesting Read, February 3, 2008
By 
Samir Faci "safaci2000" (Batavia, IL United States) - See all my reviews
(REAL NAME)   
This review is from: How Not to Program in C++: 111 Broken Programs and 3 Working Ones, or Why Does 2+2=5986 (Paperback)
I throughly enjoyed this book. I ran across programs and source code that made me scratch my head trying to figure what the heck is wrong with it, only to find a minor little syntax error. The book is written in a laid back comical approach with lots of code sample, and lots of funny tidbits, theorem and true stories about tech support calls.

A very nice walk down memory lane, reminding all of us of our humble beginnings and the noobish mistakes we once made.
Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No


1 of 1 people found the following review helpful:
5.0 out of 5 stars Good Book, But Know Thyself First, October 16, 2007
By 
Amazon Verified Purchase(What's this?)
This review is from: How Not to Program in C++: 111 Broken Programs and 3 Working Ones, or Why Does 2+2=5986 (Paperback)
I enjoy this book, and recommend it. However, to get the most from the book, the reader should know themselves and their C++ level before reading it.

For the novice programmer, this is probably a useful expenditure of time and money. Many of the bugs will be over the head of the novice or student reader. But, perhaps even years into the future, when they first encounter a problem previously seen in this book, they may recognize and fix it much more quickly.

For the experienced programmer, the book is more amusing than educational, but there are still some good challenges. If one expects that every page will present a new puzzle, they will be disappointed, but there are enough challenges to make the book worthwhile.

Finally, for the teacher, this book has some problems which are simple enough to use for a C++ class. For example, I use number 10 in my C++ course - boiled down to its essentials, it's:

float A;
A = 1/3;
cout << A;

...a mistake which experienced C++ programmers still make occasionally.

The organization of the book includes randomized hints in a separate section, so that one can read the hint for problem 23 without seeing the hint for problem 24. The answers are similarly organized. While not straightforward, it does make one work at the solution. I prefer this organization to the other two competing books I own, Andrew Koenig's "C Traps and Pitfalls" and Alan Feuer's "The C Puzzle Book".

A prospective buyer can see some sample problems at the publisher's web site, and this brings me to one drawback: no source code. Some of the problems are fairly long, and an archive of source to avoid re-typing would be welcome, if only to me.

So...before buying this book, know thyself and set your expectations accordingly. Each of the other reviews makes valid points, depending upon the reviewer's experience level and expectations. I personally rate this book five stars.
Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No


3 of 4 people found the following review helpful:
5.0 out of 5 stars Great tool to get back at it., January 26, 2006
Amazon Verified Purchase(What's this?)
This review is from: How Not to Program in C++: 111 Broken Programs and 3 Working Ones, or Why Does 2+2=5986 (Paperback)
With the advent of good scientific tools like MatLab and MathCAD, I quit programming with an R&D project in C++ about 12 years ago as I was kicked out of the trenches into a higher level. Like any language skill, computer language skills are best learned by immersion. I have some reasons to get back in the game and ordered this this to immerse me into C++ without having to start with a 'Hello World' program. Of course, the author started with a 'Hellow World' program.

It is the first technical book, in a long time, that I find difficult to put down. You may want to demote it one star, if you like sleep.
Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No


4.0 out of 5 stars A number of good puzzles, May 14, 2010
By 
This review is from: How Not to Program in C++: 111 Broken Programs and 3 Working Ones, or Why Does 2+2=5986 (Paperback)
This book contains a bunch of counterexamples of proper C++ programs. The programs contain bugs ranging from novice-level to truly arcane. While some of the "puzzles" were quite easy, others involved parts of the C++ language that I hadn't used before, and I learned quite a bit from these.

Overall, it was a good book to pick up for a couple of minutes at a time while waiting for code to build.
Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No


‹ Previous | 1 2 | Next ›
Most Helpful First | Newest First

This product

How Not to Program in C++: 111 Broken Programs and 3 Working Ones, or Why Does 2+2=5986
$24.95 $18.27
In Stock
Add to cart Add to wishlist