2. → Browser guy since 1993
(NCSA Mosaic, SPRY Mosaic)
→ Joined Microsoft in 1995
→ Internet Explorer
↑ 2.0, 3.0, 4.0, 5.0, 5.5, 6.0, 7.0
↑ And a stint in Avalon (WPF)
→ Web standards guy
↑ HTML, CSS, DOM, I18n, XSL
→ Now “Platform Architect” of Internet Explorer
↑ (no, I don’t write the code – they won’t let me)
3. actual adoption of rich web
→Little
platform
→Hard to build rich, sexy apps/content
↑Outlook Web Access quot;biggestquot; application
bubble burst
→Dot-com
↑Experiments with quot;Web OS” and other
super-rich web applications ultimately
failed
developers focused on verticals
→Web
→We also needed a new Windows API
5. With all this going on,
Microsoft seemed AWOL from the web…
6. → Simple dev pattern – fetch & update
↑ Realization/innovation on top of Web 1.0
↑ “Caring about the quality of web UI”
→ Rebirth of the semantic Web
↑ RSS
↑ Microformats & tagging add more meaning to
HTML
→ Other Browsers arise!
8. Streamlined and Improved User Interface
→
↑ Tabbed Browsing with Quick Tabs
↑ Extensible search in UI via OpenSearch
↑ Great default print experience
↑ Page Zoom
↑ Spoof-resistant International Domain Name (IDN)
support
Integrated RSS platform
→
↑ Feed Discovery and default feed view
↑ Common Platform: Feedlist, storage, parser, sync
engine
↑ API from Win32 and .NET Framework
9. → Protection against web fraud
↑ Integrated Anti-phishing service
↑ User experience highlights security (EV, address
bar)
→ Putting the User in Control
↑ Add-on Manager (from XPSP2)
↑ We warn user of insecure settings
↑ Explicit user consent is required on first run of
ActiveX
↑ Integration of Parental Controls (Windows Vista
only)
12. The overflow bug
→
Parser bugs: * html, _property or /**/ comment bug
→
Memory leaks in JavaScript engine
→
Select control: style-able and not always on top
→
Auto-sizing of absolute pos element with right & left
→
great for 3 column layouts
↑
Relative positioning issues
→
% height/width for absolutely positioned elements
→
hover effect working not just over text
→
<?xml> prolog no longer causes quirks mode
→
HTML element truly independent of the Body
→
1 px dotted borders no longer render as dashed
→
…over 200 CSS bugs fixed in IE7…
→
12
13. → Fixed inconsistencies with W3C specs
↑ :hover on all elements not just on <a>
↑ Other elements can overlap <select>
↑ Background-attachment: fixed everywhere
↑ Improved <object> fallback
→ Added standards features (CSS/HTML)
↑ Fixed positioning support
↑ Min/Max-Width/Height support
↑ Selectors: first-child, adjacent, attribute, child
↑ CSS 3 attribute selectors: prefix, suffix, substring
13
14. heavily-requested features
→Other
↑Alpha channel in PNG images
↑“Native” XMLHTTPRequest
the Programming Experience
→Improved
↑Improved JavaScript GC performance
↑Fixed some major memory leaks
↑Fixed Caching of gzipped files
14
15. “I’m really concerned that we’re
breaking stuff in the name of
goodness and that all users and
developers will walk away with is
‘stuff broke.’”
15
16. → Compatibility is critical adoption/deployment factor
→ We must balance compliance with site
compatibility
→ In IE7, “quirks mode” stays the same - most
standards changes are only in “strict mode”
→ Unfortunately,standards mode is increasingly
popular, and developers expect behavior to not
change – except when they want it to
16
17. Readiness Toolkit
→IE7
↑Web developer toolbar – IE6+
↑ Rich tool set for exploring DHTML & CSS
↑ExpressionFinder – shows CSS hacks
↑Application Compatibility Toolkit
↑ Identifies features blocking app compatibility
↑ Fiddler HTTP monitor
↑ And other tools
→ Info on the blog
17
18. It’s technically not possible to have EXACT multiple IE
→
versions side-by-side on a single Windows install
↑ There are hacks. They’re fragile, and aren’t complete.
Two months ago (November 30, 2006), we released a
→
free VPC image that contained Windows XP SP2 and
IE6 (Virtual PC is already free) – info on the blog
↑ We expect to release these images on a regular basis
We recently reached a huge milestone – 100,000
→
successful downloads of that 500MB VPC image
20. A professional tool to create standards-based web
•
sites.
“Passionate about Standards”
•
Generate modern CSS layouts using powerful design
•
tools
Create CSS-based, XHTML 1.0 Web sites by default.
•
Validate your site with compatibility & accessibility
•
reporting
Built-in support for today’s Web standards makes it easy
•
to optimize sites for accessibility and cross-browser
compatibility
22. → Client-sideJavaScript framework for creating
powerful reusable components (and a library)
→ Offers
the interactive user interface benefits of
AJAX with programming model familiar to
ASP.NET devs
→ ASP.NET AJAX isn’t just for ASP.NET
development. You can take advantage of the
rich client framework to build client-centric Web
apps with any backend
23. A Better Web Experience More Productive Efficient & Effective
– Stunning vector imaging, text, – Web friendly AJAX + – Small, friction-free client
animation, audio and video XML/XAML install (~1.1 MB)
– Multi-platform support, – Javascript programmability – Sandboxed app model
Windows and Mac OS X (Intel – Tap into MS tools ecosystem – Cost-effective delivery of live
and PPC) for developers and designers and on-demand audio/video
– Multi-browser support (IE, Safari, – alpha quality support from with Emmy® Award winning
Firefox) Expression and Visual Windows Media platform
Studio
24. → WPF/E is similar to WPF
↑ XAML subset, common tools/developer experience
→ But it’s also different
↑ “WPF/E” is cross platform, WPF is Windows only
↑ quot;WPF/E”: differentiated experiences on the web
↑ Size and Features: quot;WPF/Equot; is 1.1 MB (WPF isn’t ϑ)
↑ Security: quot;WPF/Equot; is always sandboxed
Target Scenarios:
→
↑ Media/Interactive Content, Rich Internet Applications
CTP build out now; Release in 1st half of 2007
→
25. Yes, we strongly believe in HTML/CSS/JS platform
→
→ Lots to do in web developer platform – standards,
standards, standards
→ Continue innovating world-class user experience
→ Adding new paradigms as they evolve
→ And as always, security is job #1
Compatibility is crucial for continuity
→
→ Evolution not revolution