Hacker News new | ask | show | jobs
by hugs 5759 days ago
I didn't fail to understand it. I worked for years in corporate IT and have maintained and upgraded enterprise systems (PeopleSoft/Oracle) on slow (1 year+) upgrade cycles. Those days should die. And I came to that opinion from direct in the trenches experience in that kind of environment.
3 comments

So you think it's a good idea for Microsoft to continually break crappy internal web applications that misuse outdated Microsoft technologies? Crappy internal applications that misuse outdated Microsoft technologies are the life-blood of business, and that's the biggest factor keeping businesses from moving away from Windows. Do you think it's time for Microsoft to give that up?
For the sake of the millions (billions?) of annual man-hours spent supporting every crappy browser in nearly every crappy external web application? Probably. I'd be willing to bet (a lot) that the hours spent working around the not-recent versions of IE are many many many times larger than the amount of time needed to fix every site that relies on a not-recent version of IE.

Enforcing updates would also likely improve IE's market share, as all those not-recent versions are part of the cause of developers migrating towards Firefox / WebKit browsers. How much has this hurt Microsoft? Enough to make it worth losing the stragglers who aren't paying to update anyway?

edit: of course, there's a solution to all this: the ability to specify the particular version of a browser you're targeting, if it matters. Then at least a warning can be thrown, and if multiple renderers are included, they can be used selectively.

Another solution is for Microsoft to create a version of IE that is an application rather than an operating system extension. One should be able to install multiple versions of IE on the same machine without them conflicting and without it breaking features like Windows Update that depend on tight integration with the browser, even if it means installing as a different user.

The advantages would be twofold. First off, people who need to use a 10 year old version of Internet Explorer because of crappy internal apps could continue to do so, and they could install and use a new version of Internet Explorer for using the real world, modern Internet. Secondly, we'd avoid having to hear about the (legitimate) woes of developers who need to run multiple copies of Windows virtually to do testing, or use third-party hacks to get multiple versions of IE to run on a single copy of Windows.

And I'm suggesting that the above be done for new versions of IE. But it's just as possible for Microsoft to release an application version of IE6 that users more recent versions of Windows could install in order to run those ancient internal web applications. There's benefit here too in terms of showing people that they need to use an old-and-busted version of a program to access their internal stuff vs the new-hotness they'd have to use to access the public Internet. Even rebranding Internet Explorer with a different name would help toward that somewhat (if you could install it along side the ancient version of IE6).

I really hate the browser-as-embedded, in part because of this reason. And because it has always struck me as a massive security time-bomb, because they're rarely segregated properly. My blood ran cold the first time I discovered I could open a web page via Windows Explorer.

Similarly, I hate that Chrome only allows one installation, with the exception of Canary (windows only). What's the point? Give them a unique ID, and namespace everything! Get clever with hardlinking binaries if nothing's different, but sheesh.

</rant>

That's likely the best solution, yes. I guess we can hope it goes that way eventually, right?

You can't upgrade frequently if you don't have any tests. Disclosure: I wrote a web testing tool.
So you think it's a good idea for Microsoft to continually break crappy internal web applications that misuse outdated Microsoft technologies?

Yes. If corporate IT departments get burned enough, they'll stop basing their in-house applications on proprietary standards that come and go like boy bands. That might not be good for Microsoft but they certainly don't want to be the only vendor offering lock-in as a "feature," do they?

If upgrading a browser breaks an application you wrote, chances are 99.999% that it's your fault, and nobody else's. Either you have a bug, or you chose the wrong tool for the job in the first place.

they'll stop basing their in-house applications on proprietary standards

At the time, IE6 was more standards-compliant than any other browser. The problem here isn't that it was a bad browser, it's because the standards refuse to sit in one place.

Point being, though, the "standards" that are causing trouble today were proprietary to Microsoft (ActiveX, for example).

I shouldn't have used the term "proprietary standards" at all -- it's a bit of an oxymoron.

Who are you to decide that keeping up-to-date is more important, and maintenance of internal systems be damned?

These things must be in the hands of those responsible for maintaining the systems. Anything else, and the potential risk is too high, and enterprise customers will have no choice but to stay away.

Heck, right now you're giving them one more excuse to stay with IE6.

EDIT: you also haven't defended your stance on forced upgrades in the nature of Chrome. Even if you were right about frequency, forcing the changes whether the users are ready or not is madness.

Do you use any web service like Gmail or Google.com? They "force" changes on users all the time. That's the beauty of web development.
Except, it's doubtful their upgrade would break a critical enterprise-class application because those enterprise-class customer's aren't using it to begin with.
Switching to a Chrome-style update process for IE wouldn't do anything to solve the problem, though. Either enterprises would never upgrade to IE9 because they want control over update deployment, or they'd upgrade to a special crippled version of IE9 that updates at their discretion like how Windows Update works in enterprise deployments. Either way, web developers would still have to deal with tons of machines on old, broken IE.

Enterprise environments are the problem here, MS's deployment model is just a symptom.

Edit: To clarify, my point is not that automatic updates wouldn't work, but that enterprise environments are such a large part of the current internet that web developers cannot ignore them. I'd rather have enterprise users on 'Outdated IE9' that I have to deal with than have 'Oh, are these customers on IE9.0.1.2, IE9.0.1.3, or IE9.0.1.4?'.

They would have to update eventually and the old versions of IE would no longer be updated w.r.t security, so they would have to install IE9.

Microsoft is under no obligation to provide a crippled version of IE9, and while the companies would whine a lot, they would fall in line (it is not like they would install Linux on the desktop instead, or even use Firefox).

But it seems like there would the be a market for a corporate browser, one that guaranteed stability, API access, quirks, etc. Microsoft is already doing that to some degree, so although it would be in the best interest for everyone else if they switched to this auto-updating style, they would be writing themselves out of a market they currently dominate.
So let me understand this. Screw over the customers who hand you loads of money to satisfy customers who frankly don't want to use your product regardless of quality?