Choosing the "Right" technology
About a year ago our company switched from a homegrown web model to WebWork. Through that time we have tweaked patterns used throughout the application. At this point we still do not feel as though we know and understand WebWork and XWork to their full extent. One of the core issues we have found is we chase technology too often and never get comfortable with what we have. No one likes to fall behind the curve but when producing a software product it is also very costly to change developer patterns continuously.
We have now started down the route of an external Apps Arch review and Spring has reared its head. We have been fans f Spring but have held off the bandwagon largely because it is more change. We do use it in some very targeted services, built by a specialist team, but have not introduced it into our core application.
Being a technical person I struggle with choosing the best technology as opposed to what is right given current resources, past problems and business goals. The easy answer people give is to simply bring it in slowly on new functionality. While that is good once doing that over and over gives you a "quilted" application. Depending on what square you are working on you have to figure out what you are doing. Webwork or homegrown, today's design patterns or yesterdays, spring or not.
Though choice is good - it can also be a real pain in the ass.

