Seaside is working out great for us. We develop on Pharo and deploy it on a VPS with a Gemstone OODB, and we're currently about five times as fast in developing as my former company was in ASP. NET MVC The combination of no database code, generated html (no templates) and javascript (Scriptaculous/jQuery/RaphaelJs) works out really well Point 1 is really important.
I've never seen a template based system that was DRY enough (though there probably is a lisp based one that is) I've also played with early releases of cappuccino, and it is nice if you have a cocoa/nextstep background, but it was (a few months after the first public release) not finished enough for us.
Seaside is working out great for us. We develop on Pharo and deploy it on a VPS with a Gemstone OODB, and we're currently about five times as fast in developing as my former company was in ASP. NET MVC.
The combination of no database code, generated html (no templates) and javascript (Scriptaculous/jQuery/RaphaelJs) works out really well. Point 1 is really important. I've never seen a template based system that was DRY enough (though there probably is a lisp based one that is).
I've also played with early releases of cappuccino, and it is nice if you have a cocoa/nextstep background, but it was (a few months after the first public release) not finished enough for us.
Thanks for sharing your experience, quite interesting. Have you found Seaside's usage of continuations important? Some claim that with ubiquitous AJAX, continuations for the web don't matter as much, but I'd like to hear more from developers with experience both ways.
– limist Jul 13 '10 at 19:35 The application started using a lot of call: answer:, but now slowly moves towards using Announcements – Stephan Eggermont Jul 13 '10 at 20:22.
Frankly, as long as you're roundtripping for every UI interaction to the server and back, you're never going to get "desktop-like" experiences. I've mostly abandoned server-side frameworks. My web apps are javascript and web services, where I try to minimize the amount of server-side code.
What little is left, I wrap into Zend Framework, but a data persistence and validation layer really doesn't require that much code. I'm using ExtJS for the javascript code, but there are many javascript frameworks that are nice (Cappuccino, SproutCore, GWT, Dojo, ...). All the really rich interaction ends up being javascript anyway, so if you're going to pick a platform, pick one that integrates really well with javascript.
Obviously the javascript toolkits have an edge there. GWT from what I gather is magic in that it isn't javascript but you can pretend it is without running into issues. The javascript port of Quake II is a GWT project, so that is saying something.
Thanks for your informative answer and perspective - I hadn't seen that about GWT and Quake2, that's quite amazing. For anyone else reading, here's the google code page for it. I'll need to look into GWT further, thanks again.
– limist Jul 12 '10 at 18:56.
The python-equivalent to Smalltalk's Seaside framework is Nagare - it seems like a capable system, though the documentation is inconsistent in depth/breadth currently, and I'm not finding many developer stories/experiences with it online. It's also interesting that it uses Stackless Python for continuations support.
I cant really gove you an answer,but what I can give you is a way to a solution, that is you have to find the anglde that you relate to or peaks your interest. A good paper is one that people get drawn into because it reaches them ln some way.As for me WW11 to me, I think of the holocaust and the effect it had on the survivors, their families and those who stood by and did nothing until it was too late.