Microsoft’s Internet Atrocities

By  on  

For better or worse, Microsoft has been a huge player in the way the internet has evolved. You would expect that considering Microsoft has had a virtual lock on the PC OS market as well as an overwhelming percentage of the browser market share. Unfortunately, however, Microsoft has lived up to its name as a poor-quality company when you consider their internet contributions. I consider Microsoft's internet-related products as absolute atrocities that may have set us back more than they've pushed us forward.

Internet Explorer x.x

In this age, a browser installed on an operating system should be standard. That doesn't mean the browser should be low quality, though. Internet Explorer's entrance into the browser market was initially great because you could escape from AOL's grasps, up until Microsoft decided that following standards wasn't important, especially when you could implement your own.

Internet Explorer 5 and 5.5 contained numerous CSS inconsistencies, most notably with floating. Internet Explorer 6 was an improvement but Internet Explorer's problems continued:

  • Numerous, CSS issues
  • Lack of CSS functionality
  • Insufficient security features
  • Inconsistent or missing standards implementation

Microsoft renewed its commitment to Internet Explorer in late 2005 after five years of being stagnant. Internet Explorer 7 implements many improvements but problems still exist and Microsoft has a long way to go to prove it's serious about creating a good browsing product. Unfortunately, novice and beginner internet users will probably continue to use Internet Explorer for years to come.

FrontPage

Microsoft FrontPage debuted in 1997 and made every person with a computer think that they could make a website. Good? Hardly! Many of my customers exude an attitude of "why do I pay you that much if I could just do it myself using FrontPage?" People generally don't understand the time, effort, and skill that go into creating a solid website and

Beyond how it affects me, FrontPage generates some pretty horrible code. There's nothing like a good chunk of: <span><span class="MsoNormal" style="font-size:12.pt"><span><strong></strong></span></span></span> FrontPage also generates browser-specific code (guess which browser), but of course the FrontPage "web developer". And lets not forget that you need a server that allows FrontPage extensions.

IIS Server

IIS itself isn't the worst of the evils. Is does provide great support for ASP and .NET technologies but installing PHP on an IIS server and then getting it to work is a nightmare (yes, I understand that IIS wasn't meant for PHP). I mention that because I believe PHP installation with others servers is pretty fluid. IIS has also had more security issues than Apache but that's no surprise, right? IIS, to my knowledge, doesn't allow for easy URL rewriting like Apache does.

ActiveX

Microsoft created ActiveX to allow for programmers to provide users functionality beyond the capabilities of the standard browser. That's fine and well most of the time but when malware creators get ignorant internet users to download their ActiveX control a world of hurt can ensue for the user. Unfortunately Microsoft left IE untouched for years so no provisions were created to try to prevent the problem. I'm on the internet more than the average user and I don't visit any sites that require ActiveX functionality (I use Firefox, but never seem to encounter an ActiveX site). ActiveX is clearly not a needed technology.

Microsoft has been a huge letdown, creating subpar technologies that stifle web developers.

Recent Features

  • By
    Create a CSS Cube

    CSS cubes really showcase what CSS has become over the years, evolving from simple color and dimension directives to a language capable of creating deep, creative visuals.  Add animation and you've got something really neat.  Unfortunately each CSS cube tutorial I've read is a bit...

  • By
    9 Mind-Blowing WebGL Demos

    As much as developers now loathe Flash, we're still playing a bit of catch up to natively duplicate the animation capabilities that Adobe's old technology provided us.  Of course we have canvas, an awesome technology, one which I highlighted 9 mind-blowing demos.  Another technology available...

Incredible Demos

  • By
    MooTools Equal Heights Plugin:  Equalizer

    Keeping equal heights between elements within the same container can be hugely important for the sake of a pretty page. Unfortunately sometimes keeping columns the same height can't be done with CSS -- you need a little help from your JavaScript friends. Well...now you're...

  • By
    Create Spinning, Fading Icons with CSS3 and MooTools

    A goal of my latest blog redesign was to practice what I preached a bit more;  add a bit more subtle flair.  One of the ways I accomplished that was by using CSS3 animations to change the display of my profile icons (RSS, GitHub, etc.)  I...

Discussion

  1. Nobody Real

    In regards to IIS, what planet are you on? Since the release of IIS6, there hasn’t been one single serious security flaw discovered in IIS. That’s been more than 4 years. Apache has had dozens of remotely exploitable flaws in that same time period.

  2. I agree one hundred percent with all of this*. In fact I don’t think that you stressed it or covered enough of the stuff… Internet Explorer’s weaknesses involve only ActiveX and CSS? No way!
    Internet Explorer is also the only popular (as in, listed on browser stats comparisons such as w3schools stats) browser (counting public betas) to not correctly handle regular expressions as per ECMA spec. Meaning? It also has shocking javascript support.
    Actually, it doesn’t even support javascript – it supports “JScript” instead, that’s maybe why it doesn’t do javascript-y things correctly. As noted in one of your own posts, trying to change uninitialized DOM nodes causes the browser to abort the page, send the user a terrifying and meaningless error message, and waste everybody’s time.

    This error message fiasco “Sorry, we couldn’t load the page for an unspecified reason” is no small issue, it’s a major usability concern for end-users! Sure, it comes from a web designer’s poor coding (uh… mine, I’m referring to) but that’s not the point, not standard, and not the status quo. It’s unreasonable. Bad javascript should just abort the script, not kill the whole page!

    What else? How about the DOM itself? Virus explorer strips nodes, doesn’t understand event handling (try adding or removing event listeners), and basically rolls over and dies for most operations.

    Has Microsoft made a contribution to the internet. Well….. For many w3c specifications there has been a Microsoftie on the team. Perhaps this is one of the reasons why the specifications are thought to move so slowly normally! But probably not. Bill Gates claims that their fault is in implementation only, and that may be true (or not, who knows?).

    To be honest, I don’t really mind if the users make an informed decision to use Internet Explorer and their browser crashes or can’t display websites properly or whatever. I only really care how easy it is to write code for it. If I can sit down with nothing but notepad and make my ideas work, then I approve. Which is why I approve of any browser but Internet Exploder.

    Here’s where I disagree to some extent. In Secunia, without going to look at it today, Apache had 27 vulnerabilities (which were closed) whereas IIS 6 had only 2 vulnerabilities (which were closed). We might be able to chalk one or two of the extra Apache holes up to the greater popularity – more websites are hosted on Apache, after all – and it works on more operating systems, thus acquiring holes due to the way it interfaces with them…. But just blaming market share (like IE fanboys of old defending Idiot Explorer’s shocking security track record) is a “cop out” and an invalid argument.

    IIS or Apache? Seriously, IIS 7 will be the deluxe model! IIS is (almost) as fast as Apache (kinda) for dynamic content like PHP. It is not strictly “more secure” but it is certainly not less secure :P according to Secunia. What I don’t like about Apache is that if I edit the configuration, I have to restart the server. .htaccess files degrade performance and the manual advises against using them, but it really is a pain to have to restart the whole server every time I change just one directory in one domain. When I tried IIS I found it to be far too inflexible and difficult to administer – plus I want cross-platform websites so I play on Apache. It’s worth considering that all the examples and all the setup scripts et cetera… All of these things come with apache-specific files. IIS? Not so much.

    It’s always been Apache for me. I love mod_python, mod_perl, mod_php, mod_rewrite and everything else. However I think that for a lot of things I should look at working more and more with faster webservers such as lighttpd. Do you use mod_python? mod_perl? I do, but sparingly. I could slowly wean myself off of them.The point? Apache and IIS are Apples and Oranges. If the great power and convenience of Apache are too much, there’s always lighttpd – Apache and IIS aren’t our only choices.

    Back on topic, yes, absolutely, the internet has a lot of healing to do after Microsoft’s black hand smudged it. It’s not the people that I hate, or the company. Just that disgusting joke of a browser. Oh, it’s almost moot…. IE8 still can’t pass Acid2 in spirit. Try it on acidtests.org – the <object> elements can’t be displayed due to a cross-domain restriction – they’re transparently loaded by activex (surprise surprise) which means that they just can’t load. And it also disables the fallback content, which is the whole point of using object elements in the first place and shows that IE does not meet the standard.

    I had thoght that Firefox doesn’t pass Acid2 either but on reflection, where it says “pixel for pixel”, the specification doesn’t specify the border paint order for the nose and that’s where the nose can appear 1px off. Ask Hixie yourself, I bet he will confirm. The nose doesn’t match the current diagram but it doesn’t matter, it’s still a pass.

  3. sadsfae

    “What I don’t like about Apache is that if I edit the configuration, I have to restart the server.”

    You can use the “service httpd graceful” option, what it does is reparse your configs and does not actually interrupt active threads.

    9 times out of 10 you never need a full service restart for apache.

Wrap your code in <pre class="{language}"></pre> tags, link to a GitHub gist, JSFiddle fiddle, or CodePen pen to embed!