Customer Reviews


19 Reviews
5 star:
 (14)
4 star:
 (1)
3 star:
 (1)
2 star:
 (2)
1 star:
 (1)
 
 
 
 
 
Average Customer Review
Share your thoughts with other customers
Create your own review
 
 

The most helpful favorable review
The most helpful critical review


72 of 72 people found the following review helpful
5.0 out of 5 stars A Recipe for Programming
This book opened my eyes. I'd finished a Ph.D. in computer science, and had a decent exposure to quite a few programming languages and paradigms, before coming across this book. I was surprised to start working through this introductory book, and find myself learning new things! The book transformed my approach to programming.

From page one, HtDP starts...
Published on July 5, 2006 by not-just-yeti

versus
11 of 33 people found the following review helpful
3.0 out of 5 stars Good book
Pro: a really good book for beginners.

Con: do NOT buy this book. There's a FREE edition online!
Published on November 26, 2010 by NkiT


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

72 of 72 people found the following review helpful
5.0 out of 5 stars A Recipe for Programming, July 5, 2006
By 
not-just-yeti (Blacksburg, VA USA) - See all my reviews
This review is from: How to Design Programs: An Introduction to Programming and Computing (Hardcover)
This book opened my eyes. I'd finished a Ph.D. in computer science, and had a decent exposure to quite a few programming languages and paradigms, before coming across this book. I was surprised to start working through this introductory book, and find myself learning new things! The book transformed my approach to programming.

From page one, HtDP starts talking about good program design, and gives a methodical approach. Until this, I'd always thought programming books were "here are ten small example programs; go write ten more." That's hardly teaching. But HtDP builds up a straightforward design recipe, to guide programs along. If I get stuck or have a mistake in my program, 90% of the time I realize it's because I strayed from the book's recipe. The approach is language-independent, although some programming environments make it much easier to implement the design recipe; the book provides links to a good (free) Scheme environment, which it uses for its code examples too. (I've come to use that environment day-to-day). My code--in any language--has become much more robust, and when I do have a bug I usually locate it early, thanks to this book.

In addition, HtDP made me think about things I'd taken for granted: How is assignment to a variable fundamentally different than assignment to a structure's field? Even, *why* do I use assignment statements in certain situations, instead of choosing a functional approach? How often do my programs actually need the efficiency of imprecise floating-point arithmetic, vs using bignums which totally liberate me from numerical inaccuracy?

Although the text is available on line, I cherish my hardcopy. This is a book to first learn programming from, and one to revisit every five years.
Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No


44 of 45 people found the following review helpful
5.0 out of 5 stars This is "the book" on programming, April 28, 2001
By A Customer
This review is from: How to Design Programs: An Introduction to Programming and Computing (Hardcover)
This book is going to be a classic. Unlike other introductory books on programming, it focuses on ideas not examples. It teaches students to organize their thoughts. It emphasizes thinking through problems. It pushes students to formulate concise comments, illustrate them with concrete examples, and test their programs systematically and automatically. I have not seen anything like this before. If you want to know the "why" and not just play with examples, buy this book! Note: It uses Scheme, which isn't widely used in industry (yet?) but don't let this deter you. The language is free, and it is very simple.
Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No


88 of 96 people found the following review helpful
5.0 out of 5 stars Should be read by Everyone who wants to program., September 27, 2001
This review is from: How to Design Programs: An Introduction to Programming and Computing (Hardcover)
Have you ever looked at other people's codes and said to yourself something like "No... this isn't the way it should be written!". Or, worst yet, have you ever been asked by someone who wants you to read his/her codes and tell him/her what does it do?
Both things happened quite often, though.
The problems are mainly because they don't know how to "design" their programs properly. Being able to progam doesn't mean being to design/organize a good code at all. And being good at finding/inventing algorithms for problem solving doesn't mean that either.
One another thing, I (maybe just only me, I don't know) think that C shouldn't be taught as the first language (at least, not anymore). This is mainly because, in C, you can hardly express yourself. Also, C codes look cryptic to those new to programming. And you must know a lot, and practice a lot, (that takes a lot of time, friend) to be able to express what you want.
And also, several times, I saw many people just playing around with the * and & (well, the pointer-dereferencing, and address-taking symbol in C/C++), adding one more, deleting one off, to see which will make their programs work. (Sometime, it just works by miracle...)
This book, using Scheme (a modern dialect of Lisp) as the language of choice. I, personally, agree of choosing it. Scheme was designed in the way such that programmers can focus on what they want to express, rather than imprementation details. From my own experience, I became a better programmer after learning it. (I was already a C++ programmer by that time. I just have to use Lisp on my study/research).
One thing that I like is that, it focused on how to "design" programs, not just how to program, while college classes are mostly focused on how to write programs. No matter how students write their codes, if it could run, then it is fine.
Then, I think, a lot of people do have ability to program, a lot are good at it. However, the number of people who knows how to design programs are much lesser. And this would result in something like those silly examples at the beginning of this review. Therefore, this book had emphasized on quite an important thing.
And the last thing to say about this one is: MIT Press' textbooks are very high-quality, and this one is not an exception. It is very easy to read and to understand. And, even the html version is available at the book's official homepage, it is nice to have the printed version.
How to "design" programs is very important for every CS major people, and is important to everyone else in general (to program your "everyday life schedule", etc). Whether you want to become a professional programmer (write codes for living, etc) or not.
Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No


21 of 21 people found the following review helpful
5.0 out of 5 stars Excellent Book for Rookies and Veterans, December 25, 2006
This review is from: How to Design Programs: An Introduction to Programming and Computing (Hardcover)
I have been professionally developing software for about 5 years. I found this book to be one of the most useful and helpful books to help my coding skills. Even though I have been programming professionally for a few years and have a computer science degree, I learned a lot of new neat concepts from this book. It also helped to me to remind me of all the basic good practices that I have forgotten.

It is also an excellent book for beginners. The books doesn't use a popular programming language like Java to accomplish its goals. Instead, it uses Scheme so the student can focus on the concepts rather than syntax. It also teaches great concepts and breaks the problem down on how to solve various problems. Also it isn't "hardcore" like SICP-- it is very friendly to non-MIT level people.
Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No


35 of 39 people found the following review helpful
5.0 out of 5 stars the best resource for a college-level introduction, May 13, 2001
By 
This review is from: How to Design Programs: An Introduction to Programming and Computing (Hardcover)
Eric Raymond writes in "How to be a hacker" that learning Lisp will make you a better programmer for the rest of your days. And this book shows why. With Lisp (actually Scheme, but never mind that), your programs match your problem statement. Programming is no longer a mystical experience where "it suddenly works". With this book (and Scheme) you understand *why* it works. In this day and age, it is exactly the book that freshmen should see .. especially those who think they already know how to program. Thanks for writing this book. It will make my teaching easier.
Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No


21 of 22 people found the following review helpful
5.0 out of 5 stars Wonderful book - not necessarily about programming., April 10, 2001
This review is from: How to Design Programs: An Introduction to Programming and Computing (Hardcover)
This book teaches the general tasks of planning, organising ones thoughts, designing, etc., using programming as its excuse. Directed at high school students, this is arguably the most solid foundation to being independent in ones productive work that one can give. It does require something from the teacher, though - it is easy to let the classes degrade into something close to what most people have come to expect from a programming course. With some enthousiasm, a course based in this book can be beautifully integrated with parallel classes in English composition, crafts, or (certain) team sports. (And about what other programming book can one say that!)
Does require some high school math.
Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No


22 of 24 people found the following review helpful
5.0 out of 5 stars Wonderful book - not necessarily about programming., April 10, 2001
This review is from: How to Design Programs: An Introduction to Programming and Computing (Hardcover)
This book teaches the general tasks of planning, organising ones thoughts, designing, etc., using programming as its excuse. Directed at high school students, this is arguably the most solid foundation to being independent in ones productive work that one can give. It does require something from the teacher, though - it is easy to let the classes degrade into something close to what most people have come to expect from a programming course. With some enthousiasm, a course based in this book can be beautifully integrated with parallel classes in English composition, crafts, or (certain) team sports. (And about what other programming book can one say that!)
Does require some high school math.
Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No


8 of 8 people found the following review helpful
5.0 out of 5 stars Excellent for Self study, NOT Outdated by a long shot..., September 10, 2013
Verified Purchase(What's this?)
This review is from: How to Design Programs: An Introduction to Programming and Computing (Hardcover)
There is a very recent book called software and mind (Software and Mind: The Mechanistic Myth and Its Consequences) which lashes out for nearly 1,000 pages at current software and programming education as mind-numbing, rote, and not fit for the human brain, let alone spirit. Anyone who has coded with the "wash on wash off" method knows what the point is.

These authors get that, and more. They take the time to describe how memorization destroys the human spirit, let alone the will to go on in programming! A majority of other programming books do what both books warn about: kill the will to go on with just awful tedium. "Learning" data structures, commands, rote algorithms, etc. is about as fun as watching an apple rot.

This fine text, still not outdated and a gem, created the DrScheme language out of Scheme (a Lisp descendant functional paradigm language) especially for beginning programmers. The book and online web support (still active in late 2013) include a custom SDK/IDE (programming interface) like a little toolkit window, with a "calculator" that can test structures and algorithms with a fun interface that gently leads you into debugging without creating thoughts of suicide.

I train autodidacts with online tutorials and some of the finest programmers I've ever met are self taught. This is a GREAT text for that purpose, because autodidacts are self motivated and don't have Satan the Professor cracking the whip to make them finish. In that frame the text has to be fun, interesting and revelatory or my favorite audience (self learners) just walk away. This is one of the rare ones that does not disappoint!

Many authors try to pack their texts with show off garbage for their peers. This text is 180 degrees from that; totally student oriented, and always aware of how NOT to teach programming. The analogies, insights, exercises, pedagogy are wonderfully thorough, while bending over backwards to avoid methods that a rabid chimp could learn, or so rote that one wonders where the macro meta program is that should do this to save human dignity. Highly recommended, both for teachers who care about their students, and my fellow self study buddies.

Library Picks reviews only for the benefit of Amazon shoppers and has nothing to do with Amazon, the authors, manufacturers or publishers of the items we review. We always buy the items we review for the sake of objectivity, and although we search for gems, are not shy about trashing an item if it's a waste of time or money for Amazon shoppers. If the reviewer identifies herself, her job or her field, it is only as a point of reference to help you gauge the background and any biases.
Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No


8 of 8 people found the following review helpful
4.0 out of 5 stars A landmark textbook, March 31, 2011
By 
This review is from: How to Design Programs: An Introduction to Programming and Computing (Hardcover)
In the hands of the right teacher, this textbook is the best introduction to computer science, bar none. Students who complete this textbook will be able to calmly and methodically tackle complex programming problems that would be a struggle for many professional programmers.

However, I would not recommend it for self-study. Most of the high school students I have worked with found it hard to follow on their own.

Furthermore, in the decade since this book was first published, the authors of the book have continued to evolve this style of teaching, so some parts of the book are out of date (not in the sense that they don't work, but in the sense that it is no longer the recommended way to teach this material). All of the drawing exercises, for example, are now obsolete in favor of a new and improved animation teachpack.

I fully expect the second edition of this book will resolve these issues, and I look forward to giving the second edition a full five stars!
Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No


5 of 5 people found the following review helpful
5.0 out of 5 stars Best Programming book ever, September 11, 2012
Verified Purchase(What's this?)
This review is from: How to Design Programs: An Introduction to Programming and Computing (Hardcover)
This is the best book on programming that i have ever read. Though it is centered around the language scheme, it actually explains how any programming language works. The book follows your thought process. You'll find that the answer to the question that just popped up in your head, is infact there in the very next para. I have never seen a book that understands the reader completely as this book does. A must read if you want to understand the basic underlying mechanics of any programming language, and ofcourse a great book to learn scheme as well.
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

Details

How to Design Programs: An Introduction to Programming and Computing
How to Design Programs: An Introduction to Programming and Computing by Matthias Felleisen (Hardcover - February 12, 2001)
$85.00 $79.94
In Stock
Add to cart Add to wishlist
Search these reviews only
Send us feedback How can we make Amazon Customer Reviews better for you? Let us know here.