HTML5 - The Python Angle (PyCon Ireland 2010)

  • 11,250 views
Uploaded on

Presentation on HTML5 and Pyjamas for PyCon Ireland 2010

Presentation on HTML5 and Pyjamas for PyCon Ireland 2010

More in: Technology
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
No Downloads

Views

Total Views
11,250
On Slideshare
0
From Embeds
0
Number of Embeds
1

Actions

Shares
Downloads
89
Comments
0
Likes
2

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide
  • Steve Jobs – we support two platforms at Apple – the first is HTML5, a fully open, uncontrolled platform. We fully support HTML5, love the technology in it and Apple's browsers are the lead in terms of HTML5 Support. June 7 th 2010
  • Introduce pyjamas at this point
  • Right now examples include gmail,, google docs or yahoo email on the iphone. scribd.com
  • You could use jython in java applets

Transcript

  • 1. HTML5 - The Python Angle
  • 2. What is this presentation about?
    • A new platform for development is emerging in HTML5
      • What is HTML5?
      • 3. What is the Python Angle?
  • 4. What is HTML5?
  • 5. It's all about the HYPE
  • 10. HTML5 Features
  • 13. HTML5 Javascript APIs
  • 21. 1. Offline Applications Cache
    • Define manifest in HTML tag
    • 22. Firefox
        • about: cache
        • 23. Edit -> Preferences -> Advanced -> Network
    IE Firefox Safari Chrome iPhone Android No Yes Yes Yes Yes Yes
  • 24. 2. Canvas 2D Context
    • Fast access for 2D drawing
    • 25. 3D Context (Web-GL)
    IE Firefox Safari Chrome iPhone Android Yes* Yes Yes Yes Yes Yes * 3 rd party explorercanvas maps canvas to IE (VML)
  • 26. 3. Storage
    • Web-storage (localStorage/globalStorage)
    • 27. Web SQL replaced by IndexedDB
    IE Firefox Safari Chrome iPhone Android Yes Yes Yes Yes Yes Yes
  • 28. 4. Web Workers
    • Background process with limited interaction
    IE Firefox Safari Chrome iPhone Android No Yes Yes Yes No Yes
  • 29. 5. Notifications
    • Server sent events – not going anywhere
    • 30. Comms API – Cross window
    • 31. Comms API – Channel
    IE Firefox Safari Chrome iPhone Android No Yes Yes Yes ? ?
  • 32. 6. Web Sockets
    • Long living sockets
    • 33. Bi-directional
    • 34. Green Unicorn
    IE Firefox Safari Chrome iPhone Android No Yes Yes Yes Yes ?
  • 35. 7. Geolocation
    • Locate the browser
    IE Firefox Safari Chrome iPhone Android No Yes Yes Yes Yes Yes
  • 36. 8. Odds and Ends
  • 42. What is RIA?
  • 43. RIA Characteristics
    • Performance
    • 44. Richness
    • 45. Distributed (rather than thin client)
    • 46. Searchability
    • 47. Consistent user experience
  • 48. RIA Frameworks
    • Plugins
          • Java Applets
          • 49. Silverlight
          • 50. Flash / Adobe Flex
    • Javascript target (Client only)
          • Javascript frameworks with GUI builders:
            • qooxdoo, ExtJS (sencha), Prototype, UIZE, TurboWidgets, TIBCO and 100 more
          • SproutCore (apple sponsored)
          • 51. Cappuccino, (gianduia???)
          • 52. JavascriptMVC
    • Javascript target (Client and Server)
  • 55. Python in HTML5/RIA Space
    • Pyjamas
        • Pyjamas / GWT Widgets
        • 56. Pyjamas / Pure MVC
    • Skulpt
  • 57. What does Pyjamas Need?
    • Positive:
          • Documentation is good (but out of date)
          • 58. It works, now
          • 59. Uses python – good for large projects
          • 60. Debuggable (in native Linux deployment)
          • 61. Can get to most of the DOM
          • 62. New java2python translator (Thomas Kalka)
    • Not so good:
          • Wysiwyg editor / IDE integration needed (learning curve)
          • 63. Output Files are too large
          • 64. Poor Integration to back end – needs single model
          • 65. Insufficient Traction – needs more developers/money
          • 66. Native tool chain support missing in Ubuntu 9.10+
          • 67. Not JavaScript
  • 68. Critical Success Factors
    • Jython found a niche...
        • Jython is an improvement over Java in that it is concise, avoiding all the static typing
        • 69. Jython allows you to use both Java libraries and Python libraries e.g. beautiful soup
        • 70. Jython can be used interactively
        • 71. Don't need to recompile
        • 72. Features in Jython such as lambda not in Java
    • Python's Client Side strengths could be...
        • Powerful and simple language
        • 73. Rich source code base
        • 74. Build from server successes – seamless environments needed
  • 75. Python can't “beat” Javascript
    • Server side JavaScript will grow
    • 76. Developers need integration between client and server frameworks (rails/prototype)
    • 77. There is not enough reason to replace JS with Python on Client
  • 78. References
    • Useful Sites:
          • http://www.html5rocks.com
          • 79. http://diveintohtml5.org
          • 80. http://html5doctor.com
          • 81. http://caniuse.com
          • 82. http://www.ajaxian.com
          • 83. http://www.crockford.com
          • 84. http://www.roughlydrafted.com
          • 85. http:// www.pyjs.org