My opinion.


Golly, I love this job.

Okay, before you read any further, go read the tagline of this blog. In case you’re reading it through RSS, I’ll paste it here: “This is the personal blog of Chris Wilson, Platform Architect of the Internet Explorer Platform team at Microsoft (and ex-Group Program Manager).” Underscore that “personal” bit.

Okay, now go read the last line of the first paragraph of my last post. Again, for your convenience: “Consider the rest of this post to be only my opinion, because I haven’t even run it by the other people on the team.” Consider that to be true of this post as well. (This post, too, has not been run past anyone here.)

Now we’ve established that this blog, and the last post as well as this one, are just me talking, and not the “Voice of Microsoft” (said in your best James Earl Jones voice).

So, hmm. “Open letter to Chris Wilson.” “Mozilla, Microsoft drawing sabers over next JavaScript.” “We can’t afford another browser war.” (I’m with ya there.) Front page of Slashdot. And so on. Does anyone wonder why I don’t post so often on my own blog?

Brendan, my post was my opinion, and (I thought) clearly labelled as such. Sorry you take it personally, and you should feel free to disagree with my opinion. Please don’t call me a liar, though – or at least, credit me with enough intelligence to make my own lies up, and not simply parrot those of others. In my opinion, the current ECMAScript 4 proposal would be disruptive to the web ecosystem, and I don’t think the priorities driving its evolution have been placed where I would place them. (E.g., as I said before, I’d like to see domain security addressed in the core language.) That said, it’s my opinion.

When I made a reference to “shouting down dissent,” I thought again that I was being clear that I was referring more to the string of blog comments made by you and others immediately to any blog post that seemed to question the righteousness of the current ES4 proposal, than to functioning of the TG-1. The response to this post, and others in the last day or so, doesn’t make me want to retract that. I was not referring to actual shouting in TG-1 meetings – I’d have to agree with your characterization of “vigorous debate” – though I think you seem a mite personally hostile to Microsoft. That’s a personal-interaction observation, though, and not reflected in minutes, and therefore not worth much.

However, please do not EVER characterize me personally as pushing a proprietary language or platform over open standards based ones, unless you have proof of such action (which you do not, because I am not). I gave my opinion about ES4, not about Javascript as a long-term language for the web; I have no personal interest in pushing C# (a language in which, BTW, I’ve never considered myself a proficient programmer) or some “new invention” language in place of Javascript, and I’ve yet to hear anyone in Microsoft give a solid enough scenario for such a thing that it changes my professional opinion to be in support of C# in place of Javascript either. It’s a shame that the last couple of days of posting, yours included, have presumed that I have any interest in a language different than Javascript; my opinion is that ES4 is becoming a huge new language but claiming to be just an update on to the already-well-known Javascript language, not that Javascript is the wrong language.   (Oh, and there is no secret “alternate language” proposal that I’m aware of; ideally, I’d like to see different priorities addressed in ES4.)

I think ECMAScript can evolve more cautiously (than the large-scale language changes in ES4) and have that be a better thing for the web, considering how it deploys in the ecosystem. That would only work, though, if we’re working together.  If you truly believe that Silverlight (and by this I must presume you really mean C# in the Silverlight-hosted VM) will take over because of careful evolution of Javascript would take too long, then I suggest you follow the path I recommended in the original post in the IEBlog – make a new proprietary language, call it something different, and if it’s that much better then it will get adoption. Proprietary can always evolve faster than openly designed, consensus -driven industry standards. Regardless, though, I have no intent of “helping Microsoft stall improvements to JS while they aggressively evolve C# and its runtimes” – in fact, I personally think those are orthogonal issues, and Javascript’s current lack of strong typing, say, doesn’t help or hurt C# adoption. I expect you have a different opinion, given your posts, and I simply respectfully disagree. I think (again, personally) that Javascript has a lot more going for it in the web ecosystem, and I don’t personally see C# pushing it out of the way.

Brendan, you also said (in comments on your own blog post that I ‘reversed the logic of ScreamingMonkey to try to “prove” that ES4 requires a new VM.’

No, I never tried to “prove” that ES4 requires a new VM. I said 1) ScreamingMonkey pushes a new VM into IE, and will cause ES4 scripts to not be run in the same VM as ES3, within IE. (True, yes? Please tell me if I’m wrong here, as I’m (obviously) not as intimately familiar with ScreamingMonkey as you are.) And I also said 2) in my opinion, ES4 VM compatibility with ES3 (in perf characteristics in particular, but I’m betting in other ways as well) will likely cause interop problems. I understand your ideal is that an ES4 VM ought to be able to run ES3 scripts; I expressed skepticism this will happen, given the scope of changes to the language in ES4. Again, my opinion.

You said “To prove this, I’ll make a promise: if Microsoft truly embraces ES4 and ships it in an IE beta, I’ll put ScreamingMonkey on hiatus.”  I don’t care personally if you put ScreamingMonkey on hiatus or not. I think it’s self-defeating, personally – if it does ship and gets uptake, it would cause compat problems for us to take over handling ES4 in our own VM later. It’s kinda saying you expect Microsoft can’t to come up with an interoperable implementation of the future Javascript standard.

Personally, I think you’d have been better served following my personal one-on-one advice to you back in March at SXSW – try to work WITH the Microsoft Script guys, because they are neither crazy nor trying to obstruct progressing Javascript to a good, powerful, competitive-with-other-modern-languages future. They may have different ideas of how big a step you can take at a time, but none of us are looking to stagnate Javascript, as you have claimed. I’d like to see more than “deferred JScript maintenance and ES3 spec-polishing,” despite what you think.

I think thus far you have preferred not to follow that advice. I’d prefer not to have a “split” in TG-1; I’d prefer that we evolve Javascript in a way that will work for more of the web (browsers, developers, et al) at the same time. Perhaps instead of thinking that Microsoft has to lose, you should think about how we could all win.

Comments (54)

  1. Lionel says:

    This is all getting to personal.  Maybe being tough-skinned is a requirement nowadays for browser developers (esp. working on IE), but my impression is that constructive dialog is getting increasingly more remote, and probably needlessly so.

    What a mess. 🙁

  2. Jerry Mead says:

    OK, it’s understandable that you want to use your blog to clarify your opinons and attitudes after the last day or two of heated to-and-fro.

    The problem is, though, that if this conversation continues in the public domain, then things will descend further into point-scoring and posturing … and in allowing that you run the risk of creating a set of entrenched positions that you can never back down from, and which will never benefit anyone.

    You and Brendan might respond that you’re both far too intelligent to allow that to happen … in which case, good, the pair of you can get a grip and bugger off to a hotel somewhere and stay there until (a) you both absolutely understand each others’ motives and ambitions for the continued development of ecmascript, and (b) work out where your respective companies can work cooperatively together to the ultimate benefit of the web (i.e. browsers, developers, et al).

    If you could do that – and certainly both of you have the corporate clout to attempt it –  then fantastic, you will both retain the respect in which you’re currently held, and you will both surely qualify for the web’s Hall of Fame in perpetuity. And if you fail, then at least you will have failed while trying.

    Or you can both continue to lob stuff backwards and forwards over no man’s land in a public spat that simply doesn’t do anything except intensify the "Browser Wars 2.0" bollocks that it has already kicked off.

  3. thacker says:

    <blockquote>[…]I’d like to see domain security addressed in the core language.</blockquote>

    That has merit.

    <blockquote>Proprietary can always evolve faster than openly designed […]</blockquote>

    The continued emphasis on open design and the processes under which it is developed is a more significant roadblock than any browser or its development, any scripting language, framework, etc. to evolution of Internet communication.

    —–

    There is potential merit behind Internet communication wherein communication becomes less dependent upon any browser, where the browser serves as a simple portal device to boilerplate Web content. From there, the portal page delivers a stand-alone RIA that serves as the communication vehicle.

    In short, to hell with the monkey house antics of standards development and bring on the well designed proprietary frameworks.

  4. Heh.  Actually, @thacker, I have to disagree with you on that.

    @Jerry and Lionel, I agree this is a mess and I have no intention of lobbing back and forth.  I was asked to state my personal opinion, I did so, Brendan took some things I said in a manner I did not intend them, and I clarified.  And this has certainly turned in to more of a mess than I’d like to deal with.

  5. Ali P says:

    What I see amongst the non-Microsoft crowd, whether it’s ES4, HTML5, CSS2.2/3 whatever, is a real fear that a lot of time and effort is going to be put into these standards… and all for nothing. Sometimes that fear turns into anti-Microsoft paranoia – but I have some sympathy.

    Microsoft (and yes, I know this is your personal blog) seems to have a real problem committing to stuff. Or not. This is your personal blog, so we get a kind of feeling that someone important on the IE team thinks ES4 may be a good thing but has differences about the VM, not that it matters because it’s his personal opinion… 🙂

    So where does that leave us? What does it MEAN!? What we really want to hear is: "The IE team is committed to finalising a spec for [insert favourite standards bugbear here] and releasing it in the next edition of IE which will be released within 12 months." But we never get anything close to this. Just sort of half signals and signs in the sand, of which this blog is a good example. (It’s a personal blog, you see 🙂

    Trying to peer into the MS crystal ball is enough to make anyone a bit loopy.

  6. Quite honestly, I don’t know what all the fuss is about. ES4 is an update that brings some new constructs to the core language, so yes: obviously somebody would have to implement them, but for the user there’s no danger… ES4 interpreters work perfectly well with ES3 code, except that you may need to disable some keywords dynamically, but with a half-way descent parser this shouldn’t be a problem. So exactly what do you want to do to make ES4 more "evolutionary"? You never can guarantee backwards compatibility in the sense that ES4 code should work fine in an ES3 interpreter.

    Also, pretty much the only danger for people starting to develop for ES4 is that they trip over the newly added keywords. Other than that it’s take it or leave it as a developer may chose to make use of any ES4 functionality or not, that’s entirely up to him.

    Perhaps ES3 is sufficient for the people writing some hovering button code, yes. But why should we leave the framework and application developers in the rain, when there’s really no need?

  7. thacker says:

    Wilson–

    You take exception with what, exactly?  Everything? Standards, as they currently stand and the process by which they are currently being developed, are the roadblock?  That Internet communication should not be dependent upon a browser?  That a proprietary framework, as things have evolved to date and with all of the experience learned over the last decade, would be of more benefit than the management by consensus open source fiasco currently used?

    Thank you very much.

  8. @thacker I think "consensus open source fiasco" is a bit strong.  Open standards – as in "openly, cooperatively developed" standards – are hard to do well.  The benefits of open standards in terms of applicability to multiple vendor systems and multiple scenarios are, in my opinion, quite large, and they merit trying to make it work.

    Please note the above is not a statement of any sort about ES4, it is a generality.

  9. thacker says:

    Thank you, Wilson.

    By the way, don’t you love having to include disclaimers within any post to circumvent anyone from reading into something that wasn’t stated not too mention how any thread or post is composed.

    I guess my characterization, which I have used, that the standards process reminds me of a monkey house at a zoo, would be way over the top, huh.

    This post is concluded with the addendum that opinions and views are much like bare rear-ends. Some are a beauty to gaze upon while others should never see the light of day.

    Again, thanks.

  10. Asaf Gery says:

    First I must state that I did not read the ES4 specification, so I cannot sound a very knowledgeable opinion.

    Slashdot raised my curiosity, so I went on to read both your posts and Brendan’s posts. I tend to favor the technical arguments of Brendan and the other people that supports the current ES4. They sound more reasonable to me. I find your arguments somehow weak. Since other people already addressed them, I will not repeat them.

    On the personal level, I can see both sides:

    You just sounded your personal opinion and don’t understand what is all the fuss about.

    Brendan on the other hand is frustrated with the way Microsoft behaved towards Javascript in the past and therefore maybe jumped to conclusions.

    It is good to keep in mind that you are working for Microsoft, a company that has its well know history and reputation. The fact that you hold a significant role regarding to IE, could very well explain why your personal opinion raised so much concern among other people.

    My intuition says that you have a good heart and that your intentions are pure. I believe that you will find the way resolve the issue with Brendan. I am happy to see people like you in Microsoft.

  11. John says:

    Why do you think ES4 will be ‘disruptive to the web ecosystem’? I am no expert, but I think the following points are right:

    – ES4 is backwards-compatible with ES3, so it won’t break the web. And it’s not a new language.

    – ES4 does not need a new VM

    – ES4 is implementable

    You said you would have ‘placed different priorities’. Isn’t it a bit late for that now?

    I suggest you make a list of issues like ‘addressing domain security’, and propose to integrate them with ES4…  Aren’t we all happy then?

  12. paketep says:

    Hey, how about an answer to all the comments basically saying "first fix IE!".

    Ok, whatever, I was going to try writing something intelligent, but with my job as a web programmer and thinking that I’m addressing someone in the IE team, all that gets out is FU.

    Sorry about that.

  13. Jazzy says:

    Ok.. REMEMBER XSD!!!!!

    That is the lesson learned… Check out Don Box!!!

    Having said that, the conversation should not be with someone on the IE team directly but the JSCRIPT team… They implement the language and are responsible for interpeting and working on the language right? So if their implementation is incorrect or you have a gripe about it, then they should be the one to look closer at it. Every Windows machine ships with the script engine so it is not just an IE thing. IE just uses that engine for web scripting.

    Here is a person’s view who admits they are not a language developer. So the comments jumping all over him really don’t help. Technical arguments are not here… Just an opinion after reviewing the apparent issues. Everyojne has an opinion on their blogs so just take the time and give him the reasons why you don’t think so and move on… He is not on the committee, he does not implement JScript, so he does not have a direct affect on the language.

    Yes he is on the IE team, but they are responsible for IE specific things… Hate the tabs, this is one of the people you can gripe to. Hate the menus, this is a person you can let know that… (Again this is his "PERSONAL" blog though) But implementing JScript is not an IE specific thing…

    Anyway, I hate the back and forth like this but I do want to understand the issues since I do web development from time to time. But this is getting a bit wild… 🙂

  14. grumpy says:

    Urgh, can’t you just grow up and learn this thing called compromise? The rest of us, who actually end up using the stuff you both come up with, don’t care a rats ass if you call it Javascript, JScript, Ecmascript or AwesomeLanguage2.0

    Just…. please… agree. True, it’d be a complete break with tradition in web development, and perhaps you’d *both* have to settle for not getting your way 100%. Perhaps you’d *gasp* have to settle for only agreeing with 98.5% of the standard. So f’ing what?

    At least you’d stop breaking the internet for the rest of us.

    I’d like to experience in my lifetime an internet that doesn’t suck. And that requires a break with the tradition of half-assed implementations of half-assed standards that people only half-heartedly intend to follow.

    I don’t think very highly of Microsoft’s ability to make "standards", but if the alternative is an ECMA standard? Well, that’s a bit of a joke too… So in the end, who cares? If you can just come up with something that all major browsers are going to implement (and actually try to get right)

  15. ryan says:

    It’s hard to take anything you say seriously regarding new browser technologies when the IE team hasn’t even properly implemented old ones.

  16. Ron Stephens says:

    Chris, you work for company that is perceived by millions of people, world wide, to be the most evil company in history, and not without some very good reasons. Given this, you cannot expect people to trust you, to work with your "scripting people" under the assumption that they can be trusted, or to treat you and other Microsoft employees just like they’d treat anyone else.  

    So get off your high horse. You work for an evil company, and you will be treated accordingly.

    Ron Stephens

  17. crayz says:

    The fact is, the actions being taken by your employer are forcing the hand of the people in favor of continued open development of the web. As we’ve already seen with Flash/Flex, if the major browser(s) don’t push forward with standards that reflect the current needs of web developers, they’ll turn to proprietary technologies

    If you have alternate proposals for the evolution of JavaScript, why don’t you publish them? Past that, Microsoft and by extension the employees working in its browser team have approximately zero credibility in arguing against the evolution of the open web. What’s next, a post about how HTML5/CSS3 is "too big a step"?

  18. (Disclaimer: I work for Mozilla.)

    Chris,

    I don’t understand why you think ES4 and ES3 can’t run in the same runtime.

    This is like saying, gee, you know, I’m skeptical that C# 3.0 and C# 2.0 can run in the same runtime.  Yes, C# 3.0 has a lot of new features requiring special runtime support.  But old code will still work fine.  This is no big surprise.  The old language is a subset of the new one.

    It’s the same with ES3 and ES4.  Mozilla plans to compile both to Tamarin bytecode–both with the same compiler.

    But it seems really weird to be explaining this here.  You know all this.  What am I missing?

  19. Ron Stephens says:

    Jason,

    No, Chris doesn’t "know all this". He has publicly demonstrated his ignorance.

    One last suggestion, Chris: If you don’t want to be called a liar, stop making blog posts full of untrue accusations, In other words, you are a liar, and have publicly demonstrated this fact to the whole world now.

    The facts speak for themselves. Brendan has clearly pointed out the falsehoods you shouted from you blog, and you have not even tried to refute them, because you can’t.

    How about retracting this one lie pointed out by Brendan, about dissenting views being shouted down (you should really be ashamed of yourself, Chris):

    """There certainly was no shouting down of the dissenters — that’s a bold lie in view of the well-attended and friendly dinners sponsored by the face-to-face meeting hosts."""

    Do you think you can just make stuff up and get away with shouting it from the rooftops? You disgust me, and I’m sure I’m not alone.

  20. thacker says:

    Wilson–

    You still believe that the characterization of "fiasco" is too harsh?  

    Ladies/Gentlemen–

    What you do, who you are .. in the entire ecosystem of humanity is insignificant. Collectively, you are insignificant. Learn humility.

    Tell me, please, better yet, show me, what is it that you will do today within your respective fields and objectives that is going to improve upon the quality of life for the absolute end-user of your work product?

  21. Ron Stephens says:

    Chris,

    I apologize. I apologize for everything I have said in this blog. I do not know you personally, and, upon reflection, I am sure that you did not intentionally mean to assert as facts things which were not true, thus I certainly shouldn’t have called you a liar. Please forgive me.

    The reason I was so mad, was because your blog post made specific , serious accusations against a man who is very honorable and who has contributed enormously to the community. Your accusations appear to me to be untrue (although I am sure you did not mean them to be) . But, at face value, your original blog post that kicked off this whole fiasco seemed to be inflammatory, and derogatory to a very good man, even to the point of defaming him.

    I would think you would want to apologize for that. I would also think that you would be more sensitive about what you say. How did you expect people to react? Why did you do it?

    On second thought, I don’t care why you did it. I think you should apologize to Brendan, unequivocally and unilaterally, but of course that’s a up to you.

    Still, I apologize to you unequivocally and unilaterally.

    Peace.

    Ron

  22. Douglas H says:

    Jason.

    your argument doesn’t hold up from a language stand point.

    C# 2.0 doesn’t compile or run in .net 1.x, c# 3.0 new features don’t compile in c# 2.0. as downlevel support. Or some of the incompatabilies or security fixes that make 1.x code not fully compatable in 2.0 and to  a lesser extent 2.0 in 3.0.

    Those features require the new run time.

    so for ES4 it will require a new runtime to implement the features and language contructs. amd hopefully not break the web in the process. (by implementing es3 100 % backwards compatable)

    and there have been history of major languages causing incompatabilities between versions.  

    ISO C and ISO C++ not being compatable is a big one. not counting some of the version changes in ISO C itself.

    I can pick apart these Upgrades across many different languages and technologies over the years. Perhaps ecmascript can prove otherwise.

    douglas

  23. I had the same trouble when I was having a personal weblog, not even under the domain name of W3C. Many people put labels and are ready to jump to the conclusion. No matter which disclaimer I could put in my text. Karl (La Grange) and Karl (W3C) were mixed and it caused me troubles.

    That’s a tough issue. The best way I found to deal with this is to share my professional voice and not give any personal opinions on things. There are 3 voices at least: the company or group voice, the personal opinion, AND the technical expertise opinion because you are working in a certain context.

    A disclaimer in another page or at the end doesn’t work for two reasons. It is quite rare that people will read a blog post completely before commenting, replying or following up on their own blog. If a disclaimer has to be put, I would say that it has to be at the top of the text with possibly a link to a more general policy.

  24. wondering says:

    WILSON:

    Please answer the question asked above:

    <b>Why do you think ES4 will be ‘disruptive to the web ecosystem’?</b>

  25. Okay, so we’ve been burned in the past.  That’s a fair comment.

    The breaking changes from C to C++ were pretty sweeping.  Strings became const in C++.  Assigning a void * to another pointer type was banned.  "implicit int" was removed.  The meaning of "void f();" changed.

    Very few real-world C programs are valid C++.

    By contrast, here’s the list of incompatibilities between ES3 and the current ES4 proposal:

    http://www.ecmascript.org/es4/spec/incompatibilities.pdf

    (Of course the proposal isn’t finished, so this could change.)

    ES4 as proposed is *not* 100% backward-compatible with ES3.  It is by design much more compatible than C is with C++.  Most of the changes are very trivial indeed.  A few are only mostly trivial.  I get the feeling Section 1.6, for example, might warrant some more discussion.

  26. The Mozilla guys have to put up with blog hecklers too.  It’s a universal problem.

    Believe it or not, the conspiracy theories about Mozilla Corporation are second only to those about Microsoft for sheer wackiness and vehemence.  It’s pretty amazing sometimes.

    It’s more subtle than sheer boorishness though.  You can load a post with disclaimers, and people will disregard them, knowing that you are in fact the same person regardless of what hat you’re wearing, that you take your opinions to work with you, and that you don’t carelessly express opinions on your personal blog that would cause mayhem for you at work.  They’re quite correct, of course.  All those things are true of you, me, probably just about anyone.

    It’s good to have a place where you can just *relax* and say what you really think.  Alas, it’s hard to see the Web being that place, at least for anyone who has serious work responsibilities.

  27. Ryan Ackley says:

    Chris,

    I think a very large part of the problem is an anti-Microsoft bias in the Mozilla/Open-source camp. There is a perception that every individual in Microsoft is a droid carrying out the will of an evil corporate overmind bent on world domination, the end of open standards, the end of personal freedom, and end of the American way.  

    Slashdot is to Microsoft what Fox news is to Democrats and liberals: A biased media outlet where discontents can channel their energy towards a perceived enemy.  

    Politics aside, one of the things that irritated me about Brendan’s post was that he seems to think that Microsoft is in the minority. That statement shows total disrespect for the end-user. There are two members of that committee that matter most. Microsoft and Mozilla. They have to implement the standard.

  28. Matthew Raymond says:

    Ryan Ackley: Let me see if I understand this correctly…

    1) Microsoft, in the proverbial eleventh hour, decides that ES4 is too radical and proposes a minor update in its place.

    2) The group specifically created to work on ES4 says that they’re not going to throw out years of work and start over with something that many of them feel is insufficient, but that they will allow a subset to be specified: "ES 3.1".

    3) Some initial documents are generated, but said documentation does not comprise a complete and proper specification.

    4) Unsurprisingly, the majority, uninterested in the development of "ES 3.1" and focused on the continued development of ES4, do little work on the proposed spec.

    5) From the September 27th minutes:

    BE: A TR without trying to make a new edition would be good. It’s in everyone’s interest not to go to war or to (ab)use the standards process to force a decision in the market. It would be better to do something lightweight like a TR to revise 3rd Ed, as long as it does not compete with ES4, but ES4 will go forward.

    JD: The current makeup of the group will likely endorse the ES4 work, so you must be aware of that, but nothing stops people from working on 3.1.

    BE: Have you had success in enlisting other organizations in participating in the 3.1 work?

    PL: Not yet.

    5) Pratap Lakshman (Microsoft), from those same minutes: "We do not support or agree to the current ES4 proposal, either in whole or in part. We intend to continue to work with interested TG members to develop a proposal for a more incremental revision of the current specification."

    * * *

    So, from this, I am to gather that Mozilla and other ES4 supporters are "disrespecting" Microsoft? I see it as the other way around. Microsoft could have voiced their concerns much earlier in the development of ES4. They didn’t. They were given the opportunity to create "ES 3.1" under the auspices of TG1, but they failed to garner support and failed to continue development on their own. You then have a Microsoft employee stating that they don’t support ES4, not even "in part". This kind of behavior is hubris.

    Ryan Ackley: "Politics aside, one of the things that irritated me about Brendan’s post was that he seems to think that Microsoft is in the minority. That statement shows total disrespect for the end-user."

    If you give overriding authority to Microsoft simply because they currently have the most market share, then standards development becomes little more than a group of people documenting the behavior of Internet Explorer.

    Ryan Ackley: "There are two members of that committee that matter most. Microsoft and Mozilla. They have to implement the standard."

    What standard? There isn’t even a completed ES 3.1 specification, let alone a standard. Of course, Microsoft could always just submit "ECMAScript 3.1" for rubber stamping by the ECM– Oh, wait, is the ECMA actually dumb enough to approve competing specs within itself???

  29. Ryan Ackley says:

    Matthew, I never said that anyone was disrespecting Microsoft. If you want to disrespect Microsoft please go right ahead. Microsoft as an entity has no feelings. It’s like disrespecting a brick wall. I do however believe that there is a strong bias in the reactions I’ve seen.

    Some of the motives assigned to Microsoft’s actions have been over the top. News Flash, Microsoft is a for-profit corporation. They have a responsibility to their shareholders and employees to make decisions that look out for their own best interests and not necessarily the greater good. This system is called "capitalism" and I think it’s one of the things that makes America great. Most of us poor slobs are relegated to working for an entity similar to Microsoft. When we do, we have an ethical obligation to look out for their interests.

    If you work for a non-profit where the greater good is the single motive of every action taken, I think that is awesome and I think you should consider yourself blessed.  

    We’re also not talking about murdering 10000 baby  seals for their blubber to melt down for fuel for the Hummers of Microsoft execs. We’re talking about a standard that 10 years from now, people will have forgotten about.

    I also did not say that you should give overriding authority to Microsoft. However, I strongly believe that there should be a consensus on any new Javascript standard between Mozilla and Microsoft. Without that, a new standard is simply documenting the behavior of Firefox.

    I’m not really interested in the minutae of what went on in the spec meetings. I’m a developer and I’m sick of kludging cross-browser javascript. It is Brendan and Chris’s job to fix this problem.

  30. Matthew Raymond says:

    Ryan Ackley: "If you want to disrespect Microsoft please go right ahead."

    There is a difference between disrespect and righteous indignation.

    Ryan Ackley: "Microsoft as an entity has no feelings. It’s like disrespecting a brick wall."

    Microsoft is made up of its shareholders and employees, and contrary to what you might believe, each one of them bares a certain amount of responsibility for the actions of their company as a whole. If talking to Microsoft is like talking to a "brick wall", then it is because the stockholders and employees of Microsoft have chosen to ignore us.

    Ryan Ackley: "Some of the motives assigned to Microsoft’s actions have been over the top. News Flash, Microsoft is a for-profit corporation."

    So are Apple, Opera and (technically) the Mozilla Corporation. Microsoft does not yet have a monopoly on profit motive.

    Ryan Ackley: "They have a responsibility to their shareholders and employees to make decisions that look out for their own best interests and not necessarily the greater good."

    That’s called a false dichotomy (a.k.a. a false dilemma or the Fallacy of the Excluded Middle). The interests of the greater good and the interests of Microsoft are not mutually exclusive. It is not in the best interests of Microsoft to be seen as not cooperating on Web standards. Think of it this way:

      Microsoft was found guilty of abusing its monopoly to gain browser market share. If it then uses its operating system and its browser market share to push a proprietary version variant of ECMAScript, a standard they helped create, instead of the latest version created by the ECMA itself, would that not raise anti-trust concerns?

      Increased uncertainty about IE support for Web standards may create animosity among Web developers who are trying to write Web applications based on the latest technologies.  They may resort in some situations to requiring competitor browsers or plug-ins like Screaming Monkey. This should be even more disturbing when you realize that many people are down-grading to XP from Vista (resulting in an upsurge in IE6 users), and Microsoft has already stated that the next version of IE will be Vista-only. With $200 PCs that don’t support Vista (but do support Ubuntu) selling out over night as Walmart, now is a really bad time to look hostile towards the Web.

    Neither of these two problems would make me feel all warm and tingly inside if I were a shareholder.

    Ryan Ackley: "Most of us poor slobs are relegated to working for an entity similar to Microsoft. When we do, we have an ethical obligation to look out for their interests."

      Do you mean to suggest that business ethics always trump social ethics? I won’t deny the existence of workplace obligations, but they must be balanced against your other obligations, including those to law and society. People will naturally disagree in these matters, but a difference of opinion is not the same thing as bias.

    Ryan Ackley: "We’re also not talking about murdering 10000 baby  seals for their blubber to melt down for fuel for the Hummers of Microsoft execs. We’re talking about a standard that 10 years from now, people will have forgotten about."

      Ten years is the age of HTML 3.2, and there is still a lot of content on the Web written for that version of HTML. In fact, HTML5 includes information on how to handle <font> and other deprecated elements so that a browser written today using the HTML5 spec can still handle such content.

    Ryan Ackley: "However, I strongly believe that there should be a consensus on any new Javascript standard between Mozilla and Microsoft."

      Where does this leave Apple, Opera and Adobe, let alone anyone else that might want to  implement ECMAScript, for browsers or anything else? An agreement between two organizations doesn’t need a standard, it just needs a contract.

    Ryan Ackley: "Without that, a new standard is simply documenting the behavior of Firefox."

      No, because even if it were only Firefox (and it’s not), the implementation is based on the spec rather than creating a spec to fit the implementation. (OOXML being a good example of the latter.)

    Ryan Ackley: "I’m not really interested in the minutae of what went on in the spec meetings. I’m a developer and I’m sick of kludging cross-browser javascript. It is Brendan and Chris’s job to fix this problem."

      The minutes of the meeting I quoted suggest that Microsoft won’t adopt ES4 no matter what TG-1 does to try to reach a compromise. Microsoft’s idea of a compromise was for everyone to trash years of work on ES4 and work on their half-done spec, which doesn’t come close to offering the features most of the people in TG-1 want. That leaves no room for compromise, and it firmly puts the ball in Microsoft’s court.

  31. Jon Galloway says:

    Javascript updates wouldn’t break the web if IE followed RFC 4329 versioning to script references, would it?

  32. Ryan Ackley says:

    First, I never said or implied that the greater good and the interests of Microsoft are mutually exclusive. Also, I thought it went without saying that our obligations to laws and moral values serve are more important than business ethics. All standards of ethics place the law above workplace obligations.

    I think your bias against Microsoft is coming to the surface here.

  33. Matthew Raymond says:

    Ryan Ackley: "First, I never said or implied that the greater good and the interests of Microsoft are mutually exclusive."

    If they weren’t mutually exclusive, we could just argue the merit of their position and leave their motives and interests entirely out of the conversation.

    Ryan Ackley: "I think your bias against Microsoft is coming to the surface here."

    By "bias", I presume you mean this definition of the work:

    2. a particular tendency or inclination, esp. one that prevents unprejudiced consideration of a question; prejudice.

    http://dictionary.reference.com/search?q=bias

    Unless you’re willing to specify what prejudice you are referring to and how it has any baring on this conversation, then one can only assume your comment is little more than and ad hominem attack. From my point of view, I have stated a rational basis for my dissatisfaction with how Microsoft has handled this particular situation. What exactly is your basis for arguing that other parties have behaved in anything other than a reasonable manner? What specifically do you think they didn’t but should have?

  34. Mitch 74 says:

    Actually, several of the matters discussed herein could be addressed quite easily.

    Right now, Internet Explorer (7 and lower) can’t load or interprete Javascript with a type different from text/javascript (which is an antiquated MIME type for Javascript, since it should be application/javascript or, even better, application/ECMAscript).

    As such, any implementation of ES4 would be able to do ‘easy’ MIMEtype switching on those files by enabling ES4-specific constructs (of which there are few, if my reading of the current spec is accurate) – for that very simple reason, I don’t think ES4 would ‘break the web’ – the web didn’t break when Mozilla started implementing a Strict mode for CSS rendering (it’s a different matter when discussing IE6’s Strict mode), it shouldn’t break if IE8 starts switching constructs on or off depending on script type.

    No, what may very well break is that, due to the increased power of ES4, IE’s static, not quite correct DOM level 1 and half-baked event model (and that does concern your team directly, my dear Chris – who came up with that impossible to use window.event object anyway?) are just not up to stuff.

    Interestingly, this would mean that an ‘easy’ solution would be to (roll drums please) fix IE’s DOM (you went there half-way already, with Strict mode’s DOM being much closer to W3C’s standard than before) – and then, ensure that scripting works as intended: depending on the type of script required by the page, load the most appropriate script interpreter: Jscript if type is ‘text/javascript’, SpiderMonkey (if MS doesn’t develop a conformant VM themselves) if type is ‘application/ecmascript’, etc.

    I mean, some pages actually mix VBscript and Javascript, and (as far as I know) those two don’t run on the same engine, so why should things be any different here?

  35. palmer says:

    MS lead the way with IE5 – best implementation of W3C standards – DHTML and CSS. And added XMLHttp. Which led to AJAX and Web 2.0. Kudos to MS.

    But then, MS decided to create its own IBM-esque SNA around dotnet and c# – a mix of java and delphi. So there were two islands facing the developer – ie5/6 and dotnet. And let IE stagnate. (And c# 3 is turning into a bit of what es4 could be – a monster).

    But then MS realised that the action had moved from ‘bondage and disipline’ OO like Java/C# to scripting and a more functional and structural approach to programming – based on client side AJAX and server side Ruby (gradually supplanting Java).

    MS have realised that what is required is ONE decent general purpose scripting language which takes inspiration from python, ruby, lua and dylan and also functional PL’s. 1001 IronsWhatever create confusion. But no one trusts MS to behave honestly and openly and collaboratively in developing – quickly – this language.

    A real shame! A readable pseudocodey syntax with decent functional/object semantics is needed. Leave {} for defining records/objects and let code blocks be defined using something else. [] for arrays.

    Heres roughly what the syntax should look like:

    class Point

     att x:int //att = attribute – hidden field _x

     att y:int

    end

    let x = 10 // type inference

    let pt = Point{x:10,y:20} // object intitaliser

    if x == 10

     pt.x = 11

    end

    foreach i in pt

     print(i)  // prints 11 and then 20

    end

  36. Chris C. Root says:

    @Robert Both the Flash/Flex and PHP development communities have been making transitions to equally new and different incarnations of their respective languages. Neither transition,  have gone the way that Chris envisions a switch to ES4 as "javascript" going. I’m sorry, but I just don’t buy it.

    Developers are speaking up loader than ever here and on the IE blog, that "incremental" changes in standards is not enough.

    @Chris I don’t know if your opinion is affected by your employer, or your employer simply has put you in the position you are in because of it, and  I don’t know what changed during the development of ES4, I do suspect that your employers position is based on what a fully decked out HTML 5, ES4, SVG compatible browser would do to the success of Silverlight.

    To me, there are no other ways that your comments about "breaking the web" make sense. I want to believe that it’s just your opinion, but there are so many public statements that show that that opinion is at least shared by your employer, and will indeed have an adverse effect on the tools that we use. I don’t think there would be so many blog posts along those lines if I was alone in that feeling.

  37. bilgi yarışması says:

    Actually, several of the matters discussed herein could be addressed quite easily.

  38. Joey says:

    My cell phone # is 713-992-8006

    (I have a custom dial tone when you call, it’s an awful song, but somehow it got there.)

  39. Webdesign says:

    I think a very large part of the problem is an anti-Microsoft bias in the Mozilla/Open-source camp. There is a perception that every individual in Microsoft is a droid carrying out the will of an evil corporate overmind bent on world domination, the end of open standards, the end of personal freedom, and end of the American way.  

  40. giggle says:

    well hay i think life is kinda dumb cuz every one is jugdeing ea other and making mean coments and raciests and nothing is ever good enogh or cheap enogh or competely wrong people need to be more opean minded and think about things more like the death penitaly is dumb. 2 wrongs dont make one right. shure it sounds fair u kill some one u should die but wts that teaching our kids. or the illeagual imagrents thing i think i no sounds out rages but a gigantic wall would be good cuz they need to stay out unless they are americans. people try to make every one happy and it never works cuz every one wonts something diffrent and it is the survival of the fitiest.

  41. bilgi yarışması says:

    Politics aside, one of the things that irritated me about Brendan’s post was that he seems to think that Microsoft is in the minority. That statement shows total disrespect for the end-user. There are two members of that committee that matter most. Microsoft and Mozilla. They have to implement the standard.

  42. vaginafaced says:

    you need to stop ya honky douch face vagina in ya sirty wet mouth

  43. arunerblog says:

    The grackle birds are out in full force in Austin. They are noisy and obnoxious, but I only visit with them but once a year, when I, like scores of other Californians, descend on Austin, TX, for Geek Camp, aka…

  44. Barak Obama- Change?

      What change?…the only change I see for 21st century in the US;  is if Obama wins; he will be dark skinned?   Ok, let’s hear what is going to be different?  Obama is a professional politician that his only real focus is to get elected.   In following the best of political practices; He is riding that fence that divides the middle like a true pro. He is anything but a common joe.   He is elected as a Senator and then runs off to get another job?- as the next President of the US.  He sounds like some teenager that gets employed at the airport confession stand selling lemonade and then thinks he knows all their to know about airports…and then apply for a pilot’s  position.

  45. JohnMcDade says:

    If my math is correct,with the price of crude oil at $43.00 a barrel, gas should be costing about $1.15 a gallon, and thats with the oil companys making an INCREDABLE Profit.. Allso,when do we start really punishing These big Companys for shipping jobs over seas to increase there self centered greedy profits?? Sincerely, John Paul McDade

  46. Medyum says:

    Also, pretty much the only danger for people starting to develop for ES4 is that they trip over the newly added keywords. Other than that it’s take it or leave it as a developer may chose to make use of any ES4 functionality or not, that’s entirely up to him.

    Perhaps ES3 is sufficient for the people writing some hovering button code, yes. But why should we leave the framework and application developers in the rain, when there’s really no need?

  47. Medyum says:

    First, I never said or implied that the greater good and the interests of Microsoft are mutually exclusive. Also, I thought it went without saying that our obligations to laws and moral values serve are more important than business ethics. All standards of ethics place the law above workplace obligations.

    I think your bias against Microsoft is coming to the surface here.

  48. medyum says:

    Jason,

    No, Chris doesn’t "know all this". He has publicly demonstrated his ignorance.

    One last suggestion, Chris: If you don’t want to be called a liar, stop making blog posts full of untrue accusations, In other words, you are a liar, and have publicly demonstrated this fact to the whole world now.

    The facts speak for themselves. Brendan has clearly pointed out the falsehoods you shouted from you blog, and you have not even tried to refute them, because you can’t.

    How about retracting this one lie pointed out by Brendan, about dissenting views being shouted down (you should really be ashamed of yourself, Chris):

    """There certainly was no shouting down of the dissenters — that’s a bold lie in view of the well-attended and friendly dinners sponsored by the face-to-face meeting hosts."""

    Do you think you can just make stuff up and get away with shouting it from the rooftops? You disgust me, and I’m sure I’m not alone.

  49. Do you think you can just make stuff up and get away with shouting it from the rooftops? You disgust me, and I’m sure I’m not alone.

  50. hikaye says:

    This is fantastic. I am going to add it to my sites. Thanks!

  51. Chris, you work for company that is perceived by millions of people, world wide, to be the most evil company in history, and not without some very good reasons. Given this, you cannot expect people to trust you, to work with your "scripting people" under the assumption that they can be trusted, or to treat you and other Microsoft employees just like they’d treat anyone else.  

    So get off your high horse. You work for an evil company, and you will be treated accordingly.

  52. you need to stop ya honky douch face vagina in ya sirty wet mouth

  53. sesli says:

    Good Thanks tou admin super Thank God – u r not likee my French buddy – who was on an exotic dish trip this year and wanted me to prepare — big lizards, deer, monkey, snakes, cats & dogs

  54. Nice and useful article. Thanks for examples.I will work out these information in the next website.