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!
I nominate the Diebold Windows CE (Visual Basic for Applications) voting machines to the list.
After all, Diebold could have done worse and used Windows XP, or Windows Vista (not that it was out at the time), but I still nominate Diebold to the list for having chosen VBA (not that there is anything wrong with VBA, VBA has its uses -- it's just that it's really a poor choice for making supposedly secure and transparent voting machines).
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.
Why do I still use Windows? Well its so I can get my little 32-bit Ski-Free fix. What is that you say? SkiFree works fine via Wine?
dd if=/dev/zero of=/dev/hda1
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!
Which is worse? I'd be just as worried about hand-coded x86 assembly in an embedded environment, or even Linux. Good old WinTel.
Have you thought about playing dumb and reporting that as a bug to their tech support?
Or... is installing MySQL out of the question? I hate to ask it, but a script to dump data into the MySQL database would be kind of handy. Still, querying and inspecting rf data should be a requirement on a spectroscope.
And btw, what I wouldnt do for even a 10MHz 16bit 'scope.
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!!")
Aside from the fact that putting drivers in user mode increases reliability, you've got a good point.
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!
In 2001, I was on a trip with a friend to Finland, Estonia, and Latvia. We needed to buy a bus ticket to get from Tallinn to Riga, and we needed some of the local currency (the bus company wouldn't take a credit card - another WTF).
So, I tried to take money out of the ATM in the office to buy my ticket. In the middle of my transaction, the application crashed, taking the OS with it (or vice versa). After a couple minutes watching the Windows automated boot process, the machine came back up to the "enter your card" prompt.
But it still had my card!
Fortunately, I didn't need my bank card for the rest of my trip, and my friend was able to get out enough cash separately. However, if I had been traveling alone, I wouldn't have been able to take the bus trip.
And I had to call my bank back home to cancel the card and request a replacement.
Never got that card back. Fortunately, no one ever used it to take my money, either.
>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!
These things started showing up in the Krogers around here about one or two years ago. They're sort of like soda dispensing machines, but you rent DVD films from them instead. You run through a selection of video case covers via the touchscreen (which lead to a description of the film if need be) before making your selection and swiping your debit card. The machine then takes about ten minutes and a bunch of horrendously loud noise before spitting out one DVD.
The thing is, they run Windows XP Home. I've seen the things randomly reboot (and repeat) many of times while standing in the nearby checkout lanes. One day there was merely a constant blue screen of death. Yep.
"He who can destroy a thing, controls a thing." --Paul Atreides, Dune
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.
All these suggestions (Use Linux! Install *BSD! Solaris FTW!) are all well and good, but if/when the system goes down, to whom do you go for support? Hardware caused a crash? Try and track down the kid in a basement that wrote the driver you're using. Some core functionality in the kernel caused a hard lock? Update to the latest kernel and hope for the best (Oh, and have to recompile your whole system while you're at it).
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".
Sure, you can go through a "Supported" linux vendor, like RedHat, but they're not guaranteeing the software, just the "Service" they provide.
While Windows may be a swiss cheese of security holes, they are legally actionable security holes, which is more than can be said for *nix
I'm pretty sure installing windows on any submarine is a bad idea.
Just because you're paranoid doesn't mean there isn't an invisible demon about to eat your face
-- and of course nothing whatever can go wrong with a *nix based platform used in the same environment.
There is also the small natter of FDA approval:
The 8-pound in-home gadget connects caregivers and patients outside of hospitals or clinic settings. It manages vital-sign collection, patient reminders, educational content, and motivational messages. The device has a 40GB hard drive. Information collected by the device is sent to the health care professional, and from there, physician and doctor can engage in video conferencing to discuss health issues. Doctors monitor and remotely care for their patients via an online interface using software called the Intel Health Care Management Suite. It currently runs on Windows XP only.
With the ability to hook up to wired and wireless monitors, such as glucose or blood pressure gauges, a caregiver can schedule times to remotely measure vital signs, or patients can check their own. The encrypted information is sent to a remote database, as long as the device connected to the Internet via broadband.
The Intel Health Guide PHS6000 received FDA clearance to enter the market after years of development and research, including pilot studies in the United Kingdom and the U.S. Intel said it expects the product to be commercially available from health care providers by late 2008 or early 2009 Intel's in-home health device gets FDA nod [July 10. 2008], Intel Health News
The purpose of the device is to support home care for the chronically ill. Home care is cheaper. Patients tend to remain more active, engaged and independent.
Why the hell would you want to hammer a single-user constrained, GUI-centric "operating system" square peg into a server OS round hole?
There's a reason why Windows still doesn't scale, and there's a reason why running multiple virtual Windows servers that don't fuck with each other is common.
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)
In theory that works, but in practice the device manager is not always successful in cleanly unloading and reloading stream interface drivers.
"I've got more toys than Teruhisa Kitahara."
I agree, and what a whinger!
No, I wouldn't use Windows for major process control, but yes for HMI. In don't know anyone serious in process control who would use windows for the actual control of plant, though for limited IO such products do exist Heck, we're firmly in the "safety interlocks must also be hard-wired" camp.
However, the article's description of SCADA as a protocol demonstrates a negligible understanding of that whole industry. It's like calling "word processing" a protocol.
In terms of some of the trivial applications, sure it's overkill on the hardware and OS side, but hey, I can develop a VB app to display a green arrow in about 1 minute. The licence costs for XP Embedded are almost nothing, and there's hundreds of hardware options available off the shelf in all form factors, including small fanless boards with solid state drives. The time it'd take me to find or assemble some other platform to make it happen would far outweigh any saving in equipment & OS cost. Sure, someone else could do the same with Linux in 1 minute with known equipment. Good on 'em! No skin off my nose.
If deployment is 10,000 units then yes each dollar on equipment counts, but by then the installation costs will far exceed the hardware so that'd become the main consideration in choice of platform.
-- All your bass are below two Hz
I was in a Macys (long story) and ran across a price scanner. These are little gadgets with the SKU reader to tell you the price of an item, but they also had a card-reader tacked on to tell you the remaining balance.
I walked past one and saw this: http://img55.imageshack.us/my.php?image=0710082036ib1.jpg
Yes, a Windows XP desktop. The taskbar was barely visible, but off to the bottom. Internet Explorer, Recycle Bin, and My Computer were there.
This got me thinking. Why would people use such a complicated system with so many parts and so much bloat... to look up a SKU?
The best answer I can come up with is that store maintainers want to keep this data in one format. I can imagine that the server has a SQL table of the names/SKUs/prices/sales/etc, and the registers can run querys against it. It would be easiest to make your devices query the same database - no glue necessary.
Still, wouldn't some form of Linux be more suitable? The kernel can be stripped down to remove everything not necessary (all mouse and keyboard input, sound, all other network adapters and graphics cards), while still allowing the same functionality.
So I understand why they did it. I still cringe when I think the power that thing must have... just for its simplistic function.
I have developed a truly marvelous proof of this comment, which this signature is too narrow to contain.
This has nothing to do with the quality of one OS over another. The whole paying field is tilted toward commercial systems by, among other things...
People aspiring to be locked-in... Including CEOs that want "gold reseller status" and Engineers get XX Certified and turn into little self-serving XX salespeople.
The amount of crap that is spoken about support contracts for commercial products. Supported, my ass - hours on the phone talking to someone who knows less than you do, it's more like psycology; "you know the answer - I just have to bring it out of you"...
Fearmongering over Intellectual property and licensing
FUDspreading over the supportability of one platform over another.
Insisting on a crappy GUI over a workable text UI at any cost. Heaven forbid the end user see text, much better he see a picture of a bleeding aardvark and a shoelace and try and figure out what that means...
OK - so I can blow a few Karma points in a rant every now and again, but really - it's not even Windows' fault - it is a competent OS in many ways as testified by how widely it really is deployed with no-one usually noticing.
It's the pseudo-professionality garbage-sphere that surrounds it that gets my goat.
Nullius in verba
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.
Have you ever tried contacting MS support? Even the high end MSDN support? They're not bad per se, but there is zero procedure for what to do in a bug situation, either it can be fixed without a programmer, or you're SOL.
Liberte, Egalite, Fraternite (TM)
I work for a fortune 500 company that runs web-connected building control software; not only HVAC, but door control, video surveillance, and fire alarm systems. This article didn't actually give example of catastrophic failure, and neither have the comments on the article. That's because most systems are redundant - if this building software crashes, the panels and systems continue to function. Not only that, but the software is designed to run with a redundant server. If I were in charge of a nuclear power plant, and it was running on Linux, I'd have a redundant server there, too. Think about.
If we follow this trend---IBM, Microsoft, Google---with Google being the next technology megapower, what are we going to have next? While integrating a train controller with GPS and Google Maps isn't that far-off, what about an elevator that runs off of Firefox which has a Google Gadget for polling button pushes over an AJAX API?!
I once had a signature.
The Toaster was used by everyone without a budget because it was very very close to full broadcast quality and you could afford to get one. The later Toasters maybe were broadcast quality, but by then there were other affordable choices. The Prevue guide used to use Amigas (with just a genlock, though) to display the program guide.
"You're right," Fisheye says. "I should have set it on 'whip' or 'chop.'"
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?
After all Windows has a number of advantages when it comes to being a system that interfaces with the user. However often the hardware itself isn't directly controlled by the Windows system, but by another embedded device that runs whatever it needs to (and doesn't need to interact with the user).
I've seen this sort of thing quite often. We have a spectrophotometre (I think that's the right term) and there are three components: The measurement unit itself, the controller computer, the Windows PC. The unit is, of course, where you put your samples and what does all the actual measurement. However it is a very complicated device, that has lots of things to control. Well the PC you are on doesn't do that directly for a number of reasons. It instead connects to a specially modified PC (has a bunch of proprietary cards in it and such) that runs just the control software on some RTOS (not sure which). That controller then actually interfaces with the hardware.
In this way you have a nice GUI program that you can easily get data and pictures to programs you need to work on them in, or across the network, but the unit is still controlled with the complex hardware and software it needs.
Sensible way of doing things, really. Windows has good tools for GUI programming and such that make it very easy, and is a platform on which many apps run. Why not develop the user interface component on that, and only do the code that needs to be realtime on the embedded platform? Also a way to increase security of the embedded system. Rather than having to worry about all sorts of local attacks (like buffer overflows and such) you only accept input from a port that is connected to another computer and just sanitize data there. There's no complex access to the system, as there is with a GUI, and as such less anyone can screw up.
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.) :)
This is an old one but it was a fairly expensive mistake compounding over more than a decade. A University with six seperate libraries had a lot of terminals and a reasonable catalogue system. They replaced them with a smaller number of PCs running very slow terminal emulation software to access the same thing. Frequent breakdowns reduced the number furthur and resulted in long queues. For some reason they went through two generations of PCs before there was a web based catalogue that would justify moving the system to PCs at all.
Comment removed based on user account deletion
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.
You would be surprised how much medical equipment is connected to the internet.
No I wouldn't be surprised because I see such devices regularly but I'm not worried about it too much either. The medical devices themselves really aren't the problem. The problems hospitals have with internet connectivity and are mostly related to accessing medical records, scheduling and ordering medicines. When the computers that control those go down THEN chaos ensues.
The stuff that is working on acutely ill patients is typically overseen directly by medical staff so if something is not working right it normally is noted quickly. Critical devices like IV drips are typically stand alone so a virus is not a significant concern.
They supposedly have a firewall and a VPN, but their IT department is not so bright,...
My experience with hospital IT staff is that the guys who run the overall network and the critical databases are (usually) pretty bright but the monkeys they hire to maintain the PCs and sometimes man the helpdesk are borderline incompetent. It varies greatly from hospital to hospital though. One time I had the IT staff at a hospital I was working in send TWO guys to swap out a SIMM and I had to walk them through it. But the guys who ran the network were usually quite competent - though extremely overworked.
If you set the file system permissions correctly and keep all logins in the Users group, it is remarkably difficult to crack these systems.
That does suggest that you are lucky enough that all your Windows apps are happy running as a "normal" user. There is still plenty of Windows software around that insists on an Administrator account.
Cheers,
Toby Haynes
Anything I post is strictly my own thoughts and doesn't necessarily have anything to do with the opinions of IBM.
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.
Solaris and those others, OTOH will happily run for months and years without requiring a reboot. I recently ran across a system at work (RedHat 5) that nobody bothered with because it always did it's job. When I had to go look to see what the problem was, imagine my surprise to find it running RH5. Everyone that knew the root password had either quit or forgot they knew it, it had been sitting there running for several years. Windows will NOT do that.
Accroding to Netcraft, the server out there with the longest uptime is fp002.crayfish.net, currently at 1817 days (~5 years) of uptime and counting; running -- Windows 2000.
What's purple and commutes? An Abelian grape.