HTML5 is not just a replacement for plugins. It also makes the Web a first-class development environment by giving JavaScript programmers a solid foundation for building industrial-strength applications. This practical guide takes you beyond simple site creation and shows you how to build self-contained HTML5 applications that can run on mobile devices and compete with desktop apps.
You'll learn powerful JavaScript tools for exploiting HTML5 elements, and discover new methods for working with data, such as offline storage and multithreaded processing. Complete with code samples, this book is ideal for experienced JavaScript and mobile developers alike.
- Store session data in the browser with local storage objects
- Save trips to the server: store larger amounts of data with IndexedDB
- Give browsers limited access to a user's system to read and upload files
- Take your app offline--and speed up page loading when it's online
- Use Web Workers to create multithreaded applications
- Transfer data between browser and server more efficiently with Web Sockets
- Learn about HTML5 tags for forms, multimedia, graphics, and geolocation
"HTML5 is all the rage these days, but it's more than just a buzzword. Programming HTML5 Applications provides the knowledge to guide you through all the new technologies needed to make modern web applications."
--Ralph Whitbeck, cohost of The Official jQuery Podcast
Zachary Kessin first discovered the world wide web around 1993 when NCSA Mosaic was still the dominant browser. He has been building applications on the internet around 1995 when perl and CGI were the way to go. He has worked in the Boston Area, London, and Tel Aviv. He currently works at Mytopia a leading social games company in Ramat Gan Israel. Mytopia builds games for Facebook and mobile. Zachary's main responsibility is to build an internal Dashboard, a single page Javascript application that is used to manage many aspects of Mytopia operations. The dashboard started about 2 1/2 years ago as an old style web application, where all logic was done in PHP and every action required a page load. Over the first year it evolved from there threw several phases into a single page application, in which all functionality is in one web page and only login and logout require a page load. About 2 years ago we started using Google Gears to speed up the Dashboard. At some point after google stopped developing gears we have started moving those features over to HTML 5. At this point the dashboard uses localStorage, Canvas, and the HTML5 application Cache. There was some use of Gears Worker Pool as well. The Dashboard is based on ExtJS and jQuery.