Open Source to the Rescue of Mobile App and Mobile Web Fragmentation


Published on

Summarization of the BoF session on OSCON 2009:

Published in: Technology, News & Politics

Open Source to the Rescue of Mobile App and Mobile Web Fragmentation

  1. Open Source to the Rescue of Mobile App and Mobile Web Fragmentation? (short summary of the OSCON BoF session) Tom Deryckere Software Architect / Siruna @twom
  2. <ul><li>This is not a presentation! </li></ul><ul><li>Report on the BoF session on OSCON Monday 20 july 2009 </li></ul><ul><li>Mail me if you have additions to this report. </li></ul>What’s this
  3. <ul><li>Professional Open Source company </li></ul><ul><li>Located in Belgium | UK | US | India | UAE | China </li></ul><ul><li> </li></ul><ul><li>Siruna helps you to make anything mobile on any device with total peace of mind. </li></ul>Siruna Website XML Feed
  4. <ul><li>OSCON unique chance to meet fellow developers </li></ul><ul><li>Discuss current state of Open Source tools for mobile developers </li></ul><ul><li>Do they provide solutions to overcome device fragmentation? </li></ul><ul><li>Networking and Exchange ideas and experiences </li></ul><ul><li>Publish outcome after OSCON </li></ul>Why a BoF session
  5. <ul><li>Browser companies </li></ul><ul><ul><li> : executing websites on the server to take the load of mobile devices: </li></ul></ul><ul><ul><li> : full featured mobile web browser supporting most standards including the BONDI / W3C specs </li></ul></ul><ul><li>Application developers / consultants </li></ul><ul><ul><li>Game developer with need for some power (going for the navit app appraoch, mainly on one platform – iPhone). Used to develop J2ME but sees a lot of fragmentation in this world.. </li></ul></ul><ul><li>Handset manufacturers </li></ul><ul><ul><li>Samsung working with open source operating systems based on desktop gnome </li></ul></ul><ul><li>Consumer companies </li></ul><ul><ul><li>Looking at extending sales channel and promoting products through mobile </li></ul></ul><ul><li>Medical records access from mobile devices for underdeveloped countries </li></ul><ul><li>Open source adepts </li></ul><ul><li>Open source companies </li></ul><ul><ul><li> </li></ul></ul><ul><li>.... </li></ul>Who was around the table
  6. <ul><li>Problem of fragmentation </li></ul><ul><ul><li>How to develop applications that run on different devices / platforms </li></ul></ul><ul><ul><li>What platforms are there and what fragmentation does a developer needs to overcome </li></ul></ul><ul><ul><li>Which tools are available to help </li></ul></ul><ul><li>Mobile web development </li></ul><ul><ul><li>What standards do we have </li></ul></ul><ul><ul><li>What standards should we adopt </li></ul></ul><ul><ul><li>Problem of javascript UI libraries that are not mobile friendly </li></ul></ul><ul><ul><li>Problem of flash </li></ul></ul><ul><ul><li>Transcoding solutions </li></ul></ul><ul><li>Device detection (very shortly) </li></ul>What was discussed
  7. <ul><li>Has always been a developer challenge </li></ul><ul><ul><li>J2ME used to be a solution </li></ul></ul><ul><ul><li>Currently fragmentation on J2ME is to big </li></ul></ul><ul><li>Fragmentation on two fronts </li></ul><ul><ul><li>Device capabilities: screen size, GPS, touch, accelerometer, CPU, bluetooth, .... </li></ul></ul><ul><ul><li>Operating system: webOS, WinMo, Java, Android, iPhone, Symbian, ... </li></ul></ul><ul><ul><ul><li>Other? </li></ul></ul></ul><ul><li>Puts difficult choices on developers </li></ul><ul><ul><li>E.g. What platforms to develop for </li></ul></ul>Fragmentation
  8. Some numbers (AdMob) United States Handset Data - April 2009 Requests: 3,538,714,000 More:
  9. <ul><li>Red: percentage of web request coming from the phone </li></ul><ul><li>Blue: percentage of total sold mobile devices </li></ul>Numbers
  10. Platforms Platform Language iPhone Objective C Android Java (Dalvik JVM) Windows mobile .NET / C++ / Java Nokia C++, java, Flash lite Palm Pre HTML / CSS / javascript With own touch (services api + widgets) What some would call widgets. Blackberry Java Browser HTML / CSS / javascript W3C standards, limitations
  11. <ul><li>It is not only that mobile need to evolve to ‘desktop functionality’ </li></ul><ul><ul><li>Mobile browsers are more and more desktop like </li></ul></ul><ul><ul><ul><li>HTML / CSS / javascript capabilities </li></ul></ul></ul><ul><ul><ul><li>Problem lies not in capability, but in layouting and making javascript gui’s that make sence on mobile </li></ul></ul></ul><ul><li>Mobile browser need mobile specific functionality </li></ul><ul><ul><ul><li>Access to GPS (not standard available on desktop browsers) </li></ul></ul></ul><ul><ul><ul><li>Access to camera, contact list, file system, etc ... </li></ul></ul></ul><ul><ul><ul><li>Mobile javascript based UI libraries </li></ul></ul></ul><ul><ul><ul><li>BONDI project is addressing this issue </li></ul></ul></ul>Desktop versus mobile
  12. <ul><li>HTML / CSS / javascript gains momentum and is heading towards a middleware language to run on all devices </li></ul><ul><li>PhoneGap already brings this in reality </li></ul><ul><li>More platforms/browsers are supporting it </li></ul><ul><ul><li>Webkit! </li></ul></ul><ul><li>BONDI </li></ul><ul><ul><li>Industry initiative defining interfaces to access mobile device resources (calender, camera, file system, location) </li></ul></ul>Standardisation versus open tools
  13. <ul><li>Open Source project making a mobile device database available as xml file </li></ul><ul><li>Get device capabilities </li></ul><ul><ul><li>Screen size </li></ul></ul><ul><ul><li>Which html standards </li></ul></ul><ul><ul><li>Javascript </li></ul></ul><ul><ul><li>Video capabilities </li></ul></ul><ul><ul><li>... </li></ul></ul><ul><li>API’s for Java, PHP </li></ul><ul><li> </li></ul>WURFL
  14. <ul><li> </li></ul><ul><ul><li>Test on objective paramters/site semantics -> not always linked to how well a site works </li></ul></ul><ul><li>No Open Source </li></ul><ul><ul><li>Adobe device central (only for flash?) </li></ul></ul><ul><ul><li> </li></ul></ul><ul><li>Crowdsourcing based testing companies </li></ul><ul><ul><li> </li></ul></ul>Mobile testing
  15. <ul><li>Use html / CSS / javascript to build applications </li></ul><ul><li>UI </li></ul><ul><li>Iphone / android / BlackBerry </li></ul><ul><li>Access to native functionality </li></ul><ul><ul><li>Geo location </li></ul></ul><ul><ul><li>Vibration </li></ul></ul><ul><ul><li>Accelerometer </li></ul></ul><ul><ul><li>Sound </li></ul></ul><ul><ul><li>Contact support </li></ul></ul><ul><ul><li>Camera </li></ul></ul><ul><li>Under development </li></ul><ul><li> </li></ul>PhoneGAP
  16. <ul><li>Mobile web </li></ul><ul><li>Content adaptation engine </li></ul><ul><li>Multi-platform distribution </li></ul><ul><li>Takes online content and formats it for mobile </li></ul><ul><ul><li>Semi automatic: using an xml based scripting language + adaptation engine </li></ul></ul><ul><li>Device detection, image transcoding, CSS adaptation, content selection, ... </li></ul><ul><li>Manage different versions of one site for different device categories </li></ul><ul><li>Other open source example: Morfeo </li></ul><ul><li> / / </li></ul>Siruna
  17. <ul><li>Web browser engine (both mobile / desktop) </li></ul><ul><ul><li>Nokia </li></ul></ul><ul><ul><li>Safari </li></ul></ul><ul><ul><li>Android </li></ul></ul><ul><ul><li>Palm Pre </li></ul></ul><ul><ul><li>QT </li></ul></ul><ul><li>Contributing to WebKit can change the mobile web! </li></ul><ul><li> </li></ul>WebKit
  18. <ul><li>Open Source operating systems (Symbian, Android, ....) </li></ul><ul><li>iPhone application development </li></ul><ul><li>Open source scripting for mobile </li></ul><ul><ul><li>Python runs on different devices </li></ul></ul><ul><li>Widgets </li></ul><ul><ul><li>Often HTML/CSS/javascript based web application </li></ul></ul><ul><li>.... </li></ul>What we did not talk about
  19. <ul><li>Mail : [email_address] </li></ul><ul><li>Blog: </li></ul><ul><li>Twitter: @twom, @siruna </li></ul><ul><li>Siruna: , </li></ul>Contact