|
SOFTWARE DESIGN BOOKS
Posted in Software Design (Friday, September 5, 2008)
Written by Michael Hartl and Aurelius Prochazka. By Addison-Wesley Professional.
The regular list price is $44.99.
Sells new for $24.92.
There are some available for $21.00.
Read more...
Purchase Information
5 comments about RailsSpace: Building a Social Networking Website with Ruby on Rails (Addison-Wesley Professional Ruby Series).
- You know you're in trouble when a nerd draws comparisons between anything on his computer and sex, and that's unfortunately what happens in the first few paragraphs of this book's introduction. That sort of attitude--which is later parroted mindlessly by the inexperienced schoolchildren who come to idolize their IRC superiors--is also what makes a lot of people hate Rails. It's an MVC framework, not the second coming.
Nevertheless, there are times when it is simply the best tool for the job--like when you're roughing in an application whose ultimate behavior and purpose are nebulous and fluid. At times like these, you don't need anything that runs "well" or "quickly," you need something that lets you implement new ideas on a whim without any significant commitment that might lead to mental ossification or irrational attachment to something you spent too much time on. This book does a pretty good job of showing you how to do just that even if it does read like some Evangelical doctrine. At least Dave Thomas doesn't get any money out of it.
Some of it's a bit outdated, but they have an errata page on their site, and it's not like you're supposed to use any of this code on a real production site anyway. I'd say it's worth picking up.
- This book is teriffic. I started my journey into RoR by buying the two canonical starter books, Programming Ruby: The Pragmatic Programmers' Guide and Agile Web Development with Rails, 2nd Edition. These are solid, rich repositories of information, but I was still having trouble understanding many concepts and techniques. Then I got this book. Concepts that had eluded me or been difficult suddenly became clear and intuitive. These authors really lead you by the hand through elements of RoR that may be unfamiliar to developers coming from other tools. The standard "starter" books are still must-haves for the would-be RoR developer, but I say this one is really the one to start with.
- Buy this book at your own risk. It doesn't work with Rails 2.0 and even the author's updates (on the website) that supposedly makes it Rails 2.0 compatible doesn't work. I have yet to make it past page 19 even after doing the author's updates.
- I found this book frustrating. About 70 pages into the the tutorial I realized I was monkey-typing and had no real idea what was going on -- things were happening, but I didn't understand *why*. I abandoned the book for another in the same series (The Rails Way (Addison-Wesley Professional Ruby Series). That book is easily twice as long and does nothing but introduce Rails, and although it was a hard slog to read I found it a much, much better introduction to the technology -- and possibly more importantly for Rails, the conceptual framework needed to use it.
At the end of the day, you want to walk away from an introductory book with a real understanding of the topic. I believe this book's dual focus (social networking + Rails intro) distracted the authors from clearly introducing Rails. This may be a useful introduction for a novice software developer, but if you want to really understand what Rails is doing and prepare yourself for doing real development, I cannot recommend it.
- If you're thinking about getting this then stop now and just do it. It's a great introduction to RoR that is fun and practical.
Simply put, you construct a really simple social network with the book. I'm only half finished with it, but the stuff I've learned will be invaluable on other projects. The author sprinkles in some humor the whole way along.
One of the really great things is the testing and refactoring of code. They show you how to do something quickly and then they also take the time to go back and clean up code and do things more efficiently, while maintaining integrity through RoR's testing.
It's awesome, and I've already purchased another copy to give away as a gift.
Read more...
Posted in Software Design (Friday, September 5, 2008)
Written by Vivek Chopra and Sing Li and Jeff Genender. By Wrox.
The regular list price is $39.99.
Sells new for $17.75.
There are some available for $19.38.
Read more...
Purchase Information
2 comments about Professional Apache Tomcat 6 (WROX Professional Guides).
- I was really impressed with this book and felt like it had been written with my requirements in mind. The other Tomcat books I have read felt like they were paraphrasing the online help; additional material was provided, but little of it was new. While reading the first few chapters of this book, several of my ongoing queries had been answered, and there were a bunch of other gems as well - it sorted out my AJP and APR queries, gave options for running Tomcat on privileged ports without running as root, and dug further into the server.xml configuration than I
Professional Apache Tomcat 6 (WROX Professional Guides) is aimed at the serious Tomcat user. It will be useful to people that do serious tinkering at home, but it is a an absolute bible if you have Tomcat running production code or other critical uses.
Personally I found that the level of information did not always provide 100% coverage but, for example, the level of detail provided covering server.xml, web.xml and context.xml configuration will be of great use. The descriptions go into plenty of detail but rarely goes overboard. Examples of places to hook into or extend the existing functionality are pointed out, but the authors don't get distracted in providing sample implementations when the defaults are sufficient. The information is full of the sort professional advice and directions that I would expect from a book of this name, and that has been sadly missing from the other offerings I have seen.
As a short description, it covers topics like AJP connectors, Apache Portable Runtime libraries, configuring Tomcat behind IIS or Apache servers, clustering, shared hosting, oodles of configuration options, and also takes two chapters to look at testing the performance and then tuning applications running Tomcat.
If I had to provide negative comments, I would say that the book was written by three authors and at times it doesn't mesh well and it is clear that one section had a different author to another. There were also a couple of areas that didn't have the coverage I had hoped, but in most cases an explanation was given as to why this was done.
Realistically I find it difficult to fault this book and look forward to migrating our own servers to Tomcat 6 and tweaking the behaviour using the information provided. With this book in hand I feel completely confident that I have the know-how to set up the environment correctly.
- I'm usually very skeptical of books with multiple authors as they rarely turn out to have either consistent quality or consistent pacing. So, I picked this up with very low expectations.
Needless to say I was very pleasantly surprised. It has the perfect combination of detail (which means that you're going to use it as a reference book for a long while), and clarity of explanations (which means that you're going to be the richer for it.)
At many times it does take the scenic route (e.g., it takes 2 chapters before you even install Tomcat), but for the most part, the information is well written and easy to read.
One example of the excellent detail of coverage - there's an entire section on verifying the integrity of the download using the MD5 checksum/PGP. What could be a better start for a chapter on Tomcat Security?
You may want to consider Tomcat the Definitive Guide as a companion volume. That book has more of a practitioner's feel to it, and rounds off areas that this one does not cover very well (such as running Tomcat on different operating systems, or using CATALINA_BASE to run multiple Tomcat instances off a single Tomcat distribution).
Damodar Chetty (swengsol.com)
Read more...
Posted in Software Design (Friday, September 5, 2008)
Written by Mark Rhodes-Ousley and Roberta Bragg and Keith Strassberg. By McGraw-Hill Osborne Media.
The regular list price is $62.99.
Sells new for $27.98.
There are some available for $27.99.
Read more...
Purchase Information
5 comments about Network Security: The Complete Reference.
- I'm working in Information Security, and I was looking for a good security book, fortunately my decision was the best. This book is very complete and not only explain the concepts of network security but Information Security in the general context. The topics are technical as well as administrative. Explain how the security should be implemented and assessed or audited. I really improved my knowledge and my productivity in my job.
- Network Security: The Complete Reference is simply an awesome security book.
It has just about everything you need to know when it comes to infosec.
- A true bible for network security. Also covered are items on risk management, network security policies etc. The book includes simple to advanced topics on network security
- This book wasn't required, but suggested for one of my classes. I am so glad that I bought it. I'll be referencing it for years. So much info in it. Why is it so cheap?
- I bought this book for a class but will definitely keep it afterwards. A lot of well organized information on computer security, from policy to implementation.
Read more...
Posted in Software Design (Friday, September 5, 2008)
Written by Matthias Felleisen and Robert Bruce Findler and Matthew Flatt and Shriram Krishnamurthi. By The MIT Press.
The regular list price is $71.00.
Sells new for $56.80.
There are some available for $39.92.
Read more...
Purchase Information
5 comments about How to Design Programs: An Introduction to Programming and Computing.
- Great book! I liked the way the author approaches how to begin designing programs. I am half-way through the book and I am finding it very entertaining. Yeap! I recommend this book.
- As a programming do-it-yourselfer I've had many conflicting responses to this text -- it's didactic style, its attention to detail, its sometimes patronizing tone, its rigor and broad scope and at the same time its immersion in minutia and quiddities I have never encountered in 'computer books' I had ever perused. Perhaps it's my liberal arts background, or love 'em/hate 'em sensitivity to all those broad stiff-spined textbooks I had carried in back-packs since childhood, combined with a disdain for the authoritative stilted style these educators exude -- despite their patent love of their subject. I felt at once both patronized and condescended to.
From the very start of their journey into a detailed six step-by-step process that show the reader how to analyze problem statements, how to formulate goals, make up examples, outline a solution, and test a solution the authors proclaim their pedagogical ends: "We [...] believe that the study of program design deserves the same central role in general education as mathematics and English. Or, put more succinctly, everyone should learn how to design programs..." This is not a textbook, this is a revolutionary pamphlet calling for educational reform. I had read nothing like this in the tens of 'Dummies' and 'In 24 Hours' books I had exposed myself to. One part priggish, two parts pedagogic. I often found myself asking for whom was it written? First-year college student?, ambitious would-be high-school programmer wanna-be? Math mavens? Surely not a middle-aged bookish clerk who tastes run more to Turgenev and Dostoevsky than Turing and Dijkstra. But then I demanded more than mere anonymous web-lurking from my lowly pc. I remember myself many years ago trying to learn BASIC on a massive time-share computer and telling myself surely there was had to be more magic to computing than this. Well, after reading more texts and having had to unlearn the 'Dummies' and the 'In 24 hours' style of disinformation I had finally found the marrow of a discipline that is as demanding as any I had ever come across and as vexing as any artistic rigor I had ever been inspired by. Come be confused, come be amused, amazed and intellectually abused. Sorely, if I find I have little talent for this excruciatingly logical endevour, I have also found a full-blown appreciation of such daunting computational cheekiness. Much to learn here, and this is only the "core subject of a liberal arts education." What had I been wasting my time on all those years as a professional student?
- 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.
- 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.
- This order was handled above and beyond the call of duty. They handled everything, including the problem of USPS losing the package. No questions were asked and the book was reshipped immediately. Thank You for the great service.
Read more...
Posted in Software Design (Friday, September 5, 2008)
Written by Paul Duvall and Steve Matyas and Andrew Glover. By Addison-Wesley Professional.
The regular list price is $44.99.
Sells new for $30.00.
There are some available for $32.95.
Read more...
Purchase Information
5 comments about Continuous Integration: Improving Software Quality and Reducing Risk (Addison-Wesley Signature Series).
- Any software developer who has spent days in 'integration hell' handling a complexity of software components will appreciate the invaluable information in CONTINUOUS INTEGRATION: IMPROVING SOFTWARE QUALITY AND REDUCING RISK. From the initial concept of CI and its practices to over forty CI-related practices from database integration to development, this book covers the entire cycle of CI development and surveys all kinds of events, repetitive processes, and more. An outstanding guide any serious software development library needs.
- This book is an excellent overview of why Continuous Integration is important and about more than just compiling frequently. The book helps you to understand why to do CI, what you can do beyond building, and how to do it. In addition to general principles, the book points you to some excellent tools and resources. This book is an excellent companion to Software Configuration Management Patterns: Effective Teamwork, Practical Integration; it provides teriffic information that support the build patterns in that book. You might already know some of the information in this book, but it is worth buying if you need to encourge CI in your organization for the clear discussion of why CI matters and the for the detailed advice on how to implement it.
- As a software developer, you know that one of the critical period in a project is when you try to make integrate your code in the overall application and push it towards the final user. It is sometimes a long process that you would like to accelerate so that you could obtain a quicker feedback on the quality of your code. This book written by Paul Duvall, with Steve Matyas and Andrew Glover, will help you improve the way you build and deliver software.
After a initial presentation of the continuous integration (CI) concepts and objectives, the content of the book goes far beyond the simple "continuous build" aspect to cover all disciplines concerned by CI: risk management, configuration management, database evolution, software testing, inspections, deployment. It is clear that CI is just not installing a suite of tools, but is mainly changing software development practices and process. Each chapter is well structured with practical examples related to real life situations. The book reach also nicely the objective of maintaining a balance between a somewhat tools- and language-neutral position, but still giving enough practical advice so that you could quickly adapt the advice to your own software development environment. Final appendixes give valuable information on CI resources and evaluating available CI tools.
Finally, you can get more and updated information on continuous integration and download book's chapter two from the Web site associated to the book: http://www.integratebutton.com
- As Martin Fowler says in his foreword to this book, all of this information is available on the internet. However, that should by no means demean the value of this book. This is an extremely readable and well-organized presentation of this important development practice. Often the organization and comprehensive analytical thought are themselves important contributions to a given topic, and that is what Duvall, et al deliver here. Highly recommended.
- If you have not been exposed to continuous build/integration, this book covers the approach along with the advantages and points you to some references.
However, if you already have an understanding of CI or have decided that you need to set up a CI environment, this book doesn't add much: few details, little discussion of fine points, etc. That is, don't buy this book if you want concrete help setting up CI.
There is quite a bit of repetition (how many times does one have to list the advantages of CI, or a dedicated build machine, or whatever?).
I found Ant in Action (Manning) much more useful: both in providing the motivation for CI, explaining fine points, providing examples, and in breadth (even if "Ant in Action" is nominally about a Java build tool).
Read more...
Posted in Software Design (Friday, September 5, 2008)
Written by Seyed M.M. (Saied) Tahaghoghi and Hugh Williams. By O'Reilly Media, Inc..
The regular list price is $44.99.
Sells new for $25.65.
There are some available for $17.49.
Read more...
Purchase Information
5 comments about Learning MySQL (Learning).
- The first twelve chapters of "Learning MySQL" appear to be a textbook written in the mid-1990s for teaching MySQL to college students. Chapter 13 appears to have been added in 1999, about using MySQL with PHP to build websites. The first twelve chapters require using a terminal or command line (shell) interface to MySQL. My hosting service no longer supports command line interfaces, you're required to use PHPmyAdmin, which is faster and easier. Without access to a command line interface I couldn't do the exercises in the first twelve chapters; without understanding the first twelve chapters you can't figure out chapter 13. Chapter 13 teaches the PHP mysql extensions, which were superseded in 2004 by the mysqli ("i" for "improved") extensions. So the book is two generations out of date. Chapter 14 is about using Perl with PHP -- has anyone built a website with Perl in the last five years? There are other annoyances, such as you're taught to read data out of your database before you're taught to insert data into your database. After flipping back and forth between sections trying to find missing information I gave up. It's hard to believe that O'Reilly published this dinosaur in 2006. I recommend instead "Beginning PHP and MySQL 5: From Novice to Professional," by W. Jason Gilmore.
- This book is great. The text doesn't assume you have any advanced knowledge of anything. This is actually my second MySQL book. The first book didn't explain how to install and setup MySQL and then it didn't explain how to use the keyline MySQL monitor. So I was stuck after the first chapter.
"Learning MySQL" was a real life saver. You're given actual examples to follow along with and they actually explain what's going on.
Thank you sooooo much... I'm already using my new found MySQL knowledge at my job and now the book serves as a great resource for my new projects.
- That's a good book, not for advanced SQL programmers though.
Easy to understand with great examples. I would recommend this book if you are starting to learn MySQL or are a intermediate programmer and needs a good database like MySQL. This book can be a reference for your studies. If I had this book before I could spent less time learning MySQL. But I probably would not recommend for heavy advanced SQL users, since the book have an overall idea of the SQL commands and some linux/php/database coding. Digg in!
- Learning MySQL (Learning)
Get this book! This O'Reilly book "Learning MySQL" first appeared in the book stores at the beginning of the year 2007. The book is written by two PhD authors who seem to have thoroughly tried its contents on their students, at RMIT University in Melbourne, Australia. You can buy this book and then create a splendid software career for yourself, programming Relational Databases. And live happily ever after.
If you are a total SQL beginner, please also buy a more simple-minded introductory SQL text as well; make you favorite pick among the 20-odd SQL texts available in your local bookstore, or read Amazon's reviews associated with all the other SQL books.
Now back to "Learning MySQL". I'm enjoying this book wherever I go, inserting my USB flash drive on any Windows machine I can lay my hands on. I have installed my free copy of MySQL on this low-cost device ($20 for a 4 GigB flash drive), together with Java, Apache Tomcat, FireFox, and other opensource goodies. My point is that this MySQL book covers Windows as well as it deals with Linux and Mac OS X, almost always in the same breath.
I typically try out the book's examples at the mysql> command prompt, but my own final application right now happens to consist of Java servlets, talking to MySQL databases, and running in Tomcat under the Java Virtual Machine (JVM), all on the puny USB flash drive without disturbing the particular Windows machine I'm visiting.
By following the book's examples I have built up a mental toolbox containing all the standard SQL techniques and all the helpful but proprietary MySQL extensions to SQL. Extensions which you might, or might not, want to assimilate, depending on your purity point of view.
As you go through the book's examples on your own mysql> command line, you realize that each example probably in an explanation triggered by questions from the authors' bright MySQL students. It is like sitting in their classroom lapping up the authours' knowledge. And, these authors know their stuff, something that cannot always be said of other SQL books.
One feature, among others in the book, is the authors' short but wonderful Chapter 4, where the reader is led by the hand through The Entity Relationship Model, and through the authors' database examples illustrating the super-important topic of How to map Entities and Relationships to Database Tables. There, the authors also point out existing tools to draw ER diagrams, such as the good free tool "Dia", or MySQL's own free "MySQL Workbench program" which is a very powerful visual database design tool, although still in the beta testing phase.
One last, but not least, comment. It appears that the book is extremely well suited to those Perl or PHP lovers, who want to get their MySQL teeth sharpened. But this reviewer is not into Perl nor PHP, yet, so don't take my word for it.
- this book is a very completed and updated quick look to database world and optimal reference book for sql/mySQL primer.
Stefano Gallozzi
Read more...
Posted in Software Design (Friday, September 5, 2008)
Written by David Hucaby. By Cisco Press.
The regular list price is $59.99.
Sells new for $35.53.
There are some available for $35.88.
Read more...
Purchase Information
5 comments about CCNP BCMSN Official Exam Certification Guide (4th Edition) (Exam Certification Guide).
- This was the only source I used for the exam. While it did a pretty good job at covering everything, I did notice questions on the exam that I know for a fact were not covered in the book. I'm not sure if those questions counted toward my score, but I do believe I answered them correctly anyhow. The CD that came with the book was a waste of time. The quiz chapters were out of order and had some content that wasn't even in the book (Multicasting amongst other things.) I am hoping for better quality out of the BCSI book I'm about to read.
- Haven't finished the book yet, but so far not that great. The writting does not keep your attention, but maybe it will get better. Have only gone through 2 chapters so far.
- Covered most of the content I encountered on the exam and wasn't as verbose and dry as some other Cisco Press titles I've read. I was glad that I had first hand experience with the ADU and ASTU since this was on the exam but not in the book.
- The actual exam and the content depth of this book are in completely different worlds. The exam questions are very deep and complex while the book only superficially covers each topic and spends a great deal of time on commands which make only a minimal appearance on the actual exam.
The test "simulator" questions on the included CD-ROM are simplistic and way to easy compared to the actual test which gives you a false sense of security. You will know it when you are hit on the side of the head by the real test and it will be like wow, what happened, I scored 95% or higher on the CD-ROM simulations.
In addition, many of the questions on the actual test aren't even covered in the book. Believe me, I went back to the book after taking the test and the topic detail WAS NOT IN THIS BOOK.
I would not waste my money on this book if you are going to use it to prep for the real test. Save your money and buy real test study material online.
You will be extremely disappointed with this "study" guide.
- This is an excellent material for those who want to get Cisco CCNP certification. Also contain a very useful and update topics of networking.
Read more...
Posted in Software Design (Friday, September 5, 2008)
Written by William H. Ford and William R. Topp. By Prentice Hall.
The regular list price is $119.00.
Sells new for $71.26.
There are some available for $60.00.
Read more...
Purchase Information
5 comments about Data Structures with C++ Using STL (2nd Edition).
- Excellent book! It was assigned for my Data Structures course. Basic knowledge of C++ and the way classes work is required, but it is an excelent reference. I would NOT sell this book back to the campus bookstore for anything after completing the class.
- This text is for sophomore-level students, but as the authors claimed it's a good read for professionals as well, a reason being that a professional of many years may not have learned data structures together with designs and implementations in C++ with STL. Going back five to ten years, the book in its current form could not have existed, which is why it's beneficial for the professional to read it.
As a professional, I envy the current college students who are lucky to have this book as the text of one of their courses. A student is also given a semester to digest its content, to do the exercises and projects at the end of each chapter, which is not usually possible for a professional. On the other hand, because of years of experience and perhaps plus college background, things students usually and sometimes must do aren't necessary for the professional, who should be able to read through the book in considerably shorter period of time. In summary, it's a great read on the subjects, though one star is taken off for its imperfection such as mistakes in the code and less than superior presentation of some materials.
- Because of physical problems with this book, the authors' programming style, and lack of a proper audience, I just can't recommend it. There are just too many problems and too few positives for the book to be worthwhile.
First, the physical problems with the book: in my case, the binding appears to be bad. As I took it out of its plastic wrapping, I noticed a gap between the cover spine and the glued/sewn binding of the actual pages. It looks like the glue that was supposed to hold the two parts of the book together failed. Turning the pages causes a lot of snapping, crackling, and popping and I worry that the binding will break. Second, it seems like the book uses too small a font (these old eyes don't focus like they used to). Oddly, if I compare the font size to that in other textbooks, it looks comparable. I'm not sure, but I think the publisher used a slightly smaller line spacing and either a lighter ink or darker paper. Whatever it is, it makes reading the book a bit hard. That's pretty subjective and minor, but more aggravating is that the publisher used an even lighter (gray) font for the code segments. This makes the code even harder to read than the text. Again, I'm not certain, but it also looks like the font in the code sections is even smaller than the font in the text. And finally, the authors don't use any color in their code. It's hard to distinguish the actual code from the comments. This makes reading the code difficult.
Next, I highly disagree with the authors' coding style. Essentially, I consider it sloppy. In general, they don't write their class methods to ensure data integrity (and that's one of the big advantages of classes (which are at the core of this book)). Also, the authors tend to directly access private class members within the class methods instead of using the class' already defined public methods that do the same thing (get/set). I know this is allowed, but it's still bad software engineering: you should re-use code wherever possible. Similarly, and worse, the authors violate the principles of data hiding by writing classes with public data members instead of with private data members and public get/set methods. I also have a problem with the authors using "using namespace std;" in their code. Since this exposes all of the C++ standard library methods to the program, it can lead to conflicts. I understand that in a teaching environment this might be good for keeping the focus on the topic at hand instead of "cluttering up the code" with nuances, but the authors make no reference to this rationale. They just blindly use that line in all their code. I'd much prefer they explicitly did a "using std::whatever;" when they needed it. What's especially bad is that they do this in all the HEADERS they provide for their examples (not just in the "main" programs). Anyone who uses any of those headers automatically ends up with all the namespace names included in their code. And, finally, not only are the authors lax in their object oriented programming, they're also lax in their structured programming: they routinely, and without comment, use break statements to jump out of the infinite for-loops (which are feats in themselves) they set up to handle their file input.
Finally, and most importantly, the authors don't seem to have a grasp on who their audience is. In the Preface and the start of the first chapter, they specifically state that the readers should already be familiar with objects and classes from a first course in C++. They note that they aren't about to review old topics, but, instead, will pick up where that left off. However, most of the book is a re-hashing of basic C++ programming. For instance:
- Chapter 1 is a review of programming classes (and, thus, objects) in C++.
- Chapter 2 discusses 1) software design, 2) handling runtime errors, 3) object composition, and 4) operator overloading.
- Chapter 3 covers templates and recursion. The algorithms discussed are those usually presented in C++ programming courses: selection sort, sequential search, binary search, tower of hanoi, and greatest common divisor.
- Chapter 5 goes over pointers, pointer arithmetic, dynamic memory allocation, constructors and destructors.
- Chapter 7, stacks. Chapter 8, queues. Chapter 9, linked lists. Chapter 10, binary trees. Chapter 13, inheritance and abstract classes.
All of this is what I consider to be basic C++ (see Deitel's "C++ How to Program" book to find references to all those things). I just can't see how anyone could learn even the rudiments of C++ without having covered those topics. I could be wrong (in which case, since I've provided my rationale for my rating, you'll at least know what to ignore in this review). But, for all intents and purposes, the authors don't really start teaching anything new until after page 500 (Chapter 10) in a 1000 page (16 chapter) book. And even there, I was so irritated with the various problems I noted above, that I kept wondering how much credence to put in the authors' presentation.
So, in a nutshell, because of the physical problems with the book itself, the sloppiness of the authors' programming style, and their mis-identification of the audience, I can't recommend this book. I rate it at only 2 stars out of 5.
As a side note, at the time I bought this book, Florida State University (FSU) used it in their COP 4530: "Data Structures, Algorithms & Generic Programming" course. They've now switched to a book called "Data Structures & Algorithms in C++," 3e, by Drozdek. I don't know anything about that book, but based solely on this book, FSU did the right thing.
- having read 1st four chapters, i find Ford and Topp are stingy in examples and theory.
You'd better do all the programming exercises at the end of chapter since that's where the value of this book lies.
Thinking in C++ Vol.1 and 2 have better reference material. Please buy Bruce Eckels' "Thinking in C++"!
- The book itself is great and illustrates the core concepts well.
The code examples are grossly out of date (were talking 1990's) and completely ruins the beautiful text by adding confusing, poorly written code examples to reinforce good literature.
If you are buying this to learn data structures as a reference, great.
If you expect usable code examples this is not the book for you.
Highly Microsoft Visual Studio Centric. Not ANSI C++.
My note to the author's / publisher: You need to keep up with the times. This is technology and it moves quickly. Otherwise future-proof your code as much as possible.
Read more...
Posted in Software Design (Friday, September 5, 2008)
Written by Ken Cox. By For Dummies.
The regular list price is $29.99.
Sells new for $15.16.
There are some available for $16.08.
Read more...
Purchase Information
4 comments about ASP.NET 3.5 For Dummies (For Dummies (Computer/Tech)).
- I am an experienced developer so I only expected to skim over the book to get familiar with any of the new asp.net 3.5 features. I found myself reading every word of every page because the book was actually "entertaining". The writing is very smooth and easy to understand. You feel as if a really good teacher who knows how to relate to people is talking to you.
I was also surprised how deep the book was able to go into each subject. For example Linq is a very complicated subject yet the book does contain enough examples for you to use it in the real world.
- I almost didn't by the ASP.NET 3.5 for Dummies. Then I noticed that it was a different author than ASP.NET 2.0 for Dummies and I thought I would give it a look. Bill Hatfield wrote the 'Dummies' book on the previous version and while I found him to be very knowledgeable, I got frustrated because I was trying to learn how to use Visual Studio with ASP.NET and his book didn't provide much help. Ken Cox however "gets it". He wrote the book for use with Visual Studio and by the end of Chapter 4 you're already using AJAX with no difficulty! By chapter 7 you're delving into LINQ! Ken's approach is intelligent and his style works both for the beginner as well as those more seasoned in ASP.NET. Excellent book!
- This book uses VB only. The web site reference is non existant. The overview should stipulate the strict usage of VB not C#. If you want to use C# do not but this book.
- This is not the first ASP.Net book I've read. This is the first one I've enjoyed!-)
Because of this book I'll reconsider my attitude towards the whole series. Suddenly it seems a great idea - get the basics with no pain.
I liked the humor. I liked the fact the author's making it so easy. I like the stress on using the tools and not writing the code by hand.
I key in the samples. Then I look at the code generated by the tools. Then I look at the code sent to the browser.
A great way to learn. And have fun.
Read more...
Posted in Software Design (Friday, September 5, 2008)
Written by Aaron Newton. By Apress.
The regular list price is $19.99.
Sells new for $17.99.
There are some available for $16.47.
Read more...
Purchase Information
No comments about MooTools Essentials: The Official MooTools Reference for JavaScript™ and Ajax Development (Firstpress).
|
|
|
RailsSpace: Building a Social Networking Website with Ruby on Rails (Addison-Wesley Professional Ruby Series)
Professional Apache Tomcat 6 (WROX Professional Guides)
Network Security: The Complete Reference
How to Design Programs: An Introduction to Programming and Computing
Continuous Integration: Improving Software Quality and Reducing Risk (Addison-Wesley Signature Series)
Learning MySQL (Learning)
CCNP BCMSN Official Exam Certification Guide (4th Edition) (Exam Certification Guide)
Data Structures with C++ Using STL (2nd Edition)
ASP.NET 3.5 For Dummies (For Dummies (Computer/Tech))
MooTools Essentials: The Official MooTools Reference for JavaScript™ and Ajax Development (Firstpress)
|