The problem with relying too heavily on one development toolset is that you become complacent and ignorant of other advances in the same problem space.
It has been argued that Java is the ‘new Cobol’. Everything around you is implemented in Java, therefore why should you consider any other alternative. The trouble is that you eventually stop seeing even the drawbacks and inherant problems with the tool, and carry on regardless.
Ruby, and in particular ‘Ruby on Rails’ has been getting a lot of press recently due to its ease of development, ease of use, and quick development times. The trouble when new technologies appear is that people tend to cast them aside as ‘not mature enough for primetime’.
The thing is, the Ruby on Rails (RoR) approach solves a lot of the complexity issues that are inherrent in the J2EE type development approach. What if this approach really is superior? What if I can realy develop an application in a tenth of the time I can with J2EE? What if a RoR solution is ready for implementing enterprise solutions?
Could it be possible that RoR or a similar technology could overtake Java and leave it in the dust? I think it’s time we started paying closer attention to other innovations out there, and either learn from them, or jump on the next train, because if the hype is real then Java could already be the next Cobol, and Java developers could be looking at the next 10 years of maintaining Java legacy systems.