I am faced with a new web project for which I have to choose the technology to use it. Five years ago I was in the same position and I chose Tapestry. It proved to be a very good choice (1, 2, 3) and I am still able to modify and adapt that code without much difficulty. However now there are so many rich web interfaces which I cannot ignore.
What would you choose for your next web development project?
Here are some requirements:
- web-based
- rich gui, to smooth the migration from client to web application in a very conservative environment
- secure, remotely debugable
Here are some initial considerations/questions:
- if it’s M$ related or cannot be fully developed on linux drop it
- it could be great to be java friendy since at least now nobody is complaining about java related technology and I don’t want to go over the discussions again by choosing python for instance
- what about flex, surely a good looking result with this kind of technology?
- what about gwt, the client likes it because he is still afraid of web development but knows GUI development (sound a bit stupid as argument)
- what about the good old tapestry with some fancy dojo
- what about all the others things like echo2?
- not to ignore the server part of every of these applications, does it speak xml or json?
What would you choose for your next web development project?
Comments:
Tony Losey -
I have bias toward perl, so for the server side I am pretty much using Catalyst. On the client side, since I have compiled my first flex app…I am using flex for the next couple of things no matter what. I have a long history with Flash and Actionscript..(though dormant for a few years).
Most of my development projects require some ability to be searchable via the engines (ie. Google) so I almost never have a ui that is anything but html. For an application that does not require any spiders to get to it…I would choose flash as a front end every time.
Len -
I fully agree with your html searchable argument. To the end it’s always a question of what you want to do. Thank you for your opinion.