Jul 24th, 2010, 04:54 PM
Philosophy of Roo
It's been more than 6 month i've Roo in my radar. As a CTO i have to check what technologies emerge and how they can help us.
Spring is clear as a foundation for all my projects.
Spring remoting is defacto our solution for webservice as we used java only platform
Grails is used as an external tools for our website and quick publish solution
Integration is on the way on 'integration' with our external interaction
My point is that all theses tools have a clear position in the software stack but for Roo i'd like to ask your point of view.
I see Roo as a quick tool to concretize all the concepts leveraged by SpringSource. It means Spring, Dao, Controller as it is now but also Remoting, Integration, etc. A commander for all the Spring Stack !
Your last move is going to GWT ( I LOVE GWT) as the market is web oriented for now. You have limited ressources so you have to choose what to implements first and working with google is certainly the best choice.
But web is the last piece of the whole and not the more critics.
My question is for the long term can i expect command like 'setup EIP --provider Camel' or 'remoting http-invoker' ?
For now i perceipt Roo as a good template starter but after i've generated my Entity it become useless and i integrate the rest by hand.
Will Roo become a project supervisor or stay as a project firestarter ?
Let's say i see a lot of potential in this tool ... as complexity to complete it
Best regards to the Spring Team.
Jul 25th, 2010, 04:58 PM
spring roo is moving towards an open addon architecture. This means that there is no limit to what can be done on top of ROO.
Ben Alex has talked about the philosophy behind ROO in his introductions to ROO. It goes "Roo's mission is to fundamentally and sustainably improve Java developer productivity without compromising engineering integrity or flexibility." The discussion is explained here (http://static.springsource.org/sprin...ackground.html)
I came across a set of slides by my ex-boss the other day putting some light on what values, mission, strategy etc are (http://slidesha.re/dknFNo). Perhaps we can define goals and vision of ROO in this pyramid fashion
I think you should differentiate between long term and short term goals. ROO will be a good starting point for Java developers to setup their own projects, for team to share reference architecture with each other, for an eco-system of add-ons based on OSGI to exist by which people can jump start their applications. There are probably better tools out there right now to get the job done, but none has the long term vision of sustainable and open source development.
Of course (I think) spring source will put attention to things which is inline with their corporate strategy, like perhaps focus on work with Google and SalesForce (and very rightly so), there is no one stopping others from extending ROO in their own way. I am hoping that spring community and various spring projects will take active part in add-on development.
I think there are few things I wish ROO community should advertise more.
-ROO is not just a RAD tool, it a sustainable way of development (in my opinion)
-ROO is not meant to avoid coding, its about managing coding
It is yet to be seen what ROO will become or what it can become. But with add-ons hopefully sky is the limit.
PS: it is strange that sustainably is a word in
but not in many others
as well as the spell checker by Google Chrome.