From my recollection, BSD is somewhat different, in the case of freebsd you have the base system which you update with cvsup and recompile, and you have the ports tree which is managed seperately... Linux typically has everything in the same package system, making it easier to deal with.
Strange about debian, were you running stable or unstable? I doubt such problems would occur with Stable, but Unstable - the name says it all, you can expect problems.
Fedora i'm not too surprised about, it's effectively redhat's "unstable" branch, which also explains why you don't get problems with centos, based on redhat's stable branch.
Ofcourse there is always a slight risk of an update breaking stuff, no matter how careful you are... microsoft, apple and sun have all suffered similar problems with their much more limited in scope updates. That's why i would never advocate installing updates automatically, just present them to the user and offer the choice to install, if the machine is critical you put them on a test machine first and google to see if anyone else has had problems.
Most package managers offer the facility to use multiple repositories, apt supports it, and gentoo has it's overlays... So if something isn't covered by the main tree, there could well be third party packages and you will still have the automatic update facility. Occasionally there are packages which don't have any native packages, but these are the minority unless you run a really obscure distribution... Anyone writing software for linux should really provide packages, or have someone else contribute them.
Update apps are a pain in the backside, but they are a symptom of the way windows and osx are designed...
There's no question that your system should be aware of what software is installed, and what the latest version is, and make the user aware too and give them the option to install the updates.
On linux you rarely, if ever, get problems like this because the updates are handled centrally.
The problem with windows and osx, is that there is no central way for third party apps to register to the automatic update mechanism, the supplied update functions are only for the original vendor's apps, not third parties, meaning every third party has their own update service wasting memory and informing/annoying you in different ways.
The linux approach is orders of magnitude better, centralised package repositories, a centralised method of informing the user, you can choose how to be informed of updates, and you won't be hassle any other way. To further help matters, the package manager knows of packages you don't have installed too, giving you single click access to the latest versions of a whole host of additional applications.
The problem is there are too many variables... Your hardware may be theoretically fast enough, but your drivers have a crippling bug... You may have lots of garbage in the background which kills performance...
We need hardware level driverless compatibility (like the old days of vga standards), and the ability to boot games without an os running like a console. There really is no reason for videocards to be so totally incompatible with each other that they require middleware drivers to provide a compatibility layer... That would be like everyone running alpha/ppc/mips/sparc processors, and then running an emulator to emulate the x86 instruction set, performance crippling. AMD/Intel seem able to differentiate themselves while providing compatibility between each other.
Not only that, but piracy becomes much easier when your game runs on top of a middleware layer, you can replace that middleware and make it lie to the game (look how easily cd checks are bypassed by software that emulates a physical cd drive with an iso image).
Tho it may just be easier to produce keyboard/mouse addons for games consoles, and make games actually support them. The ps3 at least is becoming more computer-like... But what we also need is proper homebrew, the ability to legitimately program all aspects of the game instead of the current paranoia. I would buy a PS3 today if it weren't crippled by it's hypervisor and the inability to access the video hardware without special permission from sony. Putting middleware like that on consoles is a bad idea, it may not be quite as heavy weight as a full blown OS but it will still hurt performance, just look at some of the amazing demos people have made for the Amiga and C64 by programming the hardware directly and completely bypassing the OS.
Trouble is, current x86 systems are not like old days where hardware was register compatible with standards like VGA... There is very little in common between different videocard vendors, they all have completely different programming methods and use a compatibility layer (drivers). There is virtually no compatibility at the hardware level.
Of course the whole abstraction layer of drivers adds a performance hit... To take such things to an extreme, we could all standardise on the Amiga architecture, and run UAE as a compatibility layer so that the same games would run on any hardware.
All these extra layers between user experience and hardware are the root cause of the ridiculous levels of bloat, and farcical situation where the user experience on a modern system is comparable speed wise to a system from 10 years ago with much lesser overheads.
The wide choice of hardware in the x86 market is counter to easy and performant gaming... You end up needing multiple levels of software abstraction between game and hardware to cater for hardware that is fundamentally incompatible with each other. Compare that to consoles, where the hardware is always the same, so you can program it directly without lots of extra overhead..
For a good example, try building a pc with as close a configuration to an xbox as you can, and try running some of the games side by side on it and a real xbox... Something like halo will run like garbage on a similarly specced pc once you have the overhead of windows, while the xbox will run it quite well, and it still has layers of abstraction on the xbox, not hitting the hardware directly.
What AMD should do, is get together with other vendors and create a standard "gaming spec" every couple of years... Where the CPU will always be a certain level or faster, memory a certain amount, and videocard a certain performance and with a guaranteed hardware level interface. Then the games can boot directly from DVD, without the overhead of an OS.
You can also never guarantee compatibility when you rely on third party software to be running, which seems to be one of the goals... You will always get users who have a powerful enough system, but some crap running in the background that drags the performance down far enough to make the game unplayable.
I have a sony picturebook, 837mhz crusoe processor, but it's got 160mb, won't support more than 364mb and the ram is proprietary and expensive. The screen is quite good tho, very high resolution for it's size.
I have a C610 too, it's rather heavy to carry round, especially with 2 batteries installed. And it will support an internal wireless card, in the minipci slot underneath... It even has an antenna hookup down there.
Software also has the ultimate economy of scale, in that the price can be reduced to zero if you sell enough copies... With more competition, that is exactly what will happen, as companies seek to derive revenue from other sources like services (look at online gaming these days, where you pay for a subscription, tho its quite a scam to pay for the game itself as well). It's only a small number of large vendors keeping prices artificially high right now, and that's not going to last especially with the current economic downturn putting more pressure on it.
You can get older (obsolete) computers for free, they won't be capable of running the latest versions of windows/office and may or may not come with an old version. Office 2007 doesn't save in the 97 format by default. But you can get a free obsolete computer and put linux and openoffice on it easily, schools should really do this using computers thrown out by businesses (they would have to pay for disposal otherwise).
One standard was sorely needed at the time, and was peer reviewed and developed by a multitude of parties. A second standard wasn't needed at all, and came late to the party while being inferior in many ways to the first, and was also developed by only one party with no input from anyone else.
When a standard already exists, what's the point in creating a new incompatible and inferior one?
Strange, tools like Xcopy seemed capable of reading from 1 drive and writing to 3 at the same time, and it didn't seem to take any longer to write 3 disks in that way than it did to write a single one.
Amiga has it when the OS is not booted, it boots from the first device you put bootable media in, including the hard drive if you have one. Boot sector viruses come about on the Amiga because people would usually boot games from floppy, bypassing the OS. Once the OS has loaded however, nothing will auto execute when you insert media, it will only get mounted and an icon for the media displayed.
Consoles autorun for the same reason amigas boot games from floppy, thats the primary method of loading games, and most users never use the console for anything else, certainly nothing of importance.
I dont remember MacOS 7.x auto loading anything off inserted media, not sure about OSX but i've only ever seen it mount a volume and display its contents on insert, never auto execute programs. OSX won't do that as root either, the finder is always running as a normal user.
I guess it depends how you see the OS... Is it a serious environment for getting proper work done, or is it merely a simply bootstrap mechanism for loading games? Would you put media from third parties into a machine storing all your critical business data if there was a change of it automatically executing arbitrary binaries stored on it, even before you're able to actually see what's on it.
They haven't, and incompatible license fragmentation is bad...
But at least GPLv2 projects can benefit from xpdf, Noone can benefit from or contribute towards a closed source PDF framework. So while clearly not ideal, the current situation is still by far and away not the worst possible.
The GPL may have more restrictions than BSD, but the GPL itself doesn't take anything away, it actually grants you rights you wouldn't normally have under copyright law while placing some restrictions on those rights.
If you look at most commercial licenses, they are far more "draconian" as you put it, since not only do they usually not grant you any rights you wouldn't already have, they often seek to take away the rights you would have had through copyright law.
GPL is good for the community because it insures that future users have the same rights, and that a third party cannot take the code and re-release it under draconian restrictions (as often happens to BSD code). Obviously it's far from ideal, and i'm sure Richard Stallman would be the first person to agree, but so long as there are people out there seeking to take free code and rerelease it under draconian restrictions there will be a need to do something to stop that happening. I would say that the restrictions of the GPL are more than livable, given the alternative of completely closed source.
Additionally, the extra restrictions imposed by the GPL compared to BSD don't really affect people who just want to use the sofware, or who want to modify it and contribute the changes back to the community. They only have an impact on those who want to leech by taking existing code, packaging it up and selling a closed source derivative.
Really, non free software should be somewhere between the two... Kinda like the old BSDI licenses (if i remember correctly), you bought the software and it came with source code which you could modify for your own use.... However you couldn't redistribute this code yourself, except to submit fixes to the original vendor. I think it's utterly ridiculous not having the source code, and therefore having to resort to binary hacking to fix bugs or customise it.
Windows likes to automatically execute programs on media you insert... Never heard of autorun? Yes, it's a ridiculously insecure idea, most people wouldn't even have considered the possibility of automatically executing programs on inserted media, but microsoft did for some reason.
Supply unix based machines for the soldiers to use, don't give them root, make sure media cannot be mounted with "exec" flags... Or just use standalone dvd players?
Or someone who doesn't have broadband but *can* get it... I used to live just out of range for ADSL, so i found someone down the street who could get it and offered to pay for it and give them use of it in exchange for wireless access to it.
We did this on the Amiga years ago, but with only 4 drives... The floppy controller was fully DMA, so it worked quite wel with all 4 drives spinning at once, the built in floppy controller on most x86 machines is garbage but i guess the USB ones should be a bit better.
From my recollection, BSD is somewhat different, in the case of freebsd you have the base system which you update with cvsup and recompile, and you have the ports tree which is managed seperately...
Linux typically has everything in the same package system, making it easier to deal with.
Strange about debian, were you running stable or unstable? I doubt such problems would occur with Stable, but Unstable - the name says it all, you can expect problems.
Fedora i'm not too surprised about, it's effectively redhat's "unstable" branch, which also explains why you don't get problems with centos, based on redhat's stable branch.
Ofcourse there is always a slight risk of an update breaking stuff, no matter how careful you are... microsoft, apple and sun have all suffered similar problems with their much more limited in scope updates. That's why i would never advocate installing updates automatically, just present them to the user and offer the choice to install, if the machine is critical you put them on a test machine first and google to see if anyone else has had problems.
Most package managers offer the facility to use multiple repositories, apt supports it, and gentoo has it's overlays... So if something isn't covered by the main tree, there could well be third party packages and you will still have the automatic update facility.
Occasionally there are packages which don't have any native packages, but these are the minority unless you run a really obscure distribution... Anyone writing software for linux should really provide packages, or have someone else contribute them.
Update apps are a pain in the backside, but they are a symptom of the way windows and osx are designed...
There's no question that your system should be aware of what software is installed, and what the latest version is, and make the user aware too and give them the option to install the updates.
On linux you rarely, if ever, get problems like this because the updates are handled centrally.
The problem with windows and osx, is that there is no central way for third party apps to register to the automatic update mechanism, the supplied update functions are only for the original vendor's apps, not third parties, meaning every third party has their own update service wasting memory and informing/annoying you in different ways.
The linux approach is orders of magnitude better, centralised package repositories, a centralised method of informing the user, you can choose how to be informed of updates, and you won't be hassle any other way. To further help matters, the package manager knows of packages you don't have installed too, giving you single click access to the latest versions of a whole host of additional applications.
The problem is there are too many variables...
Your hardware may be theoretically fast enough, but your drivers have a crippling bug...
You may have lots of garbage in the background which kills performance...
We need hardware level driverless compatibility (like the old days of vga standards), and the ability to boot games without an os running like a console.
There really is no reason for videocards to be so totally incompatible with each other that they require middleware drivers to provide a compatibility layer... That would be like everyone running alpha/ppc/mips/sparc processors, and then running an emulator to emulate the x86 instruction set, performance crippling. AMD/Intel seem able to differentiate themselves while providing compatibility between each other.
Not only that, but piracy becomes much easier when your game runs on top of a middleware layer, you can replace that middleware and make it lie to the game (look how easily cd checks are bypassed by software that emulates a physical cd drive with an iso image).
Tho it may just be easier to produce keyboard/mouse addons for games consoles, and make games actually support them. The ps3 at least is becoming more computer-like... But what we also need is proper homebrew, the ability to legitimately program all aspects of the game instead of the current paranoia. I would buy a PS3 today if it weren't crippled by it's hypervisor and the inability to access the video hardware without special permission from sony. Putting middleware like that on consoles is a bad idea, it may not be quite as heavy weight as a full blown OS but it will still hurt performance, just look at some of the amazing demos people have made for the Amiga and C64 by programming the hardware directly and completely bypassing the OS.
Trouble is, current x86 systems are not like old days where hardware was register compatible with standards like VGA...
There is very little in common between different videocard vendors, they all have completely different programming methods and use a compatibility layer (drivers). There is virtually no compatibility at the hardware level.
Of course the whole abstraction layer of drivers adds a performance hit...
To take such things to an extreme, we could all standardise on the Amiga architecture, and run UAE as a compatibility layer so that the same games would run on any hardware.
All these extra layers between user experience and hardware are the root cause of the ridiculous levels of bloat, and farcical situation where the user experience on a modern system is comparable speed wise to a system from 10 years ago with much lesser overheads.
The wide choice of hardware in the x86 market is counter to easy and performant gaming...
You end up needing multiple levels of software abstraction between game and hardware to cater for hardware that is fundamentally incompatible with each other.
Compare that to consoles, where the hardware is always the same, so you can program it directly without lots of extra overhead..
For a good example, try building a pc with as close a configuration to an xbox as you can, and try running some of the games side by side on it and a real xbox... Something like halo will run like garbage on a similarly specced pc once you have the overhead of windows, while the xbox will run it quite well, and it still has layers of abstraction on the xbox, not hitting the hardware directly.
What AMD should do, is get together with other vendors and create a standard "gaming spec" every couple of years... Where the CPU will always be a certain level or faster, memory a certain amount, and videocard a certain performance and with a guaranteed hardware level interface. Then the games can boot directly from DVD, without the overhead of an OS.
You can also never guarantee compatibility when you rely on third party software to be running, which seems to be one of the goals... You will always get users who have a powerful enough system, but some crap running in the background that drags the performance down far enough to make the game unplayable.
I have a sony picturebook, 837mhz crusoe processor, but it's got 160mb, won't support more than 364mb and the ram is proprietary and expensive. The screen is quite good tho, very high resolution for it's size.
Look for the notch down the side... Cardbus cards have a slightly bigger botch, such that they won't physically fit into old PCMCIA slots....
See this image on wikipedia: http://en.wikipedia.org/wiki/Image:Xircom_Realport_PCMCIA_and_CardBus_notch.jpg
And the page that links to it: http://en.wikipedia.org/wiki/PC_Card
I have a C610 too, it's rather heavy to carry round, especially with 2 batteries installed.
And it will support an internal wireless card, in the minipci slot underneath... It even has an antenna hookup down there.
Software also has the ultimate economy of scale, in that the price can be reduced to zero if you sell enough copies...
With more competition, that is exactly what will happen, as companies seek to derive revenue from other sources like services (look at online gaming these days, where you pay for a subscription, tho its quite a scam to pay for the game itself as well).
It's only a small number of large vendors keeping prices artificially high right now, and that's not going to last especially with the current economic downturn putting more pressure on it.
You can get older (obsolete) computers for free, they won't be capable of running the latest versions of windows/office and may or may not come with an old version.
Office 2007 doesn't save in the 97 format by default.
But you can get a free obsolete computer and put linux and openoffice on it easily, schools should really do this using computers thrown out by businesses (they would have to pay for disposal otherwise).
One standard was sorely needed at the time, and was peer reviewed and developed by a multitude of parties.
A second standard wasn't needed at all, and came late to the party while being inferior in many ways to the first, and was also developed by only one party with no input from anyone else.
When a standard already exists, what's the point in creating a new incompatible and inferior one?
There were some security advisories for Amiga Unix a few years ago, Yes, Commodore made a unix variant of the Amiga which is extremely rare.
Strange, tools like Xcopy seemed capable of reading from 1 drive and writing to 3 at the same time, and it didn't seem to take any longer to write 3 disks in that way than it did to write a single one.
Amiga has it when the OS is not booted, it boots from the first device you put bootable media in, including the hard drive if you have one. Boot sector viruses come about on the Amiga because people would usually boot games from floppy, bypassing the OS.
Once the OS has loaded however, nothing will auto execute when you insert media, it will only get mounted and an icon for the media displayed.
Consoles autorun for the same reason amigas boot games from floppy, thats the primary method of loading games, and most users never use the console for anything else, certainly nothing of importance.
I dont remember MacOS 7.x auto loading anything off inserted media, not sure about OSX but i've only ever seen it mount a volume and display its contents on insert, never auto execute programs. OSX won't do that as root either, the finder is always running as a normal user.
I guess it depends how you see the OS...
Is it a serious environment for getting proper work done, or is it merely a simply bootstrap mechanism for loading games? Would you put media from third parties into a machine storing all your critical business data if there was a change of it automatically executing arbitrary binaries stored on it, even before you're able to actually see what's on it.
To be fair, Hotmail existed before they bought it.
They haven't, and incompatible license fragmentation is bad...
But at least GPLv2 projects can benefit from xpdf, Noone can benefit from or contribute towards a closed source PDF framework.
So while clearly not ideal, the current situation is still by far and away not the worst possible.
The GPL may have more restrictions than BSD, but the GPL itself doesn't take anything away, it actually grants you rights you wouldn't normally have under copyright law while placing some restrictions on those rights.
If you look at most commercial licenses, they are far more "draconian" as you put it, since not only do they usually not grant you any rights you wouldn't already have, they often seek to take away the rights you would have had through copyright law.
GPL is good for the community because it insures that future users have the same rights, and that a third party cannot take the code and re-release it under draconian restrictions (as often happens to BSD code). Obviously it's far from ideal, and i'm sure Richard Stallman would be the first person to agree, but so long as there are people out there seeking to take free code and rerelease it under draconian restrictions there will be a need to do something to stop that happening. I would say that the restrictions of the GPL are more than livable, given the alternative of completely closed source.
Additionally, the extra restrictions imposed by the GPL compared to BSD don't really affect people who just want to use the sofware, or who want to modify it and contribute the changes back to the community. They only have an impact on those who want to leech by taking existing code, packaging it up and selling a closed source derivative.
Really, non free software should be somewhere between the two...
Kinda like the old BSDI licenses (if i remember correctly), you bought the software and it came with source code which you could modify for your own use.... However you couldn't redistribute this code yourself, except to submit fixes to the original vendor.
I think it's utterly ridiculous not having the source code, and therefore having to resort to binary hacking to fix bugs or customise it.
Windows likes to automatically execute programs on media you insert... Never heard of autorun?
Yes, it's a ridiculously insecure idea, most people wouldn't even have considered the possibility of automatically executing programs on inserted media, but microsoft did for some reason.
Supply unix based machines for the soldiers to use, don't give them root, make sure media cannot be mounted with "exec" flags...
Or just use standalone dvd players?
Or someone who doesn't have broadband but *can* get it...
I used to live just out of range for ADSL, so i found someone down the street who could get it and offered to pay for it and give them use of it in exchange for wireless access to it.
We did this on the Amiga years ago, but with only 4 drives...
The floppy controller was fully DMA, so it worked quite wel with all 4 drives spinning at once, the built in floppy controller on most x86 machines is garbage but i guess the USB ones should be a bit better.
Didn't sputnik's orbit deteriorate and burn up on re-entry a few years ago?