The History and Future of
Google Web Toolkit
Ray Cromwell
Tech Lead
History
2005 Google Maps
Timeline
Where we are today.
Introducing GWT 2.5
Compiler Optimizations
Default Options
14% Smaller
8% Smaller
Closure Compiler Integration
GWT 2.4 vs GWT 2.5 + Closure
20% Smaller than GWT 2.4
CodeSplitter Improvements
Problem: Shared code produces large leftovers fragment
onModuleLoad() {
GWT.runAsync { splitPoint1(); }
GWT.runAsync { splitPoint2(); }
}
splitPoint1() {
exclusiveCode
sharedCode()
}
splitPoint2() {
exclusiveCode
sharedCode()
}
Leftovers Fragment:
sharedCode() {
// could be quite large
}
CodeSplitter Improvements
Solution: Merge fragments with lots of common code
onModuleLoad() {
GWT.runAsync { splitPoint1(); }
GWT.runAsync { splitPoint2(); }
}
splitPoint1() {
exclusiveCode
sharedCode()
}
splitPoint2() {
exclusiveCode
sharedCode()
}
Leftovers Fragment (Now no longer shared outside this fragment)
sharedCode() {
// could be quite large
}
Leftovers Fragment:
// empty
39% Reduction in Initial Download Size + Leftovers
Showcase using -XfragmentMerge 23
GWT 2.4 681,802 bytes
GWT 2.5 418,932 bytes
SourceMaps
SuperDevMode
Where native C++ plugins fear to tread.
UiBinder and CellWidget Enhancements
I18 and ARIA
Introducing Elemental
Fast, Lightweight, "to the metal" modern web programming for GWT
Improving GWT's Open Source Community
The GWT Steering Committee
Steering Committee
Some early decisions
Where to find us
New Steering Committee Resources
Sencha
Michael Mullany, CEO
Vaadin
Joonas Lehtinen, CEO
"ArcBees is really proud to be a member of the steering committee of GWT.�For us it means not only recognition for our active involvement as creator�of Gwt-Platform (GWTP), but is also an opportunity to be the voice of our�community of users and our clients at this table."
Christian Goudreau, ArcBees, CEO
"In this new process mgwt can help to make GWT become the Great Web Technology for mobile"
Daniel Kurka, mgwt
"In this new process mgwt can help to make GWT become the Great Web Technology for mobile"
Daniel Kurka, mgwt
Finally, we are hiring!
Do you want to work on GWT @ Google?
Apply at http://google.com/jobs
Q&A
<Thank You!>