27
The GWT bet ... Brice Le Blévennec Chief Visionary Officer ContactOffice.com FOWA 02-07

Fowa Brice Lebelvennec

Embed Size (px)

Citation preview

Page 1: Fowa Brice Lebelvennec

The GWT bet ...

Brice Le Blévennec

Chief Visionary Officer

ContactOffice.com

FOWA 02-07

Page 2: Fowa Brice Lebelvennec

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)

Page 3: Fowa Brice Lebelvennec

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

Page 4: Fowa Brice Lebelvennec

ContactOffice ?

♣Collaborative & Messaging Web Application

♣Founded in 1999 by 4 Belgian serial internet entrepreneurs

Page 5: Fowa Brice Lebelvennec

How big ?

♣1 million registrations

♣350.000 active accounts (feb 07)

♣250.000 paying accounts

♣Global, 6 languages

♣Profitable since 2003!

Page 6: Fowa Brice Lebelvennec

Functionalities

Page 7: Fowa Brice Lebelvennec

Functionalities

Page 8: Fowa Brice Lebelvennec

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

Page 9: Fowa Brice Lebelvennec

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, ...

Page 10: Fowa Brice Lebelvennec

ASP & Licence Models

♣Hosted, Security, SLA

♣Personalised, Private Label versions

♣SSO : LDAP, CAS, RSA ClearTrust, ...

♣API : XML-RPC

Page 11: Fowa Brice Lebelvennec

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)

Page 12: Fowa Brice Lebelvennec

Some happy customers

Page 13: Fowa Brice Lebelvennec

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

Page 14: Fowa Brice Lebelvennec

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

?

?

Page 15: Fowa Brice Lebelvennec

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

?

Page 16: Fowa Brice Lebelvennec

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

Page 17: Fowa Brice Lebelvennec

Current Interface

http://www.contactoffice.com

Page 18: Fowa Brice Lebelvennec

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

Page 19: Fowa Brice Lebelvennec

New GWT based Interface

http://beta.contactoffice.com

Email

Click to sortor resort

Folderorganization

Page 20: Fowa Brice Lebelvennec

New GWT based Interface

http://beta.contactoffice.com

Organizecontacts pertype

List contacts

Quick search

Page 21: Fowa Brice Lebelvennec

New GWT based Interface

http://beta.contactoffice.com

Documents

Multiselectdocuments

Click to sortor resort

Folderorganization

Page 22: Fowa Brice Lebelvennec

New GWT based Interface

http://beta.contactoffice.com

Groupcalendar

Details

Filter

Quicknavigate

Export

Page 23: Fowa Brice Lebelvennec

New GWT based Interface

http://beta.contactoffice.comClick to sortor resort

Folderorganization

Groupbookmarks

Page 24: Fowa Brice Lebelvennec

Beta Launch TODAY!

Page 25: Fowa Brice Lebelvennec

Try it now :http://beta.contactoffice.com

Page 26: Fowa Brice Lebelvennec

Questions?

Page 27: Fowa Brice Lebelvennec

Contact Us!

[email protected]

www.contactoffice.com

blog.contactoffice.com