Beta
×

Welcome to the Slashdot Beta site -- learn more here. Use the link in the footer or click here to return to the Classic version of Slashdot.

Thank you!

Before you choose to head back to the Classic look of the site, we'd appreciate it if you share your thoughts on the Beta; your feedback is what drives our ongoing development.

Beta is different and we value you taking the time to try it out. Please take a look at the changes we've made in Beta and  learn more about it. Thanks for reading, and for making the site better!

How To Get Around the Holes In IE9 Beta's Implementation of Canvas

timothy posted more than 3 years ago | from the canvas-the-neighborhood dept.

Microsoft 111

mudimba writes "Microsoft has made grand announcements about how great their implementation of the HTML5 canvas specification is. However, while I was porting a large HTML5 application to work with IE9 beta I found that there are some key features missing. Workarounds are provided where possible. (Disclaimer: I am the author of the submitted article.)"

cancel ×

111 comments

Sorry! There are no comments related to the filter you selected.

Not sure why this is here (1)

Anonymous Coward | more than 3 years ago | (#34876262)

Doesn't everyone on slashdot use a *nix system?

Re:Not sure why this is here (1, Insightful)

Vectormatic (1759674) | more than 3 years ago | (#34876308)

or at the very least, install a half-decent browser on any system running windows (such as when the boss forces you to)

Re:Not sure why this is here (0)

Anonymous Coward | more than 3 years ago | (#34876494)

Doesn't everyone on slashdot use a *nix system?

Only the smart ones. The rest are Microsofties and Apple fanbois.

Re:Not sure why this is here (4, Informative)

Bert64 (520050) | more than 3 years ago | (#34876536)

Do Apple systems not qualify as *nix anymore?

Re:Not sure why this is here (1)

suso (153703) | more than 3 years ago | (#34876590)

According to http://www.day15000.com/ [day15000.com] they do.

Re:Not sure why this is here (1)

yuhong (1378501) | more than 3 years ago | (#34882436)

Yea, Windows vs Unix or Mac OS X is a better comparison than "PC" vs "Mac", which really is a misnomer nowadays.

Re:Not sure why this is here (1)

Stooshie (993666) | more than 3 years ago | (#34877206)

Hey, I use OS/2 you insensitive clod!

Re:Not sure why this is here (1)

thetoadwarrior (1268702) | more than 3 years ago | (#34880994)

OS X is *nix and comes with many of the tools and apps I get on Ubuntu.

Re:Not sure why this is here (1)

Doggabone (1025394) | more than 3 years ago | (#34889074)

Doesn't everyone on slashdot use a *nix system?

This is about porting a web application to the Internet Explorer 9 beta, not about using a browser on one's own system. The audience for the application is everyone, Windows and OS X users, via any browser that might be able to render it. Excluding the Windows/IE audience is rarely, if ever, a prudent position for a web application.

Re:Not sure why this is here (1)

omfgnosis (963606) | more than 3 years ago | (#34890550)

What a strange question. While it's conceivable that people out there are developing bespoke graphics web applications for themselves, by and large web developers are developing for a larger audience. What kind of system the developer uses is irrelevant, when the developer can trust that the broader audience's system profiles are fragmented. And since Microsoft is championing the "same code" mantra (which is hardly an achievement to shout to the heavens, as all the other browser vendors have had this motto since Mozilla started releasing betas), one should be able to expect the platform not to matter at all.

Gotta say it (1, Funny)

suso (153703) | more than 3 years ago | (#34876270)

Its 2011 and (big surprise) there are still problems with IE's implementation of HTML. This has been going on since IE3 (and probably before). I think we can safely say at this point that the problem is the company and will probably never change. As they say, the day Microsoft makes a product that doesn't suck is the day they make a vacuum cleaner.

Re:Gotta say it (-1)

Anonymous Coward | more than 3 years ago | (#34876434)

Surely though this is reflected in their ACID3 score? Oh, sorry I forget ACID tests are useless.

Re:Gotta say it (3, Interesting)

bunratty (545641) | more than 3 years ago | (#34876518)

Acid tests are not useless, but they are certainly not the best measure for how standards compliant a browser is. The company who makes the browser can choose to implement the features on the Acid test and not the features that are not tested by the test.

In this case, IE9 gets 95/100 on Acid3. But Acid3 tests only standards what were written in 2004 and doesn't cover HTML5. So although IE9 gets a good score on Acid3, it says nothing about how well IE9 implements HTML5, which Acid3 doesn't test.

Acid tests are not useless, but you have to understand what they're testing before you can interpret the results of a test. If you see a high score on an Acid test and conclude the browser has good support for standards all around, you're misinterpreting the results.

Re:Gotta say it (1)

ifrag (984323) | more than 3 years ago | (#34877176)

I suppose in some vague way that it's better than the terrible 20/100 from IE8 with assorted visual artifacts. All I see here is IE9 has still managed to be non-compliant with even the prior standard, so a fail score is still meaningful.

Re:Gotta say it (3, Informative)

bunratty (545641) | more than 3 years ago | (#34877400)

All browsers are non-compliant, in the sense that no browser supports all published web standards 100% accurately. The fail score in IE9 certainly is meaningful -- IE9 does not support SVG fonts or SMIL animation. Again, if you know what the Acid test is testing, you can interpret the results of the test accurately. IE9 scoring 95/100 is great news for web developers -- they can use the JavaScript and DOM features that will become more important as browsers support complicated user interfaces in HTML. Or, that is, they can when IE9 becomes popular. The next step is for browsers to support HTML5 well.

Re:Gotta say it (1)

DrXym (126579) | more than 3 years ago | (#34876530)

There are problems with every browser's implementation of HTML5. Test your browser here [html5test.com] and see. For all the buzzword bullshit about HTML5 from every browser maker, it's clear that pretty much all of them come up short. And that page is just looking at the top level functions, I bet there are bugs and quirks galore once you drill deeper.

Re:Gotta say it (0)

MemoryDragon (544441) | more than 3 years ago | (#34876576)

And yet IE comes shortest, there is litterally only one feature they did right and that is the hardware accelerated CSS transitions and transformations and even there it is questionable which transitions work and which not. Everything else is either only halfway implemented or missing entirely.
IE9 is html 4.5 at best :-)

Re:Gotta say it (1)

MemoryDragon (544441) | more than 3 years ago | (#34876588)

Id say the wisest move would be from Microsofts side to ditch IE entirely and participate in the Webkit project like everyone else, then we finally also would have a unification in engines to big degrees!
But hell freezes over before that happens I guess.

Re:Gotta say it (2)

TaoPhoenix (980487) | more than 3 years ago | (#34876722)

They can't let go of their Incompatibility Paradigm that gave them lock-in for 7 years.

Re:Gotta say it (1)

omfgnosis (963606) | more than 3 years ago | (#34891026)

This was the argument that I was making after IE 8's release, and I think the IE team has proven us wrong. I was convinced that Trident was irreparably compromised by backwards compatibility, but in IE 9 they have made great strides in interoperability with the rest of the browser vendors. It's probable that IE 9 won't get them all the way there (although they've continually surprised with adding substantial improvements with each pre-release, including the introduction of canvas when it seemed they were going to skip it), but they clearly have a platform that is flexible enough to catch up... given enough time. Bear in mind that they're almost a decade behind (as of IE 8). They have tremendous resources and great programmers, but neither is enough to overcome a decade of latency in one release.

Trident is going to catch up.

Re:Gotta say it (1)

DaVince21 (1342819) | more than 3 years ago | (#34890690)

*All* browsers at this point is HTML 4.5 at best. None of them can fully implement HTML5 because the HTML5 spec isn't even finished.

So IE9 is closer to HTML 4.2 then, I'd say. Or something.

Re:Gotta say it (2)

bunratty (545641) | more than 3 years ago | (#34876598)

IE always seems to have more problems than other browsers. We've seen it recently with IE7's and IE8's low scores on Acid3, which Microsoft is finally fixing in IE9. Right now, the most current stable release of nearly every browser scores 90/100 or above on Acid3, but IE8 still scores 20/100, lagging far behind everyone else. Similarly, IE9 is lagging behind on HTML5 features compared to other browsers. So, yes, every browser has problems with HTML5, but we can expect IE to have more problems than other browsers do for years to come.

Re:Gotta say it (1)

denis-The-menace (471988) | more than 3 years ago | (#34877378)

FF 3.6.8 gets 139 + 4 bonus points out of possible 300

IE 7.0.5730 gets 12

NOTE: the http://html5test.com/ [html5test.com] site does not keep score for any browsers.

Re:Gotta say it (4, Insightful)

MemoryDragon (544441) | more than 3 years ago | (#34876546)

Yes I find it quite amusing how Microsoft plays the we are html5 ready game currently marketingwise while they literally are three years behind the competition in many areas of html5. IE9 will be html5s IE6 all over again, as it seems to me.

Re:Gotta say it (0)

denis-The-menace (471988) | more than 3 years ago | (#34877274)

Where are my mod points when I need them. (Sign)

Re:Gotta say it (0)

suso (153703) | more than 3 years ago | (#34877632)

You probably lose them on making comments like "Where are my mod points when I need them".

Re:Gotta say it (0)

Anonymous Coward | more than 3 years ago | (#34880090)

The correct word is "sigh," not "sign."

Re:Gotta say it (1)

raphael75 (1544521) | more than 3 years ago | (#34880404)

Easy solution: stop bothering to make sites ie-compatible. Just forget about it. Then when users say they can't view a site, tell them they have to get a real browser. If web programmers just stop catering to ie users what are they gonna do? Fuck ie.

Re:Gotta say it (3, Informative)

I8TheWorm (645702) | more than 3 years ago | (#34878186)

You get that it's beta, right?

Re:Gotta say it (1)

Shikaku (1129753) | more than 3 years ago | (#34879722)

They aren't going to add anything anymore. It may as well be RC.

Re:Gotta say it (1)

I8TheWorm (645702) | more than 3 years ago | (#34879994)

?? Beta 9 and beta 10 haven't been released yet. I"m not sure where you get your facts (speculation?) from.

Re:Gotta say it (1)

Shikaku (1129753) | more than 3 years ago | (#34880216)

It's speculation. I guess I should have added that.

Re:Gotta say it (1)

I8TheWorm (645702) | more than 3 years ago | (#34880308)

Fair enough.

Mind you, I'm not really a supporter of IE9, and rarely use IE at all. I'm glad MS is getting more current with web standards though, although it never seems to be enough.

Re:Gotta say it (1)

cbhacking (979169) | more than 3 years ago | (#34886794)

Dude, that may be the usual meaning of beta, but unless you have a hell of a lot closer sources than I do (possible but unlikely) that's an unjustified assertion. It's only two months since the last public Platform Preview build (the beta build is 4 months old, PP builds are usually on a roughly 8 week scedule so another could come out any day). Each PP build has added features. They've continued adding features and fixing incompatibilities well past the beta release. They *probably* won't do that into RC, but what evidence do you have that RC is any time soon?

Re:Gotta say it (0)

Anonymous Coward | more than 3 years ago | (#34878732)

"the day microsoft makes a product that doesn't suck is the day they make a vacuum cleaner"

welp you just made my day lol

No feature missing here (0)

hcs_$reboot (1536101) | more than 3 years ago | (#34876332)

The only missing thing is IEx on any of the computers at home.

NO! (0)

Anonymous Coward | more than 3 years ago | (#34876386)

If you start writing workarounds instead of submitting these to Microsoft and wait for a fix, the way the web is written will never change!

Whaasat (0)

Anonymous Coward | more than 3 years ago | (#34876388)

DeviantArt is hosting dev blogs now? What how why?

Beta browser, draft spec... (5, Insightful)

BlueScreenO'Life (1813666) | more than 3 years ago | (#34876416)

So, a browser in beta phase does not conform to a specification in draft stage!
Who would have thought!

Re:Beta browser, draft spec... (1)

MemoryDragon (544441) | more than 3 years ago | (#34876556)

Well if all other browsers in beta and final are draft spec compliant and the so called beta browser is literally the last to the game it better ought to be better than the rest of the world or it will drown and be ignored.

Re:Beta browser, draft spec... (2)

BlueScreenO'Life (1813666) | more than 3 years ago | (#34876976)

Not arguing that. I avoid IE whenever possible but I just find it funny how we don't miss a chance to take a dig at MS.
Amusingly enough, the link to the specification points to a page with a big warning reading "This version of the specification has been superceded!". How wise is it to spend time making a browser to implement a spec that changes so often? And complex apps that rely on it, for that matter?

Re:Beta browser, draft spec... (-1)

mcgrew (92797) | more than 3 years ago | (#34877010)

This isn't a slam on MS, it's a how-to for workarounds by an MS fan.

Why are you MS fans (and apple fan and all the fans of other corporations) always so defensive so as to see an insult where no insult was made?

Re:Beta browser, draft spec... (0)

Anonymous Coward | more than 3 years ago | (#34877100)

If you've read the summary and can't see the negative spin in it ("Microsoft made GRAND ANNOUNCEMENTS about their HTML5 compatibility but there are holes!") then you are delusional.

Re:Beta browser, draft spec... (1)

kikito (971480) | more than 3 years ago | (#34880394)

"Who would have thought!"

Someone aware of Microsoft's previous track on browsers.

Or someone who has just spent the last 2 days trying to dumb down their markup just so the dumbest browser of all time was able to render it correctly. Or someone who has just purchased a domain name (www.i8ie.com) just to express his mental state after that endeavor.

Disclaimer? (0)

Anonymous Coward | more than 3 years ago | (#34876420)

Isn't that more like... claimer?

HTML5 (2)

captain_dope_pants (842414) | more than 3 years ago | (#34876460)

Just the other day someone asked if I'd done any work with HTML5 and I said I was going to wait for a good while until it worked everywhere. They assured me it did, now I find the opposite.

Glad I didn't bother starting now - procrastination has saved me yet again :)

Re:HTML5 (2)

bunratty (545641) | more than 3 years ago | (#34876562)

It's not black or white. CSS doesn't work everywhere, in the sense that if you write CSS the way web design books explain, much CSS won't work in IE6 and IE7. If you wait until all HTML5 features work on all browsers, you'll be waiting a very, very long time.

Re:HTML5 (1)

TaoPhoenix (980487) | more than 3 years ago | (#34876754)

But if you decide that "4 out of 6 Ain't Bad", and skip IE and your choice of one of the others, there might be as much as 5 years of dev time saved in the sense of practice and store code now, rather than waiting on a magical green light day.

Re:HTML5 (2)

bunratty (545641) | more than 3 years ago | (#34877260)

Or you can stick to features that work in all browsers. Just because all browsers don't support all of HTML5 doesn't mean you should avoid HTML5 completely. It's simply not black or white.

Re:HTML5 (1)

tepples (727027) | more than 3 years ago | (#34880368)

skip IE

And skip nearly half of your customers.

Re:HTML5 (1)

JasterBobaMereel (1102861) | more than 3 years ago | (#34876626)

It works everywhere they have a released browser that supports it ...

IE9 is still beta - When released it will support the bits of HTML5 that MS can be bothered to implement, and for everything else they will say, "It doesn't do that use Silverlight"

Re:HTML5 (1)

markdavis (642305) | more than 3 years ago | (#34877766)

And IE9 won't be made to work on XP, shutting out a large segment of users. Meanwhile, the latest Firefox (and other browsers) will run on Linux, MacOS, Vista, 7, *and* XP.

Firefox/Mozilla: Free, Open Source, standards based, actively developed, multiplatform, supports older versions of OS's, and huge market penetration. If I were developing ANY type of web application, I would absolutely use Firefox as the main target.

Re:HTML5 (0)

Anonymous Coward | more than 3 years ago | (#34878100)

and huge market penetration.

We all long for the day this is true, but it is not. You can't blame web developers for targeting the browsers that people actually have.

Re:HTML5 (1)

markdavis (642305) | more than 3 years ago | (#34881976)

In the US, Firefox is on about one out of every three computers. That is a *huge* share of the market. If you had a dollar for every computer Firefox is running on, you would be very, very rich.

In the EU, Firefox is closer to 50% market share overall; 60% in Germany.

Re:HTML5 (0)

Anonymous Coward | more than 3 years ago | (#34876668)

HTML5 is threat for MS. Like open document format. That why MS forced closed OOXML as open and will never use it as open.

MS is sitting in HTML5 development group. To make sure it does not advance.
MS is not implementing HTML5 in it's browser for the same reason.

This should be clear for everyone. Any open standard is a threat for MS monopoly. Allowing open standards would be like shooting own foot for MS.
MS will try to spread SL and that way keep control of the internet (SL will never work with linux, for example).
 

Re:HTML5 (1)

whiteboy86 (1930018) | more than 3 years ago | (#34876718)

This mess only shows that the web in is flaved by design and the "apps" are way better in just any regard. The web 3.0 really are the apps with backside server feed.

For example there is an iPad app for weather, that is so good that we completely stopped visiting weather office website. I do not think the web will go the way of Gopher [wikipedia.org] , but near future might show that HTML5 will not be needed or even wanted.

Re:HTML5 (1)

xaxa (988988) | more than 3 years ago | (#34877062)

There are plenty of bits of HTML5 that you can start using now. They might not do anything on one or more browsers, but they'll be appreciated by the people that do see them. I used some HTML5 for a website we launched recently, and we haven't had any reports of problems with things like <input type="search" placeholder="Search articles"> or <article>.

Here [diveintohtml5.org] is a good place to start.

I did the same regarding CSS3. Columns and the :target attribute don't work in IE, but it's useful for people with better browsers. Those users also get slightly-interactive SVG charts, IE users just have bitmaps. Of course, if IE9/10/whatever supports :target, SVG, and so on, those users will start to see this stuff.

Re:HTML5 (1)

cbhacking (979169) | more than 3 years ago | (#34886804)

IE9 is still in beta, still getting improvements made and incompatibilities removed. Despite that, it's already compatible enough that it will happily run (at good framerate) a NES emulater entirely in JavaScript, HTML5, and especially canvas. That emulator was definitely not written as an IE9 demo, either - it's just compatible with it because IE9 adheres to the standard well enough.

Test Cases (5, Insightful)

Anonymous Coward | more than 3 years ago | (#34876482)

1. He's using IE9 Beta 1, which is fairly old and out of date. He should try the latest platform preview.
2. He should post functional test cases, like ACID does, instead of posting just the code and pictures.
3. He should contact MS. Instead he is relying on the nerd-rage from Slashdot to get big enough for them to notice. They have an appropriate channel for this where the issue can be discussed.
4. Despite what people think, canvas is not HTML. It's a proprietary and patented Apple technology that has been submitted to W3C for review as a potential addition to HTML. Yes, submission to W3C does require patent disclosure and royalty-free licensing when a submission becomes a part of a recommendation, but canvas has not reached that stage. Patent fears aside, as an early draft it is a standard subject to change either by W3C or by anyone who feels like interpreting the draft as they see fit, which could occur concurrently as in opposition to each other.

Re:Test Cases (0)

Anonymous Coward | more than 3 years ago | (#34876552)

who cares? fuck Microsoft

Here's an idea (-1, Troll)

JamesP (688957) | more than 3 years ago | (#34876560)

Tell MS to go fsck themselves and show a message to IE9 users telling them to use Chrome or Firefox

Why should you waste time and money supporting them? And by the way, Firefox is the most used browser in Europe right now.

Re:Here's an idea (0)

Anonymous Coward | more than 3 years ago | (#34876876)

The CFO is a luddite. If he can't reach our site because he uses IE, I might as well remove that 10 years reference from my resumé. I hear McDonald's is hiring...

Re:Here's an idea (1)

imakemusic (1164993) | more than 3 years ago | (#34876916)

Unfortunately for me one of the sites that I maintain gets the majority of its views from UK Government workers, most of which use IE. Roughly 2/3 of the visitors to this site are using IE of one form or another. (Admittedly IE9 is only a tiny proportion of these and a lot of them are using IE6 still so I'm unlikely to be using canvas any time soon)

Sure, I could block them completely and it might make a few of them take notice but the majority would just see it as us not wanting to make our site available to the people who need it.

It's a vicious circle and one that I would love to help break (I posted a comment on here a while back which included some code that does what you mention) but in the meantime we still need to get clients and they're still using IE6. We're not going to turn away business because of some browser idealism.

Re:Here's an idea (1)

JamesP (688957) | more than 3 years ago | (#34877140)

Well, from your description, apparently the solution you currently use is flash, correct?!

So I guess it would be better to maintain Flash in IE9 rather than 'neuter' Canvas code.

Re:Here's an idea (2)

imakemusic (1164993) | more than 3 years ago | (#34877702)

Well at the moment I don't use anything that needs that kind of functionality. I do use some jQuery to give it a bit of interactivity but it is essentially a static page.

As for maintaining a Flash version in IE9, I doubt it is easier duplicate chunks of your code in a different language (plus the cost of buying the Flash authoring tool) than it is to alter a couple of lines in your Javascript. But then again, you said "better" which is a subjective term.

My favourite way would be every time that an IE-specific line of code is called, an email gets sent to the IE team at Microsoft...That would get their attention.

Re:Here's an idea (1)

JamesP (688957) | more than 3 years ago | (#34878224)

I doubt it is easier duplicate chunks of your code in a different language (plus the cost of buying the Flash authoring tool) than it is to alter a couple of lines in your Javascript. But then again, you said "better" which is a subjective term.

My favourite way would be every time that an IE-specific line of code is called, an email gets sent to the IE team at Microsoft...That would get their attention.

True, yeah, maybe it would be easier to do all the 'bells and whistles' on Flash, so you wouldn't have the duplication problem. (Even though flash costs money)

About the email idea, I LOVE IT.

Re:Here's an idea (1)

imakemusic (1164993) | more than 3 years ago | (#34879422)

The sad fact is that there is no answer that doesn't make somebody's life slightly worse either by taking developers time or money or denying the client access to the site.

Actually, I've got a better idea than the email but I'm not sure how to implement it: Every time an IE-specific line of code is called a small withdrawal from Microsoft's bank account...

Re:Here's an idea (2)

shish (588640) | more than 3 years ago | (#34877160)

Why should you waste time and money supporting them?

Because the amount of money you make from supporting them is greater than the amount spent to do so?

If you're running a personal site for your own amusement, then sure, do whatever you think is fun; but when you're trying to make a living (in any industry), rudely telling half your customers to go away is rarely a wise decision

Please! No workarounds! (2, Insightful)

garry_g (106621) | more than 3 years ago | (#34876620)

The web is still suffering from all the workarounds implemented for IE6 ... don't do workarounds, make M$ FIX the problems instead!

Overstated (1)

pizzach (1011925) | more than 3 years ago | (#34878002)

Maybe Microsoft IE team doesn't have the money or resources to develop their browser? After all, they don't get the google income of Firefox and they have to pay those horrible h264 fees. They must be borderlining on broke or something. The old guys were disbanded years ago to work on bigger projects and only college hang overs who beg for money from their parents get to touch the code nowadays. [end sarcasm]

I honestly would expect more from an ex-market leader in web browser development. Pure laziness on Microsoft's part.

submit a bug report (1)

MagicM (85041) | more than 3 years ago | (#34876674)

You can (and should) submit bug reports for IE9 directly to Microsoft [microsoft.com] . Complaining on your personal blog and hoping that the magic internet fairies will take care of it is less effective at getting the problem fixed.

Re:submit a bug report (2)

symbolset (646467) | more than 3 years ago | (#34876872)

Actually, I think getting a slashdot article on the issue is a whole lot more likely to get it fixed. They do come here you know.

Re:submit a bug report (1)

pyalot (1197273) | more than 3 years ago | (#34877014)

They do come here you know.

I knew it. They are among us! The truth is out there, searching for your webdev grief.

Re:submit a bug report (1)

Jugalator (259273) | more than 3 years ago | (#34877074)

Since it's not a bug in the typical meaning of that word, but actual missing support of a number of features, I'm pretty sure MS is aware of them and has intentionally postponed them for IE 10 or later.

Re:submit a bug report (1)

Blakey Rat (99501) | more than 3 years ago | (#34883568)

Or the stable release of IE9. He *is* testing a beta, remember. Beta? Beta? Remember what Beta means? (Not even the most current beta, to-boot.)

Re:submit a bug report (1)

kikito (971480) | more than 3 years ago | (#34880430)

Yeah, it has worked great on the last 4 versions of the browser.

IE8 is NOT the most pleasant/compatible/fast (4, Interesting)

pyalot (1197273) | more than 3 years ago | (#34876720)

I just got forced to adopt IE8 compatibility (outside constraints). After developing something that runs just fine in Safari/Firefox/Chrome for 4 weeks, it took me:

The downside
- 4 hours to get it to run in IE8
- Data intensive JS processing/DOM manipulation is about 10x slower then in either of the alternatives
- Since no support for CSS3 border-image is present, it makes it look ugly
- Since DOM/JS is so slow, animations (width, height, opacity etc.) are slow as hell.
- the HTML5 popstate event (document.location change) is not supported, hence a watchdog interval has to be installed checking the document.location.hash 20x/second
- since IE is the only browser to enforce XHR caching, every request needs a timestamp query parameter (something that no other browser does, and which is really stupid, altough easy to provide)
- the developer tools are difficult to use (as compared to chrome, webkit, firebug etc.)

The Upside
- console.log works (thank god, no more alert debugging)
- The layout just worked (though I think that's rather a side effect of using pixel width/height zealously rather then an IE8 virtue)
- developer tools, any, even if they work badly, but developer tools!

Recommendation for anyone: IE is still the worst browser, and there's at least 4 alternatives which are collectively 1) faster 2) easier to develop for 3) more compatible to each other 4) prettier 5) more standards conformant

Re:IE8 is NOT the most pleasant/compatible/fast (3, Informative)

Jezral (449476) | more than 3 years ago | (#34876792)

- since IE is the only browser to enforce XHR caching, every request needs a timestamp query parameter (something that no other browser does, and which is really stupid, altough easy to provide)

Or, you could use POST requests like you're supposed to. Any number of intermediary caches and load balancing tricks can play foul with GET requests, but POST is not allowed to be cached.

With jQuery this is as simple as using $.post() instead of $.get().

Re:IE8 is NOT the most pleasant/compatible/fast (1)

pyalot (1197273) | more than 3 years ago | (#34876956)

Or, you could use POST requests like you're supposed to.

Which in my experience are really slow in browsers as compared to GETs, especially in IE.

Any number of intermediary caches and load balancing tricks can play foul with GET requests, but POST is not allowed to be cached.

With jQuery this is as simple as using $.post() instead of $.get().

Which is what http cache headers (no-cache) are here for, so any number of balancing/intermediary stuff knows what to do (except of course IE, which does not seem capable to fully talk http/1.1)

Re:IE8 is NOT the most pleasant/compatible/fast (1)

asdf7890 (1518587) | more than 3 years ago | (#34877486)

Or, you could use POST requests like you're supposed to.

Which in my experience are really slow in browsers as compared to GETs, especially in IE.

That really shouldn't be the case in any browser, unless there us something wrong with the web server, browser, a proxy in between, or some difference in caching behaviour (i.e. your GET requests are being cached somewhere unbeknownst to you so appear faster than equivalent POST requests in your tests). The amount of data sent in equivalent GET and POST requests should be more-or-less the same (i.e. the same give or take a few bytes hear or there due to encoding differences). Can you cite/show any examples of where you've seen this behaviour?

Re:IE8 is NOT the most pleasant/compatible/fast (1)

asdf7890 (1518587) | more than 3 years ago | (#34877750)

- Data intensive JS processing/DOM manipulation is about 10x slower then in either of the alternatives

Any significant Javascript and/or DOM manipulation is a lot slower in IE8 than the competition. IE8 is better than IE6 in this respect but still dog slow. IE9 is said to be much more comparable to the competition in this regard, but I'll wait until it is actually released to see rather than basing expectations on the beta cycle.

Not matter how fast IE9 is though, I'll still be stuck supporting IE6 at work as there is no way our clients (large banks) will drag themselves out of the stone age in that respect until MS officially drop security patches and paid support for it (which is due to happen in April 2014 for those running it on XPsp3, IIRC, and major corporate contracts may effectively extend that by a few months).

Re:IE8 is NOT the most pleasant/compatible/fast (1)

I8TheWorm (645702) | more than 3 years ago | (#34878278)

I had that mentality at my previous gig until we finally convinced the USAF linguist turned infrastructure director that IE6 was on the dead pool. Of course, he then designed a 2 year project to replace it with IE8 without any user testing.

I did some work for a major bank in 2001-2002 and I understand the frustration with slow adoption. That's one of the reasons I don't work for banks anymore.

Re:IE8 is NOT the most pleasant/compatible/fast (1)

Romario77 (1844904) | more than 3 years ago | (#34879394)

>- since IE is the only browser to enforce XHR caching, every request needs a timestamp query parameter (something that no other browser does, and which is really stupid, altough easy to provide) Just set the headers right, it won't cache in that case. Here is a snippet from Java/JSP response.setHeader("Cache-Control","no-cache"); //HTTP 1.1 response.setHeader("Pragma","no-cache"); //HTTP 1.0 response.setDateHeader ("Expires", -1); //prevents caching at the proxy server

Re:IE8 is NOT the most pleasant/compatible/fast (1)

yuhong (1378501) | more than 3 years ago | (#34882288)

Don't forget the lack of true XHTML support forcing people to serve them as text/html.

Re:IE8 is NOT the most pleasant/compatible/fast (1)

cbhacking (979169) | more than 3 years ago | (#34886854)

Fascinating... you realize you're talking about IE8, right? As in, released-in-2009 IE8? This article is about the IE9 beta, which is already out of date at 4 months old. IE9 isn't even in RC yet, nor did this article's author use the most recent preview build

To address your Downsides with respect to IE9:
  - I can't speak to the hours your particular site will require, but a lot of things just work in IE9 even if I have to spoof the user-agent to keep it from saying "Nope, can't do IE, go away!"
  - IE8's JS isn't JIT compiled. IE9's is, and it's well over 10x as fast as IE8 - in fact, it's faster than Firefox by a non-trivial margin.
  - Lots of CSS3 in IE9, and I'm pretty sure this does include border-image.
  - Not only is IE9's JS compiled and fast, it uses hardware-accelerated rendering so animations are super-quick (even on crappy Intel graphics, though faster GPUs are even better).
  - I really don't see this as a bug; either make sure the server insists on no caching, or use POST.
  - The developer tools have been improved a lot compared to IE8 In addition to a better UI and other ease-of-use improvements, it now includes things like a profiler to find slow operations/expensive functions.

I'll awnser that with a meme (-1)

Anonymous Coward | more than 3 years ago | (#34876788)

Why you no workaround?!?! D=

I'll wait for the RTM (0)

Jugalator (259273) | more than 3 years ago | (#34877048)

I won't bother spreading these news for now, since IE apologists (yes, they exist) will defend themselves by saying that IE hasn't gone RTM yet, and is expected to reach RC soon. So that features may be missing. I won't bother saying how ridiculous it is to think that MS will implement major HTML5 features to support HTML5 Canvas well in a *release candidate* since these are, again, IE apologists, of all kinds of apologists.

But I expect a crapstorm to be unleashed once this one goes final. MS shouldn't have been so bold and build up expectations so much. They've made it sound like they will support HTML5 in its entirety, except for disputed parts of the standard not yet finalized.

Re:I'll wait for the RTM (0)

Anonymous Coward | more than 3 years ago | (#34878098)

I won't bother spreading these news for now, since IE apologists (yes, they exist) will defend themselves by saying that IE hasn't gone RTM yet, and is expected to reach RC soon.

I will complain that they tested the older IE9 Beta 1 instead of the latest platform preview. It's possible that this issue was addressed.

They've made it sound like they will support HTML5 in its entirety, except for disputed parts of the standard not yet finalized.

Finalized? Canvas isn't even recommended yet, let alone finalized. HTML5 is still fairly early in the W3C standards process, and at this stage Apple can still assert their patents over it.

Re:I'll wait for the RTM (1)

I8TheWorm (645702) | more than 3 years ago | (#34878318)

I defended it since it's in beta, and I prefer a combination of Firefox and Chrome. I only use IE when forced to.

So why would it take an apologist to point out the patently obvious?

Re:I'll wait for the RTM (1)

cbhacking (979169) | more than 3 years ago | (#34886934)

Are you bloody serious?
First of all, IE9 Beta already supports the majority of Canvas. This guy found a few things that didn't work right in the build he was using (far from the newest one, FYI).
Second, IE9 has been receiving improvements to its compatibility in many areas, including Canvas, during Beta. At least one of the bugs found was known, reported, and fixed a while ago.
Third, it *is* still in development (beta, not RC). We (the public) are about due for another preview build drop; the currently available one is 2 months old.
Fourth, If MS were to avoid supporting the portions of HTML5 not yet standardized, they wouldn't have anything at all! The whole spec is still in Draft... seriously, read the official spec page linked in the summary.
Fifth, while there will undoubtedly be shit flung by developer X whose favorite corner case Y doesn't work right yet, most Canvas sites *just work* in IE9 already.
Sixth, MS is already well past the expectations of most web developers. ACID5 (except for the parts that are now redundent and being deprecated), HTML5, CSS3, and very fast JS. All software has bugs, but MS has already largely delivered on its promise to support the same code as other browsers, and it's still in beta!

Re:I'll wait for the RTM (1)

benjymouse (756774) | more than 3 years ago | (#34887916)

Hum - you do realize that already at this stage, IE is the browser with the most complete implementation of HTML5 and CSS3 right?

MS has actually contributed *most* of the compliance tests (the official ones, not ACIDs) and have disclosed where IE doesn't *yet* pass the tests. You can run those test yourself and see if your favorite browser passes *all* of them (or even more than IE): http://samples.msdn.microsoft.com/ietestcenter/#html5Canvas [microsoft.com]

I'm posting this using Chrome and that chart seems to be about right, i.e. only a few of the failed tests have been corrected even though this is Chrome 8.0.552.215 and the chart is from the Chrome 7 days.

globalCompositeOperation "destination-over" is shown as "fail" for IE. If you look at the chart - and do not cherry pick like the original poster did - you will soon realize that IE is indeed the browser which is *most* compliant with the *draft* spec.

What we have here is a biased author who cannot even hide his bias, cherry picking a few areas where IE fails and trying to blow them up as all-important and outright reason to reject IE and MSs efforts. And then he goes posting it on slashdot in order to instigate a good MS bash fest. Real class.

Google Chrome Frame getting more & more import (1)

pizzach (1011925) | more than 3 years ago | (#34878090)

It is probably the only way that IE will support modern features. Ever. I am serious. Google needs to start pushing this more. Maybe the embarassment will force MS to finish their HTML5 implimentation.

Don't try to "get around" it (3, Insightful)

harmonise (1484057) | more than 3 years ago | (#34878280)

Stop coddling this company. Don't try to get around it. Code to the standards and let IE9 fail to render if they can't implement the spec properly. Google, Apple, Mozilla, and Opera all have no problem following the spec.

Re:Don't try to "get around" it (0)

Anonymous Coward | more than 3 years ago | (#34878890)

Stop coddling this company. Don't try to get around it. Code to the standards and let IE9 fail to render if they can't implement the spec properly. Google, Apple, Mozilla, and Opera all have no problem following the spec.

That's not really an option for most commercial developers. Rather, the work around should be Chrome plug-in. If enough sites require it, sys admins will have no choice but to put it on approved plug-in lists.

Re:Don't try to "get around" it (2)

Benbrizzi (1295505) | more than 3 years ago | (#34880214)

Try telling that to your clients."I'm not making it compatible with half of the browsers out there because it's too complicated".

Microsoft Response (1)

bsv368 (686213) | more than 3 years ago | (#34878754)

Not surprisingly, IE9 Beta is a work in progress [msdn.com] .

Microsoft Responds (5, Informative)

TimSneath (139039) | more than 3 years ago | (#34879580)

Hi there, thank you for the post. I just wanted to add a few observations on behalf of the Internet Explorer team.

Firstly, no browser offers a perfect implementation of the Canvas 2D API specification to date - we've documented and shared a few examples from our test suites here: http://samples.msdn.microsoft.com/ietestcenter/#html5Canvas [microsoft.com]

As has been well noted, the IE9 build tested was our beta.

Secondly, in response to the specific issues raised, Giorgio Sardo has posted a response on his blog here:
      http://blogs.msdn.com/b/giorgio/archive/2011/01/14/building-great-browsers-together.aspx [msdn.com]

We'll update this entry over time.

Thanks for listening,

Tim Sneath | Microsoft Corp.

Re:Microsoft Responds (1)

BeforeCoffee (519489) | more than 3 years ago | (#34884522)

Dear Tim,

Please backport IE9 to Windows XP. My preciousss needs to run good on IE on XP, etc.

Thanks in advance,
Dave Woldrich
https://clubcompy.com/ [clubcompy.com]

What if MS adopted the Tasman engine? (1)

yuhong (1378501) | more than 3 years ago | (#34882404)

I wonder what would have happened if MS adopted the Tasman engine used in Mac IE 5 and ported it to Windows instead of spending years fixing the Trident engine?

DISCLOSURE, not DISCLAIMER (1)

grcumb (781340) | more than 3 years ago | (#34883532)

Time to go all grammar (well, vocabulary) nazi on you....

The word you want is Disclosure, not Disclaimer.

A disclosure is, in this case, a statement of conflict of interest: "I wrote this thing, so I might be biased about how good it is."

A disclaimer would be: "I wrote this thing and even I don't believe it!"

I'm pretty sure you meant the former, not the latter,

Load More Comments
Slashdot Login

Need an Account?

Forgot your password?

Submission Text Formatting Tips

We support a small subset of HTML, namely these tags:

  • b
  • i
  • p
  • br
  • a
  • ol
  • ul
  • li
  • dl
  • dt
  • dd
  • em
  • strong
  • tt
  • blockquote
  • div
  • quote
  • ecode

"ecode" can be used for code snippets, for example:

<ecode>    while(1) { do_something(); } </ecode>