The Pragmatic Craftsman :: Simplicity from complexity ::

Archive for the 'Books' Category

Beginning Java EE 6 with Glassfish 3 December 22nd, 2009
Design Patterns Explained August 25th, 2009
Software Architecture Design Patterns in Java August 25th, 2009
Pro JavaScript Design Patterns July 22nd, 2009
DOM Scripting May 15th, 2009
Object-Oriented JavaScript May 7th, 2009
Professional JavaScript for Web Developers (2nd ed) April 24th, 2009
Effective Java (2nd Edition) March 2nd, 2009
jQuery in Action January 23rd, 2009
stylin’ with CSS May 16th, 2008

Beginning Java EE 6 with Glassfish 3


Beginning Javaâ„¢ EE 6 Platform with GlassFishâ„¢ 3
by Antonio Goncalves
ISBN 1430219548
Date Read 12/2009

My Rating


If you’ve been following the Java EE world, you know that Java EE 6 along with Glassfish v3 application server were released recently. This book has been around since mid year! And it’s still the only book on the subject. To me this was a great gift: I was able to get a complete sneak peek at the new technologies to be released ahead of time.

But was it worth it?

Great overview. If you want to learn what the buzz in the Java Enterprise (EE) world is all about, this is a great book to read. The author does a great job in keeping things at a fairly high level. He focuses on giving you just enough details (but not more), so you can actually start playing around with the technology. That makes this book easy to read. And practical — pragmatic!

Covers the important EE technologies. JPA. JSF. EJB. JMS. Web Services (SOAP and REST). JPA is covered really well. Four chapters dedicated to that. Four chapters for EJBs as well. And three for JSF. Two for each of the web services specs (one for SOAP and one for REST). The coverage on these should be enough to get you started and start playing around. The other technologies are covered very briefly.

Quick read. Not too deep. Not too shallow. This is the author’s style. It’s easy to read. The author gives you a lot of examples in between. On the other hand, at times, it would be nice to have a deeper treatment of a given technology.

Lots of examples. I love to see that. But not every chapter is treated the same. Some chapters have a complete example (Putting It All Together), and some don’t. I was able to run the examples from some chapters but not from all. I had to modify several to make it work. I wish a greater care was put in this area. It’s frustrating when you try to run something and you can’t. But if you’re willing to research it by yourself, you will learn more! I guess that’s the upside. But it does slow you down a bit.

Some technologies are not covered. CDI, is not there. Very light treatment of bean validation.

Overall, an excellent overview of Java EE 6, but not a complete guide/reference on the subject. I was very happy to see this book. And I’m very happy that I had read it. From what I see (at least on Amazon), a second edition will come out in a few months — might want to wait for that. Overall, a very good book on Java EE. Recommended.

Design Patterns Explained


Design Patterns Explained
by Alan Shalloway and James R. Trott
ISBN 0321247140
Date Read 8/2009

My Rating


Excellent intro to Design Patterns. I really liked the authors’ focus on teaching not only design patterns but how they should be used and implemented. Really good job there. I think this is a great book to start learning design patterns. If you want to learn DP, start with this book before you dive into the GoF Design Patterns book. Much to learn from this book, with a slow, more thorough way.

Not really a reference book. I tried to read this one quickly so I can get a quick refresher. This book is not suitable for that. Long explanations, not that much source code for examples. Yes, the explanations are good, but not if you want to quickly scan and refresh your memory. For that reason, I think the classic GoF book is still the king.

Overall, I appreciate the authors focus on teaching the right way of programming; trying to instill the “correct” thinking about patterns; and the detailed explanations of the different design patterns. I am disappointed that only a subset of patterns were explained and that this book is not suitable for reference. But all in all, a decent book.

Software Architecture Design Patterns in Java


Software Architecture Design Patterns in Java
by Partha Kuchana
ISBN 0849321425
Date Read 7/2009

My Rating


Good concept, bad implementation. After reading a few books on Design Patterns, I wanted to check out something else. Title of this book and decent reviews drew me in. I’m disappointed. After reading 20 chapters, I’m going to stop. I just don’t feel the author is doing a good job. There is not enough explanation on the different design patterns. The author gives a quick overview and then gives you an example. There is nothing wrong with that. But it’s very light. Each pattern is not explained enough. No benefits/drawbacks. No counter examples. Nothing really that will make the pattern “stick.” I just can’t learn anything from this book.

If you’re looking for a GoF book in Java, I would check out Design Patterns in Java or Design Patterns Explained. Not great, but I think they do a better job of explaining each pattern.

Pro JavaScript Design Patterns


Pro JavaScript Design Patterns
by Ross Harmes, Dustin Diaz
ISBN 159059908X
Date Read 6/2009

My Rating


After reading a few books on JavaScript, I wondered… I wish there was a JavaScript book on Design Patterns. I was very glad when I found this book! It’s an advanced book loaded with great content, interesting style, and practical examples.

2 in 1. Not only do you get a refresher on Design Patterns, but you get to see some advanced JavaScript. It’s a really good combination.

Design Patterns/Javascript combination. This is a design patterns/JavaScript book. That said, you will not really learn JavaScript from it. Similarly, if you want to learn Design Patterns, you are better off going somewhere else. But if you combine these two, and don’t really focus on either one, you get a nice result. That’s exactly what this book is all about: how to implement some GoF patterns in JavaScript.

Design patterns. Which ones? Not all of them, but majority. Looking at the TOC, 12 GoF patterns are covered (Singleton, Factory, Bridge, Composite, Facade, Adapter, Decorator, Flyweight, Proxy, Observer, Command, and Chain of Responsibility). Plus the authors included chapters on Interfaces, Encapsulation, Information Hiding, Inheritance, and Chaining.

Best practices. The authors focus on creating best-practices solutions. I love that. I also love the authors style of code. You get to learn several different styles of creating JavaScript objects. (Could use a bit more explanation about them, but this is not an intro book.) I like to learn from examples, and there are plenty in this book.

Heavy on code examples. Light on explanation. I said it before, the way this book is written makes it suitable for you only if you have a good grasp of JavaScript and GoF Design Patterns. But still, I found this book hard to understand at times. I lost focus a few times. I think the authors could have done a much better job in this regard. The authors briefly explain the pattern and then they give you a long example. A short explanation follows. Very brief. If you don’t understand the full example, you’re out of luck. I would like to see short snippets extracted from the full example and explained. Repeated. So you learn better. And clearer that way.

Plan to re-read. You are most likely not going to “get” this book on your first read. I plan to re-read it. I will take it as an opportunity to deepen my GoF design patterns knowledge. Sort of read two books at once. Sounds like a plan. :)

I really liked this book. Design patterns knowledge is very relevant. JavaScript is gaining popularity and getting more advanced. It’s becoming a real programming language. I am still surprised how far it has come. This book is a really good gift to both communities. I highly recommend this book. It’s just the the book I was looking for!

DOM Scripting


DOM Scripting
by Jeremy Keith
ISBN 1-59059-533-5
Date Read 5/2009

My Rating


I believe in doing things the right way. So does the author of this book. In this regard, this is a great book: You learn what the right way is.

Not for hard-core developers. The intended audience is web designers. I second that. This book is also an excellent choice if you’re just thinking whether web-development with JavaScript is for you. Or if you want to read about web-development’s best practices (read chapter 5). It is not thorough and does not cover the advanced topics, like OO programming, etc.

Doing things right. And how to get there. This the nicest feature about this book. Slowly, sometimes first showing the bad approach and then refactoring to a more best-practices oriented solution. Nicely done. I wish more beginning books had an approach like this.

Separation of concerns: Separation of layers. My main objective for reading this book was so I learn more about the best practices. I did not learn anything new, but reading about the best practices again is a nice refresher. Separating structure, presentation, and behavior is the most important best practice when doing web development. The author does a good job explaining and really diving into this concept.

To say it once more, HTML, CSS, and JavaScript should be separate. You’ll learn that in this book.

Object-Oriented JavaScript


Object-Oriented JavaScript
by Stoyan Stefanov
ISBN 1847194141
Date Read 5/2009

My Rating


After reading my last JavaScript book, Professional JavaScript for Web Developers, I was looking for some more JS books to read. Something good. Then a few days ago I read a post by Klaus Komenda, Book Review: Object-Oriented JavaScript, and he highly recommended this book. (In the process, I also discovered DOM Scripting, and Pro JavaScript Design Patterns.) I picked up this book and had high expectations.

Decent book. After finishing the excellent Professional JavaScript for Web Developers book, the standards were set very high. This book is good, but not as deep, and not filled with as many full examples. It’s good, but not as good.

Quick. This book reads very quickly. The examples are short, the writing style is very conversational. That’s a nice feature. On the downside, sometimes a feature you’re reading is not easy and you’d like a bit more on the subject. You’re out of luck.

I learned a few things. Firebug console can execute JavaScript — I did not know that! I also got an overview of regular expressions syntax in JavaScript. Good job there. I also learned couple other things, but majority of the concepts in this book were included in the Pro book I mentioned.

Overall, not a bad book, but I don’t recommend it. By now, you know which JS book I do recommend. :-)

Professional JavaScript for Web Developers (2nd ed)


Professional JavaScript for Web Developers (2nd ed)
by Nicholas C. Zakas
ISBN 047022780X
Date Read 4/2009

My Rating


This book has opened my eyes in the JavaScript development world. For real. I did not know object-oriented JavaScript. I did not a lot of JavaScript patterns available. Nor did I now the best practices for JavaScript. Until now. :-)

This is the best JavaScript book out there now. I checked out almost all of them (Pro JavaScript Techniques, Javascript: Definitive Guide, and others). This book gives you all the coverage of JavaScript you need. Explained in a clear and intuitive manner. Full of examples. Great examples. I really love this book!

Excellent JavaScript coverage. Basics. Object Oriented. Events. DOM. Ajax. Best Practices. It’s all here. Plenty more, actually.

Focus on best practices. This is where this book shines. I love authors like Mr. Zakas. He tells you how you should be developing, what the best practice is.

Excellent examples. Another great aspect of this book. I learn by examples. I like to see a lot of examples. Great job by the author.

Great object-oriented coverage. There are different ways of object-oriented programming in JavaScript. Some better than others. Some more efficient than others. I have learned a great deal about JavaScript OO from the author. The author discusses numerous OO patterns and techniques.

Read this book. You will become a better JavaScript developer. I am sure about that. You will learn much, much more about the capabilities of JavaScript. I am amazed how far JavaScript has progressed.

I am more of a Java developer than a web developer. However, JavaScript is becoming used more and more. There are patterns, OO programming in JavaScript — more of a typical programming language. I predict we’ll see more and more back-end developer doing JavaScript. This book is of great help.

Effective Java (2nd Edition)


Effective Java (2nd)
by Joshua Bloch
ISBN 0321356683
Date Read 2/2009

My Rating


One Minute ReviewPositives* Best advanced Java book* Loaded with excellent tips* Expert voice* Broad coverage of best practices

Negatives* Some chapters too complex

General OverviewThis is the best Java book available for the advanced/experienced programmers. (For beginners, see Thinking in Java by Eckel.)

Why? Bloch shows you HOW you should be programming in Java. He shows you what to avoid. He teaches you the things that you might not be aware, or things you would only find out after you dived in to it in much detail.

NegativesI read the first edition, and this second edition is great, but some chapters have gotten a bit too complex, too difficult to understand. At least for me. I know this is really Java’s fault, as it has become a lot more complicated with version 5, but I think perhaps the author could explain it a bit better. I lost focus at times. This was the case with the chapter on Generics. Perhaps it’s just me. There are some obscure portions of generics, which are just very hard to read. (I should not blame the author for that.)

Bottom LineOverall, a great book. A must read for serious Java programmers. The tips contained in this book, there is 78 of them, are all coming from the expert. Tried and tested. And even though you might be using only a small portion, these rules of thumb are good to know, good to refer to. A very good checking point as well if you’ve been developing in Java for a few years. This book will tell you whether you’ve been going in a right direction. Or perhaps it will help you steer there.

jQuery in Action


jQuery in Action
by Bear Bibeault, Yehuda Katz
ISBN 1933988355
Date Read 1/2009

My Rating


One Minute ReviewPositives* Excellent overview of jQuery* Full of examples* Focus on effective usage* Live samples (Lab)

Negatives* In the API docs, an example would be really helpful

General OverviewI read the majority of another good book, Learning jQuery, but jQuery in Action is much better! Much more thorough, covers more material. I think this is the best book available on the subject.

This book covers a lot of material: core jquery, events, effects, utils, extending jquery, Ajax, useful plugins, OO Javascript, and more! Each topic is not covered too deeply, but enough to get a grasp. Each topic has good examples also, which made reading and comprehending it much more easier. It also makes this book a good reference book.

This book has a live lab! As you read the book, you see the examples in action! It’s really cool and useful. I think it’s a great learning tool.

I liked the authors emphasis on doing things the right way. This is especially important when learning a new framework. The examples presented in the books were not trivial but not too difficult either, nice balance.

NegativesI really liked the API documentation for the functions, in which the params are listed and explained. What would have made it even better, is if it also contained examples as part of it. It would have made this book much more reference friendly.

SummaryAll in all, this is an excellent book. The authors are detail oriented and put a lot of thought into creating this book. It shows! If you want to learn jQuery, this book is your best bet.

stylin’ with CSS


stylin’ with CSS
by Charles Wyke-Smith
ISBN 0321525566
Date Read 5/2008

My Rating


I looked at this book over at B&N and it got me hooked. Especially the chapter on how to do some basic page layout. I could not believe how simple it could be! The author really got me very interested and that eventually led to me buying this book. I’m glad I did. :-)

If you’re a Java developer like me or a CSS beginner, this is a great book to get you started. It’s really easy to read. Complex concepts are explained in an easy to understand fashion. And the author follows and breeds best practices. These and many others, make this book excellent.

The book is broken in 7 chapters.

The 1st chapter explains the basics of HTML, the different standards and how the page is structured. Simple chapter, but it’s important to understand the basics.

The 2nd chapter, How CSS Works, is really a CSS 101. Basic stuff as well, but as in the first chapter, this is a fundamental knowledge.

Chapter 3 is more of a reference guide on how to style fonts and text. Some very useful info.

Chapter 4 is where the interesting stuff starts: positioning elements. An excellent overview of the box model and some good information about floating and clearing.

Chapter 5 is the best chapter in the book. It goes over several ways to create page layouts. Want to create a 2-column layout? A simple example is shown. How about a 3-column layout? 3-column liquid layout? With the techniques presented by Charles, you can create any type of a layout and you will actually understand what’s going on. Really neat stuff.

In chapter 6, focus is on styling tables, forms, and menus. The author basically presents some techniques on how to style tables for tabular data, and explains the technique on how to create CSS menus. Good chapter to dive in when you’re involved with these.

Chapter 7 summarizes the overall process of building a real site.

I learned several new techniques and tips from this book. I love how the book makes complicated things simple: this is my type of a book. Also, Charles has a good way of making sure these things come across and stay in your head. Not a simple thing to do, but he did a great job.

Random Quote

Topics

Tags

Archive

Recent Entries

Currently Reading

Shelfari: Book reviews on your book blog

:: The Pragmatic Craftsman recommends

:: The Pragmatic Craftsman book reviews

Info

© 2001-2010 Stanley Kubasek About me :: Contact me

@PragCraftsman on Twitter

SOLID principles come in handy here. Especially, "Open of Extension, Closed for Modification." One of the best principles I've learned. - 6 hours agoI actually try to follow @unclebobmartin's rule all the time. Sort of. I try not to make it worse. But to make it better? Great challenge! - 6 hours agoAlways check a module in cleaner than when you checked it out (via @unclebobmartin in 97 Things Every Progr.). I love the idea! - 7 hours agoI put Code Complete #1 over Martin's book because it has "awaken" me as a programmer. But other than that, Martin's book is the best! - 1 day ago@mcory1 First of all, @unclebobmartin is my hero! Agile Software Development, Principles, Patterns, and Practices is my #2. SOLID rules! :) - 1 day ago