The Very Worst Uses of Windows
bigplrbear writes "I found an interesting article revealing the many places that Microsoft products reside, and what they're used for, ranging from elevators to ticket scanners."
From the article: "Thanks to VMWare Windows is spreading throughout the datacenter. And, of course, there is only one operating system to use if you are dependent on Microsoft apps like Outlook, Word, and Excel. While I have joined the chorus of security folks who rail against the Microsoft Monoculture I still cannot believe some of the uses for Windows. Some of them are just downright silly, some you may claim are criminally negligent." Note: I'm making no claim of criminal negligence!
What, you mean other than as a desktop OS?
Medical equipment: I confirm. My cousin is an engineer for General Electric, Medical section. As far as I know he services cardiac echography equipment. From what he told me, they all run Windows. Of course, this isn't life threatening, but I do know he's hardware guy and it wouldn't be the first time he calls me for a software problem in his job.
While not in this case, a BSOD may mean real "D" these days in a hospital.... Sad, but true...
Ahhh...the great dumpster continuum. Many a free computer will be found there. -- sowth (748135)
Mac OS X?
-=[You cannot consistently judge this statement to be true.]=-
System crash.
Launch Air Bag? Abort/Retry/Cancel
Most plants are running on PLCs, but their user interfaces HMI are pretty much all running some form of Windows. Common ones include Proficy iFIX (by GE), RSView (Rockwell), and WonderWare InTouch (Wonderware) on either Windows XP, Windows 2000/2003 or some form of Windows Embedded.
It is actually incredibly difficult to find mature HMI software that is available for Linux.
Titus Barik
I'm all for having a "lol" at stupidly overcomplicated systems being used for the most mundane of tasks, but this article is a little sketchy on some of the details.
For example, one line states "Why not program some stripped down embedded system for that task?" when it doesn't even indicate what version of Windows the system he's talking about uses - there IS an embedded version of Windows available for such tasks, you know.
The article is still a good read, though, but I'd take what it's saying with a pinch of salt and don't just immediately start bashing Microsoft, after all it's not their fault if a sysadmin makes a stupid design choice or 10.
+1 IDisagreeSoHeMustBeATrollOrAnAstroturferOrAShill
I've seen quite a few... every ticket machine at Melbourne Airport one day was going through a BSOD-reboot loop, placed quite a workload on the human employees. I really don't understand how any company who's done a tiny bit of research could think Windows is an appropriate platform for something that should really be running a custom embedded system like a cut-down *nix.
We have a 350MHz spectroscope in our lab that has embedded XP. Now if we go for few seconds of RF sampling, it writes Time vs Signal values as a CSV file. Now the funny thing is you can't open files with more than 65000 rows in excel and since the spectroscope itself has nothing but windows applications, none of them is capable of displaying the saved samples. You have to transfer the sample data to another computer and open them through Labview or Matlab or some such tool. Why would a spectroscope costing nearly $30,000 be running Windows.
Face your daemons!
Another problem with overbloated systems running simple tasks is the huge draw of electricity. How much power could we save (and, therefore, money) by using bloated systems less for simple things?
An obvious observation, but I thought I'd make it.
Mmmmmm... Bold, yet refreshing!
Yep, The prison where I worked as a guard for a while changed their control center from mechanical switches to a PC running XP. I worked the control center a lot and the "upgrade" sucked. You had to page thru several screens to see all the doors and the touch screen was too sensitive. You could open 2 doors or the wrong door by accident. The interlock system was suppose to prevent that by requiring you to use both hands to open doors, but it proved to be impossible to use so it was disabled. the OS was always crashing (likely the shitty program) and you had to wait for the system to reboot before you could open doors without the keys.
Paper Clip: Do you mean Airbag?
Face your daemons!
In Phoenix we have a power company called APS. In some of the gas stations there are kiosks that allow you to pay your bill using Cash. I was walking through a circle K the other day, and to my horror i saw this:
link
Sorry about the shitty image quality...I took it using my crackberry.
Yes, that is a dialog box politely informing you that you have been Trojaned.
NewslilySocial News. No lolcats allowed.
A good chunk of the Command and Control systems on most modern (or most recently refitted) naval vessels in the United States' inventory run on Windows technology.
It kinda gives me the shivers knowing that one of our ships could be sunk by an "inbound" because the point defense system is suffering a BSOD...
it doesn't even indicate what version of Windows the system he's talking about uses - there IS an embedded version of Windows available for such tasks, you know.
I presume you mean Windows CE?
I'm on a team that (among other things) makes BSPs for Windows CE. Did you know that every single driver in CE5 runs in user mode? Ayup. They're simple DLL files that device.exe launches and runs as threads. Just at a slightly higher priority than Pocket Word.
Think about that a moment.
The drivers crash just like programs too. They just...bail. Suddenly the device the DLL is providing an interface to is simply gone. They don't run in supervisor mode, so they are susceptible to every single thing that can crash a regular program.
They're starting to fix this in CE6, but naturally Microsoft's solution is...to do both!
In typical MS fashion, they are fixing a clusterfuck by mixing it with what they should have been doing in the first place, thereby making an even larger clusterfuck.
Weaselmancer
rediculous.
Windows for Warships
Oliver's law of assumed responsibility: If you're seen fixing it, you will be blamed for breaking it.
Database is definitely the way to go with that many lines of CSV. But he's already got Office so why not just Access? If you're going to go Microsoft, go all the way.
If we install anything on that machine, it would void the warranty. If we send it to them, it will take a week to get back to us. Its one of those devices we just can't do without even for a single day :( It works fine when sampling time is a few milliseconds at 10K samples/sec or so, but 200MHz for 3 seconds wasn't something they envisioned
Face your daemons!
Also, a few months ago I stopped at a bank machine to withdraw some cash.
So I entered my PIN and withdrawal amount. While waiting for the magic money machine to do its thing, I idly tapped my fingers in random patterns on the touch screen.
Suddenly, a standard Windows XP taskbar and Start button appeared.
Being curious, I tapped the Start button. Kinda freaked me out when a complete Start Menu appeared. Everything was there, including Internet Explorer, Outlook Express, and Windows Media Player.
I can't believe that neither the ATM machine manufacturer nor the bank put any effort into building a custom, stripped-down image to run the bank's cash machines...
When drinking one night with a former roller coaster technician who had decided to get into the less stressful job of datacenter ops, I found out something terrifying about a famous (and, it should be said, injury/fatality-free as far as I know) catch & release roller coaster.
The coaster is designed such that the train car is loaded at a station. Then a tractor mechanism pulls it backward, up to the top of a steep incline. Once at the top, the mechanism releases the car, and the train goes rocketing through the station, through a series of tight loops and twists, and then coasts up an identical steep incline on the other end. There another mechanism catches the car, drags it all the way to the top, and then lets go, sending the car back through the series of loops and twists in reverse. The car decelerates up the incline back on the original side, is caught once again, and returned gently to the station for boarding.
All of these catch mechanisms need to know the velocity and weight of the train car in order to properly catch and decelerate it without hurting any of the occupants. Those values will change with every load of passengers, due to people's varying weights and their distribution around the car, so they have to be calculated on the fly.
The software that does this, the engineer swore to me, runs on...
Windows 3.11.
This knowledge made future rides on that particular coaster a hell of a lot more scary.
Even Jesus hates listening to Creed.
I have no reservations about it. Given the constant stream of complaints that Bill Gates himself had about the quality and stability of Windows, I'd say it is pretty safe to assume that Microsoft is WELL aware of problems with Windows. And for Microsoft to actively push their OS as a platform upon which important, significant and even critical systems and services are run without disclosing the KNOWN risks of using Windows under such circumstances is criminal negligence or even worse.
Once again, resorting to the old "car analogy", if an auto manufacturer were caught pushing their dressed-up SUVs as actual ATVs, I think it's safe to say that various consumer protection agencies and possibly the department of justice might get involved.
How does Microsoft get away with this? Simple -- they are the only game in town and as such is typically viewed as "the best we have." To complain that the best is not good enough would be considered by most to be a wasted effort.
"Critical Mass"
Microsoft achieved it and now most tech people know only Microsoft Windows and will deploy only Microsoft Windows for any given task.
It's good that some people like the NYSE has found Windows lacking and that better alternatives exist for their specialized tasks.
I don't think anyone will argue that Windows on the desktop is acceptable for a lot of people, especially those people who don't have people like me to help them use other systems. If they are on their own, trying to use Linux or even MacOS might leave them out in the cold or under rather EXPENSIVE support costs. (A lone user can barely throw a stone without hitting someone who can deftly advise them to reboot and reinstall.)
But to put Windows in SPECIALIZED applications and devices makes no sense. "Compatibility" isn't an issue there. "Usability" isn't an issue there. "Stability" and "reliability" are often the most important considerations with cost as a third or fourth. (I don't have a second most important consideration, but I'm pretty sure the fifth is "profit!!")
I'm sure that lathe could be controlled by Linux or QNX running on the same hardware. It amazes me to see the horrendous job that companies who make perfectly good machine tools do on their control software. They wouldn't make the lathe's chassis out of cardboard, why would they build their control systems on windows?
-jcr
The only title of honor that a tyrant can grant is "Enemy of the State."
After all these years I am willing to admit that Microsoft has won the desktop and server wars.
i beg to differ...
It is all just a clever ruse to lul Microsoft into confidence. All these systems are in fact UNIX sleeper agents, that will awaken all across the world at a given time. At the same time, Redmond will have put it's recently received 30 feet tall ceremonial gift windows logo in an unmonitored storage room when suddenly hundreds of ninjas emerge from it, swiftly overcoming any resistance.
GAAH! MY PRINTER IS ON FIRE!!! PUT IT OUT! PUT IT OUT!
>I presume you mean Windows CE?
No, he means Embedded Windows, like Windows XP Embedded: http://www.microsoft.com/windows/embedded/products/whichproduct/default.mspx.
(What scares me is that you work on embedded systems and have never heard of it. I've never even touched embedded systems work and I know about it.)
Every 2nd Wednesday of the month, instead of playing a TV program, I can hear it, but see a windows XP desktop, with a minimized window of the video playing, and a notice that updates are ready to install. That usually sticks around until late afternoon, or early evening, when someone finally either installs the patches and reboots, or just restores the minimized screen..
What are we going to do tonight Brain?
I used to work in a semiconductor fab (memory specifically). The original fab was all unix based on our end. Some of the machines ran windows, though. When a new factory was built, for some reason, management decided it would be a good idea to start from scratch on the system that controlled the manufacturing process. Rather than use our proven, stable, and known unix based system we created a new system from scratch which ran on windows.
I left the company in march 06. Not long before I left, though, sometime in February, management pulled everyone together to yell and scream because that windows based factory had already gone over it's allotted downtime for the entire year.
We even saw the virus scenario mentioned in the article. It infected the terminals the people in the actual factory used and all of the tools which were controlled by windows computers. All production had to be stopped while we ran around to every terminal and tool in the factory, rebooted with a clean boot floppy, cleaned the virus, and then booted the thing back up.
... well ok, not quite, but still! There's an ATM at my school which embodies the mother of all WTFs in my oppinion. It's a DIEBOLD ATM with a _headphone jack_ which usually displays the Windows XP login screen with a big error message saying that the bank domain is not available! If you think I'm making this up I wish to present to you... the evidence: http://www.dumpt.com/img/viewer.php?file=wmbbbwi8otsxgqlmi93u.jpg
You don't think enough... therefore you better not be!
Windows 3.11 wasn't a truly multitasking operating system, so that, if an application was doing something in between Windows messages, it genuinely owned the whole machine. If you are doing a near real time system, you probably don't want to lose a time slot in the middle of a roller coaster ride so that some other daemon could fire off and do something else. So yeah, Windows 3.11 might actually work rather well, so long as the application wasn't trying to allocate too many resource handles.
Actually, I wonder why MS wouldn't release a non-preemptive Windows, just for this purpose. It would be a lot more reliable for some applications.
This is my sig.
With Windows, if something goes wrong, you can contact the hardware manufacturer (If it's hardware/driver-related) or Microsoft if it's software related. And if they won't help, you can sue them. You can't say the same about *nix, where the prevailing attitude seems to be "It don't work, you're on your own to find a fix"
Read a EULA lately, there is a line voiding Microsoft of any responsibility. *nix, plenty of paid for support out there, Novell (SuSe), Canonical (Ubuntu), Red Hat (think this one is obvious) and those are just distributions. A lot of the bigger more important packages have commercial backing and support. I should mod you flame bait, but never attribute to malice that which can be adequately explained by stupidity.
# cat
Damn, my RAM is full of cats. MEOW!!
I've never done a GUI in Python
There are several GUI frameworks for Python. You could try either Tkinter or wxPython if you want a GUI app that runs on the local machine. Or read on:
All of my Access replacements in recent memory have been web projects.
And you can make web projects with Apache mod_python.
So why not just reboot the peripheral's driver and keep going? Heck, if the driver's going to crash /anyway/, and you have the choice between killing the driver and killing the entire OS, it seems like a pretty sound decision to kill just the driver. Even if in some cases this isn't useful, crashing the entire machine is never useful.
(n/t)
The writer of this article is making an assumption and then wandering around to find ANY justification. His specific example Number 5 [Train control] - he basically 'thinks' that a train is controlled by Window based on a converesation with someone and then looks for a justification for his opinion. No-where in the PDF he links does it say the train control system runs on Windows. It does say that the external plug-in management software is based on Windows [on a laptop I presume] but so what ? - that's common for many out-of-band management tools. I'm no windows fan at all [I think in the embedded sphere it's not advisable] but this article smacks of sensationalist and badly-researched reporting.
Believe it or not: Several years ago, an entire US aircraft carrier went out of control because of a computer crash. Operating system: Windows NT http://seclists.org/politech/2000/Aug/0027.html http://www.infosecnews.org/hypermail/0008/2584.html Shouldn't this have made the top ten? Can you beat this?
With Linux there is no accountability.
I don't know if you're a troll or an idiot, but the end result is the same. This is utter and complete bullshit.
My company wouldn't have several dozen fully-paid-up RHEL server licenses if we weren't damn sure who was accountable. We'd slap CentOS or something similar up and save a few bucks.
And if Linux isn't good enough for you, you go with something solid and reliable like Solaris or maybe AIX or possibly (depending on the application) a stripped-down high-reliablility embedded OS. You don't go with some rinky-dink toy like Windows. That's bordering on negligence right there. You can't sue Lego if you rebuild your car's chassis using their plastic bricks, and then get in a auto accident and discover you have no crumple zone. It's not Lego's fault you tried to do something insanely stupid. Using Windows for any sort of critical app where people's lives may be at risk is nearly as stupid and negligent as driving around with nothing but small plastic bricks between you and the SUV in the next lane.
(This story so obviously needed a car analogy.) :)
Because, while it might offend your sense of only using the _perfect_ match for the job, the Real World is still driven by money. A cheaper mis-match that works, beats an expensive solution that uses the minimal computer and OS imaginable, just to make a point.
Machines are cheap, people are very expensive. So if you need another half a gigabyte to run Windows there, but you can use existing skills and libraries to make that app, you might actually save millions in the process.
Yeah, you could program most stuff on DOS. And put up with incompatible and glitchy graphics libraries just to have that arrow cursor and some minimal widgets for your app. You could write your own interrupt-based thread simulation, 'cause DOS didn't come with any support for that. And write your own spinlock semaphores at that, and wonder why your app deadlocks. You could still do your own pointer arithmetic to put up with 16 bit addressing in a world of gigabyte-sized data sets, and do your own shitty XMS/EMS block copying just to address more than 640 KB. You could even reimplement most of the network protocols and half the other libraries, because nobody else ported those libraries to DOS. Etc.
Yeah, you could do that, just to willy-wave about your app not needing a full-featured OS at all.
Unfortunately, all that costs money and time. Money and time for your programmers to learn those old, quirky, half-arsed libraries instead of using something they already know and their IDE already supports better. Money and time to debug all the bugs you've introduced in the process. Etc.
And if you think that your reinventing the wheel will be more robust than Windows in the process, well, I can tell you that you might be in for a surprise. Most of the people who rant about how MS should be shot at dawn for having bugs, write far far far worse and less secure code, and some can't or shouldn't write code at all. Which isn't supposed to mean that MS writes good code, but, well, mostly think George Carlin's "Just think of how stupid the average person is, and then realize half of them are even dumber." It applies to programmers too, and doubly so to those who get hired just because they're the cheapest retrained burger flippers and someone thinks that's a cost cutting measure. About two thirds don't even know the language they're supposed to program in, according to one study.
At any rate, if any company did that kind of waste of money just for some fucked-up jihad against MS, I hope the shareholders nail the management to a cross. Because that's certainly a breach of the fiduciary responsibility to make money for the shareholders. Companies are there to make money, not to fight OCPD-nerd crusades.
A polar bear is a cartesian bear after a coordinate transform.
Indeed, but I've found few of these applications that didn't have better written counterparts.
Dissolve... Resolve... Evolve...
Every copy of Solaris (and Java, as I recall) sternly tells you not to use it for critical medical equipment, nuke plants, missile guidence, all sorts of stuff.
Vintage computer games and RPG books available. Email me if you're interested.