Upload
carsonsystems
View
2.521
Download
0
Tags:
Embed Size (px)
DESCRIPTION
Brice Leblevennec speaking at Future of Web Apps in London, February 2007.
Citation preview
The GWT bet ...
Brice Le Blévennec
Chief Visionary Officer
ContactOffice.com
FOWA 02-07
Hello
♣Brice Le Blévennec, Internet Serial Entrepreneur.♣ In 1991 founded Emakina (Alternext ALEMK) now
belgium largest Interactive Agency (100+ staff),of which I am Chairman.
♣From 1996 to 2004 I produced and hostedCyberCafe, a weekly show about Internet andtechnologies on belgian national broadcasttelevision and radio.
♣1999 co-founded ContactOffice, Collaborative &Messenging Web Application, of which I am ChiefVisionary Officer
♣ In 2007 co-founded Tunz.com, a mobile paymentprovider of which I am Chief Visionary Officer.
♣(more on brice.org)
10 minutes only
♣ContactOffice ?
♣Collaborative & Messenging Web Application
♣Features set
♣State-of-the-art
♣Reengineering the interface
♣Selecting an AJAX of Flash framework
♣Google Web Toolkit (GWT)
♣Overcoming limitations
♣Adding Drag & Drop to GWT
♣Beta launch TODAY
ContactOffice ?
♣Collaborative & Messaging Web Application
♣Founded in 1999 by 4 Belgian serial internet entrepreneurs
How big ?
♣1 million registrations
♣350.000 active accounts (feb 07)
♣250.000 paying accounts
♣Global, 6 languages
♣Profitable since 2003!
Functionalities
Functionalities
Collaboration & Messaging WebApp
State-of-the-art
Calendar (+ RSS)Contacts,To Do,Notes,Bookmarks (+ RSS),Synchro ...
Groups Organiser
Mail (+ RSS),
IMAP4 & POP3(s),
SMTP, Webmail,
Antivirus & AntiSpam,
SMS, Fax, Alerts & Chat
State-of-the-art Messenging
Web upload or WebDAV
RSS & Vod/Podcasts,
Public sharing
Documents Repository
Forum, Wiki,Bulletin Board,Phone Calls, ...
Collaboration
Everything can be sharedwith users and groups!
Sophisticated Access Right Model at user level
Applications : Individual user, Families,Associations, Companies, Departments,All kind of teams, ...
ASP & Licence Models
♣Hosted, Security, SLA
♣Personalised, Private Label versions
♣SSO : LDAP, CAS, RSA ClearTrust, ...
♣API : XML-RPC
Technologies
OO Architecture :
♣Object Oriented Database
♣Pure Java Backend (POJOs only)
♣Build for scalability
♣Clients abstraction layer:♣ Web (HTML & CSS)
♣ Pocket Explorer + Symbian
♣ Wap (WML)
♣ Voice XML (prototype)
Some happy customers
HTML + JavaScript + FramesDesktop like, Web 2.0 style,Drag & Drop, Widgets, ...
Reengineering the interface
♣Objective: Interface upgrade to present standards
♣Approach: Migrate 1999 interface to 2007 state-of-the-art GUI
♣Weakness: Obsolete Client Architecture (thousands JSP files)
♣Strength: The 1999 Server Architecture (POJOs + OODB)is still state-of-the-art
Selecting a framework / technology
Many goo solutions
♣Own framework ?♣ Cost of supporting what others might doing well ?
♣Ajax vs Flash ?♣ OpenLazslo, Adobe Flex♣ Flash plugin dependency ?
♣Ultra lightweight client + server-side Java ?♣ echo2, zk, ...♣ Do they scale well ?
♣Existing JS frameworks ?♣ Dojo, Scriptaculous/Prototype, ...♣ JavaScript language ?
♣The JavaScript nightmare Fun but language is too flexible (global vars,...) Requires an extremely strict discipline (convention) for a team How to handle efficiently tens of Klocs ? Browsers quirks
JavaScript
?
?
Google Web Toolkit (GWT) ?
♣ What is GWT♣ GWT is a Google framework for building AJAX apps in the Java language♣ Open Source Apache 2 Licence♣ Java --> JavaScript translation
♣ 'Industrial' software engineering Tools ! Tools! (IDE Eclipse & GWT hosted mode + svn integration perfect for teams) Standard Java refactoring, debugging, testing, source code manipulation Compile time vs Run time errors detection
♣ Advantages Performances:
Aggressive caching, code optimization, compression Clean backend integration:
Efficient Java RPC mechanism Portability:
Generates platform-specific code Native JavaScript is still reachable:
JSNI (JavaScript Native Interface) Developer Community:
Large (Forums : 6900 users, 250 contributors) and active (+20K posts)
♣ But... Java knowledge required for UI designers♣ CSS only is not realistic
JavaScript
GoogleWebtool
Kit
?
CO enhancements to GWT
MV(C) framework• Strict model/view separation• Necessary for even driven interfaces (AJAX is asynchronous)• Side effect : ease collaboration between presentation
and business logic developers
Drag & Drop“Hey Luc, I took a look at your demo - prety cool stuff!”
Rajeev Dayal (Google)
Attractive look & feelContactOffice use GWT styling possibilities to the fullest
Contextual menus
Marquee selection
Draggable splitters
Data grid
Enhanced dialogs, property pagesJavaScript
GoogleWebtool
Kit
ContactOfficeEnhancements
Current Interface
http://www.contactoffice.com
New GWT based Interface
http://beta.contactoffice.com
Indication of new +total number ofitems in lists
Navigation repeatedon left
Help and extrainformation
Dashboard givingquick access tomain features
New GWT based Interface
http://beta.contactoffice.com
Click to sortor resort
Folderorganization
New GWT based Interface
http://beta.contactoffice.com
Organizecontacts pertype
List contacts
Quick search
New GWT based Interface
http://beta.contactoffice.com
Documents
Multiselectdocuments
Click to sortor resort
Folderorganization
New GWT based Interface
http://beta.contactoffice.com
Groupcalendar
Details
Filter
Quicknavigate
Export
New GWT based Interface
http://beta.contactoffice.comClick to sortor resort
Folderorganization
Groupbookmarks
Beta Launch TODAY!
Try it now :http://beta.contactoffice.com
Questions?