Hacker News new | ask | show | jobs
by 0x001D 3519 days ago
I followed the 2 day summit and I am impressed both about what happened with angular.dart and flutter for the web and mobile. Its obivious what google thinks how web and mobile apps can be done in the future and even doing it already internaly. tracking Dart from time to time I thought, that it "somewhat died" and never got traction... it still seems so, but seeing what google is doing is encouraging. Its clear that if google thinks that webapps have to be done the angular.dart way, they will do it for the next 8 years or so; if the rest of us thinks that JS thing is the thing, googles way might be the same.

For flutter it might be different if Android gets expanded with flutter.

I used GWT a few years ago and still have a GWT app in production (which I hope never has to change until decommission).

Its not a coincidence that the mentioned GWT app should get replaced with a complete rewrite and we are at the point where we lay out the options to do that. GWT is marked clearly as "dead" for new developments within the clients infrastructure. Angular an reactjs are the recommended frameworks, even node.js and plain JS is a "allowed" option.

I do not have preferences for any plain JS or not typesafe languages personaly; but with the history of GWT, Dart or Angular.dart is a hard sell in this situation. Taking the Dart way is similar as we took GWT a few years ago, but even more a lockin into something the rest of us isn't doing (that does not mean the best is what others do, but you know what I mean eh?) because Dart is a new language and framework, from where one couldn't get away easy. The same applies to GWT; that code gets not compiled without gwt tools after you opted into GWT.

I hope Dart is making its way to (perhaps) replace Java in Android or make it into an alternative to the default.

For Dart as a Language for the web I don't know yet what happens(who knows). 2x productivity improvements for an App as mentioned in the summit talks is really great, and I think google doesn't advertise that if not true. Even more impressive is, that google choosed Dart to rebuild one of the most business critical WebApps; a thing you won't do if the technology is not rock solid.

So next for us is to recommend and prove whats the way to go for this old GWT app (that runs every day flawlessly) but is a hurt to maintain...

1 comments

GWT has ungone a similar rewrite and we now have a new compiler called J2CL (Jackal) which produces human readable ES6 modules incrementally transpiled on a per-Java file basis, with Closure JsDoc types. With optional Closure Compiler optimization, code-size beats GWT by 10%. Both GWT and J2CL share a new rich JS interop system, and a new Elemental2 code generator can read Closure or Typescript files and produce Java interop classes. The interop can even be type safe, so that you can have compile time checks against third party JS libraries, or runtime checks (instanceof, class cast exceptions)

J2CL gets rid of all of the complexity in GWT (generators, linkers, Widgets), in favor of standard annotation processors, external build systems, and straight up integration with JS ecosystem libraries.

The idea of J2CL was to reduce lock in and make it more of a natural fit with the existing ecosystem. The entire GWT SDK has been nuked for J2CL, there's just the JRE, Guava, and whatever else you want to add, there is no "com.google.anything"

Obviously, this adds a porting overhead when it's released, but some people will likely backport GWT's SDK to it for migration.

This was telegraphed here: http://www.slideshare.net/CristianoCostantini/gwtcon-2015-be... https://qconnewyork.com/ny2016/ny2016/presentation/j2cl-futu...