Microsoft TechDays 2011's DEV302 Presentation, Application Development with HTML5. This was presented in Fall 2011 in Vancouver, Montreal, and Toronto for the Microsoft TechDays 2011 conference.
2. a bit about us
www.digiflare.com
chris.ching@digiflare.com
nathaniel.bagnell@digiflare.com
Web and mobile developers
HTML5 usergroup (http://bit.ly/ncOoEh)
Toronto, ON
3. agenda
Defining HTML5
Utilizing HTML5 Technologies
Spicing It Up With CSS3
Make Your Life Easier With Tools
HTML5 and Beyond
Getting Started
5. defining HTML5
What do people think when they hear “HTML5”?
A set of specifications
A goal toward a more open web
What is an “HTML5” application?
27. quick CSS primer
CSS stands for
Cascading Style Sheets
CSS is used to apply
styling to mark-up
elements
With presentation
separate from
content, the pages
become more flexible
28. CSS specification stages
The CSS specification goes through Recommendation
“stages” from the W3C.
(REC)
CSS3 module’s stages varies significantly
Only three modules have reached
recommendation status: Selectors Level
3, Colour, and Namespaces.
Progress is relatively quick; a little over a
year ago there was no modules at the
Recommendation stage; only Selectors Working Draft
Level 3 was a Proposed
Recommendation (WD)
29. CSS milestones
CSS1 became a W3C
Recommendation in
December 1996
In the year 2000, Internet
Explorer 5.0 for Mac was
the first browser to fully
support the CSS1
specification
CSS has been gradually
building on top of each
previous version, CSS3 is no
different
30. where CSS is now: CSS3
CSS3 builds on top of CSS 2.1
CSS3 brings forth a lot of exciting new
features, in a different approach than
previous iterations
CSS3 and CSS moving forward, is
organized into modules
Updates to the CSS specification will
actually be updates to the respective
module being updated
31. why CSS modules? CSS Specification
CSS3 is being released in Module
modules, instead of one giant release Module
Module
W3C can bring modules up to the
Recommendation Level (REC) at
different times, based on their priority Low Medium High
Priority Priority Priority
Priority is determined by feedback and
real-world implementation of
WD, CR, and PR specifications Module X Already Supported
Browser developers can implement Browser
Rendering
CSS3 piece by piece, this helps speed Engine
up the overall adoption process Module Z Support Module Y Support
Later Soon
32. what CSS modules exist?
There are many modules in the CSS
specification.
As of October 2011, there are 52 modules
Each module is specific to it’s purpose
i.e. the “Fonts” module will contain all font-
related functionality
Some modules come from entirely new
functionality, while others come from
previous features
i.e. the “Animations” module is all new, but
the “Text” module contains both previous
and new functionality related to text
33. implementing CSS3 today
Build your site with the bare minimums first
All required functionality should be there
Required structural and core visual elements implemented
Add on additional value afterward with Progressive Enhancement
Alternatively, you can do it in reverse with graceful degradation
Using either method, have these value-add features subtly
appear/disappear if the user agent does/does not support them
If your project requires the functionality regardless of native user agent
support, implement fallbacks that either substitute or imitate the desired
functionality
34. implementing CSS3 today
Browser Fallbacks
Implement required functionality natively first
Provide fallbacks to browsers that do not support the functionality natively
Fallbacks can be done with
JavaScript alternatives (e.g. jQuery plug-ins that replicate features)
Proprietary functionality (e.g. IE’s “Filter”)
Pseudo effects (i.e. extra markup, images, etc.)
The need for a fallback can be determined by
Tools like modernizr to determine native support
General knowledge of what is/is not supported by your target browsers
35. quick jQuery primer
We will use jQuery and several jQuery plug-ins to replicate CSS3 features
that may not be supported in some of your target browsers
jQuery is a JavaScript library that allows you to quickly develop JavaScript
solutions
It has great cross browser support including IE6+, FF2+, Safari 3+, and
Opera 9+. So, let’s dive into some demos!
40. future of HTML5
With each new browser release, support for the
HTML5 specification is growing
A work in progress:
First Published Candidate
Working Draft Last Call Recommendation
Working Draft Recommendation
42. multi-platform/screen support
• Increasing support for JavaScript and HTML5 as a
multi-platform technology
• Develop rich applications for
Mobile, Tablet, Desktop screens with frameworks
• Sencha Touch
• jQuery
• Windows 8
44. next steps
• Implement some of the features we talked about
today on your own
• Continue learning more about HTML5 and then
expand your knowledge on JavaScript and jQuery
• Identify opportunities around you to utilize
HTML5 technologies
46. related sessions
Breakouts
• 26th October, DEV334 - HTML5 and CSS3
Techniques You Can Use Today, 10:30am
• 26th October, WIN312 - Digging into an HTML5
Line of Business Start Kit, 2:45pm
All sessions will be available online after the tour
47. Remember To Complete Your Evaluations!
You could WIN a Samsung Focus
Windows Phone 7!
Let us know what you liked & disliked!
Remember, 1=Bad, 5=Good
Please provide comments!
No purchase necessary. The contest is open to residents of Canada (excluding government employees). The Toronto Tech·Days evaluation form contest begins on October 25th, 2011 and
ends on October 26th, 2011. The Vancouver Tech·Days evaluation form contest begins on November 15th, 2011 and ends on November 16th, 2011. The Montreal Tech·Days evaluation
form contest begins on November 29th, 2011 and ends on November 30th, 2011. Participants can enter the contest in one of two ways: (1) complete and submit an evaluation form by the
contest close date; or (2) provide contact information by the contest close date. The draw for Toronto will take place on October 31st, 2011. The draw for Vancouver will take place on
November 21st, 2011. The draw for Montreal will take place on December 5th, 2011. The chances of being selected depend upon the number of eligible entries. Selected participants will be
contacted by phone and/or e-mail and will be required to answer correctly a time-limited skill-testing question. There are three (3) prizes available to be won. One (1) prize will be given away
for each Tech·Days event in Toronto (October 25-26 2011), Vancouver (November 15-16 2011) and Montreal (November 29-30 2011). The prize consists of a Samsung Focus Windows
Phone 7 (handset only; voice and/or data plan not included) (approximate retail value of $499 CAD). The prize will be delivered to the shipping address designated by the winner within 6-8
weeks. The winner may be required to sign a declaration and release form. For full contest rules, please see a Microsoft Tech·Days representative.
You can email any additional comments directly to
td_can@microsoft.com at any time.