Brandon touches a number of topics in his post. I certainly agree with him about the value of patterns and best practices, and
was part of the concept of J2EE from day one, although
over the years it may have emphasized more how to use all the standard APIs rather than
how to solve problems with different collections of APIs and frameworks.
Regarding standarized APIs, I believe they have a place and a value, but so do non-standarized APIs.
Which one to use depends on many factors, including the expertise of the technical people
involved, the expected longevity of the project, the importance of portability, etc.
I was very involved in the evolution of the JavaServer Pages specifications and
I always treated other efforts in that space as alternative designs from the wider community
that we would study and try to incorporate into future releases of the specs. Sometimes
succesfully, sometimes not, but I believe a heathy flow of information is critical to the success
of the wider Java platform.
I've been meaning to write a blog on this topic for a while... maybe sometime this year.