263 karma · joined February 3, 2010
* Static typed language on client-side
* Allow your Java developers to build complex maintainable UI without advanced JS knowledge
* Reuse existing Java code
* Use Java tools (IDE, Unit testing, Build systems)
It's very hard to build a complex JS app, because even guys who develop for web in dynamic languages like PHP, Python or Ruby - usually produce the "callbacked-jquery-unmaintainable-mess" on the front end. There are tools like Backbone which are becoming more and more popular, but learning them and all new JS patterns is more complex then GWT for a regular Java developer. Supporting other JVM languages is also hard task, AFAIR GWT isn't working with JVM bytecode when converting Java to JS. Microsoft tried this way with Volta, but failed.
Cappuccino brings you a rock solid API and a language that makes this API nicely usable (you can use it without Obj-J, but it will look ugly). Look at other popular frameworks: ExtJS, SproutCore - both changed their vision heavily with latest versions. Cappuccino is aimed for Apple/Cocoa minded developers, and Obj-J seems to be the best fit the same way as GWT is for Java.
I really don't see how you can make products like GWT & Cappuccino without their languages, because the reason why they were built were those languages and tight integration in first place. Otherwise they would become yet another library of widgets.
Pure JS and drop-in integration is good too, we are a Java shop and lots of developers working on Windows, so introducing a Ruby-dependent JS framework would be hard in my case.
Previously we also considered SC as a 'heavy' JS solution - like Cappuccino, ExtJS or GWT(we used GWT for complex backends - it allowed us to share UI&server code), but now we'll have another look at it as an alternative to Backbone for frontends/mobile.
The only profitable model I've seen these days are Groupon-clones and i believe they really work just in Moscow & Saint-Petersburg.
My company is also working on the similar services in Russia, but we make products for international brands like Sabre & TUI, and while I like the fact that such start-ups do appear here, I'm not sure it's "less risky".
We obviously won't see Adobe, Autodesk and some other professional software developers moving their products to web anytime soon, but when we are talking about the new products - web is usually the winner. Look at Chrome and it's pace of innovation, check out the examples from Mozilla Demo Studio, could you imagine that working in all latest major browsers 3 years ago?
Same is true for mobile, I don't see another space for innovation except improving web performance, integration & so on. Maybe you see some other directions where iPhone & Android can go?
New API for ActiveRecord, modularity, merging with Merb are very important, but it's not a game-changer. Rubinius and RubyMine on the other side are game-changers.
JavaScript on the other hand is booming both on client (SproutCore, Backbone, Cappuccino, CoffeeScript, GWT) and on server (Node). JS is just more "hackish" today - browsers are evolving day-by-day, taking more and more functionality from server - RoR isn't key to success anymore, it has become just another alternative for your REST backend.
Talking bout piracy - there is majority of illegal software in business, universities and schools. Not to mention homes. I'm talking about Windows, Office, Photoshop, Games. Even the biggest Russian social network (vKontakte) is currently largest unlicensed mp3/video storage.
I always wondered, what they need OpenSource for.. Maybe it's like Medvedev's obsession with Skolkovo - the new Silicon Valley, which will never ever happen. While there obviously are bright minds here - they tend to leave the country.
The only JSR that matter is JavaSE and I don't see it having technical problems. JavaME is dying and Spring showed JavaEE how things should be done so they are catching up now.
The only thing you need from Oracle nowdays is JDK, and with OpenJDK becoming a standard - you need nothing.
Though it's not developed by Oracle employees afaik.
It's nice seeing IBM working on OpenJDK, it would be great if they would share some of their J9 tech like Oracle is doing now with JRockit.