What's your point? That it's possible to run OS X illegally on non-Mac hardware? That's irrelevant, because any customer of the sort who is going to invest in software (rather than just copying it illegally) is not going to break the law by violating Apple's license. I'm sure it's great for "l337" teenagers who dual-boot to OS X on their parents' computers, but in the grown-up world running OS X on anything but a Mac is not a serious option.
Cyclical relationships, which shouldn't exist in decent code
Man, I wish I lived in a nice simple world like yours, where you could just define "decent code" to exclude whole critical areas of computer science.
I really do believe that resource awareness is crucial to efficient programming. Garbage collection encourages lazy programming habits, which I've seen in quite a few Java developers.
You do realise, I take it, that people said the same thing about compilers? FORTRAN just encourages lazy programming habits! No good can ever come of letting computers convert your pseudocode into machine code! It will never be as efficient as machine code constructed by a skilled programmer! Compilers are just a crutch for lazy mathematicians - it would be a disaster for computing if they were to take over from real programming!
First of all, even dumb mallocs do not 'always' take O(n) time.
Please go away and learn some computer science before you try to sound smart. As the GP correctly said, malloc() implemented as a linked list traversal will always take O(n) time by definition.
Is there an equivalent of Strunk & White for Slashdot postings, or does it just grate on your own senses to see monospace used for plain text? If the former, I'll reform
God, I hope not. Strunk & White is a ridiculous manual filled with nonsensical proscriptions that no good author in the history of the English language has ever obeyed. (In fact, if you read Language Log, you'll know that even Strunk and White themselves routinely neglected to follow their own advice.)
The library is compiled with GC on, so when the method returns the object, the object is registered with the GC to be watched for its reference count going to zero, for example. Now you don't wish to use GC in your own code, so you compile with it off. Then the compiler will never add the code to effect decrementing the reference count in the GC's tables, so the object will never be GC'ed.
You're right that mixing GC'd libraries with non-GC'd libraries would probably be a Bad Thing, but your idea of how a GC might be implemented is curious. I can think of few systems likely to perform worse than one based on a global table holding reference counts, thus combining all the disadvantages of reference counting (decreased performance due to the need to update reference counts constantly and atomically, inability to handle cyclic data structures) with a massive loss of memory locality (hello, cache misses galore!).
Perhaps you should go and read up on how GC works. You might find it interesting.:)
You'd have to provide cites for GC being "often faster". I really can't see how scanning the stack and globals for pointers that might either point to an entity or, worse, to the interior of an entity can be fast.
The only quantitative study I know of is this one, which finds that performance of GC is equivalent to manual memory management where sufficient memory is available, but can become much slower where memory is constrained.
However, the results are likely very much dependent on the specific programming style. It may be that GC can be faster if the code is designed differently.
I spend my days working with code that does lots and lots of pointer math
Then you don't want GC. GC and pointer arithmetic are fundamentally incompatible, since most GC strategies rely on being able to move objects in memory. However, if you're doing that kind of thing, then you're working on very low-level code. Where GC wins is with high-level code, GUI applications and the like, where performance is less important than developer time.
Anybody who wants to run OS X but doesn't want to pay the apple premium (or already has hardware, like myself) can. And does.
Nonsense. Only a tiny minority of people who want to run OS X but don't own Macs are sufficiently lacking in moral fibre to succumb to the temptation to break the law to run it. The rest are capable of overcoming their greed and accepting that they'll have to stump up for a Mac or do without.
Some people would like a legal version they can auto-update and feel good about. Right now, they're stuffed.
Buy a Mac. If you don't want to pay "the Apple premium" (whatever that is), then buy a second-hand Mac. Just don't run OS X illegally and then whine that Apple's being mean by not playing the way you want them to.
Microsoft makes a lot of money with operating systems. But [...] they are literally the only company succeeding with an OS-only (no hardware) strategy.
The VS2003 toolchain didn't take long to disappear
That's because they decided to make VS2005 Express Edition free forever to replace it, thereby making the VS2003 toolchain obsolete. Microsoft decides to upgrade a free product, and to throw in an IDE for free with it? Sounds good to me.
Also as for "instant compilations" it's called a makefile. Build your objects, modify source, rebuild only the modified objects, etc. Nothing to see here, move along.
Except that Delphi does it faster and without needing a makefile. It calculates the dependencies automatically, and compiles whatever needs to be compiled. Instantly, whereas the average C++ compilation takes several seconds for me even with a makefile.
Of course, the Delphi compiler is so fast that it's as good as instantaneous even if you force it to rebuild absolutely everything.
It helps that Delphi is properly modular, instead of using C++'s braindead textual inclusion model (even precompiled headers can't make C++ compilation fast).
Does it still use pascal's weird funky operators chosen simply to be different from other languages?
Sorry, I don't have a clue what you're referring to. Delphi uses Pascal's perfectly commonplace operators chosen to be similar to myriad other Algol-derived or -inspired languages.
Just because you've never dared stray from braces languages doesn't mean that any other convention is "weird", "funky", or deliberately contrary, you know.
Let's face it, though, that the computer culture is, so far, a short one. It's a very new medium, unprecedented by anything it developed from that could be viewed as the "heritage" of it. Music developed during the ages. Even movies had their roots in theatres and plays. Computer games have nothing to draw from.
True, that. How can games ever hope to be taken seriously? It's not like there are ancient traditions of gaming with deep roots in our culture or anything. No serious intellectual would dream of wasting his time on a frivolous pursuit of the working classes, like chess, or go, or bridge.
You know, *exactly* the same thing was said by most people with a clue when Microsoft originally invented DirectX and said that Win95 was suitable for games. And they even bundled their wonderful "Hover" game as a proof of concept, which really just proved that yes, the performance of games under Windows really was as bad as expected.
If you think Hover was bad, you obviously never had the misfortune to play any of the handful of titles that used the truly dreadful WinG under Windows 3.x.
I still have nightmares about a scene in King's Quest VII that involved a simple animation of a lump of cheese falling into a pond. It ran at literally 0.2 frames per minute.
You say there are things to be fixed yet list none. Hopefully you can see these things that need to be fixed and post them here for the rest of us to see.
He already provided an example in his first post. You know, the one you responded to with a kneejerk rant?
He provided a plausible situation in the current patent system, coupled with unethical capitalism, might lead to a cheap cure for a disease being locked away for decades while the company that owned it sold expensive treatments instead.
Doesn't that sound to you like something that ought to be fixed?
Nobody stops up anymore and questions anything. It is now considered a fact carved in stone that global warming occurs, that it is entirely man-made and that the right action by man absolutely will fix everything. It is heresy to even consider that some or all of the effects seen might be the result of some natural process not understood completely. It is downright blasphemy to even hint that the suggested actions intended to fix things actually might make things worse (due to lack of understanding of the deeper issues).
Hardly. What people actually believe is that global warming appears to be occurring, that it appears to be influenced by human activity, and that the right action by man might slow it down or reduce its effects. It is unhelpful to stubbornly reject the evidence as insufficient without suggesting what evidence you would consider sufficient (short of New York sinking below the waves). It is downright irritiating to insist that no action should be taken until we have a complete understanding of the entire situation (which, according to the less optimistic projections, will not happen until long after it's too late to do anything).
And strawman arguments like yours are not helpful. It's very easy for you to brush off anyone who has been convinced by the scientific evidence for human-influenced global warming as "brainwashed" or "deluded". But hyperbole is not reality, and saying people believe things they don't believe does nothing to advance the debate.
How does your email certification scheme prevent malicious false reports of spam from causing lazy certification providers to incorrectly revoke the certification of innocent users, leading either to false positives or to the usefulness of certification being largely lost?
I am yet to be convinced of the instalment model - perhaps I'm in the minority but I prefer to play a game that has a definite conclusion to it. Something about releasing by instalments feels like the story equivalent of the "release and be damned!" mentality of the games industry heavyweights, and the whole attraction of adventure games as a genre to me is story. If the story suffers then I'd question whether its for me.
Why do you assume that episodic means no conclusions and a suffering story? As long as the story's properly planned out in advance, with an appropriate structure that takes advantage of the episodic form, there's no reason to suppose it can't be a satisfying experience even for story-centric gamers.
It's not like there isn't plenty of precedent. TV shows are almost all episodic, but many of them still have great plot and character development. High literature like Dickens was released in installments, and that hasn't stopped him being widely acclaimed as one of the greatest storytellers of his time. Episodic can mean meandering (Lost), but it doesn't have to. It can mean "oh shit, we can't put off the release any longer, let's package this unfinished product up and tell them there's another installment coming" (Halo 2, Half-Life 2), but it doesn't have to.
Sometimes, episodic just means the same great story delivered in chunks that fit into your busy life when you have time.
First: I'm quite willing to invest the time before buying any hardware in researching OSS Support because it's part of the basic research needed before making any choice.
I also believe that anyone who's not willing to do even simple research such as this at the various hardware project sites such as Linuxprinting, Xorg, ALSA don't have any reason to beef about cheap crappy hardware because they didn't make any effort to research anything before buying.
You're missing the point. Yes, an existing free OS user can easily research support and make informed buying decisions.
The problem is dabblers. Potential switchers. People who've used Windows all their computing life, and are now looking at Vista and thinking, hang on, if I go for Vista I'll need to shell out for a faster computer, but that programmer friend of mine was talking about something called Ubuntu that could give me all the extra security for free... well, people like that did not do any research to find out whether their PC would have Linux-compatible hardware, because when they bought the PC they didn't even know Linux existed. They probably don't even know what hardware they have. It's just a PC.
If they try a LiveCD and it doesn't work with their hardware, they aren't going to go off and do exhaustive research to find out how they can change their hardware to be Linux-compatible. They're going to say "huh, this Ubuntu thing is crap", and stick with Windows. After all, if they need a new PC anyway, they might as well just get a Vista-ready one and switch to that when it comes out. Or they might just stick with Windows XP.
That's the problem. Linux is being sold as a solution for replacing Windows on existing hardware. It had better support that hardware as well as Windows, or it is being mis-sold and people will hate it in consequence.
Besides, the majority of OSS applications can run on multiple OSs. This means, you really want to have ONE development environment, being able to produce code for multiple platforms. As far as I know, Visual X Express (or any other edition) is windows-only.
This is hardly a Windows-specific problem. Nobody complains about OS X being "OSS unfriendly" just because XCode is proprietary. Nobody complains about Linux being "OSS unfriendly" because Intel's C++ compiler isn't a drop-in replacement for gcc. If you want cross-platform, the open-source tools (GCC, Eclipse, etc) run everywhere.
Use Visual Studio for Windows-specific projects, just like Apple fans use XCode for Mac-specific projects. Use the GNU toolchain where portability counts. It's only difficult if you insist on making it difficult for yourself.
Of course, there is gcc also for windows (Cygwin), but Cygwin is sometimes a pain in the *ss to install and configure correctly
So I keep hearing. I still haven't managed to figure out how. I've never had any difficulty. And if Cygwin doesn't do it for you, there's the MinGW/MSYS alternative which some people prefer.
and even if you actually have it installed correcly, it just doesn't behave *the same way* as those same GNU tools do under UNIX.
It's practically indistinguishable. In my experience, any code that has problems compiling under Cygwin is not properly cross-platform. Don't go mistaking Linux for *NIX. Your "UNIX" program might be fine in Linux, and possibly even in FreeBSD if you were careful, but does it compile cleanly in NetBSD? Solaris? AIX? OS X? Not if it makes any of the trivial mistakes Linux coders often make, like assuming that libc is glibc, or that python is in/usr/bin. At least Cygwin's make is GNU make, something you certainly can't rely on on a BSD...
Portable code runs fine in Cygwin. It's non-portable code that has problems. And it's not Cygwin's fault if your code isn't portable. Don't go confusing "Linux-friendly" with "OSS-friendly", because they aren't the same thing, and it's not even clear that going out of one's way to clone non-standard behaviours of Linux is at all desirable.
Disadvantage? A computer in a library used to access Myspace? Honestly, these computers should be used for something a bit more productive than wasting time on myspace.com anyway.
Yeah, good point. It's not like socialising and communication are critically important to healthy development or anything.
(Fully expecting someone to pull out the old "they should go play outside" thing. Yeah, that works really well when they're the only ones outside because all their peers are "wasting time" on myspace.)
There's a bit of a difference between modification over time and the complete reversal of meaning in this case, though.
"Literally" in the sense of "metaphorically" can be traced back to the 1760s, and futile prescriptivist whining about it can be traced back to the early 20th century (source). So given that this is an example of modification over time, how exactly is it different?
Without any caching the M in LAMP quickly becomes a bottleneck.
Don't be silly. Everyone knows LAMP stands for "Linux, Apache, Machine code, and PostgreSQL". You aren't going to tell me my hand-assembled Apache module is a bottleneck, are you?
Here's a mini game you can't complete because they never released the PocketStation!(TM) over here.
That's why you should have got the PC version, which came with a PC port of the PocketStation minigame that you could leave running in the background while you worked.
http://www.osx86project.org/
What's your point? That it's possible to run OS X illegally on non-Mac hardware? That's irrelevant, because any customer of the sort who is going to invest in software (rather than just copying it illegally) is not going to break the law by violating Apple's license. I'm sure it's great for "l337" teenagers who dual-boot to OS X on their parents' computers, but in the grown-up world running OS X on anything but a Mac is not a serious option.
Cyclical relationships, which shouldn't exist in decent code
Man, I wish I lived in a nice simple world like yours, where you could just define "decent code" to exclude whole critical areas of computer science.
I really do believe that resource awareness is crucial to efficient programming. Garbage collection encourages lazy programming habits, which I've seen in quite a few Java developers.
You do realise, I take it, that people said the same thing about compilers? FORTRAN just encourages lazy programming habits! No good can ever come of letting computers convert your pseudocode into machine code! It will never be as efficient as machine code constructed by a skilled programmer! Compilers are just a crutch for lazy mathematicians - it would be a disaster for computing if they were to take over from real programming!
And as for object orientation, well...
First of all, even dumb mallocs do not 'always' take O(n) time.
Please go away and learn some computer science before you try to sound smart. As the GP correctly said, malloc() implemented as a linked list traversal will always take O(n) time by definition.
Is there an equivalent of Strunk & White for Slashdot postings, or does it just grate on your own senses to see monospace used for plain text? If the former, I'll reform
God, I hope not. Strunk & White is a ridiculous manual filled with nonsensical proscriptions that no good author in the history of the English language has ever obeyed. (In fact, if you read Language Log, you'll know that even Strunk and White themselves routinely neglected to follow their own advice.)
Strunk & White: Just Say No.
The library is compiled with GC on, so when the method returns the object, the object is registered with the GC to be watched for its reference count going to zero, for example. Now you don't wish to use GC in your own code, so you compile with it off. Then the compiler will never add the code to effect decrementing the reference count in the GC's tables, so the object will never be GC'ed.
:)
You're right that mixing GC'd libraries with non-GC'd libraries would probably be a Bad Thing, but your idea of how a GC might be implemented is curious. I can think of few systems likely to perform worse than one based on a global table holding reference counts, thus combining all the disadvantages of reference counting (decreased performance due to the need to update reference counts constantly and atomically, inability to handle cyclic data structures) with a massive loss of memory locality (hello, cache misses galore!).
Perhaps you should go and read up on how GC works. You might find it interesting.
You'd have to provide cites for GC being "often faster". I really can't see how scanning the stack and globals for pointers that might either point to an entity or, worse, to the interior of an entity can be fast.
The only quantitative study I know of is this one, which finds that performance of GC is equivalent to manual memory management where sufficient memory is available, but can become much slower where memory is constrained.
However, the results are likely very much dependent on the specific programming style. It may be that GC can be faster if the code is designed differently.
I spend my days working with code that does lots and lots of pointer math
Then you don't want GC. GC and pointer arithmetic are fundamentally incompatible, since most GC strategies rely on being able to move objects in memory. However, if you're doing that kind of thing, then you're working on very low-level code. Where GC wins is with high-level code, GUI applications and the like, where performance is less important than developer time.
Anybody who wants to run OS X but doesn't want to pay the apple premium (or already has hardware, like myself) can. And does.
Nonsense. Only a tiny minority of people who want to run OS X but don't own Macs are sufficiently lacking in moral fibre to succumb to the temptation to break the law to run it. The rest are capable of overcoming their greed and accepting that they'll have to stump up for a Mac or do without.
Some people would like a legal version they can auto-update and feel good about. Right now, they're stuffed.
Buy a Mac. If you don't want to pay "the Apple premium" (whatever that is), then buy a second-hand Mac. Just don't run OS X illegally and then whine that Apple's being mean by not playing the way you want them to.
Do you have the slightest idea about business?
Yes. Do you?
They rather increase sales in anyway possible.
If they dropped the price of a MacBook Pro to $1.99, sales would rocket. Are you trying to suggest that that would be a smart business move?
Microsoft makes a lot of money with operating systems. But [...] they are literally the only company succeeding with an OS-only (no hardware) strategy.
Are you sure?
The VS2003 toolchain didn't take long to disappear
That's because they decided to make VS2005 Express Edition free forever to replace it, thereby making the VS2003 toolchain obsolete. Microsoft decides to upgrade a free product, and to throw in an IDE for free with it? Sounds good to me.
Also as for "instant compilations" it's called a makefile. Build your objects, modify source, rebuild only the modified objects, etc. Nothing to see here, move along.
Except that Delphi does it faster and without needing a makefile. It calculates the dependencies automatically, and compiles whatever needs to be compiled. Instantly, whereas the average C++ compilation takes several seconds for me even with a makefile.
Of course, the Delphi compiler is so fast that it's as good as instantaneous even if you force it to rebuild absolutely everything.
It helps that Delphi is properly modular, instead of using C++'s braindead textual inclusion model (even precompiled headers can't make C++ compilation fast).
Does it still use pascal's weird funky operators chosen simply to be different from other languages?
Sorry, I don't have a clue what you're referring to. Delphi uses Pascal's perfectly commonplace operators chosen to be similar to myriad other Algol-derived or -inspired languages.
Just because you've never dared stray from braces languages doesn't mean that any other convention is "weird", "funky", or deliberately contrary, you know.
Let's face it, though, that the computer culture is, so far, a short one. It's a very new medium, unprecedented by anything it developed from that could be viewed as the "heritage" of it. Music developed during the ages. Even movies had their roots in theatres and plays. Computer games have nothing to draw from.
True, that. How can games ever hope to be taken seriously? It's not like there are ancient traditions of gaming with deep roots in our culture or anything. No serious intellectual would dream of wasting his time on a frivolous pursuit of the working classes, like chess, or go, or bridge.
You know, *exactly* the same thing was said by most people with a clue when Microsoft originally invented DirectX and said that Win95 was suitable for games. And they even bundled their wonderful "Hover" game as a proof of concept, which really just proved that yes, the performance of games under Windows really was as bad as expected.
If you think Hover was bad, you obviously never had the misfortune to play any of the handful of titles that used the truly dreadful WinG under Windows 3.x.
I still have nightmares about a scene in King's Quest VII that involved a simple animation of a lump of cheese falling into a pond. It ran at literally 0.2 frames per minute.
You say there are things to be fixed yet list none. Hopefully you can see these things that need to be fixed and post them here for the rest of us to see.
He already provided an example in his first post. You know, the one you responded to with a kneejerk rant?
He provided a plausible situation in the current patent system, coupled with unethical capitalism, might lead to a cheap cure for a disease being locked away for decades while the company that owned it sold expensive treatments instead.
Doesn't that sound to you like something that ought to be fixed?
Nobody stops up anymore and questions anything. It is now considered a fact carved in stone that global warming occurs, that it is entirely man-made and that the right action by man absolutely will fix everything. It is heresy to even consider that some or all of the effects seen might be the result of some natural process not understood completely. It is downright blasphemy to even hint that the suggested actions intended to fix things actually might make things worse (due to lack of understanding of the deeper issues).
Hardly. What people actually believe is that global warming appears to be occurring, that it appears to be influenced by human activity, and that the right action by man might slow it down or reduce its effects. It is unhelpful to stubbornly reject the evidence as insufficient without suggesting what evidence you would consider sufficient (short of New York sinking below the waves). It is downright irritiating to insist that no action should be taken until we have a complete understanding of the entire situation (which, according to the less optimistic projections, will not happen until long after it's too late to do anything).
And strawman arguments like yours are not helpful. It's very easy for you to brush off anyone who has been convinced by the scientific evidence for human-influenced global warming as "brainwashed" or "deluded". But hyperbole is not reality, and saying people believe things they don't believe does nothing to advance the debate.
How does your email certification scheme prevent malicious false reports of spam from causing lazy certification providers to incorrectly revoke the certification of innocent users, leading either to false positives or to the usefulness of certification being largely lost?
I am yet to be convinced of the instalment model - perhaps I'm in the minority but I prefer to play a game that has a definite conclusion to it. Something about releasing by instalments feels like the story equivalent of the "release and be damned!" mentality of the games industry heavyweights, and the whole attraction of adventure games as a genre to me is story. If the story suffers then I'd question whether its for me.
Why do you assume that episodic means no conclusions and a suffering story? As long as the story's properly planned out in advance, with an appropriate structure that takes advantage of the episodic form, there's no reason to suppose it can't be a satisfying experience even for story-centric gamers.
It's not like there isn't plenty of precedent. TV shows are almost all episodic, but many of them still have great plot and character development. High literature like Dickens was released in installments, and that hasn't stopped him being widely acclaimed as one of the greatest storytellers of his time. Episodic can mean meandering (Lost), but it doesn't have to. It can mean "oh shit, we can't put off the release any longer, let's package this unfinished product up and tell them there's another installment coming" (Halo 2, Half-Life 2), but it doesn't have to.
Sometimes, episodic just means the same great story delivered in chunks that fit into your busy life when you have time.
if ... you're not a drunk/wreckless driver that is likely to slam into a building/rock face/telephone pole/whatever
I would think it very unlikely that a driver reckless enough to be likely to slam into buildings or rock faces would remain wreckless for long.
First:
I'm quite willing to invest the time before buying any hardware in researching OSS Support because it's part of the basic research needed before making any choice.
I also believe that anyone who's not willing to do even simple research such as this at the various hardware project sites such as Linuxprinting, Xorg, ALSA don't have any reason to beef about cheap crappy hardware because they didn't make any effort to research anything before buying.
You're missing the point. Yes, an existing free OS user can easily research support and make informed buying decisions.
The problem is dabblers. Potential switchers. People who've used Windows all their computing life, and are now looking at Vista and thinking, hang on, if I go for Vista I'll need to shell out for a faster computer, but that programmer friend of mine was talking about something called Ubuntu that could give me all the extra security for free... well, people like that did not do any research to find out whether their PC would have Linux-compatible hardware, because when they bought the PC they didn't even know Linux existed. They probably don't even know what hardware they have. It's just a PC.
If they try a LiveCD and it doesn't work with their hardware, they aren't going to go off and do exhaustive research to find out how they can change their hardware to be Linux-compatible. They're going to say "huh, this Ubuntu thing is crap", and stick with Windows. After all, if they need a new PC anyway, they might as well just get a Vista-ready one and switch to that when it comes out. Or they might just stick with Windows XP.
That's the problem. Linux is being sold as a solution for replacing Windows on existing hardware. It had better support that hardware as well as Windows, or it is being mis-sold and people will hate it in consequence.
Besides, the majority of OSS applications can run on multiple OSs. This means, you really want to have ONE development environment, being able to produce code for multiple platforms. As far as I know, Visual X Express (or any other edition) is windows-only.
/usr/bin. At least Cygwin's make is GNU make, something you certainly can't rely on on a BSD...
This is hardly a Windows-specific problem. Nobody complains about OS X being "OSS unfriendly" just because XCode is proprietary. Nobody complains about Linux being "OSS unfriendly" because Intel's C++ compiler isn't a drop-in replacement for gcc. If you want cross-platform, the open-source tools (GCC, Eclipse, etc) run everywhere.
Use Visual Studio for Windows-specific projects, just like Apple fans use XCode for Mac-specific projects. Use the GNU toolchain where portability counts. It's only difficult if you insist on making it difficult for yourself.
Of course, there is gcc also for windows (Cygwin), but Cygwin is sometimes a pain in the *ss to install and configure correctly
So I keep hearing. I still haven't managed to figure out how. I've never had any difficulty. And if Cygwin doesn't do it for you, there's the MinGW/MSYS alternative which some people prefer.
and even if you actually have it installed correcly, it just doesn't behave *the same way* as those same GNU tools do under UNIX.
It's practically indistinguishable. In my experience, any code that has problems compiling under Cygwin is not properly cross-platform. Don't go mistaking Linux for *NIX. Your "UNIX" program might be fine in Linux, and possibly even in FreeBSD if you were careful, but does it compile cleanly in NetBSD? Solaris? AIX? OS X? Not if it makes any of the trivial mistakes Linux coders often make, like assuming that libc is glibc, or that python is in
Portable code runs fine in Cygwin. It's non-portable code that has problems. And it's not Cygwin's fault if your code isn't portable. Don't go confusing "Linux-friendly" with "OSS-friendly", because they aren't the same thing, and it's not even clear that going out of one's way to clone non-standard behaviours of Linux is at all desirable.
Disadvantage? A computer in a library used to access Myspace?
Honestly, these computers should be used for something a bit more productive than wasting time on myspace.com anyway.
Yeah, good point. It's not like socialising and communication are critically important to healthy development or anything.
(Fully expecting someone to pull out the old "they should go play outside" thing. Yeah, that works really well when they're the only ones outside because all their peers are "wasting time" on myspace.)
There's a bit of a difference between modification over time and the complete reversal of meaning in this case, though.
"Literally" in the sense of "metaphorically" can be traced back to the 1760s, and futile prescriptivist whining about it can be traced back to the early 20th century (source). So given that this is an example of modification over time, how exactly is it different?
Without any caching the M in LAMP quickly becomes a bottleneck.
Don't be silly. Everyone knows LAMP stands for "Linux, Apache, Machine code, and PostgreSQL". You aren't going to tell me my hand-assembled Apache module is a bottleneck, are you?
Here's a mini game you can't complete because they never released the PocketStation!(TM) over here.
That's why you should have got the PC version, which came with a PC port of the PocketStation minigame that you could leave running in the background while you worked.
It still sucked, but it sucked less.