Moving The Web Forward (Chris Wilson WDS 2007 Keynote)

1,240 views

Published on

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
1,240
On SlideShare
0
From Embeds
0
Number of Embeds
34
Actions
Shares
0
Downloads
30
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide
  • Moving The Web Forward (Chris Wilson WDS 2007 Keynote)

    1. 1. <ul><li>CHRIS WILSON </li></ul><ul><li>IE PLATFORM ARCHITECT </li></ul><ul><li>MICROSOFT </li></ul><ul><ul><li>Tags: chriswilson, internetexplorer, movingthewebforward </li></ul></ul>MOVING THE WEB FORWARD
    2. 2. Who Is This Character? An unknown member of Flock of Seagulls? <ul><li>Browser guy since 1993 (NCSA Mosaic for Windows) </li></ul><ul><li>Joined Microsoft in 1995 </li></ul><ul><ul><li>IE 2.0, 3.0, 4.0, 5.0, 5.5, 6.0, 7.0 </li></ul></ul><ul><li>Web standards guy - HTML, CSS, DOM, I18n, XSL </li></ul><ul><li>Now IE “Platform Architect” </li></ul><ul><li>… and HTML WG co-chair </li></ul><ul><li>Winner: 2007 Ajax Experience SF “Best Hair” award </li></ul>
    3. 3. What I’m here to talk about <ul><li>The challenges we face in moving the web forward </li></ul>
    4. 4. What I’m not here to talk about <ul><li>IE.Next features, release date, or name </li></ul>
    5. 5. the vision of the web (ca 1993) <ul><li>Make it Simple </li></ul><ul><ul><li>Simple to create, simple to serve </li></ul></ul><ul><li>Share: everyone can be a content producer </li></ul><ul><ul><li>… but not everyone WAS. </li></ul></ul><ul><li>Driven by the need to interconnect </li></ul><ul><ul><li>Hyperlink referencing, not folder structure </li></ul></ul>
    6. 6. “ Web 2.0” is… <ul><li>“ Caring about the quality of web UI” </li></ul><ul><ul><li>Better user experience </li></ul></ul><ul><li>Rich social experiences to make the web immersive </li></ul><ul><ul><li>Connecting people to people, not just information </li></ul></ul><ul><li>Portable across platforms and devices </li></ul><ul><ul><li>And languages, cultures, etc. </li></ul></ul>
    7. 7. 3 types of people <ul><li>Web developers </li></ul><ul><li>Browser vendors </li></ul><ul><li>Everybody else. </li></ul>
    8. 8. The World as a Web Developer <ul><li>Is painful. </li></ul>
    9. 9. Browser Deployment Data from www.netapplications.com
    10. 10. The World as a Browser Vendor <ul><li>Pure bliss. </li></ul>
    11. 11. hacking is lucrative
    12. 12. Security isn’t just buffer overruns <ul><li>Exploits target complex interactions (between features and applications) </li></ul><ul><li>“ Trustworthy Browsing” means protecting against web fraud too </li></ul>
    13. 13. Don’t Break the Web <ul><li>IE has over half a BILLION users </li></ul><ul><li>Compatibility prevents browser upgrade </li></ul><ul><li>“ The bar” is different for each browser </li></ul><ul><ul><li>Because current sites expect IE 7 to work like IE 6, and Firefox 2.0 to work like Firefox 1.5 </li></ul></ul>
    14. 14. Don’t Break the Web <ul><li>IE6 -> IE7 cycle allowed solidification </li></ul><ul><li>May not know you rely on bad behavior </li></ul><ul><li>We can’t break my mom’s banking site </li></ul><ul><ul><li>She takes away “IE’s broken” </li></ul></ul>
    15. 15. The question is…
    16. 16. Who do we listen to? <ul><li>Users : don’t break anything, Tabs, printing, streamlined experience, search </li></ul><ul><li>Web developers: Fix your bugs! New features! Make it follow the standards, who cares about compat! But don’t break my page. </li></ul><ul><li>Hackers : We Will pØwn You! </li></ul>
    17. 17. Everybody else <ul><li>Banks </li></ul><ul><li>DNS Servers, CAs, other infrastructure </li></ul><ul><li>System admins/IT managers </li></ul><ul><li>Web development tool makers </li></ul><ul><li>Governments and their mandated guidelines </li></ul><ul><li>My mom </li></ul><ul><li>The rest of humanity </li></ul>
    18. 18. Where is our common ground?
    19. 19. Leave the web better than we found it
    20. 20. Define “Better” <ul><li>Secure </li></ul><ul><li>Stable </li></ul><ul><li>Interoperable </li></ul><ul><li>Performant </li></ul><ul><li>Powerful </li></ul>
    21. 21. “ Secure”… <ul><li>… is difficult in a world with complex interactions and trust relationships </li></ul>
    22. 22. Security is everyone’s problem <ul><li>Increased attack vectors with Ajax </li></ul><ul><ul><li>Code sharing requires Trust (or sandbox) </li></ul></ul><ul><ul><li>Proxying or script inclusion requires trust </li></ul></ul><ul><li>Have a security model for your code </li></ul><ul><ul><li>Think about how people would abuse it. </li></ul></ul>
    23. 23. Privacy <ul><li>Aggregation of user information without user consent or knowledge is a problem </li></ul><ul><ul><li>Privacy is not just cookies! </li></ul></ul><ul><li>Syndication and mashups are catalysts </li></ul><ul><ul><li>External code or data puts your customers’ privacy in the hands of a third party </li></ul></ul><ul><li>Apps & Services need privacy models. </li></ul>
    24. 24. Stable
    25. 25. Chris’ Rules of Compatibility <ul><li>If a page works in Browser x version y, it has to still work in Browser x version y+1 </li></ul><ul><li>If a page only uses standards, and it works in one browser, the effort to get it to work in another browser should approach zero. </li></ul><ul><li>Don’t needlessly multiply the test matrix (don’t trickle out standards support) </li></ul>
    26. 26. Browser Compatibility Data from www.netapplications.com
    27. 27. &quot;Quirks&quot; mode <ul><li>“ Standards mode” is increasingly popular </li></ul><ul><ul><li>50% of US top 200 are in “standards mode” </li></ul></ul><ul><ul><li>There’s no clear “contract” – should you hack around browser bugs in standards mode? </li></ul></ul><ul><li>“ Quirks” no longer protects compatibility </li></ul><ul><ul><li>As the web moves to “standards” mode </li></ul></ul><ul><li>IE will need authors to opt in to standards </li></ul>
    28. 28. Interoperable <ul><li>The standards need to reflect reality, and reality needs to reflect the standards. </li></ul><ul><ul><li>Work to be compliant to the standards. </li></ul></ul><ul><ul><li>Stamp out ambiguities in the standards. </li></ul></ul><ul><ul><li>Expand the standards together. </li></ul></ul><ul><li>We need to work together </li></ul><ul><ul><li>That doesn’t just mean sit on the same groups, it means working to common solutions that satisfy all needs </li></ul></ul>
    29. 29. Moving the Web Forward (examples) <ul><li>DOM level 1 – good </li></ul><ul><li>XHTML 2.0 – bad </li></ul><ul><li>WebAPI WG & XMLHTTPRequest – good and bad </li></ul>
    30. 30. Powerful (== new functionality) <ul><li>Interoperable power is the important bit </li></ul><ul><li>That’s why we created… </li></ul>
    31. 31. HTML WG deliverables <ul><li>A language evolved from HTML4 for describing the semantics of documents and applications </li></ul><ul><ul><li>XML *and* “classic HTML” syntaxes </li></ul></ul><ul><ul><li>Document Object Model (DOM) APIs for the language </li></ul></ul><ul><li>New forms and UI widgets such as progress bars, datagrids, menus, and other controls </li></ul><ul><li>APIs for the manipulation of linked media </li></ul><ul><li>Editing APIs, WYSIWYG editing features </li></ul>
    32. 32. Intellectual Property <ul><li>Operates under the W3C Patent Policy . </li></ul><ul><ul><li>Goal: Assure that HTML can be freely implemented </li></ul></ul><ul><ul><li>This is hard work </li></ul></ul><ul><li>Intellectual Property does matter </li></ul><ul><ul><li>(And it’s different for large vendors) </li></ul></ul><ul><li>Open standards need to be free </li></ul><ul><ul><li>So free standards can’t afford to ignore IP </li></ul></ul>
    33. 33. HTML5 Design Principles <ul><li>http://dev.w3.org/html5/html-design-principles/Overview.html </li></ul><ul><li>Compatibility </li></ul><ul><li>Utility </li></ul><ul><li>Interoperability </li></ul>
    34. 34. Compatibility <ul><li>Support Existing Content </li></ul><ul><li>Degrade Gracefully </li></ul><ul><li>Do not Reinvent the Wheel </li></ul><ul><li>Pave the Cowpaths </li></ul><ul><li>Evolution Not Revolution </li></ul>
    35. 35. Utility <ul><li>Solve Real Problems </li></ul><ul><li>Priority of Constituencies </li></ul><ul><li>Media Independence </li></ul><ul><li>Universal Access </li></ul><ul><li>Support World Languages </li></ul><ul><li>Secure By Design </li></ul><ul><li>Separation of Concerns </li></ul>
    36. 36. Interoperability <ul><li>Well-defined Behavior </li></ul><ul><li>Avoid Needless Complexity </li></ul><ul><li>Handle Errors </li></ul>
    37. 37. Challenges <ul><li>“ Openness” is somewhat misleading </li></ul><ul><ul><li>Lots of people talking </li></ul></ul><ul><ul><li>What does “consensus” mean? </li></ul></ul><ul><li>Continuing problems with tone/politeness </li></ul><ul><ul><li>Hard to fairly police 400 people and be inclusive </li></ul></ul><ul><li>Relationship with WHATWG </li></ul><ul><ul><li>People still sometimes confuse the two </li></ul></ul>
    38. 38. What about Microsoft? <ul><li>We are working on IE.Next </li></ul><ul><li>We are committed to standards </li></ul><ul><li>Web 2.0 changes the assumptions for us </li></ul>
    39. 39. IE.Next <ul><li>Huge investment in interoperable layout </li></ul><ul><ul><li>Challenging to not break the web </li></ul></ul><ul><li>Programming model interoperability & perf </li></ul><ul><ul><li>Also challenging to not break the web </li></ul></ul><ul><li>New “Web 2.0” needs –mash-ups, etc. </li></ul><ul><li>Opting in to standards-compliant behavior </li></ul>
    40. 40. Think global, act local <ul><li>Web 2.0 is an evolution, not a revolution </li></ul><ul><ul><li>Don’t Break the Web – browsers must support “old” content </li></ul></ul><ul><ul><li>New standards must be backward- and forward-compatible </li></ul></ul><ul><li>Our goal: leave the web better than we found it </li></ul><ul><ul><li>Help develop standards - http://www.w3.org/html/wg </li></ul></ul>
    41. 41. <ul><li>Me: [email_address] http://blogs.msdn.com/cwilso IE Blog: http://blogs.msdn.com/ie </li></ul><ul><li>Wikipedia Cookie article: http://en.wikipedia.org/wiki/HTTP_cookie </li></ul><ul><li>LOLCATS: www.icanhazcheezburger.com </li></ul><ul><ul><li>Tags: chriswilson, internetexplorer, movingthewebforward </li></ul></ul>

    ×