This presentation provides developers with an introduction to BlackBerry® WebWorks. The slides cover the difference between Web and Native apps, the browser, frameworks, tooling, the community, and the benefits of WebWorks.
Topics Web Apps vs. Native Apps The Browser. It starts here Frameworks (all flavours of the rainbow) Tooling Community Why BlackBerry® WebWorks™?
Web Apps vs. Native apps Different feel (or are they?) Users expect App life cycle Driven by browser, but transparent to the user Download Install Launch with icon Ultimately, the user doesn’t care it’s web
Web Apps vs. Native apps Am I web? Am I native? Key: where the app and the platform meet Power of web design and interaction Platform services should feel cohesive Balance
Not a competition ScaleNIBS Breadth of skills Cross-platform Still lags native, but gap is closing* Native Is Better Syndrome
It starts with the Browser Acid3 Score: 100/100 CSS3 Selectors Test: 578/578 HTML5: 266/475
WebGL® - One of the first mobile implementations HW accelerated Tunnel Tilt (http://github.com/blackberry/WebGL-Samples)
Touch optimized Web frameworks support multiple platforms Examples: jQuery Mobile/UI, Sencha Touch, Dojo Improve the UI and functionality of your application Save time and money by using existing code! Sencha Touch jQuery Mobile http://touchsolitaire.mobi/app/ http://jquerymobile.com/demos/
Be Careful… Frameworks are built cross-platform Even though it’s WebKit, differences in each Mobile vendors look for differentiators Varying levels of support Framework behaviours may differ from platform norm Test on all platforms Behaviour consistency performance
• A Lightweight Independent CSS Engine• Micro Library for HW-accelerated visual affects• Entirely JS• Leverages CSS3, cross-platform• http://blackberry.github.com/Alice
WebWorks Mission StatementTo create, as a community, a simple to use cross platform SDK for Web Developers to package their Web assets as a mobile application which has Secure access to deeply integrated system level APIs
WebWorks APIs Device Integration Contacts, Calendar, Appointments, Identity, Homescreen, File I/O Platform Services Push, Advertising, Payments, BBM™ Custom Extensions Access any existing API on the BlackBerry platform https://github.com/blackberry/WebWorks-Community-APIs @ken_wallis– 22
Tooling IDE vs. SDK vs. VIM & Browser Web very different from Native Not expecting a full IDE Edit -> Refresh, Rinse -> Repeat
A day in the life… Native Developer Writing Code Test on Simulator Test on Device Desktop Web Developer Writing Code Test in Desktop Browsers Mobile Web Developer Test On Writing Code Test in Desktop Browser Test on Device Simulator
Web Testing There are some emerging solutions: Weinre, JSConsole, Firebug Lite… Native simulators Big and slow 95% done, but STILL will need physical device
Web Testing. BlackBerry Style. Ripple emulator: Testing in a browser like env. Cross-platform! (PhoneGap, Mobile Web, …) Simulate device APIs and sensors F5, CMD-R Remote Web Inspector! Debug on-device Fully functional, including JS debugging
Ripple Goals Cross device and platform API support Fidelity emulation Dirt simple updates & upgrades Easily package your application Simple final testing and publishing @ken_wallis– 29
Native Developer Writing Code Test on Simulator Test on DeviceDesktop Web Developer Writing Code Test in Desktop BrowserMobile Web Developer Writing Code Test in Desktop Browser Test On Simulator Test on DeviceMobile Web Developer (with Ripple) Test on Writing Code Test in Ripple Device
How to get there • >60M BlackBerrys + = • Every PlayBook
How to get there • >60M BlackBerrys + = • Every PlayBook • BlackBerry® 10
For More Information… Tons of sessions that cover HTML5/WebWorks 14 DEV sessions on various web topics 9 COM sessions given by community developer 2 LABS: hands-on experience for developers in building BlackBerry WebWorks applications ASK (Ask the Experts) – ask them anything web related! App Express - Build a WebWorks app and submit to App World on the spot! @ken_wallis– 44
Resources http://developer.blackberry.com/html5 Download Ripple Beta No signups, no costs! http://blackberry.github.com http://appworld.blackberry.com/isvportal Vendor signup, no costs!