In reality it will probably just run the lines of code (just like your desktop computer) and will never think outside of the box since it isn't programmed to do so. It will likely be essentially dumb devices that interact with their environment in a way that some people will regard as "intelligent" and which have to be firmware upgraded regularly to fix bugs, just like a mobile phone today.
The moral is that a computer will always just run lines of code without "thinking" and therefore never do stuff it isn't programmed to do so. Unless the programmer made an error and it will start to do crazy (seemingly) random stuff. This can create very dangerous situations if no fail-safe is built in, but the kind of dangerous will still be of the same kind as a car computer that fails to signal the breaks: It may kill the driver but it will still be a logical event or technical failure.
The only thing we have to fear (as always) are other humans with wrong intentions building in backdoors to trigger these devices to harmful things.
There will always be things that computers can't do.
Think about the time when all of the people that were typing invoices all day on a typewriter lost their job.
They all found a new job.
Also, who will maintain all of these new systems (which will likely be very prone to failure because of their complexity)?
It will generate a lot of maintenance jobs. A lot of this work will be routine work which can be carried out by almost any of the people you mentioned.
And that's when people start purchasing support from Novell, RedHat and other companies.
Then those company's will use a portion of those funds to invest back into the Open Source products their customers are using.
I see these companies as proxies that will invest back into Open Source for you, and that's part of the reason I'm paying for support. And all of a sudden the sometimes ridiculed "paying for support" starts making perfect sense. Most IT departments have money but lack time and therefore can only contribute by paying for support.
I mostly agree with your post, but would like to add the following
Ultimately, in my opinion, it's the voice and opinion of the general public that is incorporated into laws about how heavy penalties for certain actions are. And since everyone is unanimously against murder, this is often quite a clear case.
But since the public opinion is so divided concerning copyright cases, a judge that has very strongly chosen one side can be called biased even regardless of his membership of a lobby group. The membership only proves it in my opinion.
I've been through the Samba etc. stages and didn't make it through. If you want to build a complete environment with it you have got to build/assemble almost everything yourself out of loose components. Think about LDAP, Authentication, Groupware/e-mail, Mobile device synchronization, Desktop management, printer driver management, printer spooling. It involves much more then you'd think at first.
Also, eventually you're going to miss features that users demand, which will really ruin your day.
In the end we went with Novell Open Workgroup Suite BTW, which is a really good compromise between OSS and proprietary software IMHO.
First off, thank you for calling me an idiot to add strength to your arguments.
I was referring to Linux on the desktop in a business environment. There are lots of valid business cases for using Linux instead of competing products. It's all about getting the maximum ROI on your IT investment and there is no "fanboyism" involved. You seem to be a lot more emotional about it than I am.
Binary compatibility is not so much of an issue, there are lots of examples of pre-compiled binary software that runs on all Linux distributions: Firefox, Flash, government tax software and quite a few games. This proves that it can be done. The trick is to include the library's with the application. The same happens with Windows applications (it often comes with a lot of DLL files).
The obstacle preventing Linux adoption on the desktop is when a company for example uses Autocad or ERP software that doesn't support Linux on the desktop. It's then nearly impossible to migrate. And since most companies need to run Windows on the desktop already (because of other software they are already using on the desktop), there is not much need for the other vendors to support alternatives. Luckily, there is a shift taking place but it takes a lot of time. Linux has come very far on the server, but the desktop is another story.
There is just one problem: Not everyone is willing to work for free and they need to gather the money to pay the journalists with somewhere.
Two words for you: "Vendor Lock-in"
A lot of third party software doesn't run on Linux, thus slowing down Linux adoption on the desktop.
If we can't even get a simple thing as SPF implemented by everyone, how on earth are we going to implement an entire payment structure for email?
I believe there are much easier ways to achieve the same goal and they're failing upon people not implementing them.
Integration issues were the biggest issue I've faced when attempting to migrate the company to OpenOffice.
There's not a lot you can do about that without the (full) cooperation of your vendors. You'd be surprised how many application rely on MS Office or some DLL's of it. So eventually we had to migrate back to MS Office because of this.
Tragic but true..
Actually, this wouldn't have mattered so much if they were using Novell Groupwise.
Groupwise would store the message only once in the database and then put a pointer in every user's mailbox referring to that message. If you'd recall the message it'd just remove the pointers in mailboxes where the message has not yet been read, in order to reflect the current situation.
One of the reasons I avoided Exchange like the plague is that Microsoft implements stuff like a hack job instead of doing things properly.
Lot's of times when something goes wrong with phone bills, it goes *very* wrong.
When I usually have a phone bill of 20 euros, and one month my bill starts rising to 5000,-.
I'd like to be able to tell them in advance to cut me off at 200,-, because if I'd ever reach that amount then something went wrong! I'd even be more than happy to pay them 20 euros of service fees for this service.
At the company I work for, mistakes happen quite frequently and there should be a way to detect them. Those mistakes amount thousands of euro's down the toilet per year. A phone bill is just completely uncontrollable.
Example: Someone creates a bill of 1000,- euros in the first week of January. I'd only notice this at 15 February when the bill of January arrives. Imagine that the trend continues all these weeks: We'd be talking about 6000,- euro's while we're expecting a bill of 100,- for that user.
Therefore you should be able to specify a maximum amount for a certain user in advance. When the costs ever reach that amount, service should be terminated.
"Love your country but never trust its government." -- from a hand-painted road sign in central Pennsylvania