GWT.create <US/EU>

January 2015
22–23rd         /          27–28th
Mountain View
Munich

GWT.create is back in 2015

GWT.create is hosted in January 2015. Register quickly for the early-bird discount of -20%.

Watch the teaser

The Future of GWT

Where GWT is going? Meet the people behind it – start creating the future yourself.

Register now

GWT Ecosystem

Learn everything about Vaadin, GXT, Errai and others that are building on GWT.

Register now

The Future of the Web

Web is the platform we build on, let’s take a peek in the future and let it shine.

Register now

Speakers

Tracks

GWT

Frameworks & Tools

Web Platform

Themes

Everything about GWT from introductory presentations to a deep dive into the compiler. Future of the GWT from roadmaps, technology prototypes to learning how everyone could contribute back to GWT. Showcases on the most interesting applications built with GWT. The most in-depth presentations about GWT you will hear anywhere.
GWT is all about the ecosystem that builds on it. Learn about frameworks like Vaadin, Errai and GXT. Take a short introduction, dive into the technical details on how these frameworks are implemented and hear where they are going next.
Take a peek into the future of the web platform. There are wonderful things coming with the power of the new generation web browsers like shadow DOM, HW accelerated everything, mobile web like nothing before. By combining this with GWT, you will surely be inspired by the possibilities of what you could be creating in the future.

Agenda

Thursday Jan 22th

Registration / breakfast

  • Keynote: GWT 3

    Ray Cromwell / Google

    8:30–9:30 am

Break

  • Web Component Standard

    To be announced

    Room 1

    10:00–11:00 am

  • Polymer and Paper

    To be announced

    Room 1

    11:00–12:00 am

  • Inside the compiler

    Roberto Lublinerman / Google

    Room 2

    10:00–11:00 am

  • To be announced

    John Stalcup / Google

    Room 2

    11:00–12:00 am

Lunch

  • Web Components for GWT

    Goktug Gokdogan / Google

    Room 1

    1:00–2:00 pm

  • CSS3 and GWT in perfect harmony

    Julien Dramaix / Arcbees

    Room 1

    2:00–3:00 pm

    CSS3 is became inescapable if you want to make beautiful, responsive and performing application. GWT lacked in terms of CSS3 support. The new CssResource will allow you to use the Google Closure stylesheets within your GWT application, allowing any CSS3 features to be also optimized by the GWT compiler. Join me for this talk to learn how to leverage Google closure stylesheets within your GWT applications.

  • What's New with Super Dev Mode

    Brian Slesinsky / Google

    Room 2

    1:00–2:00 pm

  • Deep dive in JS Interop

    Ray Cromwell / Google

    Room 2

    2:00–3:00 pm

  • Disassembling Compiled GWT Sources

    Colin Alworth / Sencha

    Room 3

    1:00–2:00 pm

  • Building a GWT 3.0 app with java 8, elemental, JsInterop and web components

    James Nelson / We The Internet

    Room 3

    2:00–3:00 pm

Break

  • Hybrid apps with GWT, iOS, Android

    Daniel Kurka / Google

    Room 1

    3:30–4:30 pm

  • History of GWT

    Bruce Johnson / FullStory
    Joel Webber / FullStory

    Room 1

    4:30–5:30 pm

  • Remote controlling a drone with Spring & Vaadin

    Josh Long / Pivotal
    Peter Lehto / Vaadin

    Room 1

    5:30–6:30 pm

    Wouldn't it be crazy to fly a small drone or helicopter with your phone or tablet running nothing but a web browser? This session will tell you all about it!

    Imagine a fully functional touch based user interface for remote controlling a small drone or a helicopter. This is doable with latest experimental integrations around drone controlling backend applications over WIFI with touch based control interface built with GWT or Vaadin. During the session such a system will be presented with full technology stack starting from GWT based frontend to the actual backend controller application.

    A live drone will also be flown during the presentation maintaining a safe distance from the audience.

  • Comparing GWT Transport Mechanisms

    Leif Åstrand / Vaadin

    Room 2

    3:30–4:30 pm

    There are lots of options for transporting data to and from your GWT app running in the browser. Solutions like GWT RPC, RequestFactory and Protocol Buffers promise to do the heavy lifting for you. Or then you might want to roll your own based on RequestBuilder or similar low level APIs. To further complicate things, frameworks like Errai and Vaadin also provide their own communication mechanisms. Which one should you use? What are the pros and cons? Let’s find out!

  • Automated testing of web apps

    Jonatan Kronqvist / Vaadin

    Room 2

    4:30–5–30 pm

    Testing is an important part of all software projects – and so is keeping sane. In order to not make the developers and testers lose their minds while verifying that a huge amount of features still work, the testing should be automated. What’s worse, the complexity of the underlying technologies often make it more challenging to test web applications than conventional software.

    This talk will show you some tools and methodologies for automated testing of web apps and especially the user interface layer of web apps. It will discuss how to architect a web app for easy testing and what kind of tests should go where and in which situation. We’ll even have a look at how the customer requirements can be automatically tested and verified to work – exactly as specified by the ones paying the bills.

  • To be announced

    Daniel Kurka / Google

    Room 2

    5:30–6:30 pm

  • The Magical Powers of GIN

    Christopher Gammage / Jyavu

    Room 2

    3:30–4:30 pm

    What is dependency injection and why should you use it? In this talk I'll introduce GIN, google's dependency injection library. I'll cover topics like what are the differences between GIN and Guice and what are the limitations or downsides of GIN. Finally, I'll give examples of how to use the different features of GIN.

  • Functional and reactive UI programming

    Henri Muurimaa / Vaadin

    Room 2

    4:30–5–30 pm

  • Improving the HTML table: a quick guide on getting in over your head

    Leif Åstrand / Vaadin

    Room 2

    5:30–6:30 pm

    Smooth continuous scrolling through millions of concurrently edited rows on an old iPad. Sounds easy, right? To achieve 60fps, you need to find the right data, insert it into the DOM and get the browser to layout and render in less than 16 ms. And then there’s also this detail about how overflow: auto works with tens of millions of pixels...

    This presentation will look at all the low-level challenges we faced when pushing the limits of browsers for the new Grid widget for GWT and Vaadin.

  • Demo Stage

    Session host: Colin Alworth / Sencha

    Room 4

    3:30-6:30 pm

    Come and demo what you have built with GWT. Learn from projects others have done. Network.

Evening party

  • Birds of a Feather

    Room 3

    6:30–7:30 pm

    Birds of a Feather sessions are open conversations around a pre-selected topic. The topics will be voted later on.

  • Birds of a Feather

    Room 3

    7:30–8:30 pm

    Birds of a Feather sessions are open conversations around a pre-selected topic. The topics will be voted later on.

  • Birds of a Feather

    Room 4

    6:30–7:30 pm

    Birds of a Feather sessions are open conversations around a pre-selected topic. The topics will be voted later on.

  • Birds of a Feather

    Room 4

    7:30–8:30 pm

    Birds of a Feather sessions are open conversations around a pre-selected topic. The topics will be voted later on.

Friday Jan 23th

Registration / breakfast

  • Ecosystem Keynote

    Hosted by: Joonas Lehtinen / Vaadin

    8:30–9:30 am

    One of the best parts of GWT is its wonderful ecosystem. In this keynote we'll show the pulse of the community by announcing the results for the Future of GWT survey 2015. Then some of the most visible players in the GWT ecosystem will show the latest and greatest features they have built for their frameworks.

Break

  • Introduction to Vaadin

    Henri Muurimaa / Vaadin

    Room 1

    10:00–11:00 am

    Vaadin is a popular web framework that makes it possible to write rich user interfaces in server-side Java. Writing an application that lazily loads large amounts of data from the server, includes drag-and-drop, keyboard navigation and compelling visualizations would not require writing any HTML, JavaScript or resigning a REST API. While the server centric development model provides the best productivity, Vaadin also supports client-side development though the GWT based Java to JavaScript compiler as well as JavaScript. The default looks of the application can be customized with CSS and Sass.

    The presentation gives an overview to Vaadin and explain how it works. We'll also discuss on what are the differences and the relationship between Vaadin and GWT. The session should give you everything you need to get started building your own apps with the free Apache-licensed Vaadin.

  • GWT on mobile with mgwt

    Daniel Kurka / Google

    Room 1

    11:00–12:00 am

    Building mobile applications with mgwt is a fun and easy way to use your GWT skills to write mobile applications.

    Join me for this sessions to learn how to use mgwt for your mobile applications and how the next version of mgwt will evolve.

  • How to improve your productivity using GWTP

    Christian Goudreau / Arcbees

    Room 2

    10:00–11:00 am

  • Easy cross-platform RPC with Jersey and resty-gwt

    David Chandler / Turbomanage

    Room 2

    11:00–12:00 am

    Creating a service layer with GWT has changed significantly from the initial GWT-RPC to frameworks based on the Command pattern such as gwt-dispatch and the now deprecated RequestFactory. In this presentation, we'll talk about the pros and cons of various approaches and show how the open source resty-gwt framework combines the simplicity of GWT-RPC service interfaces with the power of the command pattern for caching and XSRF protection. You'll learn how easy it is to create a REST+JSON API on the server using Jersey, App Engine, and Objectify 5 and how to create a generic CRUD API on both client and server. Finally, you'll learn how to implement an authentication filter on the server and authentication callbacks in the GWT client using Jersey and resty-gwt. As a bonus, the presentation will be based on an open source sample project with a working Maven pom for all of the above.

  • Speed up your GWT coding with gQuery

    Manuel Carrasco Moñino / Vaadin

    Room 3

    10:00–11:00 am

    GwtQuery is a rewrite of the jQuery popular library with has brought to the GWT world its sexy API and its simplicity for doing complex things.

    In this session Manuel will provide an overview of the fundamentals of gQuery, how to setup and use it, and how to write code which being laborious in GWT can be simplified using gQuery.

  • Using GWT and Vaadin with IntelliJ IDEA

    Breandan Considine / JetBrains

    Room 3

    11:00–12:00 am

    Vaadin and IntelliJ IDEA can help accelerate your development lifecycle and simplify the process of building, testing and deploying large GWT applications. Learn how to use tools like Super Dev Mode, advanced IDE features, framework support and continuous integration to tap into GWT’s full potential and drive your application infrastructure with Vaadin.

Lunch

  • Introduction to GXT

    Colin Alworth / Sencha

    Room 1

    1:00–2:00 pm

    "Sencha GXT is an enterprise-class UI framework based on GWT for building amazing HTML5 apps using Java. It allows you to write applications in Java and compile them into highly optimized cross-browser HTML5 apps. Sencha GXT provides out-of-the-box support for high-performance widgets, feature-rich templates, layouts, advanced charting, data loaders, stores, and much more, for building the most complex user interfaces with ease. The core advantage of using Sencha GXT is development time savings, since the developers can concentrate on building the desired functionality as opposed to underlying framework complexities.

    This session provides an overview of the Sencha GXT framework and explains the basics of how to get started with Sencha GXT.

  • Rapidly Build Cloud IDEs with UberFire

    Alexandre Porcelli / Red Hat
    Michael Anstis / Red Hat

    Room 1

    2:00–3:00 pm

    Learn how to build rich cloud-based IDEs using UberFire. UberFire is a web framework for a superior experience in building extensible workbenches and console type applications. Cloud-based IDEs are a big trend now, so it seemed like a perfect match.

    In this session Alexandre and Michael will explore, in a polyglot fashion, all UberFire features that are key for Cloud IDEs, such as:

    • The Virtual File System API that uses git as its default backend;
    • Multiple perspective definitions providing mechanisms for task-oriented interaction with resources, multi-tasking and information filtering;
    • A flexible windows system where developers can use different layout managers;
    • Plugin-based editors that can be developed using GWT, ErraiUI, AngularJS or your preferred language or framework.

    By using UberFire to build such a tool you also get for free an HA enabled environment plus:

    • A metadata with search capabilities that will automatically index all your git repositories;
    • An unified security framework;
    • A lightweight Maven repository manager.

    Attendees will see an overview of challenges faced when building a Cloud IDE, how Uberfire approaches these challenges, lessons learned in a real world use case (obtained by building Red Hat JBoss BRMS and BPMS platforms) and mostly important: a cool live demo.

  • Cell Widgets in the Wild

    Chris DiGiano / Google

    Room 2

    1:00–2:00 pm

    Cell widgets offer the promise of fast, highly-scalable tables, lists, and trees in GWT, but they also don’t fit neatly into common UI design patterns. In this talk I’ll describe some of the challenges one encounters when going beyond the example code to apply cell widgets in complex, real-world systems like Google Groups. I’ll present techniques that developers at Google have used to manage the complexities of using cell widgets for event handling and rendering of non-trivial DOM structures.

  • Tessell: A functional* reactive framework for GWT

    Stephen Haberman / Bizo

    Room 2

    2:00–3:00 pm

    While few would call Java or GWT "functional", the main idea of reactive programming can be applied to GWT applications to radically simplify large applications with complex behaviors. Tessell is a framework that provides a reactive core and a sophisticated DSL for binding smart models with GWT widgets.

  • Java EE with Vaadin

    Peter Lehto / Vaadin

    Room 3

    1:00–2:00 pm

    Vaadin is Java framework for rapid development of highly interactive HTML5-based web applications. Because of server-driven nature Vaadin can easily be integrated with server-side Java EE features such as EJBs and JPA. During this session we will look in detail on how multi-view Vaadin applications are built and coupled with Java EE based business systems using Context and Dependency Injection (CDI). Important topics covered within the session are the best practices of Vaadin enterprise integration design, Vaadin-CDI addon for providing smooth connectability to the backend as well as known best practices which Vaadin teams uses in their daily work.

  • Using Vaadin’s push channel with GWT

    Artur Signell / Vaadin

    Room 3

    2:00–3:00 pm

    Websockets? Long-polling? SSE? Regular polling? Each technique has its problems, so you usually need to support several of them at once. Low-level frameworks like Atmosphere takes care of the some of these challenges, but integration is still not smooth. This session will look at how to use Vaadin's push channel in a vanilla GWT application to get a high-level communication channel for pushing server-side changes to the client.

  • Workshop: Contributing to GWT

    Manuel Carrasco Moñino / Vaadin
    Julien Dramaix / Arcbees

    Room 4

    1:00-3:00 pm

    Since GWT is open source, everybody is welcome to submit patches to the GWT project site and the source base. This workshop guides you through the set up of your development environment to get you up and running as fast as possible and walks you through the committing procedures. In addition to this, active committers to GWT will be present to share their experiences.

Break

  • Rich HTML5 Web Apps: Introduction to Errai 3

    Christian Sadilek / Red Hat

    Room 1

    3:30–4:30 pm

    Building small web sites with some basic functionality is easy using any of the modern JavaScript frameworks but implementing a maintainable large-scale web application is a tough job. GWT has a track record of being a stable and robust programming toolkit that is perfectly suited for building large web applications. Errai enables your team to share Java EE (JPA, JAX-RS, CDI) code between the client and the server and reuse functionality across application layers. In this session, you will learn how to build rich web applications the toolable, typesafe way, without boilerplate using Errai's concise programming model. Next-generation web applications can now be built by combining the best aspects of JavaScript, Java and HTML5 using Errai.

  • GWT vs Angular. FIGHT!

    Christopher Gammage / Jyavu

    Room 2

    3:30–4:30 pm

    Many of us are being pressured to switch to AngularJS. Some of us are already integrating with it. In some cases GWT is being phased out. In this talk I'll attempt to provide a point to point comparison of GWT and AngularJS, in as unbiased manner as I can. I'll talk about the libraries and widgets available to each. GWT is still the best way to create large scale enterprise web front ends!

  • Web Components with Vaadin

    Leif Åstrand / Vaadin

    Room 3

    3:30–4:30 pm

    Web Components promise a revolution in the way the Web is built by standardizing how a widget and the rest of the web page deal with each other. This is excellent news when writing code for the browser, but what about those who prefer to run UI logic on the server?

    This presentation will explore how Web Components can be represented on the server, i.e. how to use and create interoperable components using Vaadin or any other similar framework.

Panel & closing

Tuesday Jan 27th

Registration / breakfast

  • Keynote: GWT 3

    Ray Cromwell / Google

    8:30–9:30 am

Break

  • Web Component Standard

    To be announced

    Room 1

    10:00–11:00 am

  • Polymer and Paper

    To be announced

    Room 1

    11:00–12:00 am

  • Inside the compiler

    Roberto Lublinerman / Google

    Room 2

    10:00–11:00 am

  • To be announced

    John Stalcup / Google

    Room 2

    11:00–12:00 am

Lunch

  • Web Components for GWT

    Daniel Kurka / Google

    Room 1

    1:00–2:00 pm

  • CSS3 and GWT in perfect harmony

    Julien Dramaix / Arcbees

    Room 1

    2:00–3:00 pm

    CSS3 is became inescapable if you want to make beautiful, responsive and performing application. GWT lacked in terms of CSS3 support. The new CssResource will allow you to use the Google Closure stylesheets within your GWT application, allowing any CSS3 features to be also optimized by the GWT compiler. Join me for this talk to learn how to leverage Google closure stylesheets within your GWT applications.

  • What's New with Super Dev Mode

    Brian Slesinsky / Google

    Room 2

    1:00–2:00 pm

  • Deep dive in JS Interop

    Ray Cromwell / Google

    Room 2

    2:00–3:00 pm

  • Disassembling Compiled GWT Sources

    Colin Alworth / Sencha

    Room 3

    1:00–2:00 pm

  • Building a GWT 3.0 app with java 8, elemental, JsInterop and web components

    James Nelson / We The Internet

    Room 3

    2:00–3:00 pm

Break

  • Hybrid apps with GWT, iOS, Android

    Daniel Kurka / Google

    Room 1

    3:30–4:30 pm

  • Modern JavaScript VM under the surface

    To be announced

    Room 1

    4:30–5:30 pm

  • Remote controlling a drone with Spring & Vaadin

    Josh Long / Pivotal
    Peter Lehto / Vaadin

    Room 1

    5:30–6:30 pm

    Wouldn't it be crazy to fly a small drone or helicopter with your phone or tablet running nothing but a web browser? This session will tell you all about it!

    Imagine a fully functional touch based user interface for remote controlling a small drone or a helicopter. This is doable with latest experimental integrations around drone controlling backend applications over WIFI with touch based control interface built with GWT or Vaadin. During the session such a system will be presented with full technology stack starting from GWT based frontend to the actual backend controller application.

    A live drone will also be flown during the presentation maintaining a safe distance from the audience.

  • Comparing GWT Transport Mechanisms

    Leif Åstrand / Vaadin

    Room 2

    3:30–4:30 pm

    There are lots of options for transporting data to and from your GWT app running in the browser. Solutions like GWT RPC, RequestFactory and Protocol Buffers promise to do the heavy lifting for you. Or then you might want to roll your own based on RequestBuilder or similar low level APIs. To further complicate things, frameworks like Errai and Vaadin also provide their own communication mechanisms. Which one should you use? What are the pros and cons? Let’s find out!

  • Automated testing of web apps

    Jonatan Kronqvist / Vaadin

    Room 2

    4:30–5–30 pm

    Testing is an important part of all software projects – and so is keeping sane. In order to not make the developers and testers lose their minds while verifying that a huge amount of features still work, the testing should be automated. What’s worse, the complexity of the underlying technologies often make it more challenging to test web applications than conventional software.

    This talk will show you some tools and methodologies for automated testing of web apps and especially the user interface layer of web apps. It will discuss how to architect a web app for easy testing and what kind of tests should go where and in which situation. We’ll even have a look at how the customer requirements can be automatically tested and verified to work – exactly as specified by the ones paying the bills.

  • To be announced

    Daniel Kurka / Google

    Room 2

    5:30–6:30 pm

  • The Magical Powers of GIN

    Christopher Gammage / Jyavu

    Room 2

    3:30–4:30 pm

    What is dependency injection and why should you use it? In this talk I'll introduce GIN, google's dependency injection library. I'll cover topics like what are the differences between GIN and Guice and what are the limitations or downsides of GIN. Finally, I'll give examples of how to use the different features of GIN.

  • Functional and reactive UI programming

    Henri Muurimaa / Vaadin

    Room 2

    4:30–5–30 pm

  • Improving the HTML table: a quick guide on getting in over your head

    Leif Åstrand / Vaadin

    Room 2

    5:30–6:30 pm

    Smooth continuous scrolling through millions of concurrently edited rows on an old iPad. Sounds easy, right? To achieve 60fps, you need to find the right data, insert it into the DOM and get the browser to layout and render in less than 16 ms. And then there’s also this detail about how overflow: auto works with tens of millions of pixels...

    This presentation will look at all the low-level challenges we faced when pushing the limits of browsers for the new Grid widget for GWT and Vaadin.

  • Demo Stage

    Session host: Colin Alworth / Sencha

    Room 4

    3:30-6:30 pm

    Come and demo what you have built with GWT. Learn from projects others have done. Network.

Evening party

  • Birds of a Feather

    Room 3

    6:30–7:30 pm

    Birds of a Feather sessions are open conversations around a pre-selected topic. The topics will be voted later on.

  • Birds of a Feather

    Room 3

    7:30–8:30 pm

    Birds of a Feather sessions are open conversations around a pre-selected topic. The topics will be voted later on.

  • Birds of a Feather

    Room 4

    6:30–7:30 pm

    Birds of a Feather sessions are open conversations around a pre-selected topic. The topics will be voted later on.

  • Birds of a Feather

    Room 4

    7:30–8:30 pm

    Birds of a Feather sessions are open conversations around a pre-selected topic. The topics will be voted later on.

Wednesday Jan 28th

Registration / coffee

  • Ecosystem Keynote

    Hosted by: Joonas Lehtinen / Vaadin

    8:30–9:30 am

    One of the best parts of GWT is its wonderful ecosystem. In this keynote we'll show the pulse of the community by announcing the results for the Future of GWT survey 2015. Then some of the most visible players in the GWT ecosystem will show the latest and greatest features they have built for their frameworks.

Break

  • Introduction to Vaadin

    Henri Muurimaa / Vaadin

    Room 1

    10:00–11:00 am

    Vaadin is a popular web framework that makes it possible to write rich user interfaces in server-side Java. Writing an application that lazily loads large amounts of data from the server, includes drag-and-drop, keyboard navigation and compelling visualizations would not require writing any HTML, JavaScript or resigning a REST API. While the server centric development model provides the best productivity, Vaadin also supports client-side development though the GWT based Java to JavaScript compiler as well as JavaScript. The default looks of the application can be customized with CSS and Sass.

    The presentation gives an overview to Vaadin and explain how it works. We'll also discuss on what are the differences and the relationship between Vaadin and GWT. The session should give you everything you need to get started building your own apps with the free Apache-licensed Vaadin.

  • GWT on mobile with mgwt

    Katharina Fahnenbruck / MGWT

    Room 1

    11:00–12:00 am

    Building mobile applications with mgwt is a fun and easy way to use your GWT skills to write mobile applications.

    Join me for this sessions to learn how to use mgwt for your mobile applications and how the next version of mgwt will evolve.

  • How to improve your productivity using GWTP

    Christian Goudreau / Arcbees

    Room 2

    10:00–11:00 am

  • GWT Programming With Xtend

    Sven Efftinge / Itemis
    Anton Kosyakov / Itemis

    Room 2

    11:00–12:00 am

    Xtend is a modern programming language that is 100% compatibly with existing Java libraries and even translates to readable Java source code. With it's slick syntax and powerful features such as lambdas, operator overloading and compile-time macros you can turn any verbose piece of Java code into a small and elegant piece of expressive Xtend code.

    In this session we will show how Xtend can be used to program GWT applications and how well the typical GWT idioms are supported by the language.

  • DIY: Computer Vision with GWT

    Alberto Mancini / Jooink
    Francesca Tosi / Jooink

    Room 3

    10:00–11:00 am

    The talk focuses on how to use GWT to mix some of our beloved plain old java libraries (BoofCV and NyARtoolkit for instance) with WebRTC and WebGL to make realtime computer vision and augmented reality: right in the browser, plugin free and … even mobile with mGWT.

    We will show how much GWT, jointly with some of the the new HTML5’s API, enables browser based “compute intensive” applications.

  • Speed up your GWT coding with gQuery

    Manuel Carrasco Moñino / Vaadin

    Room 3

    11:00–12:00 am

    GwtQuery is a rewrite of the jQuery popular library with has brought to the GWT world its sexy API and its simplicity for doing complex things.

    In this session Manuel will provide an overview of the fundamentals of gQuery, how to setup and use it, and how to write code which being laborious in GWT can be simplified using gQuery.

  • Tessell: A functional* reactive framework for GWT

    Stephen Haberman / Bizo

    Room 4

    10:00–11:00 am

    While few would call Java or GWT "functional", the main idea of reactive programming can be applied to GWT applications to radically simplify large applications with complex behaviors. Tessell is a framework that provides a reactive core and a sophisticated DSL for binding smart models with GWT widgets.

  • To be announced

    To be announced

    Room 4

    11:00–12:00 am

Lunch

  • Introduction to GXT

    Colin Alworth / Sencha

    Room 1

    1:00–2:00 pm

    "Sencha GXT is an enterprise-class UI framework based on GWT for building amazing HTML5 apps using Java. It allows you to write applications in Java and compile them into highly optimized cross-browser HTML5 apps. Sencha GXT provides out-of-the-box support for high-performance widgets, feature-rich templates, layouts, advanced charting, data loaders, stores, and much more, for building the most complex user interfaces with ease. The core advantage of using Sencha GXT is development time savings, since the developers can concentrate on building the desired functionality as opposed to underlying framework complexities.

    This session provides an overview of the Sencha GXT framework and explains the basics of how to get started with Sencha GXT.

  • Rapidly Build Cloud IDEs with UberFire

    Alexandre Porcelli / Red Hat
    Michael Anstis / Red Hat

    Room 1

    2:00–3:00 pm

    Learn how to build rich cloud-based IDEs using UberFire. UberFire is a web framework for a superior experience in building extensible workbenches and console type applications. Cloud-based IDEs are a big trend now, so it seemed like a perfect match.

    In this session Alexandre and Michael will explore, in a polyglot fashion, all UberFire features that are key for Cloud IDEs, such as:

    • The Virtual File System API that uses git as its default backend;
    • Multiple perspective definitions providing mechanisms for task-oriented interaction with resources, multi-tasking and information filtering;
    • A flexible windows system where developers can use different layout managers;
    • Plugin-based editors that can be developed using GWT, ErraiUI, AngularJS or your preferred language or framework.

    By using UberFire to build such a tool you also get for free an HA enabled environment plus:

    • A metadata with search capabilities that will automatically index all your git repositories;
    • An unified security framework;
    • A lightweight Maven repository manager.

    Attendees will see an overview of challenges faced when building a Cloud IDE, how Uberfire approaches these challenges, lessons learned in a real world use case (obtained by building Red Hat JBoss BRMS and BPMS platforms) and mostly important: a cool live demo.

  • Cell Widgets in the Wild

    Chris DiGiano / Google

    Room 2

    1:00–2:00 pm

    Cell widgets offer the promise of fast, highly-scalable tables, lists, and trees in GWT, but they also don’t fit neatly into common UI design patterns. In this talk I’ll describe some of the challenges one encounters when going beyond the example code to apply cell widgets in complex, real-world systems like Google Groups. I’ll present techniques that developers at Google have used to manage the complexities of using cell widgets for event handling and rendering of non-trivial DOM structures.

  • Easy cross-platform RPC with Jersey and resty-gwt

    David Chandler / Turbomanage

    Room 2

    2:00–3:00 pm

    Creating a service layer with GWT has changed significantly from the initial GWT-RPC to frameworks based on the Command pattern such as gwt-dispatch and the now deprecated RequestFactory. In this presentation, we'll talk about the pros and cons of various approaches and show how the open source resty-gwt framework combines the simplicity of GWT-RPC service interfaces with the power of the command pattern for caching and XSRF protection. You'll learn how easy it is to create a REST+JSON API on the server using Jersey, App Engine, and Objectify 5 and how to create a generic CRUD API on both client and server. Finally, you'll learn how to implement an authentication filter on the server and authentication callbacks in the GWT client using Jersey and resty-gwt. As a bonus, the presentation will be based on an open source sample project with a working Maven pom for all of the above.

  • Java EE with Vaadin

    Peter Lehto / Vaadin

    Room 3

    1:00–2:00 pm

    Vaadin is Java framework for rapid development of highly interactive HTML5-based web applications. Because of server-driven nature Vaadin can easily be integrated with server-side Java EE features such as EJBs and JPA. During this session we will look in detail on how multi-view Vaadin applications are built and coupled with Java EE based business systems using Context and Dependency Injection (CDI). Important topics covered within the session are the best practices of Vaadin enterprise integration design, Vaadin-CDI addon for providing smooth connectability to the backend as well as known best practices which Vaadin teams uses in their daily work.

  • Using Vaadin’s push channel with GWT

    Artur Signell / Vaadin

    Room 3

    2:00–3:00 pm

    Websockets? Long-polling? SSE? Regular polling? Each technique has its problems, so you usually need to support several of them at once. Low-level frameworks like Atmosphere takes care of the some of these challenges, but integration is still not smooth. This session will look at how to use Vaadin's push channel in a vanilla GWT application to get a high-level communication channel for pushing server-side changes to the client.

  • Workshop: Contributing to GWT

    Manuel Carrasco Moñino / Vaadin
    Julien Dramaix / Arcbees

    Room 4

    1:00-3:00 pm

    Since GWT is open source, everybody is welcome to submit patches to the GWT project site and the source base. This workshop guides you through the set up of your development environment to get you up and running as fast as possible and walks you through the committing procedures. In addition to this, active committers to GWT will be present to share their experiences.

Break

  • Rich HTML5 Web Apps: Introduction to Errai 3

    Christian Sadilek / Red Hat

    Room 1

    3:30–4:30 pm

    Building small web sites with some basic functionality is easy using any of the modern JavaScript frameworks but implementing a maintainable large-scale web application is a tough job. GWT has a track record of being a stable and robust programming toolkit that is perfectly suited for building large web applications. Errai enables your team to share Java EE (JPA, JAX-RS, CDI) code between the client and the server and reuse functionality across application layers. In this session, you will learn how to build rich web applications the toolable, typesafe way, without boilerplate using Errai's concise programming model. Next-generation web applications can now be built by combining the best aspects of JavaScript, Java and HTML5 using Errai.

  • GWT vs Angular. FIGHT!

    Christopher Gammage / Jyavu

    Room 2

    3:30–4:30 pm

    Many of us are being pressured to switch to AngularJS. Some of us are already integrating with it. In some cases GWT is being phased out. In this talk I'll attempt to provide a point to point comparison of GWT and AngularJS, in as unbiased manner as I can. I'll talk about the libraries and widgets available to each. GWT is still the best way to create large scale enterprise web front ends!

  • Web Components with Vaadin

    Leif Åstrand / Vaadin

    Room 3

    3:30–4:30 pm

    Web Components promise a revolution in the way the Web is built by standardizing how a widget and the rest of the web page deal with each other. This is excellent news when writing code for the browser, but what about those who prefer to run UI logic on the server?

    This presentation will explore how Web Components can be represented on the server, i.e. how to use and create interoperable components using Vaadin or any other similar framework.

Panel & closing

Mountain View

California

The conference is arranged at the Computer History Museum where computer history is combined with the future of the web into a beautiful mashup on Jan 22–23rd.

More info about the venue

Munich

Germany

Ultramodern Hilton Park Hotel will host 40+ technical sessions focused solely on GWT related topics for two days on Jan 27–28th.

More info about the venue

Why attend?

Learn where GWT and the related frameworks like Vaadin, GXT and Errai are going, what is hot at the moment and what are the best practices for building something great.
Meet the key people in the GWT community, take a deep dive into the technology and compare your experiences with others who are living and breathing GWT.
Get inspired by the latest developments in HTML5 - both on mobile and desktop. Start seeing the future of how to build the next generation user experience on web platform.
Register Now

Follow GWT.create

With Us at the Event