It's not stupid if there is no safe option. Our choices are something unsafe or something else unsafe. The rational thing to do is evaluate the problems with both and compare them.
Oh, and I forgot to mention the UI problem. Java UIs look and feel wrong on every platform, although they look and feel least wrong on Windows. Java promoted the idea that you should use the same UI on every platform (ignoring the fact that different user interface guidelines are one of the main differences between platforms, from a user's perspective). They intentionally made it difficult to use the target platform's user interface APIs with Java code (although Apple fixed that on OS X in 10.0, before deprecating it around 10.4) to push the idea that you'd run the same code everywhere. Good cross-platform GUI apps are MVC, using native views and slightly different controllers on each platform, but the same model code. Doing this in Java is much harder than it should be.
Slashdot hates Java because they hate anything that isn't Pure GNU open source.
No, there are a lot of legitimate reasons to hate Java, mainly because it promised things it couldn't deliver. It promised to be portable, but running it on anything that isn't one of under half a dozen blessed platforms is painful. That new MIPS server? Sorry, no Java for you! For a long time, even Java on *BSD on x86 was painful due to onerous licensing requirements (binaries weren't redistributable, so you needed to download the source - manually so you could agree to the license agreement - download the Linux version, use the Linux version to compile the BSD version).
Then there's performance. Java performance is on a par with StrongTalk or Self, yet it's a much lower-level language. Performance is usually okay, but again Java promised C-like performance and then shows misleading benchmarks to demonstrate it.
Next there's the pain of interfacing Java with other languages. If I have a C library, I can trivially call it from most scripting languages, from Objective-C, from C++, from D, from Pascal, from Lisp, and so on. If I have a Java library, it's difficult to use it from anything that's not Java. Conversely, it's difficult to use existing libraries from Java - JNI is a whole world of pain. This means that Java often involves reinventing the wheel, while other languages just provide thin (and often automatically generated) wrappers around libraries written in other languages where appropriate.
Then there's the incompatibilities between versions. Once you've got your write-once-run-anywhere program working on your customer's machine, he installs a new version of the JRE and it stops working. Meanwhile, the statically compiled, statically linked, program in another language works just fine...
And then there's the library system. Some rookie mistakes, like making String final. More importantly there's the design patterns fetishism that's so prevalent. There's a reason for all of those JavaProgramFactoryFactoryFactory jokes...
Every so often, someone says to themselves 'software is complex, and therefore prone to bugs. Some of these are exploitable, giving security holes. I bet we can fix that by adding another layer of complex software.' The most surprising thing is that people actually believe them.
This is exactly the revisionist history I'm talking about. You are completely full of shit and trolling
No I'm not.
Win95 was widely regarded as a step backwards from NT
But it was a step up from Windows 3.11 and it was a lot cheaper than NT. More importantly, the hardware requirements were much lower. 95 could just about run in 8MB of RAM and worked reasonably in 16MB. NT 4 wasn't happy with under 32MB and worked a lot better with 64MB.
It wasn't competition from OS/2. By then, OS/2 and NT were primarily targetting the server which was never a role Win95 was ever considered.
The server was largely irrelevant. It was dominated by Novell at the low end and UNIX at the high end. OS/2, NT, and 95 were all targeting the desktop / workstation market. It was the niche that OS/2 retreated to after failing on the desktop. Look at the IBM advertising for OS/2. It focussed entirely on features that were taken as read or totally irrelevant on the server, but which Windows 3.11 lacked on the desktop.
Windows 95 could run all of your legacy DOS and Win16 appsNT), all of your new Win32 applications. NT could run your Win32 applications, most of your Win16 applications, a few of your DOS applications. OS/2 could run most of your legacy DOS applications, most of your Win16 applications, but none of your new Win32 applications.
OS/2 was a similar price to NT, and both were about double the price of 95, but that ignores the hardware cost. Businesses migrated their desktops from Windows 3.11 to Windows 95 - not to NT or OS/2 - because it was a lot cheaper. If you stuck in a bit of extra RAM, 95 would run on the machines that used to run 3.11. Once you've got 95 on all of your desktops, you may start thinking about replacing your Novell server with a Windows NT one, but you won't consider replacing it with an OS/2 server - why would you? You're already using Windows on the clients, why not on the server too? And that was where OS/2 really lost out; it had no cheap client version to run on cheap clients. It was a better desktop than Windows (if you could afford the hardware to run it), but it wasn't a better server for Windows machines than Windows NT 4 (it was probably better than NT3.x with Windows 3.11 clients, but it was competing with Netware for the Windows 3.11 server market, not with NT, because NT3.x sucked).
And if you could afford the hardware to run OS/2 on all of your workstations, Sun would sell you low-end SPARC workstations for a similar price. They'd even come with WABI to run all of your Win16 applications...
Off topic, but what happened to the big + and - buttons next to stories? Being able to mark a story as notthebest, slownewsday or dupe made Slashdot a lot better.
Germany banned Wolfenstein 3D. I went on an exchange to Germany when I was a teenager and asked the people I was saying with if they'd played it. All of them had - the difference was that none of them had paid for it. And that was before the Internet was widespread...
In other industries, there are a couple of golden rules for business:
Always make sure you have a second source for anything your business depends on.
Don't compete with your suppliers or your customers.
I've never understood why tech companies don't follow either of these rules and then act surprised when their supplier discontinues something that their business depends on, or decides to bundle a replacement of their product with their own system.
First of all, there's a question of scale. 16MB is really not a lot. A decent digital camera will take images twice that size. The dictionary that a typical spell checker uses will eat a big chunk of that. It's far easy to excuse something that uses 16MB than something that uses 512MB.
On the other hand, there's the question of cost. I remember seeing OS/2 advertised at about the same time I started paying attention to hardware costs. Back then, 4MB of RAM cost £125. I bought 8GB of RAM for my current laptop last year, and it cost £40. Needing £40 of RAM is a lot easier to excuse than needing £500 of RAM - especially once you factor in inflation and the fact that £125 was the price for 4 1MB modules, so 4 4MB modules would probably have cost even more...
And, if you're a programmer, lightweight locking primitives. Okay, not especially innovative, but useful enough that it makes you not want to support XP...
the kind of specs Vista actually required were standard well before 2006.
On the desktop, that's true. On laptops, it's much less true. On cheap laptops, it's completely untrue. Worse, Microsoft launched Vista right in the middle of the netbook bubble.
So contrary to bullshit and revisionist history, NT suck badly for a very long time. The primary reason it won the battle is because IBM was incompetent and MS did a ton of bribery
NT didn't beat OS/2. Windows 95 beat OS/2. NT was a nice player right up until XP. I ran Windows 2000, but Windows NT rarely accounted for more than 1% of website logs, for example, until XP. I think 2000 made it to about 10%, but 98 and ME were well over 60%.
Not really. It had multiple personality layers on top of the core kernel. Most stuff runs in the win32 personality layer. There's also a POSIX personality, but since it returns not-implemented errors for most things it isn't much use. It had an OS/2 personality that was never finished, but could just about run a (non-graphical) Hello World.
Character mode, certainly, and PM could have been done
Again, not really. You can't support multiple personalities in a single application in Windows NT, so anything using the OS/2 personality couldn't use GDI, for example. It couldn't even talk to the top layers of the graphics driver, because none of that stuff was exposed via the OS/2 personality.
Windows NT and OS/2 are more similar than Windows NT and VMS.
Your argument is akin to claiming that OpenBSD is more akin to Linux than to NetBSD, because OpenBSD includes a Linux system call compatibility layer, but doesn't include a NetBSD system call compatibility layer, and completely ignoring the kernel design.
For more evidence take a look at the lawsuits. DEC sued Microsoft over similarities between Windows NT and VMS. IBM sued Microsoft over their failure to support OS/2 as per contract, but not over any similarities between OS/2 and NT.
Sorry, but no. OS/2 was heaps more expensive than DOS, which also came bundled with a computer
Back in the early '90s, it wasn't that unusual to have a choice of preinstalled operating systems. I remember quite a few adverts for computers with OS/2 preinstalled. You're right about the price difference though. The choices where usually something like no OS, DOS (+£40), DOS and Windows (+£70), OS/2 (+£200).
No, if you post things like 'Obama == miserable failure' as a total post then you get moderated down. You got the same thing with George Bush five years ago. Coherent arguments for and against both have been modded up, but if you just say 'Obama is a nigger muslim!' (quote from a post I read on Sunday) then the only reason you're moderated Troll or Flamebait is that there is no -1 Idiot.
There are no problems between Jews and Christians, Buddhists and Shintos, Hindus and Sikhs, Zoroastrians and Jains
Spoken like someone who hasn't been reading the news from India. Or did you just miss the stories about (Christian) nuns being attacked by Hindus trying to force them to convert? And, no doubt, you missed the people in Ireland being attacked for being the wrong flavour of Christian?
Religion is an intrinsically intolerant idea. Any religion that claims to be the sole arbiter of truth can not coexist with others that make the same claim.
Clock speed is not an accurate measure when comparing different architectures, or even different generations. I don't know about AVR, but a modern ARM core at 24MHz will easily outperform a 66MHz 486 and probably a 100MHz one. Especially if you're doing anything that can take advantage of NEON - the vector unit in the ARM chip will trample all over the 487 in terms of floating point performance.
It doesn't actually run Linux though, it runs a (very slow!) ARM emulator and then boots the ARM version of Linux. I saw a much more impressive demo a few months ago - a guy in Cambridge had ported 2BSD to run on a 32-bit PIC with 128KB of RAM. It was responsive and ran things like man very fast. It had enough memory to run the C preprocessor and the assembler, but he hadn't quite managed to fit the compiler on, so it wasn't quite self hosting (although a version with 256KB of RAM would have been).
Not quite. 3.11 required a 386. 3.0 ran happily on my 8086 (well, as long as I didn't run more than a couple of simple apps or one more complex one). It supported three flavours: Real Mode (8086), Standard Mode (286) and Enhanced Mode (386). It would autodetect the best one for your computer, but you could select one manually with/r,/s, or/3. If you specified/r in Windows 3.11, it would refuse to run, saying real mode was not supported.
You may have got some kind of educational discount. I remember looking at OS/2 around 1994. It cost about £200 more as a preinstalled option on some computers I looked at and you were recommended to have 16MB or more of RAM (when 4MB cost £125), while DOS and Windows 3.11 would run okay in 4MB and very nicely in 8MB.
Windows did not take full advantage of the 32-bit architecture until Windows XP. Everything before that was 32-bit bolt-ons to 16-bit underpinnings
Really? I'm pretty sure that there were no 16-bit underpinnings in the NT4 system I was using in 1996. I never used NT3.x, but it was also a complete 32-bit system. Of course, most programs you wanted to run were 16-bit until the late '90s (or were 32-bit using a DOS extender, so didn't work with Windows NT), so there was little advantage in a 32-bit version of Windows. Especially since every Intel chip before the Pentium Pro was faster in 16-bit mode than 32-bit mode...
VTOL in an autogyro involves spinning the rotor until it is going fast enough to lift you and then switching power to the propeller. While it technically qualified as VTOL, it typically means that you hop a small distance into the air and then accelerate along just above the ground until you reach a speed at which you can climb. It's often a lot more dangerous than using a runway. The main use for it is jumping off tall buildings.
It's not stupid if there is no safe option. Our choices are something unsafe or something else unsafe. The rational thing to do is evaluate the problems with both and compare them.
Oh, and I forgot to mention the UI problem. Java UIs look and feel wrong on every platform, although they look and feel least wrong on Windows. Java promoted the idea that you should use the same UI on every platform (ignoring the fact that different user interface guidelines are one of the main differences between platforms, from a user's perspective). They intentionally made it difficult to use the target platform's user interface APIs with Java code (although Apple fixed that on OS X in 10.0, before deprecating it around 10.4) to push the idea that you'd run the same code everywhere. Good cross-platform GUI apps are MVC, using native views and slightly different controllers on each platform, but the same model code. Doing this in Java is much harder than it should be.
Slashdot hates Java because they hate anything that isn't Pure GNU open source.
No, there are a lot of legitimate reasons to hate Java, mainly because it promised things it couldn't deliver. It promised to be portable, but running it on anything that isn't one of under half a dozen blessed platforms is painful. That new MIPS server? Sorry, no Java for you! For a long time, even Java on *BSD on x86 was painful due to onerous licensing requirements (binaries weren't redistributable, so you needed to download the source - manually so you could agree to the license agreement - download the Linux version, use the Linux version to compile the BSD version).
Then there's performance. Java performance is on a par with StrongTalk or Self, yet it's a much lower-level language. Performance is usually okay, but again Java promised C-like performance and then shows misleading benchmarks to demonstrate it.
Next there's the pain of interfacing Java with other languages. If I have a C library, I can trivially call it from most scripting languages, from Objective-C, from C++, from D, from Pascal, from Lisp, and so on. If I have a Java library, it's difficult to use it from anything that's not Java. Conversely, it's difficult to use existing libraries from Java - JNI is a whole world of pain. This means that Java often involves reinventing the wheel, while other languages just provide thin (and often automatically generated) wrappers around libraries written in other languages where appropriate.
Then there's the incompatibilities between versions. Once you've got your write-once-run-anywhere program working on your customer's machine, he installs a new version of the JRE and it stops working. Meanwhile, the statically compiled, statically linked, program in another language works just fine...
And then there's the library system. Some rookie mistakes, like making String final. More importantly there's the design patterns fetishism that's so prevalent. There's a reason for all of those JavaProgramFactoryFactoryFactory jokes...
Every so often, someone says to themselves 'software is complex, and therefore prone to bugs. Some of these are exploitable, giving security holes. I bet we can fix that by adding another layer of complex software.' The most surprising thing is that people actually believe them.
This is exactly the revisionist history I'm talking about. You are completely full of shit and trolling
No I'm not.
Win95 was widely regarded as a step backwards from NT
But it was a step up from Windows 3.11 and it was a lot cheaper than NT. More importantly, the hardware requirements were much lower. 95 could just about run in 8MB of RAM and worked reasonably in 16MB. NT 4 wasn't happy with under 32MB and worked a lot better with 64MB.
It wasn't competition from OS/2. By then, OS/2 and NT were primarily targetting the server which was never a role Win95 was ever considered.
The server was largely irrelevant. It was dominated by Novell at the low end and UNIX at the high end. OS/2, NT, and 95 were all targeting the desktop / workstation market. It was the niche that OS/2 retreated to after failing on the desktop. Look at the IBM advertising for OS/2. It focussed entirely on features that were taken as read or totally irrelevant on the server, but which Windows 3.11 lacked on the desktop.
Windows 95 could run all of your legacy DOS and Win16 appsNT), all of your new Win32 applications. NT could run your Win32 applications, most of your Win16 applications, a few of your DOS applications. OS/2 could run most of your legacy DOS applications, most of your Win16 applications, but none of your new Win32 applications.
OS/2 was a similar price to NT, and both were about double the price of 95, but that ignores the hardware cost. Businesses migrated their desktops from Windows 3.11 to Windows 95 - not to NT or OS/2 - because it was a lot cheaper. If you stuck in a bit of extra RAM, 95 would run on the machines that used to run 3.11. Once you've got 95 on all of your desktops, you may start thinking about replacing your Novell server with a Windows NT one, but you won't consider replacing it with an OS/2 server - why would you? You're already using Windows on the clients, why not on the server too? And that was where OS/2 really lost out; it had no cheap client version to run on cheap clients. It was a better desktop than Windows (if you could afford the hardware to run it), but it wasn't a better server for Windows machines than Windows NT 4 (it was probably better than NT3.x with Windows 3.11 clients, but it was competing with Netware for the Windows 3.11 server market, not with NT, because NT3.x sucked).
And if you could afford the hardware to run OS/2 on all of your workstations, Sun would sell you low-end SPARC workstations for a similar price. They'd even come with WABI to run all of your Win16 applications...
Off topic, but what happened to the big + and - buttons next to stories? Being able to mark a story as notthebest, slownewsday or dupe made Slashdot a lot better.
Germany banned Wolfenstein 3D. I went on an exchange to Germany when I was a teenager and asked the people I was saying with if they'd played it. All of them had - the difference was that none of them had paid for it. And that was before the Internet was widespread...
In other industries, there are a couple of golden rules for business:
I've never understood why tech companies don't follow either of these rules and then act surprised when their supplier discontinues something that their business depends on, or decides to bundle a replacement of their product with their own system.
First of all, there's a question of scale. 16MB is really not a lot. A decent digital camera will take images twice that size. The dictionary that a typical spell checker uses will eat a big chunk of that. It's far easy to excuse something that uses 16MB than something that uses 512MB.
On the other hand, there's the question of cost. I remember seeing OS/2 advertised at about the same time I started paying attention to hardware costs. Back then, 4MB of RAM cost £125. I bought 8GB of RAM for my current laptop last year, and it cost £40. Needing £40 of RAM is a lot easier to excuse than needing £500 of RAM - especially once you factor in inflation and the fact that £125 was the price for 4 1MB modules, so 4 4MB modules would probably have cost even more...
And, if you're a programmer, lightweight locking primitives. Okay, not especially innovative, but useful enough that it makes you not want to support XP...
the kind of specs Vista actually required were standard well before 2006.
On the desktop, that's true. On laptops, it's much less true. On cheap laptops, it's completely untrue. Worse, Microsoft launched Vista right in the middle of the netbook bubble.
So contrary to bullshit and revisionist history, NT suck badly for a very long time. The primary reason it won the battle is because IBM was incompetent and MS did a ton of bribery
NT didn't beat OS/2. Windows 95 beat OS/2. NT was a nice player right up until XP. I ran Windows 2000, but Windows NT rarely accounted for more than 1% of website logs, for example, until XP. I think 2000 made it to about 10%, but 98 and ME were well over 60%.
NT supported OS/2 applications "out of the box"
Not really. It had multiple personality layers on top of the core kernel. Most stuff runs in the win32 personality layer. There's also a POSIX personality, but since it returns not-implemented errors for most things it isn't much use. It had an OS/2 personality that was never finished, but could just about run a (non-graphical) Hello World.
Character mode, certainly, and PM could have been done
Again, not really. You can't support multiple personalities in a single application in Windows NT, so anything using the OS/2 personality couldn't use GDI, for example. It couldn't even talk to the top layers of the graphics driver, because none of that stuff was exposed via the OS/2 personality.
Windows NT and OS/2 are more similar than Windows NT and VMS.
Your argument is akin to claiming that OpenBSD is more akin to Linux than to NetBSD, because OpenBSD includes a Linux system call compatibility layer, but doesn't include a NetBSD system call compatibility layer, and completely ignoring the kernel design.
For more evidence take a look at the lawsuits. DEC sued Microsoft over similarities between Windows NT and VMS. IBM sued Microsoft over their failure to support OS/2 as per contract, but not over any similarities between OS/2 and NT.
Sorry, but no. OS/2 was heaps more expensive than DOS, which also came bundled with a computer
Back in the early '90s, it wasn't that unusual to have a choice of preinstalled operating systems. I remember quite a few adverts for computers with OS/2 preinstalled. You're right about the price difference though. The choices where usually something like no OS, DOS (+£40), DOS and Windows (+£70), OS/2 (+£200).
No, if you post things like 'Obama == miserable failure' as a total post then you get moderated down. You got the same thing with George Bush five years ago. Coherent arguments for and against both have been modded up, but if you just say 'Obama is a nigger muslim!' (quote from a post I read on Sunday) then the only reason you're moderated Troll or Flamebait is that there is no -1 Idiot.
There are no problems between Jews and Christians, Buddhists and Shintos, Hindus and Sikhs, Zoroastrians and Jains
Spoken like someone who hasn't been reading the news from India. Or did you just miss the stories about (Christian) nuns being attacked by Hindus trying to force them to convert? And, no doubt, you missed the people in Ireland being attacked for being the wrong flavour of Christian?
Religion is an intrinsically intolerant idea. Any religion that claims to be the sole arbiter of truth can not coexist with others that make the same claim.
In roman_mir's defence, English is not his first language. I doubt Orwell would have written particularly coherently in Russian...
It's more or less what BitCoin is doing to the old dominate-through-control-of-the-money-supply regime.
You mean, it will be used by organised crime, totally unworkable on a large scale, and ignored by anyone with any influence?
In my experience, with both French and Spanish music, not being able to understand the lyrics tends to improve it...
Clock speed is not an accurate measure when comparing different architectures, or even different generations. I don't know about AVR, but a modern ARM core at 24MHz will easily outperform a 66MHz 486 and probably a 100MHz one. Especially if you're doing anything that can take advantage of NEON - the vector unit in the ARM chip will trample all over the 487 in terms of floating point performance.
It doesn't actually run Linux though, it runs a (very slow!) ARM emulator and then boots the ARM version of Linux. I saw a much more impressive demo a few months ago - a guy in Cambridge had ported 2BSD to run on a 32-bit PIC with 128KB of RAM. It was responsive and ran things like man very fast. It had enough memory to run the C preprocessor and the assembler, but he hadn't quite managed to fit the compiler on, so it wasn't quite self hosting (although a version with 256KB of RAM would have been).
Windows 3.0 'assumed' a 386 architecture
Not quite. 3.11 required a 386. 3.0 ran happily on my 8086 (well, as long as I didn't run more than a couple of simple apps or one more complex one). It supported three flavours: Real Mode (8086), Standard Mode (286) and Enhanced Mode (386). It would autodetect the best one for your computer, but you could select one manually with /r, /s, or /3. If you specified /r in Windows 3.11, it would refuse to run, saying real mode was not supported.
You may have got some kind of educational discount. I remember looking at OS/2 around 1994. It cost about £200 more as a preinstalled option on some computers I looked at and you were recommended to have 16MB or more of RAM (when 4MB cost £125), while DOS and Windows 3.11 would run okay in 4MB and very nicely in 8MB.
Windows did not take full advantage of the 32-bit architecture until Windows XP. Everything before that was 32-bit bolt-ons to 16-bit underpinnings
Really? I'm pretty sure that there were no 16-bit underpinnings in the NT4 system I was using in 1996. I never used NT3.x, but it was also a complete 32-bit system. Of course, most programs you wanted to run were 16-bit until the late '90s (or were 32-bit using a DOS extender, so didn't work with Windows NT), so there was little advantage in a 32-bit version of Windows. Especially since every Intel chip before the Pentium Pro was faster in 16-bit mode than 32-bit mode...
VTOL in an autogyro involves spinning the rotor until it is going fast enough to lift you and then switching power to the propeller. While it technically qualified as VTOL, it typically means that you hop a small distance into the air and then accelerate along just above the ground until you reach a speed at which you can climb. It's often a lot more dangerous than using a runway. The main use for it is jumping off tall buildings.