Personally i'd prefer not to have digital convergence...
What i want instead, are the separate systems... Multiple separate units that each do one function well and work together, allowing me to replace one piece at a time.
I have a tape deck that is 20+ years old, a turntable that is 20+ years old (i have very little media to play on either of them anymore), a radio that's a year old (digital), a radio thats 10+ years old (analog), a cd player thats about 10 years old, a streaming media player that's a couple of months old, several games consoles etc etc, all connected through an amplifier that's around 5 years old, and a TV that's less than 1 year. I replace it piece by piece as i need new stuff, i have very few tapes or vinyl records, but i do listen to them occasionally so buying a modern all in one system that didn't support them at all would be a pain. Also as stuff gets replaced it's repurposed, my old TV is in the bedroom for instance.
I have a 1995 Jaguar with something like this, it has a speed sensor connected to the head unit. Doesn't seem to bother me too much, but it's fairly subtle because the car itself is also designed not to make too much noise even at high speeds.
It's the maps and more specifically the navigation data you would have trouble with, they won't give that away for free... You can read the GPS data quite easily, and plot it over map images downloaded from google. I guess if you have an active mobile data connection you could feed the src and destination into google maps and plot a route, but making it recognise turns and tell you when to make them would be quite hard.
Microsoft make money because the market has not matured enough yet... They also snuck in through the back door as the hardware market was maturing - people went for the cheaper more open hardware, and overlooked the impending software lock-in because it was a relatively small cost compared to the benefits of cheap open hardware from multiple vendors.
As for your comment about little financial motive... There are many ways to make money that don't involve directly selling software. IBM and RedHat make a lot from support, Many companies make a lot of money from hardware, while investing in making free software (including free as in beer like drivers).
And your claim that very little software being created without someone hoping to make money from selling it, just look at how much free software is available, there is a truly insane amount of software available for free these days.
Plenty of high quality software has been written by hardware vendors and other companies who's primary business is not selling software (eg providers of various services)...
Apple make a lot of software, and a fair bit is given away for free and some with source code. Sun make a lot of software most of which is free. Linux is developed by many companies, some of which are hardware vendors.
Then you have other companies that give software away and make money from associated services... RedHat give away software for free and sell support services based on it. Mozilla - give away a browser, mail client and few other things, make profit through advertising revenue. Google - give away various pieces of software and automated services, also make profit through advertising revenue.
Also the availability of source code makes future programs easier to write, since you can reuse code rather than wasting time rewriting something someone else already wrote but won't give you the code for. Linux is a good example of this.
Hardware generally requires software in order to be useful, so hardware manufacturers will need to write some anyway.
Hardware costs for each unit, and services cost money to provide each and every time, software does not so it's the easiest thing to go when cost cutting.
As for horses vs cars, proprietary vs free is the same:
Zero cost (save money) Open source (modify to suit your needs) No need to worry about license compliance (further cost and time savings) Buy support from multiple vendors (cost savings as support vendors have to compete on a level field) Guaranteed continued availability (ie you aren't relying on a company still being in business to sell you more licenses) Open standards (no lock in, easily switch to different software if you find something better, not be held back on something inferior)
Car maintenance is similar to support, some people can do it themselves, others will employ a third party. That is the work involved actually performing maintenance. Car parts are similar to hardware components, they each have a unit cost.
Software doesn't fit in this analogy, in one respect it's a component, but it doesn't have a per unit cost. If anything it's like the air that's drawn into your engine for the combustion process.
It's perfectly possible to purchase support without having to buy software, and some commercial software comes without support (sometimes charging extra if you want any). But the fact is... Having mandatory support by charging for the software is a scam...
Technical people don't need support. Most end users will never call support, they will call a friend who fits into the technical category. Many businesses, especially larger ones, will employ their own in house support staff.
Aside from that, open source introduces competition into the support provider market, whereas with a proprietary product you have to buy support from the original vendor or perhaps accept a massively reduced service from a third party (they don't have the ability to bugfix the product, nor do they have any of the original authors with in depth knowledge on staff).
What's that dad? you lost your job working as a blacksmith? Why is that? People don't ride around on horses so much anymore?
Software is destined to fall to zero cost eventually, simply because it can. So you can either accept that and find a more long term proposition (ie work for a company that makes software as an aside to their core business, ie a hardware or support vendor) or you become obsolete.
Selling software isn't sustainable, there is no scarcity once software has been written, distribution can be infinite with no cost and code can easily be reused. People will move to the cheaper, more flexible and more open option long term, just like they did with x86 compatible hardware. People are also very much averse for paying when they don't have to, and it's only a matter of time before people realise that software doesn't need to be paid for.
The localisation costs are complete bullshit... Software is cheaper in canada, where it has to support english and french, compared to england where it only needs to support english. American software that only supports english would also sell just fine as-is in england.
And then there's smaller countries who are forced to use the english version anyway, because software companies don't consider them important enough to get a translation, yet they often still end up paying higher prices.
Still, it's yet another reason to use open source, same price everywhere and no vendors screwing you over because they feel like it.
Incidentally, unfair pricing (ie not based on real quantifiable factors) amounts to racism, and something should be done about it... In order to charge more in one country over another, it should be mandatory to document why (ie import taxes etc), and in the case of multiple localised versions make the original available too at a lower cost. Charging someone more just because they happen to live in europe should be considered racial discrimination and punished appropriately.
Microsoft used open hardware (x86 compatibles), and the relative low price of software to bait people into becoming dependant upon their proprietary software, thus negating the benefits of open hardware...
Apple maintained closed hardware and software, just like Commodore, Atari, and a whole host of others.
People saw the benefits of open hardware, and accepted closed software because it was such a small part of the overall cost and the alternatives were no better. Now people are realizing that mistake, but the damage has been done, they fell into the microsoft trap and will have major trouble getting out.
Apple have also realized this, and have taken major steps towards becoming more open, even if it's nowhere near as far as some people would like, it's been enough for them to have record levels of mac sales in recent quarters.
Innovation was primarily stifled because they took away the freedom of others... If you have open standards, then innovation is a must in order to make people use your products instead of a competitors.
Because it's virtually impossible to have such a stranglehold on a huge market with such high profit margins via that method... If there are competitors, even vastly inferior ones, some of them will take bites out of your market. If the market is large enough, the chance of competitors appearing is higher. Making a superior product requires significant investment, thus decreasing the profit margins. Keeping it superior while the competition works hard to improve their offerings costs even more. It's cheaper to erect barriers infront of the competition than it is to outrun them... Tho it never quite worked for dick dastardly.
Software has very low natural barriers to entry, a kid in his bedroom can start small with a handful of customers and grow from there. It's not like hardware markets where there's a huge upfront investment in equipment required.
Yes, because when mono was being developed,.net needed to gain a foothold in the market... Similarly silverlight needs to gain a foothold, so they play nice for now.
Take mono as an example tho, it's not entirely compatible and is quite a way behind the microsoft version. It's not like java where you can take virtually any app and run it on multiple platforms.
They do tho... Look at the netcraft web server survey over the last few years, microsoft have paid several companies that park thousands of domains in order to increase the market share of IIS.
Actually, we should have an online database of motherboards and bios revisions which use a DSDT which complies with the standards, and a hall of shame listing those that don't.
DSDT is the bytecode, and it has a standard published by Intel... Intel also publish a compiler for it.
Microsoft also publish a DSDT compiler, which is far more tolerant of errors than Intel's version as well as varying from the standards considerably, and many motherboard makers use this version.
On linux, grep our dmesg for DSDT.. You should see a line like:
INTL means Intel, MSFT means microsoft, an Intel one is almost always guaranteed to work properly and can usually be found on higher quality motherboards.
Microsoft refuse to support booting from EFI... Vista was supposed to support it, but that was dropped. They only support it on IA64 (Itanium) because there is no other option...
Apple's machines have a backwards compatibility bios emulation mode that's used to boot windows.
Linux can boot direct from EFI, not sure how many people use this feature, and it used to only be for x86 not x86_64 but i assume that has been fixed too if only for use on 64bit macs.
I always found Gigabyte boards fairly cheap, and yet still pretty well specced and reliable... But on the other hand, i haven't used one for a while (had many gigabyte boards in the socket 7 days).
Which doesn't make any sense... Both HP and Dell make a number of Linux systems and if foxconn have such an attitude towards linux support, it's likely their orders from hp/dell will decrease...
I haven't needed to use the commandline for general use on a modern linux like ubuntu either... I have used the CLI on it, but mostly for convenience (wget instead of loading a browser to save a file etc)
On the other hand, i have known many windows users who had to get someone else to perform registry hacks for them to fix something that was broken.
There has even been a publicly available tool for this, called ircnsid.c which has been available for years... It used to be on http://www.psychoid.lam3rz.de/ but that site is down, maybe web.archive.org has a copy of it or something.
But the audio is much simpler to encode, resulting in maybe 20% usage of the second core while the first is 100% used encoding video... The best bet really, is to just encode multiple files at once, use something like xargs to ensure that there are always 4 encoding jobs running (assuming 4 cores), as someone else said - multi threading works better when there is no interdependency of the data.
Multi core no.... But unix apps have been running on multi processor systems for years, and geeks have had access to such systems for years too. I did video encoding in 2000 on a quad cpu alphaserver and a dual cpu sparc, but i just did as someone else suggested and ran multiple encodes simultaneously.
Personally i'd prefer not to have digital convergence...
What i want instead, are the separate systems...
Multiple separate units that each do one function well and work together, allowing me to replace one piece at a time.
I have a tape deck that is 20+ years old, a turntable that is 20+ years old (i have very little media to play on either of them anymore), a radio that's a year old (digital), a radio thats 10+ years old (analog), a cd player thats about 10 years old, a streaming media player that's a couple of months old, several games consoles etc etc, all connected through an amplifier that's around 5 years old, and a TV that's less than 1 year.
I replace it piece by piece as i need new stuff, i have very few tapes or vinyl records, but i do listen to them occasionally so buying a modern all in one system that didn't support them at all would be a pain. Also as stuff gets replaced it's repurposed, my old TV is in the bedroom for instance.
I have a 1995 Jaguar with something like this, it has a speed sensor connected to the head unit. Doesn't seem to bother me too much, but it's fairly subtle because the car itself is also designed not to make too much noise even at high speeds.
It's the maps and more specifically the navigation data you would have trouble with, they won't give that away for free...
You can read the GPS data quite easily, and plot it over map images downloaded from google. I guess if you have an active mobile data connection you could feed the src and destination into google maps and plot a route, but making it recognise turns and tell you when to make them would be quite hard.
Microsoft make money because the market has not matured enough yet... They also snuck in through the back door as the hardware market was maturing - people went for the cheaper more open hardware, and overlooked the impending software lock-in because it was a relatively small cost compared to the benefits of cheap open hardware from multiple vendors.
As for your comment about little financial motive...
There are many ways to make money that don't involve directly selling software. IBM and RedHat make a lot from support, Many companies make a lot of money from hardware, while investing in making free software (including free as in beer like drivers).
And your claim that very little software being created without someone hoping to make money from selling it, just look at how much free software is available, there is a truly insane amount of software available for free these days.
Plenty of high quality software has been written by hardware vendors and other companies who's primary business is not selling software (eg providers of various services)...
Apple make a lot of software, and a fair bit is given away for free and some with source code.
Sun make a lot of software most of which is free.
Linux is developed by many companies, some of which are hardware vendors.
Then you have other companies that give software away and make money from associated services...
RedHat give away software for free and sell support services based on it.
Mozilla - give away a browser, mail client and few other things, make profit through advertising revenue.
Google - give away various pieces of software and automated services, also make profit through advertising revenue.
Also the availability of source code makes future programs easier to write, since you can reuse code rather than wasting time rewriting something someone else already wrote but won't give you the code for. Linux is a good example of this.
Hardware generally requires software in order to be useful, so hardware manufacturers will need to write some anyway.
Hardware costs for each unit, and services cost money to provide each and every time, software does not so it's the easiest thing to go when cost cutting.
As for horses vs cars, proprietary vs free is the same:
Zero cost (save money)
Open source (modify to suit your needs)
No need to worry about license compliance (further cost and time savings)
Buy support from multiple vendors (cost savings as support vendors have to compete on a level field)
Guaranteed continued availability (ie you aren't relying on a company still being in business to sell you more licenses)
Open standards (no lock in, easily switch to different software if you find something better, not be held back on something inferior)
Car maintenance is similar to support, some people can do it themselves, others will employ a third party. That is the work involved actually performing maintenance. Car parts are similar to hardware components, they each have a unit cost.
Software doesn't fit in this analogy, in one respect it's a component, but it doesn't have a per unit cost. If anything it's like the air that's drawn into your engine for the combustion process.
It's perfectly possible to purchase support without having to buy software, and some commercial software comes without support (sometimes charging extra if you want any). But the fact is... Having mandatory support by charging for the software is a scam...
Technical people don't need support.
Most end users will never call support, they will call a friend who fits into the technical category.
Many businesses, especially larger ones, will employ their own in house support staff.
Aside from that, open source introduces competition into the support provider market, whereas with a proprietary product you have to buy support from the original vendor or perhaps accept a massively reduced service from a third party (they don't have the ability to bugfix the product, nor do they have any of the original authors with in depth knowledge on staff).
Yeah, that's why imports from china are so expensive compared to locally produced goods... Oh, wait
What's that dad? you lost your job working as a blacksmith? Why is that? People don't ride around on horses so much anymore?
Software is destined to fall to zero cost eventually, simply because it can. So you can either accept that and find a more long term proposition (ie work for a company that makes software as an aside to their core business, ie a hardware or support vendor) or you become obsolete.
Selling software isn't sustainable, there is no scarcity once software has been written, distribution can be infinite with no cost and code can easily be reused. People will move to the cheaper, more flexible and more open option long term, just like they did with x86 compatible hardware. People are also very much averse for paying when they don't have to, and it's only a matter of time before people realise that software doesn't need to be paid for.
The world changes, deal with it.
The localisation costs are complete bullshit...
Software is cheaper in canada, where it has to support english and french, compared to england where it only needs to support english. American software that only supports english would also sell just fine as-is in england.
And then there's smaller countries who are forced to use the english version anyway, because software companies don't consider them important enough to get a translation, yet they often still end up paying higher prices.
Still, it's yet another reason to use open source, same price everywhere and no vendors screwing you over because they feel like it.
Incidentally, unfair pricing (ie not based on real quantifiable factors) amounts to racism, and something should be done about it... In order to charge more in one country over another, it should be mandatory to document why (ie import taxes etc), and in the case of multiple localised versions make the original available too at a lower cost. Charging someone more just because they happen to live in europe should be considered racial discrimination and punished appropriately.
And if you increase the population density, the problem of transport becomes even worse...
Microsoft used open hardware (x86 compatibles), and the relative low price of software to bait people into becoming dependant upon their proprietary software, thus negating the benefits of open hardware...
Apple maintained closed hardware and software, just like Commodore, Atari, and a whole host of others.
People saw the benefits of open hardware, and accepted closed software because it was such a small part of the overall cost and the alternatives were no better. Now people are realizing that mistake, but the damage has been done, they fell into the microsoft trap and will have major trouble getting out.
Apple have also realized this, and have taken major steps towards becoming more open, even if it's nowhere near as far as some people would like, it's been enough for them to have record levels of mac sales in recent quarters.
Innovation was primarily stifled because they took away the freedom of others...
If you have open standards, then innovation is a must in order to make people use your products instead of a competitors.
Because it's virtually impossible to have such a stranglehold on a huge market with such high profit margins via that method...
If there are competitors, even vastly inferior ones, some of them will take bites out of your market. If the market is large enough, the chance of competitors appearing is higher.
Making a superior product requires significant investment, thus decreasing the profit margins. Keeping it superior while the competition works hard to improve their offerings costs even more.
It's cheaper to erect barriers infront of the competition than it is to outrun them... Tho it never quite worked for dick dastardly.
Software has very low natural barriers to entry, a kid in his bedroom can start small with a handful of customers and grow from there. It's not like hardware markets where there's a huge upfront investment in equipment required.
Yes, because when mono was being developed, .net needed to gain a foothold in the market...
Similarly silverlight needs to gain a foothold, so they play nice for now.
Take mono as an example tho, it's not entirely compatible and is quite a way behind the microsoft version. It's not like java where you can take virtually any app and run it on multiple platforms.
They do tho...
Look at the netcraft web server survey over the last few years, microsoft have paid several companies that park thousands of domains in order to increase the market share of IIS.
Actually, we should have an online database of motherboards and bios revisions which use a DSDT which complies with the standards, and a hall of shame listing those that don't.
DSDT is the bytecode, and it has a standard published by Intel...
Intel also publish a compiler for it.
Microsoft also publish a DSDT compiler, which is far more tolerant of errors than Intel's version as well as varying from the standards considerably, and many motherboard makers use this version.
On linux, grep our dmesg for DSDT.. You should see a line like:
ACPI: DSDT CFFB0440, 64DE (r1 P0004 P0004000 0 INTL 20051117)
INTL means Intel, MSFT means microsoft, an Intel one is almost always guaranteed to work properly and can usually be found on higher quality motherboards.
Microsoft refuse to support booting from EFI... Vista was supposed to support it, but that was dropped. They only support it on IA64 (Itanium) because there is no other option...
Apple's machines have a backwards compatibility bios emulation mode that's used to boot windows.
Linux can boot direct from EFI, not sure how many people use this feature, and it used to only be for x86 not x86_64 but i assume that has been fixed too if only for use on 64bit macs.
I always found Gigabyte boards fairly cheap, and yet still pretty well specced and reliable... But on the other hand, i haven't used one for a while (had many gigabyte boards in the socket 7 days).
Which doesn't make any sense...
Both HP and Dell make a number of Linux systems and if foxconn have such an attitude towards linux support, it's likely their orders from hp/dell will decrease...
I haven't needed to use the commandline for general use on a modern linux like ubuntu either...
I have used the CLI on it, but mostly for convenience (wget instead of loading a browser to save a file etc)
On the other hand, i have known many windows users who had to get someone else to perform registry hacks for them to fix something that was broken.
Look at efnet or ircnet, people spoofing dns has been fairly common for years.
There has even been a publicly available tool for this, called ircnsid.c which has been available for years...
It used to be on http://www.psychoid.lam3rz.de/ but that site is down, maybe web.archive.org has a copy of it or something.
But the audio is much simpler to encode, resulting in maybe 20% usage of the second core while the first is 100% used encoding video...
The best bet really, is to just encode multiple files at once, use something like xargs to ensure that there are always 4 encoding jobs running (assuming 4 cores), as someone else said - multi threading works better when there is no interdependency of the data.
Multi core no....
But unix apps have been running on multi processor systems for years, and geeks have had access to such systems for years too. I did video encoding in 2000 on a quad cpu alphaserver and a dual cpu sparc, but i just did as someone else suggested and ran multiple encodes simultaneously.