Playing in the huge arena that is 'Java' requires a pragmatic approach and willingness to work at the edges:
* Languages - Java is the core, but there is value in moving out when appropriate (JRuby, SQL, JSON, etc.)
* Frameworks - Why code one, when you can find one: Eclipse RCP
* Developers - local and remote, loose and Agile, and open source
We find efficiency gains from the use of open source, distributed development, agile techniques and language integration.