Archive for the 'books' Category

Book Review: Web 2.0 Design Patterns – Must Read

I had the pleasure of reading the soon-to-be-published Web 2.0 Design Patterns, but am seriously late getting my thoughts out (sorry guys!). In short, this book is well worth the read.

Duane, James, and Dion captured a high-speed drive by of all things 2.0, carefully deconstructing all of the cool tools we’ve been having so much fun with recently. They setup the book with a dissection of some flagship Web 2.0 properties, and contextualization of key memes. Next they define applicable models for capturing Web 2.0 in a pattern language. One my favorite aspects of this chapter was the use of “low end” modeling techniques – such as concept maps, and HTML <meta> tags as a form of WSDL for simple HTTP services. Being an Agilist and a practicalist, I like to see less well refined techniques legitimized. In true 2.0 style, the authors use what works, not just what is academically proscribed.

But the core of the book is a pattern reference. As they state in the intro to that section, it’s not likely something you will read straight through – though it’s certainly well written enough to do so. Each pattern is appropriately brief, but still hangs meat off the bone enough to be useful. The landscape of defined patterns is broad, and oddly shaped. SOA and Mashup are patterns, as are Semantic Web and Microformats. This struck me oddly at first – maybe I was hoping for something more homogenous from a developer’s point of view. But the authors make it work. I have to admit it was amusing to see memes like SOA and SaaS reduced to a pattern template. (Though where is the missing reference to in the Known Uses for the SaaS pattern?) The authors also extract new patterns native to the Web 2.0 landscape that are very insightful: Participation-Collaboration and Asynchronous Particle Update are very well done.

This book has a definite place on my bookshelf. Useful reference to be sure, but I can also imagine using this as a tool for evangelizing inside a large enterprise. To convert some minds, a pattern-based description might give some of these approaches more legitimacy. But the simple descriptions, useful models, and thoughtful examples in any context will provide the basis for a common understanding of Web 2.0 techniques.

Technorati tags: , , ,

New Book – Agile Software Development Quality Assurance

The book Agile Software Development Quality Assurance was just published this week:

I contributed a chapter on Test-Driven Development, written from an industry perspective. Many other contributions were academic in nature – interesting in their own right, but I was pleased to add an on-the-ground flavor to the book.

I was shocked at the pricing however – evidently IGI only likes shelf space in select university libraries. My next publishing endeavor will no doubt be more consumer-friendly.

Technorati tags: , , , , ,

Power Of Process Is Shipping

I provided a dust jacket endorsement for Kiran Garimella’s new book: The Power of Process: Unleashing the Source of Competitive Advantage which is now shipping from Amazon.

This is an interesting title – it’s a work of business fiction that helps explain some of the thinking, language, and acronyms around SOA and BPM in a lighthearted manner. If you are a developer or just interested in technical reading this book is not for you. However if you are a manager, enterprise architect, or another type who needs to either learn more about those topics at a high level or get some talking points to talk to a less technical audience then this book is for you. It’s a refreshing change from a lot of drier technical books and a quick read.

Kiran is also blogging on behalf of his new employer, so also check that out.

Technorati tags: , , , , ,

What’s On My Reading List

Scoble, James McGovern, Robert McIlree, Charles Betz and others have blogged on what is on their coffee table as far as reading material… thought I would do the same. Scoble wrote a quaint anecdote that a manager new to an organization just walked in and laid his current reading stack on the conference table as a means to let people get to know him – true you can learn a lot about someone through their reading list, but I think you learn a lot more from their comments on what’s on that list. Perhaps you can also learn something about the books someone is selling off their table?

Recommended Architecture Reading

  • Succeeding with Open Source – I have only browsed this so far, but it comes highly recommended from a friend and is on my short list.
  • The Practical Guide to Enterprise Architecture – Whose EA bookshelf is complete without this? I actually thought one of the most refreshing things in this book was the fact that there is a chapter on usability – not many EAs have the sense (or perhaps cojones considering the peer pressure to be an uber-tech geek) to recognize that practice as part of Great Architecture.

Recommended Development Reading

  • Java Performance and Scalability, Volume 1 – I have no idea why this isn’t one of the most talked about Java books – if I believed in required reading, this would no doubt make the list. This is a concise and utterly practical book that, despite its size, bulges with practical examples and objective benchmarks to show how to tune, using a web server as a sample application. The examples might not hold up with more recent API changes, and might not apply to your problem, but it will change the way you write code – forever.
  • Test Driven Development: By Example – this book is deceptively small – it is a detailed look at an example of TDD on a given problem. I’m in the middle of this now… I find it too basic if you are already doing TDD, but might be more interesting if you are new to it. Beck has a great writing style – I think I might have enjoyed this book more.
  • JUnit Recipes : Practical Methods for Programmer Testing – this book is full of great examples on ways to test; true to the title they are practical. They are the things you will soon run into on enterprise applications once you start testing, and are great suggestions. You should read this shortly after you get comfortable with the basics of TDD.

Recommended Business Reading

  • The World Is Flat: A Brief History of the Twenty-first Century – So he’s a cheerleader for globalism throughout the book, but I still think this is a great read. He’s got great analysis of trends in outsourcing, offshoring, etc. and this will make you think about your job differently. I really think everyone should at least read the chapters on the Middle East at the end – very insightful.
  • How to Be a Star at Work : 9 Breakthrough Strategies You Need to Succeed – OK, I actually just read chapter 6 “Knowing Who Knows: Plugging into the Knowledge Network” based on the advice of my then-boss, but I thought it was brilliant, and has had a lasting impact on my thinking around building a social network. I wonder if the rest of the book was that good?

Recommended Other Reading

To Do List

I have the disease of reading several books at any one time, putting them down, picking them up again weeks later, getting a notice from the library that a hold request came through and dropping everything to read that title before returning it… so this is really a portion of what is open on a desk somewhere in my life, or has dog-eared pages (there are at least a dozen dog-eared references in this book that I read last fall I still haven’t followed up on.)

I have also provided review feedback on manuscripts and works in progress in the past, and LOVE it. I swear I prioritize that to the top of my reading list – drop me a line if you need a reviewer for an Enterprise Application Architecture or Enterprise Development title.

Creative Commons Licensing of Intellectual Property

If you are not familiar with the long and sordid history of intellectual property and copyright, you need to check out Free Culture by Lawrence Lessig. Lessig has some outstanding examples from history that parallel issues happening in the P2P and recording industry worlds today, and makes a great case for why IP laws need changing.

The software industry has had a mixed experience with IP. Of course, Richard Stallman got a lot of things going in the right direction with FSF. But the unsavory fact is that license proliferation is starting to clog the pipes for wide open source adoption. Why is it that most books on open source have to have an entire chapter dedicated to reviewing different types of licenses, rather than types of uses that could be covered by a single licensing model?

This is where Lessig’s brainchild in the Creative Commons really takes off. The Creative Commons credo fully respects copyright and authors rights to work, but makes it far easier for creators to indicate their preferences, and for consumers to understand what they can and can’t do. This is sorely needed in software licensing, where enterprise employees need to become license and IP experts to understand which frameworks they can integrate in internal projects. (How many of you know which license the Spring framework uses versus WebWork? Or, more importantly, what that means?)

I asked Simon Phipps, the Chief Open Source Officer for Sun, a question about Creative Commons at the Colorado Software Summit recently. Phipps completely gets the licensing issue, and has started a large effort at Sun to retire old licenses. Phipps also has the goal of creating a Creative Commons-style wizard for easily creating standardized and easy to use licenses for sofware – how cool would that be?

This is also important in the publishing and blog space – how many of you bloggers have considered licenses for your blog content? Are you concerned about how your IP is used? Have you thought about making it easier and legal for people to create derivative works? Take a minute for a good cause…

Diabetic Runner Challenge – 500

Flickr Photos

Creative Commons License
This work is licensed under a Creative Commons Attribution 3.0 License.

Site Meter

RSS Latest Runs

  • An error has occurred; the feed is probably down. Try again later.

RSS Latest Routes

  • An error has occurred; the feed is probably down. Try again later.