Thursday, March 29th, 2007

Microsoft, Canvas, and the WHATWG

Category: Canvas, Conferences, IE, Microsoft

<>p>Microsoft made some interesting statements at their Microsoft Technical Summit event (MTS07) this week. Pete LePage, a Product Manager on the IE team, gathered a small swath of the academic, business, and open-source community constituents in a room, chatted about the future of IE, and asked for feedback. Some interested bits:

  • It turns out Microsoft actually made the right call on WHATWG and <canvas>. Over the past few years, many of us have been asking Chris Wilson and others on the IE team to implement some of the WHATWG stuff like canvas, SVG support, and so forth. Chris in particular would always answer that they were uncomfortable with the IP issues surrounding the WHATWG, such as the patent policy. I had assumed that was simply a way to avoid the issue, but surprise surprise, with Apple asserting a patent on canvas, they come out looking pretty smart on this topic — and it paints a sad picture of the state of the industry. I have no idea about the encumbrance status of any of the other outputs of WHATWG, including the upcoming off-line stuff.
  • The IE team is right now in the process of locking down features for IE.next, so if you have feedback, get it to them now. They read Ajaxian and will read comments on this story in particular if you’d like to suggest something. You can email them directly to start a dialog, if you’d like. (Pete dot LePage at Microsoft is one channel). I asked for much improved dev tools, so that we can for example get some detailed introspection on memory management behavior inside IE.
  • Michael Koziarski, a Rails committer, asked for detailed technical specs on the behavior of IE. Pete said that if there are any aspects of the behavior of IE that we want documented, email him, and he’ll make sure we get the docs we need.

See other places on the blogosphere for detailed coverage of the conversation with Mike.

Posted by Ben Galbraith at 7:00 am
65 Comments

++++-
4 rating from 35 votes

65 Comments »

Comments feed TrackBack URI

“in the event that the Web Applications 1.0 Working Draft, dated March 24, 2005, becomes part of a formalized draft standard at W3C or IETF, for example, Apple is prepared to address the disclosure/licensing rules of such organizations.”

My current understanding of the Apple statement is a result of an unclear patent policy at the WHATWG, not to prevent other browsers from implementing it (which has already happened).

Comment by Jeff Schiller — March 29, 2007

Although there are many features I would love to see (ability to install multiple versions, better CSS/ECMAScript support, etc)… what really comes to mind is adding back the reload button that was removed in IE 7.

I applaud the team for embracing tabs and getting us closer to being able to write CSS and scripts without IE specific hacks, but the new interface of IE 7 was a bad idea. Why would you have the toolbar in a different place than any other Windows application?

Comment by madison — March 29, 2007

I think world wide web devs would be THRILLED if the next IE did NOTHING but be capable of rendering a website as well as Firefox/Opera as far as CSS implementations go, and if we could all access the DOM/attributes/etc in ONE common method with predictable results.

Can’t say IE isn’t the problem here when I can get one script to work the same way across every browser I try on every platform I try EXCEPT IE/Win!

Comment by DigitaLink — March 29, 2007

1 – please add canvas as quickly as you can
2 – please forget your own JScript standards and respect better JavaScript one as Rhino and SpiderMonkey engines done from several years
3 – please do a meeting with Safari, Opera and FireFox developers to think about a JavaScript “byte encoder” that should solve our bandwidth problems and increase your browser runtime JS execution speed (make it reversible, make it as you like, make it as .NET CLI … but please think about a solution like this one to have better, more powerful, Web Applications)

…. ok, maybe point 3 is quite unprobably for IE.next, forget them :D

Comment by Andrea Giammarchi — March 29, 2007

1) Implement HTML DOM and DOM2 Events.

2) Some form of SVG support. I think SVG 1.1 Tiny is a reasonable goal (but it should include using SVG as an image, including as CSS background-image, list bullet, etc) with a stretch goal of SVG DOM support. With VML and WPF, they’re almost there…

3) Continue improving CSS support

Comment by Jeff Schiller — March 29, 2007

Jeff: And that’s exactly MSFT’s point. Some of us have been advocating adding canvas, and their reply was that they really couldn’t given the uncertainty of encumbrance. And, they’ve been vindicated. Sure, at some point a standard may emerge and Apple may donate their asserted IP to the community, but until that happens, all of us advocating canvas (and other WHATWG features) have to shut up — and I don’t expect it to happen soon given the glacial pace of standards bodies.

Comment by Ben Galbraith — March 29, 2007

So does this mean canvas is dead?

Comment by Dougal Matthews — March 29, 2007

I think I would have to agree with Jeff. *Anything* they can do to remove the need for libraries like Dojo to sniff and fork would be welcome (such as DOM2 Events), and supporting SVG 1.1 Tiny–at least getting it to where Opera is now–would be welcome as well. At that point canvas, while not moot, is not as necessary–and there’s no outstanding patents on the SVG spec, so the IP argument is moot.

I don’t agree with Andrea that MS should have to support the JS extensions being added at Mozilla (though it would be great if they added the array extensions); they are just that–extensions.

Lastly, I would *really* like to see them actually *fix* some of the outstanding CSS issues as well. They actually made some of the table rendering rules worse with IE7; in the least I’d like to see them match Firefox in that regard.

Comment by Tom Trenka — March 29, 2007

Possibility to switch box-models without switching between standards-mode and quirks-mode (e.g. CSS3 box-sizing property)

Comment by Sjoerd — March 29, 2007

SVG all the way! We need interoperability, and Mozilla, Safari Leopard and Opera all support SVG.

Comment by Antoine Quint — March 29, 2007

My wishlist: Implement DOM2 events. Implement HTML*.prototype. Support for CSS table display model (all the table related values for the display css declaration). In OL-Lists, hasLayout on an LI takes it out of numbering and it gets a “1.” regardless of position.

Major project: Overhaul the MSDN docs to use standards IE implements instead of promoting proprietary methods. I.e. getElementById() instead of document.all.

Just from the top of my head.

Comment by Martin — March 29, 2007

Dougal: Canvas is actually alive xbrowser now thanks to Google’s ExplorerCanvas project. Since WPF/E is browser JavaScript driven, that also means it could function as a, err, canvas for canvas. So, with compat. libs we may get most of what we want. If we really can use WPF/E for canvas, it may actually outperform Firefox/Safari canvas…

Comment by Ben Galbraith — March 29, 2007

A Javascript debugger on par with Firebug. IE support has dropped to a “nice to have” for me as debugging anything in it is incredibly painful and IE accounts for only 30% of my visitors.

Comment by Peter Harkins — March 29, 2007

JS 1.7
Fix the GC/reference counting bug

Comment by Kris Zyp — March 29, 2007

I agree with Peter Harkins. A first rate debugger would be the biggest benefit. Firebug has finally made developing Ajax apps straighforward. The hard part is tracking down problems on IE. Microsoft has tons of experience building debuggers and development tools, but those available for free for IE are ancient and annoying. The newer Script Editor is far better than the old Script Debugger (I think I got the names right), and if you have Visual Studio, it’s a little better still, but most javascript developers don’t have it and wouldn’t want to buy it just to debug web apps. And in any case, none of them is what is really needed. What we need is something almost exactly like firebug: a free, lightwight plugin that supports javascript debugging, css, dom, net, etc. One thing that would be great that Firebug doesn’t have (I don’t think) is search within JavaScript files, and the ability to look at an tree view of javascript files by function, etc. like you are used to in an IDE.

While there are a number of IE issues and bugs that are aggravating, not having a good debugging tools is THE BIGGEST ISSUE.

Comment by E No — March 29, 2007

Wishlist to the IE team:

* Complete and compliant DOM2 support

* JS 1.7 support, if not 2.0. JS 1.6 and 1.7 don’t add *much* (well 1.7 adds a lot, really) but they make Javascript much nicer to work with

* E4X support please

* Complete and compliant CSS 2.1 support (hasLayout shouldn’t exist), and at least partial CSS3 support (of the stuff Webkit and Opera now support for example). Fixes to the current CSS support are not enough as it’s probably broken beyond (non-brittle) repair.

* I second Peter Harkins’s demand: a dev tools (or dev tools) at least on par with Firebug, or at least the JS debugger if you can’t put the DOM inspector stuff in. And please include the Firebug `console` interface, as well as an output console at least on par with Firefox’

* A Firebug-like profiler too, the ability to profile code is becoming more and more important in this age of complex JS applications.

Comment by Masklinn — March 29, 2007

1. Stand Alone versions that WORK. I can’t stand running virtual machines just to test different IE versions. No more hacks from third parties. You guys hsould have approved standalone versions for developers.

2. Memory leak tools and profilers. Firebug is good for Firefox, but there just aren’t any tools that say, “Here is a hint as to why your browser is using 1.3 gigs of memory.”

3. CSS style-able select and checkbox controls.

4. (This is my biggest complaint about ALL browsers.) If I have a div style=”width: 100px; padding: 10px; It should be 100px wide. not 120px!! Who thought that was a good idea?? It means I can’t say width: 100% and padding: 10px on the same item without causing scrolling. Am I the only one who HATES this? Padding is on the INSIDE, not the outside!

Comment by Glen Lipka — March 29, 2007

Glen Lipka:
4. (This is my biggest complaint about ALL browsers.) Am I the only one who HATES this? Padding is on the INSIDE, not the outside!

Well yeah I happen to find that stupid too (and to find the MS model more sensible, but sadly nonstandard which is much worse than a slightly stupid standard), but that’s the standard we’re stuck with for CSS1 and 2.1.

I seem to remember that CSS3 allows you to choose your box model or something (so in theory if I’m not wrong and all the browsers implemented CSS3, you could choose the box model you prefer from your stylesheet)

Comment by Name — March 29, 2007

+1 for JS debugger…

Comment by Mike Ritchie — March 29, 2007

Does anyone know which patent or patents are related to the WHATWG canvas? The closest things I found were related to fruit picking in 1878 or from IBM.

Comment by Sam Gross — March 29, 2007

Am I imagining this, or is this a Microsoft article on Ajaxian that has higher than a 1.0 rating?

@E No
Visual Web Developer Express: http://msdn.microsoft.com/vstudio/express/vwd/

I don’t think IE debugging is in as poor of a state as people think it is, they just aren’t aware of the tools that are available. Microsoft has a developer toolbar that provides similar features to older versions of Firebug. As for memory leaks, there is a program out there called sIEve that does a pretty good job at tracking them down. Personally I would like to see an updated version of the developer toolbar that provides a similar feature set to the current version of Firebug. Specifically, it would be nice if the developer toolbar implemented Firebug’s JavaScript methods (console.*). Having a better interface on it wouldn’t hurt either.

Comment by Andy Kant — March 29, 2007

Sam: Apple hasn’t claimed a patent; Apple has claimed rights to the IP behind canvas. They have not threatened a lawsuit, they are simply asserting their right to file a lawsuit at some point. This whole flap may simply go away. But the ambiguity is the issue and obviously MSFT can’t implement canvas on a wing and a prayer.

Comment by Ben Galbraith — March 29, 2007

1. Firebug for IE (Every time, on every machine I have ever used, I can not get Script Debugger nor VS Express to work without locking up IE or just working as if it they weren’t installed).

2. No more memory leaks because of JS. Create a damn new process for every page if you have to, at least then the OS will fix things up. But I also want things faster… ;)

3. I vote for JS JIT and the ability to download bytecode too.

4. Get rid of bugs, I mean features, like the one that reloads images. Its why projects like TinyMCE don’t use sprites for IE since IE constantly reloads them. So it gets 80 image files where firefox gets one.

5. height=100% for something inside a TD –> does not work!!!! I had logged this as a bug for IE7 before it was released, so there is sample in there somewhere inside MS…

That last one drives me nuts

Comment by Steven — March 29, 2007

1) The most important feature is SPEED. As the browser is expected to do more and more in an attempt to bring fat client features to the browser, we need JavaScript to be FAST. (DOM interaction, RegEx, …)
2) Memory leaks must be fixed.
3) Standard event model
4) Fix issues with dynamic creation of input type=”radio” or type=”checkbox” document.createElement(“”) should not be required to create a dynamic radio.

Comment by Mike — March 29, 2007

data: URI scheme support specially for base64 encrypted images. It is RFC2397 by the way. Chop chop :)

Comment by Bob — March 29, 2007

> I don’t think IE debugging is in as poor of a state as people think it is, they just aren’t aware of the tools that are available.

The people that are aware of the available tools still find them mighty poor. I’ve got both Visual Studio and the Microsoft Script Debugger on my machine, and even if we forget their limitations (they’re unable to debug stuff in the top scope) and the horrible state of consoles/tracing in MSIE, the MS JS debuggers don’t come even remotely close to Firebug.

They were fine when the only Firefox debugger was Venkman (because although more powerful Venkman was almost unusable), they were already lacking when pitted against Firebug 0.4, but they could just as well not exist when the other side has Firebug 1.0. Or, and Webkit also comes with a JS debugger (Drosera) that is much better than both Visual Studio and the MS Script Debugger for JS debugging.

> Microsoft has a developer toolbar that provides similar features to older versions of Firebug.

The older version indeed, and it’s both slow and unstable.

> As for memory leaks, there is a program out there called sIEve that does a pretty good job at tracking them down.

The point is that the memory leaks come from the design of the Tamarin JS engine, that shouldn’t happen, we shouldn’t need a leak detector to patch bugs of the engine.

Comment by Masklinn — March 29, 2007

Finish support for CSS2.1 !! — in particular impliment the TABLE family of rules. Impliment CSS3 Media Queries Module and CSS3 Backgrounds and Borders Module – particulaly border-radius and border-image.

Comment by ChrisB — March 29, 2007

We’re seeing a number of issues with handling of ‘#’ anchors in the back/forward history in IE7.

The simplest example is:
1. open IE on your homepage.
2. Navigate to the url: http://www.microsoft.com/sql/technologies/jdbc/default.mspx#EKB
3. Click on “top of page” link.
4. Click on the drop down beside the back/forward buttons.
5. Choose your homepage.
6. Click on forward.

Home page is displayed. However the address bar displays http://www.microsoft.com/sql/technologies/jdbc/default.mspx#EKB.

Further forward/back navigation appears to be confused / incorrect.

Other examples include use of alt-left in the keyboard to go back doesn’t enable the forward button on the toolbar.

Our primary problem in our application is that the javascript’s window.location starts returning incorrect results after users have used the history feature. We can post examples if this would be of value.

Comment by Brendan — March 29, 2007

another vote for js debugger
and dom2, css2.1 support
oh and svg would be real nice too.

and a stylesheet editor that works. ie webdeveloper css editor

Comment by Tobz — March 29, 2007

Just so as be fair, here are a few things for the Firefox camp:

1. Why on Earth can I crash firefox with JS code so easily when nothing has focus??? I can do it every time. It drives me nuts. IF I hadn’t tested on Firefox I might have had 500,000 people having their browsers crash. And its been around for a long long time. Sheesh…

2. Download two JS at a time. You can run them serially, but you can at least download them simultaneously. Same with CSS files. Yeah, I was told that you can load two CSS files at the same time if you use JS code to insert it into the DOM tree, but really, that’s the solution?

3. Protected mode for FF would be nice in Vista. OK, not a developer thing, but with animated cursors causing drive by installs, makes me use IE for browsing and FF for developing.

I’ll stop now since FF is pretty nice. And has Firebug. :)

Comment by Steven — March 29, 2007

IE.next Request:
1. It would be tremendous if a browser (ie. IE) actually supported all of the CSS spec at least up to level 2.1. That would mean surpassing the ACID II test and making all of the selectors function correctly, and rendering all style rules correctly. CSS is relatively simple in my humble opinion, and following the spec to the letter would certainly give IE an upper hand over FF et al.
2. No Doubt the IE team has seen Firebug. And the IE Developer Toolbar combined with Fiddler get some of the job done, but the way Firebug organizes its featureset and has arbitrary code support (IE may have this functionality, although I don’t know the tool) with breakpoints, watches, etc. makes the tool very efficient and a pleasure to use. If the IE team could make a tool that matches or surpasses Firebug’s functionality and usability, that would be another great win. If you make me pay for it, though, you’ve already lost the battle.
Hope this helps!

Comment by Bernie — March 29, 2007

yeah, to be fair – opera only runs on the few OS/platform combo’s they decide to bless with a compile, and firefox is slow as hell on linux – i had to switch back to windows since i do most my work in firefox and there was no way to get it working well on linux, at least not without replacing a notebook with one that has proper video drivers then tweak the minefield source to actually compile with glitz enabled and make glitz work with render, then hope it was the render speed that was the problem (but reallyt, the 25 second launch time is annoying too).

honestly ie7 isnt bad. but then i dont obsess on css issues of the lack of

Comment by carmen — March 30, 2007

1. Pass the Acid2 test, if you manage to fix IE to do it, you’ll have fixed a lot of CSS problems that bother us (web developers).
2. Implement some of the CSS3 stuff that Mozilla+Safari already implement (round borders and shadows, for example).
3. A JS console. I don’t need a full web developement environment (I already have that with FireBug), usually I only need to discover what IE bug is preventing a webpage from working correctly. With MS Developer Toolbar for IE, as long as you remember to avoid pressing the icons that crash IE and the fact that some CSS properties have non-standar names, I can fix the CSS. But there’s no easy way to test javascript expressions.
4. Either SVG or Canvas.

Comment by Salva — March 30, 2007

I posted a list of IE 7-specific issues here:
http://weblog.openlaszlo.org/archives/2007/03/how-we-deal-with-browser-quirks-with-a-compendium-of-ie-7-issues/

Also, I talk about how we deal with browser quirks in general, which may be of interest to folks. It’s a fairly clean solution that I haven’t seen used elsewhere, and I’d like to see the meme propogate.

Regards,
Max Carlson
OpenLaszlo.org

Comment by Max Carlson — March 30, 2007

Speaking as a web designer, a little part of me dies whenever I see these Microsoft requests for “features to add to IE”.

I mean, is there really anything at the top of the list besides “make it not suck”? IE 7 has done nothing more than make my life even more of a headache, fixing some well-known IE6 bugs but introducing tons of really weird ones with test cases too complicated to ever foresee — like completely random gaps it kept inserting in the menu UL element on one project.

Please don’t add features, Microsoft (except Canvas maybe). Fix the fracking browser first.

Comment by Paul D — March 30, 2007

Firebug. Firebug. Firebug.

Developers and designers and webmonkeys need a tool that lives in the browser and:
1) provides a rich js console
2) allows discovery and live tweaking of dom and styles
3) reports all http requests and responses
4) provides a js debugger with watches and breakpoints

Don’t try to build your own, either. Just port it. Pay Joe Hewitt a bundle of money and rip off his interface. Seriously.

Comment by Chris Snyder — March 30, 2007

I know the point of this post is for feature requests. If the IE team are listening though, I feel it should be be noted that IE7 is a fantastic browser and a massive improvement on IE6.

Most of my wish list has already mentioned. I would like to see getter and setter support and Element prototyping.

Opera’s CSS support is second to none and the web doesn’t look half bad on it. Microsoft seems to feel the burden of a million poorly designed sites, and uses those sites as an excuse to improve CSS support (my impression). I think we’re already to take the plunge and deal with a few (million) mis-firing web sites. I’d really like to see IE8 pass the ACID2.

Comment by Richard Kimber — March 30, 2007

Implement Firebug not your own annoying debuger. Give me canvas and SVG. VML is nice but no attempt to open the spec was ever made, so kill it. ATOM 2 compliance. CSS3 Compliance.

Comment by Vance Dubberly — March 30, 2007

I agree that something like Firebug is the most urgent need. Visibility into IE’s view of a page is more valuable than any particular fix in my opinion. There will always be quirks and bugs, but developers can work around shortcomings if they know what’s going on inside the browser’s head.

Comment by KevinJ — March 30, 2007

Like most people here, the prospect of a proper debugger like Firebug is at the top of my list. But almost on par with that is the ability to edit CSS live on the page. This is available in Firebug and the Web Developer extension. It’s how I taught myself CSS, and how I fix bugs. Live editing saves me hundreds of edit-save-upload-reload-check cycles per week.

Those two things make dealing with browser differences tolerable.

That, and the ability for force everyone using IE6 to upgrade :-)

Comment by John Sawers — March 30, 2007

Built in find like in Firefox and built in viewsource (also with the find). IE shouldn’t have to spawn another process at a different privilege level (in Vista) just to view source.

Comment by Steven — March 30, 2007

I posted above about the need for a better debugger/dom/css tool like Firebug. Somebody responded by pointing out where to get Visual Studio Express edition, which is free to download. I appreciate the link, and in fact did not know about that version. But I have Visual Studio already, so that is not a help. The fact is that any/all of the IE debugging tools are weak. Visual Studio is a sophisticated and advanced IDE (maybe the most advanced on the market), but when it comes to debugging JavaScript, it’s like stepping back in time. Unstable, awkward, does not support the kinds of things you really need like seeing load times, console, etc. We need something lighter weight, plugged into the browser, very stable, and specifically designed for this purpose.

Also, every IE debugger I’ve used (and I believe I’ve used them all) tends to crash — and bring IE down with it — under certain circumstances. Usually this happens when you execute the line of code that had the null pointer, or whatever was causing the problem in the first place. I’ve done the IE team the favor of using the automated bug reporter thingy every time it happens, so wherever those messages go, they might be worth looking into.

If the IE team is reading this, I’d first say congratulations on IE7; it is a HUGE improvement. Then I’d say that your top priority is building dev/debug tools that surpass Firebug.

Comment by E No — March 30, 2007

my recommendations for the next version of IE:
1. support XHTML fully and properly
2. support SVG fully
3. support canvas
4. standardize the way you obtain mouse coordinates (clientX, etc.) with the way all of {firefox,safari,opera} do it, so that one piece of code will work in all 4 browsers.
5. undo the change in the toolbars. IE6 was nice in that the user interface used the same user interface ideas as the other windows applications, and the layout of the toolbar was entirely configurable. now, the user cannot put stop/refresh next to back/forward, and can’t put the menu bar above the address bar!
6. your widgets should integrate well into the OS. IE7′s tabs do not integrate well. they really should be looking like the ones in control panel applets. the back/forward buttons also should look like toolbar buttons and should be moveable (see above).
7. stop prompting the user for ‘do you want to run this activex control?’ for flash and VML. the former can be circumvented, and will, and is just an added inconvenience; the latter will never be used by developers if you require prompts.

Comment by dheera — March 30, 2007

err, by #7, i meant, in the flash case, you have this stupid border that says “Click here to run this ActiveX control” and for the VML case it brings up a beige bar at the top. both shouldn’t exist for specifically these cases.

Comment by dheera — March 30, 2007

Wow, thanks for all the great feedback everyone. I can’t reply to each piece individually, but I want to say one major thing. We’ve heard you, and we’re still listening. We’re looking into almost everything that you’ve all submitted. You’ll likely see some with IE.Next, some as out of band releases, and some you may not see.

Feel free to follow up here, or send email to me via my blog or the address in the post!

Comment by Pete LePage — March 30, 2007

Please fix innerHTML for SELECT, TABLE et al.

Mixing up name and id spaces into one, even for getElementById() is ugly.

createElement(“html string”) is you want to set the name attribute? Come on…

Checkboxes losing their state when moved in the DOM (thing drag & drop)

element.style.cssFloat, not styleFloat

CSS opacity support!

Fix the z-index stacking context.

Comment by Martin — March 30, 2007

FIX NOW

1. PNGs with any transparency (1 bit or alpha-channel without ‘filter’) prints as 2 bit image. Makes it tough to build a reporting package using PNGs if it prints nasty… “with the much improved printing”. (IE6 prints fine).

2. Mixing zIndex and “position: relative” and “position: absolute”. ouch.

IE.Next

1. Text zoom and/or reflow on current zoom. The purpose of zoom is to make the page more legible. Blowing the content out of the client window makes the page less legible. This wasn’t made under the guise of accessibility, as cursor zoom software is ubiquitous and works way better (also works in all software).

2. css INHERIT everywhere. css TRANSPARENT everywhere.

3. Firebug. Placing a breakpoint on js within script tag of dynamic html page = priceless. It’s like pulling teeth to get my web developers to fix anything unless it’s through firebug now.

4. SVG tiny would be nice.

Comment by cooperpx — March 31, 2007

err, by #7, i meant, in the flash case, you have this stupid border that says “Click here to run this ActiveX control”

http://en.wikipedia.org/wiki/Eolas

Comment by Matthew Ratzloff — March 31, 2007

Personally, I’m not looking forward to yet another learning curve to find workarounds for a new set of problems. If you decide to improve standards support, don’t be lazy and improve on everything related too.
(refering to “!important” support in IE7, while still not fully supporting our beloved CSS standards, forcing us (or maybe just me?) to rely on hacks or expression-based rules to get things working)

My wishlist:
- follow JS/DOM/CSS/(X)HTML standards (if you really wish to invent your take on things, make them compatible with standards, e.g. mouse position, this shouldn’t be hard at all)
- give us proper debugging! (JS console, realtime CSS editing, DOM inspecting, watchpoints, page activity (all files downloaded, all requests and their headers/data))
- use your almighty marketing machine to make people upgrade faster (eveything you release, will be _our_ problem for at least 5 years!)

Comment by Rogier — March 31, 2007

Kindly improve error reporting in JavaScript. Currently Firefox does a much better job of this. In IE, it is extremely hard to figure out what went wrong.

Comment by Adarsh Bhat — March 31, 2007

1) I agree a full scale debugger would be nice, but at least provide correct line numbers/files and something more useful than “object error”

2) CSS2 compliance (including fixes to all of the old bugs that were supposedly fixed with 7…. peek-a-boo bug… still there). CSS3 things such as rounded corners would be great.

3) DOM2 compliance. Standard event model.

4) Treat html (or at least xhtml docs) as XML. Xpath on (X)HTML, ability to paste nodes across XML/XHTML, Xpath 2.0.

5) Table Layout properties

6) Native opacity instead of through filters. Any filter/Active-X/IE only that has a W3C standard that is the same thing should be ported to the standards.

7) Fix the bugs with DOM manipulation (such as pasting nodes) that cause the JS engine to follow an exponential processing time instead of a linear one (e.g. pasting 1000 table rows).

8) Native SVG/VML support. Canvas if you want, but I understand the IP concerns. Things that are open standards for years should be supported.

9) Ability to extend Element and other DOM objects.

10) Fix caching. IE6 required a minimum of 1mb cache and even with all things set to flush it, still requires holding shift for every refresh to be certain. IE7 has a minimum of 8mb cache (WHY?) and the same old issues.

To be honest, IE is the main factor that is holding back the internet these days. Lack of things like SVG/VML/decent Xpath and XSLT support/poor DOM support etc while still maintaining a dominant market share means that IE is by far the lowest common denominator. Due to poor support for most anything that would truly unleash the power and potential that everyone sees coming in the internet, IE is basically an anvil in the deep end.

Comment by Bart — April 2, 2007

A few other things.

1) Support for user defined events (“onFoo”)
2) Support for DOMContentLoaded event (if you refuse to play nice with the rest of the world, at least come up with something equivalent). This is extremely important. As web pages rely more and more on JS and pull content that is aggregated from many sources, the body.onload is going to become more and more useless.

Comment by Bart — April 2, 2007

Ok, I cannot exactly say what the ‘bug’ is (is it even a bug?) so I will describe it. I have an element that I want to scroll if and when the content is too wide. But then I get two scrollbars, because the horizontal one (should be the only one) triggers the vertical one. I think it has to do with how/where IE places the bars (inside or outside, I can’t put my finger on it). I know that Firefox and Opera behave the way I expect.

Sorry if it’s confusing, but I hope you will try it out and consider re-evaluating the placement of scrollbars.

Comment by Mike — April 2, 2007

a firebug equivalent plugin to VS would be good, for debugging and other developer centric problems.

Comment by Ritesh — April 16, 2007

Has anyone had a problem between VWD Express and IE? I cannot get my graphics to show when view in browser. I have put them on a image button, in an image box and used them as background and IE will not show them. Help!

Comment by sandra — May 9, 2007

I applaud the team for embracing tabs and getting us closer to being able to write CSS and scripts without IE specific hacks, but the new interface of IE 7 was a bad idea. Why would you have the toolbar in a different place than any other Windows application?

Also, every IE debugger I’ve used (and I believe I’ve used them all) tends to crash — and bring IE down with it — under certain circumstances. Usually this happens when you execute the line of code that had the null pointer, or whatever was causing the problem in the first place. I’ve done the IE team the favor of using the automated bug reporter thingy every time it happens, so wherever those messages go, they might be worth looking into.

Feel free to follow up here, or send email to me via my blog or the address in the post!

Comment by newkon — June 27, 2007

For me, there is just one thing! It’s all about speed! A browser is expected to do more and more in an attempt to bring fat client features to the browser. Java Syript hast to be fast

Comment by Matthias — July 4, 2007

a firebug equivalent plugin to VS would be good, for debugging and other developer centric problems.
I think so…

Comment by Kredi — September 18, 2007

Kindly improve error reporting in JavaScript. Currently Firefox does a much better job of this. In IE, it is extremely hard to figure out what went wrong.

Comment by bedava ödev idnir — September 19, 2007

realy very nice article, this informations are great, thanks, very thanks

Comment by dobreprogramy — October 5, 2007

Microsoft needs more work done on improving the next IE compatibility. Get molly to do the job, i think she is the best candidate.

Comment by Meteko — October 21, 2007

Provide more support for CSS and SVG. Implement Dom2 event.

Comment by bahamut — October 25, 2007

thanks good post.

Comment by klip izle — November 11, 2007

SVG all the way! We need interoperability, and Mozilla, Safari Leopard and Opera all support SVG…

Comment by übersetzungen dortmund — November 22, 2007

never throught about that before, great post!

Comment by dll — March 27, 2008

Leave a comment

You must be logged in to post a comment.