If they're going to give it away free, why not simply contribute anything they have which is still of value back to the mainline wine codebase.... Mainline wine is already way ahead in many areas, so it makes sense for development to continue here rather than on cedega's old fork.
Some linux software written today would work on a 2000 linux distro, and some windows software written today does not work on xp. Most linux software is distributed as source, so a recompile is not a problem. I still run xv every day on my modern linux machines for viewing images, xv was written in 1994. If you really must run old precompiled software that depends on old libraries you can bundle those libraries in with the software - like many windows apps do.
The differences however, are... XP was current in 2006, any linux distro from 2001 was very much obsolete by 2006. Linux upgrades come out more frequently and are free, so there is little or no reason to be running old versions. Most of the software is also open source and free, meaning again there is no reason to run old versions.
Linux has extremely good forwards and backwards compatibility, especially at the source level. I am able to compile and run unix programs from the 80s (ie before linux existed) on my modern linux system. Backwards compatibility also works well assuming you don't use features that weren't present in old versions, linux has not changed so much as been added to, the same basic APIs are still there and modern software still uses them. Windows is actually far more of a mess, although the same APIs are present there are often multiple functions with the same name, and which one gets called depends on which version of the SDK you compile against. If you write your code to use the new versions, it may not work (or compile) at all if compiled against an older SDK, and if compiled against the new sdk still probably won't work.
If you are a programmer you can fix things, if you aren't then there is still a much wider range of people who can fix or improve things than with closed source. If a piece of software is really important to you, open source always gives you the opportunity to hire programmers to work on it for you. With closed source only the original vendor can fix anything for you, they might be unwilling or unable to do so. Quite often they will leave their old products to rot and expect you to buy new ones, wether you want to or not. Many users out there are now stuck with data in proprietary formats, only readable by closed source applications which for whatever reason are no longer being supported by their original vendors. This is not a good situation to be in, especially for a business. An old application may also necessitate running other old software such as an old OS, making the problem even worse.
As for how non programmers can benefit from open source, look at Quake or Doom for instance, originally written for DOS, there are now versions for virtually any platform including modern ones, and many of these versions have enhancements not available in the original. Compare that to games from the same era which have not been open sourced, many don't run on modern platforms without using emulation, and those that do often suffer from bugs. Emulation also often isn't perfect, and even if it is all you get is an exact copy of how the game was over 10 years ago with no enhancements. You don't have to be a programmer to benefit from things like this.
If a piece of open source code is still useful to people, then at least you have the option to do something about it. The more people who find it useful, the greater the chances that some of these people will either have programming skills, will know someone who does or will be willing to pay someone that does. If your using an old unmaintained open source package, form a user group with other people who are using it and work together to recruit developers to make any changes you need.
User hostile features - that is any feature which provides no benefit to the user, and is often detrimental to the user... Such features include DRM, license codes, expiry dates etc. Open source never has features like this, closed source developers often go out of their way to implement features for the benefit of the developers but detrimental to users. Another such detrimental feature is proprietary formats or protocols, designed to lock you into that vendor's products.
Even if you aren't a programmer, you can work with those who are and provide them useful services, you can work on documentation or translation thereof, you can provide feature suggestions or bug reports and if you find a piece of software useful you have the option to donate to those who are working on it.
The fact that open source is typically available free of charge is undoubtedly a benefit, but it is by no means the most important one. There are massive benefits to open source for non programmers, and even bigger benefits if you are a programmer.
Wii games are good for kids, but kids are very good at scratching games... Thankfully pirates come to the rescue and provide a very useful function that is missing from modern consoles - the ability to copy the media and play the copy, thus giving you the ability to make another copy when the first one becomes damaged. Years ago, when music came on cassettes it was standard practice to make a copy and play the copy.
I still play quake (the first one) on a regular basis, i have an original cd with the data files but i haven't touched the original program binaries in years, i use quakeforge which runs nicely on my modern gentoo box. I play online with a handful of friends and we run our own server - most other quake 1 servers have long since been shut down.
I'm sure it will still be possible to play quake online for years to come... If we ever move over to ipv6 fully, how many old games will still be playable over the internet for instance?
"the nice picture app that came with the camera you gave grandma for Xmas"
Aside from the fact that most software bundled with devices is pretty crap, the answer is because the company selling the camera wants to sell cameras, the software is just a freebie to sweeten the hardware. Adding linux software in the same package, or even just claiming linux compatibility on the packaging will at best increase sales and at worst do nothing at all.
If you look at the recent sales of the humble indie bundle, when given a choice linux users on average are willing to pay more and there is quite a considerable number of them.
So answer honestly Linux guys, how much money have you spent on the software that is currently installed on your PC?
None, because all my day to day needs are perfectly well covered by free software. I am quite happy to pay for software, but only when that software provides value for money. It has to provide sufficient value over and above what i can get for free. If a commercial program is only marginally better than a free alternative, is the difference alone worth the price? If a commercial program provides exactly equivalent functionality to a free program, then its worth exactly the same as the free version to me - ie nothing.
Having no money sunk into software doesn't mean i don't have motivation to get the best from the software i have, but what it does mean is that i won't stick with what i have if something better comes along... People often stubbornly stick to something inferior because they feel they should get their monies worth, i will gladly switch software if something better comes along. The lack of vendor lock-in with free software is also a factor here.
Where is the motivation to write software for linux? Plenty of individuals as well as companies do write software for linux, perhaps you should ask them? Companies write software because it supports other areas of their business such as consultancy or hardware sales. Writing open source software is often much easier than commercial, simply because in many cases there is so much code that you can build on instead of having to start from scratch. Look at all the embedded devices which run linux, 99% of the code they need is already written and the manufacturer may only need to write a few hardware drivers or tweak the interface a bit. How expensive would these devices be if each manufacturer had to write their own software from scratch or pay a third party to supply some (which would still require as much customisation as linux does if not more).
Eventually, most software will become commoditised with only a few niche products still costing money... Most software will be free, or supplied with hardware. Hardware has gone as far towards commoditisation as it can, but it will always have a physical per unit cost, the only thing stopping software going even further is inertia and the immaturity of the market. As things settle down, become standardised and provide all the features most people need the prices will start to plummet and software has a lot further to fall than hardware.
As for the average joe running through hoops, they already do that with windows, or get someone else to do it for them. Sure, they shouldn't have to, but general purpose software is simply too complex for the average joe. An ipad is actually a far better fit, and while linux isn't perfect modern distributions are actually much easier for such people than windows (anyone saying different isn't counting actual usability, but is basing their argument on prior experience).
While many viruses can be executed by wine, most of the methods they use to insert themselves to run at bootup won't work on wine, and once the wineserver processes is terminated so is any of the malware.
As for having the root filesystem mapped, this is more for convenient but can (and usually should) be disabled, that said unless your running it as root it won't have access to anything outside your $HOME or/tmp, and even if it wanted to trash your homedir most malware is not wine aware and wouldn't know where to find your homedir under a unix filesystem hierarchy anyway.
It also is possible to sandbox wine, by removing the default convenience mappings such as Z:, most windows malware will try to put itself in the systemroot which in the case of wine is a fake area, possibly even a "bottle" which is specific to a single application. Chances are if the malware does decide to trash anything, it will only trash that one wine bottle.
Because the malware is unable to start itself at boot (and therefore is only running when wine is running), wont be able to hook into the kernel to hide itself, and is most likely only contained within a single wine bottle, the malware itself poses far less of a problem than it does under a native windows install, and is much easier to remove
This has been the case for quite some time already...
Compare something like the official AIM or Yahoo clients vs Pidgin or Adium... The latter gets straight to the point, and provides useful functions like being able to connect to multiple networks from a single client... The former clients are usually plastered with ads, and tend to be much bigger than the third party clients.
The only thing Apple brings to the table, is recognition for some of the smaller lightweight apps.
The problem with photoshop is that its seen as "the thing to have", and is therefore used (usually pirated) by many people who simply have no need for its features and could do what they need with many of the alternatives, most of which are free or very cheap.
I know someone who use photoshop for resizing and cropping pictures, yes literally just resizing pictures, nothing fancy whatsoever... He won't even consider using any of the many free programs that would do the job, and his reason was "they're not professional", so instead he uses a pirated photoshop.
Software is simply overpriced, vendors have been getting away with charging ridiculous amounts for years because they're greedy. Software sales are 99% profit, which is why developers on iOS can sell their apps for $5 (with a big cut going to apple) and still make a profit.
With lower prices comes higher volume and reduced piracy.
Software really is a penny bazaar product, sold dirt cheap or given away despite proprietary vendors trying to artificially inflate prices so they can get away with 99% profit margins.
It's the natural end result, for years hardware has been getting cheaper and cheaper and its now down to a point where the profit margins are extremely small but there is a limit with hardware and other physical products, software on the other hand has a much lower price limit as proven by the huge amounts of free software available.
Cheap hardware (which you have to buy anyway) combined with expensive software (which is trivially copied) only serves to make piracy far more attractive too.
If Nintendo can sell their consoles as a profit, why can't sony? Why should the customers be punished because sony decided on such a flawed business model?
Also when the games are so ridiculously expensive to prop up the loss making hardware, it discourages people from buying them... I have a PS3 and a handful of games which were bought very cheaply (mostly used) from a local game store. I know plenty of people who have a ps3 and maybe 1 or 2 games? Most of them are bored of those games and just use it as a glorified video player now.
They don't have the keys, but there are hacks available to bypass the need to have keys which are separate from the dvd firmware hacks (google xbox 360 jtag)
Google are a large company, they have a large finance department, a large HR department, thousands of employees doing all kinds of different tasks at locations all around the world... Most companies requirements will actually be considerably less diverse than Google. So if google can do it, chances are most other companies can too.
Besides, a linux migration is a long term strategy.. Even if you don't plan on doing it any time soon, as you gradually replace/update your applications (which happens all the time regardless) move towards cross platform versions (moving away from apps which depend on a single supplier is a no brainer, even if you retain that original supplier). If you assume that most applications last 5 years before being replaced/upgraded, then 5 years from now all of your applications may well be perfectly usable on linux so if you then decide to move to linux its an easy move .
On the contrary, businesses go for what's been sold to them by someone who claims to know what they're doing...
Most businesses lack any in depth IT knowledge and have to rely on third parties, many of whom are either unscrupulous or incompetent. No well managed business would allow anything remotely important to be tied to a single supplier, and yet you see this happen all the time in IT. So is it a case of the business being ignorant (and thus being fooled by salesmen etc) or are they aware of the risks and simply choose to accept it because they think there is no choice?
Incidentally, i have seen MANY businesses who significantly change the way they do business to accommodate software that works in a particular way or has particular bugs. Businesses will often just put up with whatever crap is sold to them, they very rarely do a proper evaluation or consult anyone who is both impartial and knowledgeable.
They *could* maintain their own closed version of linux, but why would they want to go to that level of effort? The more closed changes they make, the harder it becomes to benefit from changes being made to the open version. A closed fork very quickly becomes very expensive to maintain, especially when something is moving as quickly as the linux kernel is.
While binary drivers *may* increase the number of users, binary drivers bring with them a lot of problems... It's often said that the single biggest cause of instability on windows is drivers... And pretty much the biggest thing holding vista (and 64bit windows) back was a lack of drivers too.
A lack of drivers only really exists on consumer level hardware, in the server space open drivers exist for virtually everything because when your selling servers its very damaging to your business to ignore linux.
You talk about allowing closed drivers now and demanding open ones later, i think the opposite would occur... Existing open drivers and vendors who produce them would close up and before too long most drivers would be closed, significantly retarding progress...
Developing linux drivers is really not that hard, and maintaining them becomes far easier if you get the driver included into the mainline kernel.
so long as the porting is easy, and ARM netbooks and/or tables become widespread, well, why not?
They wont become widespread until there are apps, and commercial vendors wont port apps until the hardware is widespread (ie there are actual customers to buy it)... Doesn't really matter how easy porting is... There will almost certainly be a lot of open source apps fairly quickly, but then linux already has all these apps, so will this be enough to bring customers to the platform? Not unless hardware vendors seriously screw up their linux implementation/marketing - and thats more likely to kill the platform totally...
HP and Intel went out of their way to make porting apps to IA64 easy, and look what happened there... Porting to windows on mips, ppc and alpha was easy too - the alpha even used a special compiler to simulate a 32bit cpu to make porting easier, and yet these platforms never took off... mips and ppc were very quickly killed (and microsoft even made their own mips hardware) while alpha hung on in niche markets for a while because it was so far ahead on performance in those days.
x64 is an entirely different kettle of fish, x64 systems can still run x86 applications just fine and most software still ships as 32bit x86 binaries anyway, only a very small niche of software is compiled for x64 so far.
Yes, the porting may be easier than osx or linux, but both osx and linux are currently a larger market than windows/arm and yet are often considered not large enough for commercial ports.
Also since you mention quicken and photoshop, both of those apps already exist for osx on both powerpc and x86, and photoshop even used to have unix ports (irix at least)... Porting to linux would not be terribly difficult.
You will also get fragmentation of brand... On linux at least, the same applications are already available for arm and x86 (or mips, or whatever else), if a piece of software is for "linux" then chances are it can run on your hardware regardless... Also the repository/appstore model suits this very well.
Windows apps being closed source, pretty much depend on running on compatible hardware... Users will be annoyed when they buy "Games for windows" and find they don't work on this new windows/arm, they will be forced to check what architectures the apps they want to use are available for. Most apps these days are not written in hardware neutral frameworks like java or.net...
While a single copy of preinstalled windows isn't that much, a hundred thousand copies is a lot... If your an OEM looking to ship thousands of units, removing a costly component could have a very positive impact on your margins.
As for end users, thats all down to marketing... Chances are if these people are leaning towards known companies, then they will be buying hardware from known brands too and so if the OEM promotes it well there could easily be linux sales... A decent linux distro (note: not the crippled distros that have shipped on previous netbooks) has a lot of advantages to a typical end user, they just don't know about them because there is little or no marketing.
On the other hand, if the people are buying unbranded equipment they are probably doing so because its cheaper, so buying unbranded software isn't much of a stretch for the same reason.
Why? Office might be ported if MS are trying to push the platform hard, but photoshop? I doubt it...
Photoshop was never ported to NT/Alpha or NT/IA64, and those platforms offered superior to x86 performance and memory capacities - very useful for running photoshop, ARM is a low power platform which is unlikely to be used to run photoshop...
Sure, theoretically most of it is a compile away... But unlike on linux, only a single entity can recompile each piece of software... Also very little win32 software has ever been written for anything other than x86, who's to tell how many x86 dependencies might exist in the code which would make porting harder?
Porting *from* an os with 90% share? What you port from doesn't matter, if your porting from an os with 90% share you could be porting *to* beos, or vms...
What matters is the share of the os your porting *to*, if that os has no users then closed source apps will never be ported. If there are no apps, then no users will use the os. Open source apps will probably be ported if anyone cares enough, but then if an app is open source it probably already runs on linux/arm anyway. Windows already failed on alpha, mips, ppc and ia64, primarily due to lack of apps... (yes the ia64 port still exists but its being scaled back and looks likely to be dropped).
Theres also the matter of history... Windows apps have traditionally been written for x86 only, and when targeting a single architecture you can make various assumptions which can cause breakage when the code is compiled for a different cpu... Think endian issues, and differently sized data types etc... Linux however is a unix clone, and unix clones were already widely used on different architectures, even before linux was ported to different processor types, so most unix source code is fairly portable across different hardware. I have run linux on various kinds of non x86 hardware for years and very rarely had problems compiling things...
Lock-in should trouble anyone trying to run a business, no well managed business would ever let itself get locked in to a single supplier in any other field... Why should software be treated any differently? Individuals should care too, but generally have less invested in it (tho im sure there are people who still remember being stuck with a betamax vcr or hd-dvd player)...
But if you're not going to run anything which is tied to windows, then what's the point paying more for windows?
Linux runs a browser, java, flash, vpn, rdesktop and a media player - and it costs less than windows. Backwards compatibility is about the only selling point windows really has.
There are many security weaknesses that are externally exposed design flaws, and could not be dropped... Such as the use of weak password hashing types which are integral to the networking protocols (google for pass the hash). If they fixed this, you would lose the ability to use most of the ms networking protocols.
If they're going to give it away free, why not simply contribute anything they have which is still of value back to the mainline wine codebase....
Mainline wine is already way ahead in many areas, so it makes sense for development to continue here rather than on cedega's old fork.
Depending on the wording of the specific license, the copyright holders may have given up their right to revoke the license.
Some linux software written today would work on a 2000 linux distro, and some windows software written today does not work on xp.
Most linux software is distributed as source, so a recompile is not a problem. I still run xv every day on my modern linux machines for viewing images, xv was written in 1994.
If you really must run old precompiled software that depends on old libraries you can bundle those libraries in with the software - like many windows apps do.
The differences however, are...
XP was current in 2006, any linux distro from 2001 was very much obsolete by 2006.
Linux upgrades come out more frequently and are free, so there is little or no reason to be running old versions.
Most of the software is also open source and free, meaning again there is no reason to run old versions.
Linux has extremely good forwards and backwards compatibility, especially at the source level. I am able to compile and run unix programs from the 80s (ie before linux existed) on my modern linux system. Backwards compatibility also works well assuming you don't use features that weren't present in old versions, linux has not changed so much as been added to, the same basic APIs are still there and modern software still uses them.
Windows is actually far more of a mess, although the same APIs are present there are often multiple functions with the same name, and which one gets called depends on which version of the SDK you compile against. If you write your code to use the new versions, it may not work (or compile) at all if compiled against an older SDK, and if compiled against the new sdk still probably won't work.
Your supposed to play freeciv online against other humans, it's much more fun that way...
Drop me a message if you'd like to play sometime.
Among other things...
With open source:
If you are a programmer you can fix things, if you aren't then there is still a much wider range of people who can fix or improve things than with closed source. If a piece of software is really important to you, open source always gives you the opportunity to hire programmers to work on it for you.
With closed source only the original vendor can fix anything for you, they might be unwilling or unable to do so. Quite often they will leave their old products to rot and expect you to buy new ones, wether you want to or not. Many users out there are now stuck with data in proprietary formats, only readable by closed source applications which for whatever reason are no longer being supported by their original vendors. This is not a good situation to be in, especially for a business. An old application may also necessitate running other old software such as an old OS, making the problem even worse.
As for how non programmers can benefit from open source, look at Quake or Doom for instance, originally written for DOS, there are now versions for virtually any platform including modern ones, and many of these versions have enhancements not available in the original. Compare that to games from the same era which have not been open sourced, many don't run on modern platforms without using emulation, and those that do often suffer from bugs. Emulation also often isn't perfect, and even if it is all you get is an exact copy of how the game was over 10 years ago with no enhancements. You don't have to be a programmer to benefit from things like this.
If a piece of open source code is still useful to people, then at least you have the option to do something about it. The more people who find it useful, the greater the chances that some of these people will either have programming skills, will know someone who does or will be willing to pay someone that does. If your using an old unmaintained open source package, form a user group with other people who are using it and work together to recruit developers to make any changes you need.
User hostile features - that is any feature which provides no benefit to the user, and is often detrimental to the user... Such features include DRM, license codes, expiry dates etc. Open source never has features like this, closed source developers often go out of their way to implement features for the benefit of the developers but detrimental to users. Another such detrimental feature is proprietary formats or protocols, designed to lock you into that vendor's products.
Even if you aren't a programmer, you can work with those who are and provide them useful services, you can work on documentation or translation thereof, you can provide feature suggestions or bug reports and if you find a piece of software useful you have the option to donate to those who are working on it.
The fact that open source is typically available free of charge is undoubtedly a benefit, but it is by no means the most important one. There are massive benefits to open source for non programmers, and even bigger benefits if you are a programmer.
Wii games are good for kids, but kids are very good at scratching games...
Thankfully pirates come to the rescue and provide a very useful function that is missing from modern consoles - the ability to copy the media and play the copy, thus giving you the ability to make another copy when the first one becomes damaged.
Years ago, when music came on cassettes it was standard practice to make a copy and play the copy.
Well said...
I still play quake (the first one) on a regular basis, i have an original cd with the data files but i haven't touched the original program binaries in years, i use quakeforge which runs nicely on my modern gentoo box. I play online with a handful of friends and we run our own server - most other quake 1 servers have long since been shut down.
I'm sure it will still be possible to play quake online for years to come... If we ever move over to ipv6 fully, how many old games will still be playable over the internet for instance?
"the nice picture app that came with the camera you gave grandma for Xmas"
Aside from the fact that most software bundled with devices is pretty crap, the answer is because the company selling the camera wants to sell cameras, the software is just a freebie to sweeten the hardware. Adding linux software in the same package, or even just claiming linux compatibility on the packaging will at best increase sales and at worst do nothing at all.
If you look at the recent sales of the humble indie bundle, when given a choice linux users on average are willing to pay more and there is quite a considerable number of them.
So answer honestly Linux guys, how much money have you spent on the software that is currently installed on your PC?
None, because all my day to day needs are perfectly well covered by free software. I am quite happy to pay for software, but only when that software provides value for money. It has to provide sufficient value over and above what i can get for free. If a commercial program is only marginally better than a free alternative, is the difference alone worth the price? If a commercial program provides exactly equivalent functionality to a free program, then its worth exactly the same as the free version to me - ie nothing.
Having no money sunk into software doesn't mean i don't have motivation to get the best from the software i have, but what it does mean is that i won't stick with what i have if something better comes along... People often stubbornly stick to something inferior because they feel they should get their monies worth, i will gladly switch software if something better comes along. The lack of vendor lock-in with free software is also a factor here.
Where is the motivation to write software for linux? Plenty of individuals as well as companies do write software for linux, perhaps you should ask them?
Companies write software because it supports other areas of their business such as consultancy or hardware sales. Writing open source software is often much easier than commercial, simply because in many cases there is so much code that you can build on instead of having to start from scratch. Look at all the embedded devices which run linux, 99% of the code they need is already written and the manufacturer may only need to write a few hardware drivers or tweak the interface a bit. How expensive would these devices be if each manufacturer had to write their own software from scratch or pay a third party to supply some (which would still require as much customisation as linux does if not more).
Eventually, most software will become commoditised with only a few niche products still costing money... Most software will be free, or supplied with hardware. Hardware has gone as far towards commoditisation as it can, but it will always have a physical per unit cost, the only thing stopping software going even further is inertia and the immaturity of the market. As things settle down, become standardised and provide all the features most people need the prices will start to plummet and software has a lot further to fall than hardware.
As for the average joe running through hoops, they already do that with windows, or get someone else to do it for them. Sure, they shouldn't have to, but general purpose software is simply too complex for the average joe. An ipad is actually a far better fit, and while linux isn't perfect modern distributions are actually much easier for such people than windows (anyone saying different isn't counting actual usability, but is basing their argument on prior experience).
While many viruses can be executed by wine, most of the methods they use to insert themselves to run at bootup won't work on wine, and once the wineserver processes is terminated so is any of the malware.
As for having the root filesystem mapped, this is more for convenient but can (and usually should) be disabled, that said unless your running it as root it won't have access to anything outside your $HOME or /tmp, and even if it wanted to trash your homedir most malware is not wine aware and wouldn't know where to find your homedir under a unix filesystem hierarchy anyway.
It also is possible to sandbox wine, by removing the default convenience mappings such as Z:, most windows malware will try to put itself in the systemroot which in the case of wine is a fake area, possibly even a "bottle" which is specific to a single application. Chances are if the malware does decide to trash anything, it will only trash that one wine bottle.
Because the malware is unable to start itself at boot (and therefore is only running when wine is running), wont be able to hook into the kernel to hide itself, and is most likely only contained within a single wine bottle, the malware itself poses far less of a problem than it does under a native windows install, and is much easier to remove
This has been the case for quite some time already...
Compare something like the official AIM or Yahoo clients vs Pidgin or Adium...
The latter gets straight to the point, and provides useful functions like being able to connect to multiple networks from a single client... The former clients are usually plastered with ads, and tend to be much bigger than the third party clients.
The only thing Apple brings to the table, is recognition for some of the smaller lightweight apps.
The problem with photoshop is that its seen as "the thing to have", and is therefore used (usually pirated) by many people who simply have no need for its features and could do what they need with many of the alternatives, most of which are free or very cheap.
I know someone who use photoshop for resizing and cropping pictures, yes literally just resizing pictures, nothing fancy whatsoever... He won't even consider using any of the many free programs that would do the job, and his reason was "they're not professional", so instead he uses a pirated photoshop.
Software is simply overpriced, vendors have been getting away with charging ridiculous amounts for years because they're greedy. Software sales are 99% profit, which is why developers on iOS can sell their apps for $5 (with a big cut going to apple) and still make a profit.
With lower prices comes higher volume and reduced piracy.
Software really is a penny bazaar product, sold dirt cheap or given away despite proprietary vendors trying to artificially inflate prices so they can get away with 99% profit margins.
It's the natural end result, for years hardware has been getting cheaper and cheaper and its now down to a point where the profit margins are extremely small but there is a limit with hardware and other physical products, software on the other hand has a much lower price limit as proven by the huge amounts of free software available.
Cheap hardware (which you have to buy anyway) combined with expensive software (which is trivially copied) only serves to make piracy far more attractive too.
If Nintendo can sell their consoles as a profit, why can't sony?
Why should the customers be punished because sony decided on such a flawed business model?
Also when the games are so ridiculously expensive to prop up the loss making hardware, it discourages people from buying them... I have a PS3 and a handful of games which were bought very cheaply (mostly used) from a local game store. I know plenty of people who have a ps3 and maybe 1 or 2 games? Most of them are bored of those games and just use it as a glorified video player now.
They don't have the keys, but there are hacks available to bypass the need to have keys which are separate from the dvd firmware hacks (google xbox 360 jtag)
Google are a large company, they have a large finance department, a large HR department, thousands of employees doing all kinds of different tasks at locations all around the world... Most companies requirements will actually be considerably less diverse than Google. So if google can do it, chances are most other companies can too.
Besides, a linux migration is a long term strategy.. Even if you don't plan on doing it any time soon, as you gradually replace/update your applications (which happens all the time regardless) move towards cross platform versions (moving away from apps which depend on a single supplier is a no brainer, even if you retain that original supplier). If you assume that most applications last 5 years before being replaced/upgraded, then 5 years from now all of your applications may well be perfectly usable on linux so if you then decide to move to linux its an easy move .
On the contrary, businesses go for what's been sold to them by someone who claims to know what they're doing...
Most businesses lack any in depth IT knowledge and have to rely on third parties, many of whom are either unscrupulous or incompetent. No well managed business would allow anything remotely important to be tied to a single supplier, and yet you see this happen all the time in IT. So is it a case of the business being ignorant (and thus being fooled by salesmen etc) or are they aware of the risks and simply choose to accept it because they think there is no choice?
Incidentally, i have seen MANY businesses who significantly change the way they do business to accommodate software that works in a particular way or has particular bugs. Businesses will often just put up with whatever crap is sold to them, they very rarely do a proper evaluation or consult anyone who is both impartial and knowledgeable.
They *could* maintain their own closed version of linux, but why would they want to go to that level of effort? The more closed changes they make, the harder it becomes to benefit from changes being made to the open version. A closed fork very quickly becomes very expensive to maintain, especially when something is moving as quickly as the linux kernel is.
While binary drivers *may* increase the number of users, binary drivers bring with them a lot of problems...
It's often said that the single biggest cause of instability on windows is drivers... And pretty much the biggest thing holding vista (and 64bit windows) back was a lack of drivers too.
A lack of drivers only really exists on consumer level hardware, in the server space open drivers exist for virtually everything because when your selling servers its very damaging to your business to ignore linux.
You talk about allowing closed drivers now and demanding open ones later, i think the opposite would occur... Existing open drivers and vendors who produce them would close up and before too long most drivers would be closed, significantly retarding progress...
Developing linux drivers is really not that hard, and maintaining them becomes far easier if you get the driver included into the mainline kernel.
so long as the porting is easy, and ARM netbooks and/or tables become widespread, well, why not?
They wont become widespread until there are apps, and commercial vendors wont port apps until the hardware is widespread (ie there are actual customers to buy it)... Doesn't really matter how easy porting is...
There will almost certainly be a lot of open source apps fairly quickly, but then linux already has all these apps, so will this be enough to bring customers to the platform? Not unless hardware vendors seriously screw up their linux implementation/marketing - and thats more likely to kill the platform totally...
HP and Intel went out of their way to make porting apps to IA64 easy, and look what happened there...
Porting to windows on mips, ppc and alpha was easy too - the alpha even used a special compiler to simulate a 32bit cpu to make porting easier, and yet these platforms never took off... mips and ppc were very quickly killed (and microsoft even made their own mips hardware) while alpha hung on in niche markets for a while because it was so far ahead on performance in those days.
x64 is an entirely different kettle of fish, x64 systems can still run x86 applications just fine and most software still ships as 32bit x86 binaries anyway, only a very small niche of software is compiled for x64 so far.
Yes, the porting may be easier than osx or linux, but both osx and linux are currently a larger market than windows/arm and yet are often considered not large enough for commercial ports.
Also since you mention quicken and photoshop, both of those apps already exist for osx on both powerpc and x86, and photoshop even used to have unix ports (irix at least)... Porting to linux would not be terribly difficult.
You will also get fragmentation of brand...
On linux at least, the same applications are already available for arm and x86 (or mips, or whatever else), if a piece of software is for "linux" then chances are it can run on your hardware regardless... Also the repository/appstore model suits this very well.
Windows apps being closed source, pretty much depend on running on compatible hardware... Users will be annoyed when they buy "Games for windows" and find they don't work on this new windows/arm, they will be forced to check what architectures the apps they want to use are available for. Most apps these days are not written in hardware neutral frameworks like java or .net...
While a single copy of preinstalled windows isn't that much, a hundred thousand copies is a lot... If your an OEM looking to ship thousands of units, removing a costly component could have a very positive impact on your margins.
As for end users, thats all down to marketing... Chances are if these people are leaning towards known companies, then they will be buying hardware from known brands too and so if the OEM promotes it well there could easily be linux sales... A decent linux distro (note: not the crippled distros that have shipped on previous netbooks) has a lot of advantages to a typical end user, they just don't know about them because there is little or no marketing.
On the other hand, if the people are buying unbranded equipment they are probably doing so because its cheaper, so buying unbranded software isn't much of a stretch for the same reason.
Why?
Office might be ported if MS are trying to push the platform hard, but photoshop? I doubt it...
Photoshop was never ported to NT/Alpha or NT/IA64, and those platforms offered superior to x86 performance and memory capacities - very useful for running photoshop, ARM is a low power platform which is unlikely to be used to run photoshop...
Sure, theoretically most of it is a compile away... But unlike on linux, only a single entity can recompile each piece of software...
Also very little win32 software has ever been written for anything other than x86, who's to tell how many x86 dependencies might exist in the code which would make porting harder?
Porting *from* an os with 90% share?
What you port from doesn't matter, if your porting from an os with 90% share you could be porting *to* beos, or vms...
What matters is the share of the os your porting *to*, if that os has no users then closed source apps will never be ported.
If there are no apps, then no users will use the os.
Open source apps will probably be ported if anyone cares enough, but then if an app is open source it probably already runs on linux/arm anyway.
Windows already failed on alpha, mips, ppc and ia64, primarily due to lack of apps... (yes the ia64 port still exists but its being scaled back and looks likely to be dropped).
Theres also the matter of history...
Windows apps have traditionally been written for x86 only, and when targeting a single architecture you can make various assumptions which can cause breakage when the code is compiled for a different cpu... Think endian issues, and differently sized data types etc...
Linux however is a unix clone, and unix clones were already widely used on different architectures, even before linux was ported to different processor types, so most unix source code is fairly portable across different hardware. I have run linux on various kinds of non x86 hardware for years and very rarely had problems compiling things...
Lock-in should trouble anyone trying to run a business, no well managed business would ever let itself get locked in to a single supplier in any other field... Why should software be treated any differently?
Individuals should care too, but generally have less invested in it (tho im sure there are people who still remember being stuck with a betamax vcr or hd-dvd player)...
But if you're not going to run anything which is tied to windows, then what's the point paying more for windows?
Linux runs a browser, java, flash, vpn, rdesktop and a media player - and it costs less than windows. Backwards compatibility is about the only selling point windows really has.
There are many security weaknesses that are externally exposed design flaws, and could not be dropped... Such as the use of weak password hashing types which are integral to the networking protocols (google for pass the hash).
If they fixed this, you would lose the ability to use most of the ms networking protocols.