You're talking to open source software developers here, not "99% of the computer users out there". Open frigging source developers! These are people who write computer programs for fun. They're not just outliers, it's the fact that they are outliers is what makes them important.
So what 99% of computer users do is irrelevant. Get that through your skull, because asking a bunch of people who really do buy computers without Windows, for whom not running Windows is an advantage, to write software for Windows and then telling them to use "the copy of Windows they got with their computer" after they've told you they don't have one is not going to help you sell your point at all.
Because this "tiny little fraction" of the user population is the "tiny little fraction" that's in a position to help you. You need the "outliers and freaks". It's the "outliers and freaks" who don't need you.
Actually, I don't care what you do.
Yes you do. You care whether I port my open source software to Windows, or you wouldn't be in this discussion. You care whether I agree with your idea of the "correct" use of quotes (yes, that's a correct use of quotes). You care enough about what I do to keep coming back or you wouldn't be here.
Camino Keychain Integration isn't all that hot, because Camino doesn't support multiple passwords per site, so you end up with separate Keychain entries for Camino and Webkit browsers.
"Open source is a complete mess -- many people do lots of different things. There's total confusion today," Villasante said.
With:
"Firstly, I'm not responsible for software patents -- the software patent directive is managed by the director general of Internal [Market]. The opinion of the director general of Information Society [the division where Villasante works] is not necessarily the same as the director general of Internal."
Linux on Intel was nearly only FIFTEEN PERCENT of the cost of Sun servers!
YM the latest Intel hardware is only 15% the cost of the older Sparc hardware they're replacing.
Price and performance has never been the pull for Sparc, and what you're seeing is the result of the collapse of most of the non-Intel CPUs, plus Moores Law.
This is why Linux is such a huge part of the UNIX Market, yes. That's why in the '80s SCO was, for a time, the biggest part of the UNIX Market before they started taking themselves too seriously and both quit improving and tried to price themselves up there with the "big boys".
You notice the prices Red Hat are charging? Remember that RH is the leading commercial Linux and the only version of Linux most of the commercial software there is for Linux is supported on. Red Hat is the new SCO.
It has NOTHING to do with whether Linux has the same system calls, or whether Linux is POSIX compliant, or anything else related to nomenclature.
So, if Linux couldn't run the exact same software as the Suns, if it was some kind of "Open Source VMS" or "Open Source AmigaDOS", or even "Open Source Windows", it would still be doing as well? People don't run ISS under Wine on Linux, they run Apache. People don't run SQL Server under Wine on Linux, they run Postgres. This has nothing to do with "nomenclature", it has 100% to do with applications. Linux only has applications because it is UNIX. Because people don't buy operating systems to run operating systems, they buy them to run applications.
Applications define the market.
Even Microsoft is going after the UNIX applications part of the server market, because that's the biggest part of that market. That's why Active Directory is based on DNS, that's why Interix is available. Windows Applications is a less-than-35% slice, at best, and it's growing slowly... File and Print and everything else you need to support Microsoft's desktops is still Microsoft's strength.
If Linux wasn't UNIX, it would have zero percent of the market for servingUNIX applications, and that would leave it with zero percent of the server market. Zero. None. Nada. Zilch. A big fat goose egg. The only reason there's a "Linux Market" is because there's a "UNIX Market" for Linux to be part of.
Separating Linux out as if it was a different market from any other UNIX, as if it had its own applications base driving it, is just foolishness.
Problem with that is you have ONE PROPRIETARY company competing against everybody else using Linux (eventually).
Nah. Worst case, it's Sun and Red Hat against the free Linux vendors. But I don't think it'll come to that. All these companies have more complex strategies than you think.
HP thinks of themselves as one of the Linux vendors, with HPUX at the high end and Linux at the low end.
And Linux isn't the only OSOS out there. Microsoft's using OpenBSD in Interix, IBM's using NetBSD code all over the place in AIX. And of course OS X has an open source UNIX base. There's already a dynamic development community there. One that's got a much better integrated code base to work on.
Linux is not the operating system that Richard Stallman was trying to build. It's an operating system that uses GCC and is shipped under the GPL, but acting as if "GNU" is part of its name is just revisionism. You might as well start talking about GNU/MacOS or GNU/WindowsNT because Apple and Microsoft both ship GCC.
Linux is not about preserving the legacy of UNIX.
Actually, it is. You're mixing up Linux with Hurd.
If 386bsd had been ready one year earlier, I'd probably not have started on linux at all, but used bsd instead - although I'm very happy with how it all turned out. -- Linus Torvalds
Who cares if Linux is 20% of the UNIX market
The people using the Linux systems that make up that 20%.
One hundred percent of the software running on one hundred percent of those servers is UNIX software, written to the UNIX API, using UNIX system calls. The differences between Open Source UNIX and Proprietary UNIX are no bigger than the differences between one Open Source UNIX and another, or between on proprietary UNIX and another.
Learn the difference between PROPRIETARY and OPEN SOURCE.
I got that. You want to try working on the difference between Open Source and Open Systems?
Believe it or not, your use of "quotes" here inhibits whatever sort of "point" you were trying to make.
Why? What point are you trying to make? That calling a Windows box a "game system" if you use it to play games on is unreasonable? That the copy of XP Home that comes with a $400 PC is really free, and not just bundled?
Interesting that you list computer systems and motherboards in the same list
That's because I've only bought two Intel-based computers as systems. The rest were bought in pieces. You want me to expand that to "Biostar U8068 + $20 case/power supply +...", and break out the whole thing?
The point is that your statement that "Unless you're one of those rare folks who jumped through the hoops required to return the license of windows that came with your computer... you've got it." is bullshit. Out of the 6 intel boxes in that list, only two of those run Windows and only run Windows because other members of the family wanted to play Halflife and Everquest. The machines I personally own and use, including 3 of the Intel-based boxes in that list, don't have a single copy of Windows between them.
Windows is going to have to compete directly with Linux - which is not the same proposition as competing with expensive UNIX systems.
"Windows is going to have to compete with cheap UNIX systems, not expensive UNIX systems". Whether those cheap UNIX systems are free Linux on Intel, RHEL on Intel, Sun Fire running Solaris on Sparc, or Mac Xserves running OS X on PPC, that's pretty much irrelevant.
Linux is at the low end of the price range, which is why it's growing fastest, but the rest of the UNIX market is also growing... remember, ALL these systems are individually going down in price. The Sun Fire boxes don't seem out of line against the Dell Poweredge or HP DL360.
it's Linux/BSD FIRST, Wintel SECOND, and Unix THIRD.
What versions of UNIX are you putting in the "BSD" camp and which in the "UNIX" camp? HPUX and Tru64 are BSD, for sure. AIX is mostly BSD these days, and of course Mac OS X is. What about Interix? Are you counting that as BSD or Windows? And the Coyote Point load balancers?
The point of breaking out Linux versus UNIX is to indicate how fast Linux is overtaking proprietary UNIX, not just Windows.
OK, and the point of this is... what? To create a three-way race because it's more exciting? Why not separate out AIX or Solaris instead? Or any other implementation of UNIX? How about splitting it between Solaris, Windows, and Other UNIX? That would be silly, wouldn't it?
Well, you know, Linux is just another implementation of UNIX. What this is saying is that Linux is over 20% of the UNIX market. And that's a meaningful statement and it doesn't reinforce this artificial distinction between Linux and all other UNIX implementations.
It's like the desktop market share. They'll say "Windows: 90%, Linux: 4%, Mac: 5%, Other: 1%" (or whatever the figures are). They won't say: "Windows: 90%, UNIX: 10%, Other: really say.
And it's worse on servers, because Microsoft ships a UNIX environment for Windows and uses it extensively themselves at Hotmail, so a chunk of those Windows servers... even if they're still running Windows... are being used as UNIX servers as well.
UNIX, the operating system of the Open Systems movement, has come to completely dominate the operating system world. And Linux is part of that... a BIG part of that. But it's because it's part of that that it's become almost 1/4 of that market... if it wasn't UNIX it would be another also-ran OS with a handful of users.
UNIX is UNIX is UNIX. It doesn't matter whose code it's made from, if it looks like UNIX and works like UNIX it's UNIX.
One of the reasons Microsoft is making such inroads into the server market is that they've really improved their operating system.
The biggest improvement I've seen is releasing Interix, which means they really support a functional UNIX environment and using UNIX tools on your Windows servers. What other improvements have they made?
Separating Linux from "trademark-UNIX" in this sort of comparison is just plain deceptive. You can find more differences between different trademark-UNIX versions than between most trademark-UNIX versions and Linux.
So UNIX server sales are at least 45% to Windows 35%, and I wouldn't be surprised to find UNIX sales in the remaining 20% as well. Especially since the #1 manufacturer is IBM with their "penguin farms".
This is typical of these survey summaries. And of course you can't get at the actual results
It's not worth delaying the Linux release of foo because some feature doesn't work in the Windows version.
What about a situation like Firefox where without the Windows version it probably wouldn't exist? Or maybe you think it'd be better if Firefox didn't exist? I could see a case for that, actually, though it is one of the examples Ulrich uses.
This guy seems to think that Open Source guys should only work to support the platform.
That's a really interesting way to put it because it reminds me of all the horrible things that Microsoft has done to themselves (let alone other people) by making everything they do part of "Windows Everywhere".
Point: The Pocket PC is crippled more because it's been turned into a kind of annex to a "real computer" running Windows, than because it's based on Windows. The "Windows Powered" handheld today is at least comparable to almost all personal deskt computers of the '90s, yet each release has been less versatile and more restricted. Forget about whether Microsoft's going to have a "tabbed browser", Pocket IE won't even let you switch between two windows! All in the name of trying to compete with PalmOS (which is roughly as sophisticated as the original Mac OS) without competing with Windows laptops.
Point: One reason given for the delays in Longhorn is XP SP2, which took up so many of Microsoft's resources for so long. But if they hadn't integrated the browser and the desktop to make Windows into an "internet platform" then a huge part of the work they put into SP2 wouldn't have been necessary, because Windows wouldn't be such a happy environment for viruses in the first place.
So even if you ignore everything they do to everyone else, making "Windows Everywhere" a primary goal has crippled Microsoft themselves.
The average buyer doesn't want a distribution, they want a complete operating system.
That's one reason I prefer FreeBSD. It's a complete operating system. KDE and Gnome run on it, too.
another project has to be started that creates a complete and pure Linux operating system that is a "total experience and environment" rather than a collection of packages.
Unless you're one of those rare folks who jumped through the hoops required to return the license of windows that came with your computer.
Here's my computers and the operating systems that came with them: Apple II, AppleDOS. Atari 800, AtariDOS. Tandy model 2000, MS-DOS 2.11. Amiga 1000, AmigaDOS. Amiga 3000, AmigaDOS. Clone, System V/386. Macintosh, Finder 4.something. Compaq Deskpro, MS-DOS 3.something. Amiga 1200, AmigaDOS. Generic clone, used, no operating system (or even hard disk). Biostar U8068 motherboard, no operating system. Biostar U8668 motherboard, no operating system. Powermac 7200, Mac OS 8.1 Powermac 7600, Mac OS 8.6 ASUS Motherboard (upgrade), no operating system. Powermac G3, Mac OS 9.0 ASUS Motherboard (upgrade), no operating system. Powermac G3, no OS or hard drive. Mac Mini, Mac OS X 10.3
I do have a Windows laptop provided by work, and I've done some development on that, but I didn't get the copies of Windows on our "game" machines for "free" with the computer.
Also, unless you use things like cygwin, your app which compiles and runs on multiple unixes quite happily will require extensive modification to run on windows, the graphical interface especially is very different from X11.
That's why I write so much code in Tcl/Tk, because the same code runs the same way on every platform. When you write code for Windows that uses Cygwin, you're doing the same thing... but at a lower level.
You could probably eliminate most of the problems with locked files and case sensitivity by porting to Interix instead of Cygwin. Microsoft's actually trying to make it easy for open source software to run on Windows without modifying it for Windows. They're actually reducing the amount of Windows-dependency yu have to add to your application... why not take advantage of it?
My first job, ever, was porting software from one version of COBOL to another. I was working for the company who'd written both COBOL compilers, and manufactured the hardware both ran on, and both operating systems, and there was only one section (a check digit routine) that wasn't simply a matter of the original code depending on some laxness in the original compiler and simply cleaning up the code fixed all the problems. One routine needed to be rewritten, the rest were already bugs in the original code.
And this was in an environment where the differences between the operating systems were so radical that they made Linux and Windows look like twins.
This has been my experience ever since then, no matter what the language, no matter what the hardware. Most portability problems are bugs that haven't been found yet. My first C porting nightmare was porting my own code from the PDP-11 to the VAX and discovering that (long) wasn't always longer than (int). Porting Elm to Xenix-286 was mostly a matter of finding all the places the authors had forgotten that integers weren't always 32 bits wide.
Because portability doesn't just mean portability to "minority platforms", it means portability to newer and older versions of your own software as well.
One of the reasons I use FreeBSD instead of Linux is because I can depend on FreeBSD being careful to avoid breaking things, and I can depend on Linux deliberately breaking things. And I can depend on Red Hat being in the forefront of the breakage.
We're not talking about the difference between a Palm and a PC here, we're talking about the difference between systems that are all using the same basic API with the same basic display and hardware. Even the difference between Windows and Linux pales by comparison with the difference between the platforms I started working with.
If the small amount of care that's required for portability between different versions of UNIX is too much work, then we might as well give up and embrace the monoculture and switch to Windows today.
Ulrich Drepper may be an asshole, but he is the maintainer of GNU Libc, which seems to work.
GNU libc has been responsible for a continuing low grade pain in the butt for both commercial and open source software. Every major upgrade to libc has been a "flag day" that every open source project in the world has had to stop and deal with, and even minor upgrades can be painful. It's like it's being developed by someone who just doesn't care about portability and compatability.
After reading this essay, I guess I can say that's because it's being developed by a guy who doesn't care about portability and compatibility.
You're an outlier and a freak.
You're talking to open source software developers here, not "99% of the computer users out there". Open frigging source developers! These are people who write computer programs for fun. They're not just outliers, it's the fact that they are outliers is what makes them important.
So what 99% of computer users do is irrelevant. Get that through your skull, because asking a bunch of people who really do buy computers without Windows, for whom not running Windows is an advantage, to write software for Windows and then telling them to use "the copy of Windows they got with their computer" after they've told you they don't have one is not going to help you sell your point at all.
Because this "tiny little fraction" of the user population is the "tiny little fraction" that's in a position to help you. You need the "outliers and freaks". It's the "outliers and freaks" who don't need you.
Actually, I don't care what you do.
Yes you do. You care whether I port my open source software to Windows, or you wouldn't be in this discussion. You care whether I agree with your idea of the "correct" use of quotes (yes, that's a correct use of quotes). You care enough about what I do to keep coming back or you wouldn't be here.
Camino Keychain Integration isn't all that hot, because Camino doesn't support multiple passwords per site, so you end up with separate Keychain entries for Camino and Webkit browsers.
Compare and contrast:
"Open source is a complete mess -- many people do lots of different things. There's total confusion today," Villasante said.
With:
"Firstly, I'm not responsible for software patents -- the software patent directive is managed by the director general of Internal [Market]. The opinion of the director general of Information Society [the division where Villasante works] is not necessarily the same as the director general of Internal."
Which of these is a more complete mess?
Linux on Intel was nearly only FIFTEEN PERCENT of the cost of Sun servers!
YM the latest Intel hardware is only 15% the cost of the older Sparc hardware they're replacing.
Price and performance has never been the pull for Sparc, and what you're seeing is the result of the collapse of most of the non-Intel CPUs, plus Moores Law.
This is why Linux is such a huge part of the UNIX Market, yes. That's why in the '80s SCO was, for a time, the biggest part of the UNIX Market before they started taking themselves too seriously and both quit improving and tried to price themselves up there with the "big boys".
You notice the prices Red Hat are charging? Remember that RH is the leading commercial Linux and the only version of Linux most of the commercial software there is for Linux is supported on. Red Hat is the new SCO.
It has NOTHING to do with whether Linux has the same system calls, or whether Linux is POSIX compliant, or anything else related to nomenclature.
So, if Linux couldn't run the exact same software as the Suns, if it was some kind of "Open Source VMS" or "Open Source AmigaDOS", or even "Open Source Windows", it would still be doing as well? People don't run ISS under Wine on Linux, they run Apache. People don't run SQL Server under Wine on Linux, they run Postgres. This has nothing to do with "nomenclature", it has 100% to do with applications. Linux only has applications because it is UNIX. Because people don't buy operating systems to run operating systems, they buy them to run applications.
Applications define the market.
Even Microsoft is going after the UNIX applications part of the server market, because that's the biggest part of that market. That's why Active Directory is based on DNS, that's why Interix is available. Windows Applications is a less-than-35% slice, at best, and it's growing slowly... File and Print and everything else you need to support Microsoft's desktops is still Microsoft's strength.
If Linux wasn't UNIX, it would have zero percent of the market for servingUNIX applications, and that would leave it with zero percent of the server market. Zero. None. Nada. Zilch. A big fat goose egg. The only reason there's a "Linux Market" is because there's a "UNIX Market" for Linux to be part of.
Separating Linux out as if it was a different market from any other UNIX, as if it had its own applications base driving it, is just foolishness.
Problem with that is you have ONE PROPRIETARY company competing against everybody else using Linux (eventually).
Nah. Worst case, it's Sun and Red Hat against the free Linux vendors. But I don't think it'll come to that. All these companies have more complex strategies than you think.
HP thinks of themselves as one of the Linux vendors, with HPUX at the high end and Linux at the low end.
And Linux isn't the only OSOS out there. Microsoft's using OpenBSD in Interix, IBM's using NetBSD code all over the place in AIX. And of course OS X has an open source UNIX base. There's already a dynamic development community there. One that's got a much better integrated code base to work on.
An operating system that never got finished?
Linus didn't spell Linux with a G.
Linux is not the operating system that Richard Stallman was trying to build. It's an operating system that uses GCC and is shipped under the GPL, but acting as if "GNU" is part of its name is just revisionism. You might as well start talking about GNU/MacOS or GNU/WindowsNT because Apple and Microsoft both ship GCC.
Linux is not about preserving the legacy of UNIX.
Actually, it is. You're mixing up Linux with Hurd.
Who cares if Linux is 20% of the UNIX market
The people using the Linux systems that make up that 20%.
One hundred percent of the software running on one hundred percent of those servers is UNIX software, written to the UNIX API, using UNIX system calls. The differences between Open Source UNIX and Proprietary UNIX are no bigger than the differences between one Open Source UNIX and another, or between on proprietary UNIX and another.
Learn the difference between PROPRIETARY and OPEN SOURCE.
I got that. You want to try working on the difference between Open Source and Open Systems?
Believe it or not, your use of "quotes" here inhibits whatever sort of "point" you were trying to make.
...", and break out the whole thing?
Why? What point are you trying to make? That calling a Windows box a "game system" if you use it to play games on is unreasonable? That the copy of XP Home that comes with a $400 PC is really free, and not just bundled?
Interesting that you list computer systems and motherboards in the same list
That's because I've only bought two Intel-based computers as systems. The rest were bought in pieces. You want me to expand that to "Biostar U8068 + $20 case/power supply +
The point is that your statement that "Unless you're one of those rare folks who jumped through the hoops required to return the license of windows that came with your computer... you've got it." is bullshit. Out of the 6 intel boxes in that list, only two of those run Windows and only run Windows because other members of the family wanted to play Halflife and Everquest. The machines I personally own and use, including 3 of the Intel-based boxes in that list, don't have a single copy of Windows between them.
Windows is going to have to compete directly with Linux - which is not the same proposition as competing with expensive UNIX systems.
"Windows is going to have to compete with cheap UNIX systems, not expensive UNIX systems". Whether those cheap UNIX systems are free Linux on Intel, RHEL on Intel, Sun Fire running Solaris on Sparc, or Mac Xserves running OS X on PPC, that's pretty much irrelevant.
Linux is at the low end of the price range, which is why it's growing fastest, but the rest of the UNIX market is also growing... remember, ALL these systems are individually going down in price. The Sun Fire boxes don't seem out of line against the Dell Poweredge or HP DL360.
it's Linux/BSD FIRST, Wintel SECOND, and Unix THIRD.
What versions of UNIX are you putting in the "BSD" camp and which in the "UNIX" camp? HPUX and Tru64 are BSD, for sure. AIX is mostly BSD these days, and of course Mac OS X is. What about Interix? Are you counting that as BSD or Windows? And the Coyote Point load balancers?
How many Linux servers do you typically run per box?
He's talking about Applications not Operating Systems.
The point of breaking out Linux versus UNIX is to indicate how fast Linux is overtaking proprietary UNIX, not just Windows.
OK, and the point of this is... what? To create a three-way race because it's more exciting? Why not separate out AIX or Solaris instead? Or any other implementation of UNIX? How about splitting it between Solaris, Windows, and Other UNIX? That would be silly, wouldn't it?
Well, you know, Linux is just another implementation of UNIX. What this is saying is that Linux is over 20% of the UNIX market. And that's a meaningful statement and it doesn't reinforce this artificial distinction between Linux and all other UNIX implementations.
It's like the desktop market share. They'll say "Windows: 90%, Linux: 4%, Mac: 5%, Other: 1%" (or whatever the figures are). They won't say: "Windows: 90%, UNIX: 10%, Other: really say.
And it's worse on servers, because Microsoft ships a UNIX environment for Windows and uses it extensively themselves at Hotmail, so a chunk of those Windows servers... even if they're still running Windows... are being used as UNIX servers as well.
UNIX, the operating system of the Open Systems movement, has come to completely dominate the operating system world. And Linux is part of that... a BIG part of that. But it's because it's part of that that it's become almost 1/4 of that market... if it wasn't UNIX it would be another also-ran OS with a handful of users.
UNIX is UNIX is UNIX. It doesn't matter whose code it's made from, if it looks like UNIX and works like UNIX it's UNIX.
One of the reasons Microsoft is making such inroads into the server market is that they've really improved their operating system.
The biggest improvement I've seen is releasing Interix, which means they really support a functional UNIX environment and using UNIX tools on your Windows servers. What other improvements have they made?
Separating Linux from "trademark-UNIX" in this sort of comparison is just plain deceptive. You can find more differences between different trademark-UNIX versions than between most trademark-UNIX versions and Linux.
So UNIX server sales are at least 45% to Windows 35%, and I wouldn't be surprised to find UNIX sales in the remaining 20% as well. Especially since the #1 manufacturer is IBM with their "penguin farms".
This is typical of these survey summaries. And of course you can't get at the actual results
glibc is unsuitable for all environments where speed, size, or memory constraints are an issue
Or portability and reliability. How can you maintain long-term compatibility when minor revs in a critical library are incompatible changes.
It's not worth delaying the Linux release of foo because some feature doesn't work in the Windows version.
What about a situation like Firefox where without the Windows version it probably wouldn't exist? Or maybe you think it'd be better if Firefox didn't exist? I could see a case for that, actually, though it is one of the examples Ulrich uses.
I apologize. I didn't notice the missing middle term in your example conditional; I couldn't even fathom that such a thing was accepted anywhere.
/. for apologizing?
...
Wow, well thanks. You know you can get drummed out of
Yeh, the first time I saw that I was, well, pretty boggled.
Are there any good reasons not to compile with "-ansi -pedantic"?
Let's see.
1. You're not using GCC.
2. You're compiling with -ansi -pedantic-errors -Wall -Wdeclaration-after-statement.
3.
I don't see "one operand is MISSING" in there.
This guy seems to think that Open Source guys should only work to support the platform.
That's a really interesting way to put it because it reminds me of all the horrible things that Microsoft has done to themselves (let alone other people) by making everything they do part of "Windows Everywhere".
Point: The Pocket PC is crippled more because it's been turned into a kind of annex to a "real computer" running Windows, than because it's based on Windows. The "Windows Powered" handheld today is at least comparable to almost all personal deskt computers of the '90s, yet each release has been less versatile and more restricted. Forget about whether Microsoft's going to have a "tabbed browser", Pocket IE won't even let you switch between two windows! All in the name of trying to compete with PalmOS (which is roughly as sophisticated as the original Mac OS) without competing with Windows laptops.
Point: One reason given for the delays in Longhorn is XP SP2, which took up so many of Microsoft's resources for so long. But if they hadn't integrated the browser and the desktop to make Windows into an "internet platform" then a huge part of the work they put into SP2 wouldn't have been necessary, because Windows wouldn't be such a happy environment for viruses in the first place.
So even if you ignore everything they do to everyone else, making "Windows Everywhere" a primary goal has crippled Microsoft themselves.
The average buyer doesn't want a distribution, they want a complete operating system.
That's one reason I prefer FreeBSD. It's a complete operating system. KDE and Gnome run on it, too.
another project has to be started that creates a complete and pure Linux operating system that is a "total experience and environment" rather than a collection of packages.
That would be FreeBSD again.
In the interest of promoting a good idea I hadn't seen explained in detail before, "strlcpy and strlcat - consistent, safe, string copy and concatenation".
Unless you're one of those rare folks who jumped through the hoops required to return the license of windows that came with your computer.
Here's my computers and the operating systems that came with them:
Apple II, AppleDOS.
Atari 800, AtariDOS.
Tandy model 2000, MS-DOS 2.11.
Amiga 1000, AmigaDOS.
Amiga 3000, AmigaDOS.
Clone, System V/386.
Macintosh, Finder 4.something.
Compaq Deskpro, MS-DOS 3.something.
Amiga 1200, AmigaDOS.
Generic clone, used, no operating system (or even hard disk).
Biostar U8068 motherboard, no operating system.
Biostar U8668 motherboard, no operating system.
Powermac 7200, Mac OS 8.1
Powermac 7600, Mac OS 8.6
ASUS Motherboard (upgrade), no operating system.
Powermac G3, Mac OS 9.0
ASUS Motherboard (upgrade), no operating system.
Powermac G3, no OS or hard drive.
Mac Mini, Mac OS X 10.3
I do have a Windows laptop provided by work, and I've done some development on that, but I didn't get the copies of Windows on our "game" machines for "free" with the computer.
Use cygwin
No thanks, Interix works better.
Also, unless you use things like cygwin, your app which compiles and runs on multiple unixes quite happily will require extensive modification to run on windows, the graphical interface especially is very different from X11.
That's why I write so much code in Tcl/Tk, because the same code runs the same way on every platform. When you write code for Windows that uses Cygwin, you're doing the same thing... but at a lower level.
You could probably eliminate most of the problems with locked files and case sensitivity by porting to Interix instead of Cygwin. Microsoft's actually trying to make it easy for open source software to run on Windows without modifying it for Windows. They're actually reducing the amount of Windows-dependency yu have to add to your application... why not take advantage of it?
I call BULLSHIT!
Seconded!
My first job, ever, was porting software from one version of COBOL to another. I was working for the company who'd written both COBOL compilers, and manufactured the hardware both ran on, and both operating systems, and there was only one section (a check digit routine) that wasn't simply a matter of the original code depending on some laxness in the original compiler and simply cleaning up the code fixed all the problems. One routine needed to be rewritten, the rest were already bugs in the original code.
And this was in an environment where the differences between the operating systems were so radical that they made Linux and Windows look like twins.
This has been my experience ever since then, no matter what the language, no matter what the hardware. Most portability problems are bugs that haven't been found yet. My first C porting nightmare was porting my own code from the PDP-11 to the VAX and discovering that (long) wasn't always longer than (int). Porting Elm to Xenix-286 was mostly a matter of finding all the places the authors had forgotten that integers weren't always 32 bits wide.
But is it good for the market?
Absolutely.
Because portability doesn't just mean portability to "minority platforms", it means portability to newer and older versions of your own software as well.
One of the reasons I use FreeBSD instead of Linux is because I can depend on FreeBSD being careful to avoid breaking things, and I can depend on Linux deliberately breaking things. And I can depend on Red Hat being in the forefront of the breakage.
We're not talking about the difference between a Palm and a PC here, we're talking about the difference between systems that are all using the same basic API with the same basic display and hardware. Even the difference between Windows and Linux pales by comparison with the difference between the platforms I started working with.
If the small amount of care that's required for portability between different versions of UNIX is too much work, then we might as well give up and embrace the monoculture and switch to Windows today.
Ulrich Drepper may be an asshole, but he is the maintainer of GNU Libc, which seems to work.
GNU libc has been responsible for a continuing low grade pain in the butt for both commercial and open source software. Every major upgrade to libc has been a "flag day" that every open source project in the world has had to stop and deal with, and even minor upgrades can be painful. It's like it's being developed by someone who just doesn't care about portability and compatability.
After reading this essay, I guess I can say that's because it's being developed by a guy who doesn't care about portability and compatibility.