What the fsck is "GNU/WINE"! Aaargh! It's one thing to give RMS some credit, but this reeks of puerile toadying in an effort to look sophisticated in front of other juvenile sycophants.
San Fransisco, Manhattan, whereever. The key point is that those places are the most expensive in the US. This is an online publication. They can do business out of Boise for a 1/1000 the rent. If they absolutely need a SF/NY address to attract the advertisers, then they can rent mail box and answering service.
If Salon can lose 80 MILLION FREAKING DOLLARS as a for profit company, then I don't want to how many millions they'll piss away as a nonprofit. Let's see, NPR can get away with being a nonprofit because they get donations from rich multinational corporations, taxpayer funding from sympathetic bureaucracies, and bi-weekly guilt trips laid on the listeners. And even then you can pay twenty NPR staffers for the price of one Salon suit.
Morality and rights are utterly irrelevant and until humans give up these mystical notions, the human race will continue to flounder in the mud.
Hmmm, where have I heard that before? Oh right! It was that seventeenth century libertine dying in the gutter from syphilis. Sometimes I think the purpose of philosophy is merely to justify the bizarre behaviors of the philosophers.
Rather then acting like adults Theo and others make personal attacks, against projects, against persons etc.
WTF are you talking about! Did you even bother to read the thread? Of course not, you're a slashdot reader. No slashdot reader ever bothers to inform themselves.
Here is what Theo said: "I'm now going to step aside and let our user community decide how do deal with such copyright violations."
This was the post that started it all. Doesn't sound like personal attacks to me. In fact, the only personal attacks I can find were attacks on Theo.
From everything I have seen all the BSD projects seem to simply be full of arrogant babies.
Relatively speaking, everyone is an "arrogant baby" to someone else. No operating system is free from this. Certainly Linux, Windows and Mac fans are not free from this trait.
I think Linux users should clean up their own interdistro arrogancy and ad-hominem attacks before they commence with dispensing Good Housekeeping tips to other free operating system projects.
As you note, CLX is licensed under the GPL. I'm looking for a single instance of a non GPL library that claims ownership over any application linking to it.
Besides which, the CLX EULA itself is in violation of the GPL, merely by existing. You cannot impose a separate contract on top of the GPL.
I mean, what is it with all these people who are so deathly afraid of seeing plain text? It's like some phobia that communicable and reaching epidemic proportions. Who frigging cares if the BIOS displays text or not! Why is this such a big deal?
Geez people! That text isn't going to hurt you. It isn't going to damage your mind or warp your spine. It's just some pixels on the screen. Get over it!
If it's so much of an aesthetic horror, then go get yourself an OS that doesn't require rebooting at odd intervals, and just don't reboot! Aaaargh!
I actually have read Title 17, and I am afraid that I will have to agree with the legal folks at the FSF (and every major software company).
Title 17, Sec. 101, defines a derivative work as:
A ''derivative work'' is a work based upon one or more preexisting works, such as a translation, musical arrangement, dramatization, fictionalization, motion picture version, sound recording, art reproduction, abridgment, condensation, or any other form in which a work may be recast, transformed, or adapted. A work consisting of editorial revisions, annotations, elaborations, or other modifications which, as a whole, represent an original work of authorship, is a ''derivative work''.
When I link an application to a library, I am not recasting, transforming, adapting, revising, annotating, elaborating or modifying the original work. In fact, I don't even need to have even seen or examined the library in order to link to it.
At compile time, a library is a black box. You cannot create a derivative work from a black box. Take a book as an example. How would it be even remotely possible to make a derivative work of the book without opening it? Yet I can make an application use a library that I don't even have installed on my system! I've done it before! I've got a program that worked with Qt 3.1 flawlessly, as a binary package, two months before I ever installed Qt 3.1 on my system. How can that be possible if my program is a derivative work of Qt 3.1? I've got another program that is "based on" MFC, yet works flawlessly under WINE, with not one byte of Microsoft DLL anywhere in sight! How can it be derivative of MFC when I don't have MFC available to recast, transform, adapt, revise or modify from?
The usual answer to this conundrum by the FSF is their specious argument that an application is not a derivative if there is more than one implementation of an API available. Yet where is this stated in copyight law? Nowhere! Dependency is not synonymous with derivation. The words "dependent" and "dependency" do not exist in the above definition.
p.s. Static linkage is a different matter, since the process of static linkage creates a "compilation" of the application and library into a whole.
p.p.s. What major software company (other than Trolltech which uses the GPL) considers linkage to be derivation? Please cite from a license or EULA or other documentation. I'm not doubting their existance, I just want to know who.
If your application doesn't work without libfoo then it is clearly a derivative work of libfoo.
Apparently, you're using the same faulty definition of "derivative work" that the FSF is. Go read up on Title 17 then get back to us. Dependency is not derivation. Duh!...it is on such firm ground that only an idiot would want to get up in front of a judge and become a precedent.
No one challenges the FSF because you don't want to go to court to begin with. If you're a little guy, you don't go head to head with the FSF because they have millions of dollars and hundreds of lawyers. If you're a big guy, you don't go head to head with the FSF because a lawsuit if very bad for business. It has nothing to do with the validity of the GPL, but everything to do with the size and reputation of the FSF and the bad mojo that goes along with a lawsuit. Remember, every still thinks the winner of the McDonald's hot coffee lawsuit was a nincompoop, even though she was in the right.
Most of the GPL is quite valid. But there are two parts where it is somewhat shaky. The first is the imposition of terms upon third parties. The second is implicit treatment of linkage as derivation.
The end user can still use the software
Not if it's a library. Using the library means linking to it, and that's restricted by the FSF.
And apparently, the FSF is completely happy with this situation. If they really wanted reasonable copyright terms, then they would have already explicitely placed their 20+ year software (like the original emacs, gcc, etc) under the public domain. Since they haven't, they fall into the same category as third term congressmen campaigning for term limits.
GPLd software will never enter the public domain as long as the FSF has a say in the matter.
Why is that nice? Come to think of it, what's the whole point of this article anyway? Is using an editor written in Java just another bullet point to bolster your Javahippness? Does it earn you points at your local JUG meetings? "Oooh! Look at me, I'm using a Java text editor! Won't you congratulate me?"
Who give a fsck what language a text editor is written in? I hate lisp. Hate it with a passion. But I still use Emacs.
Infrastructure, as in kernel, filesystem, libc, etc., need to be free. Not free as in it pleases RMS, but free as in no restrictions.
Using this kind of software in an embedded system could mean that unrelated and underived proprietary information might have to be released, since all linkage will be static. If Linux were under the pure GPL without any linkage exception, it would be failing in the embedded market.
General purpose libraries, and stuff that acts as general purpose libraries (kernels, filesystems) must not place any restrictions on software that merely uses them. But the GPL restricts how you may use the software since it (or rather the FSF's interpretation of the GPL) declares that linkage is usage.
Because it's infrastructure. Such stuff should be under the LGPL, BSD, MIT or similar unrestricted or weak copyleft licenses. Even the Linux kernel has an exception that moves its license to the state of weak copyleft.
And here you have discovered the biggest diffrerence between Linux and *BSD. BSD developers don't give a flying fsck about making the news, they just want good solid stable code. I mean, who out there with more than two bytes of valuable data gives a rat's arse about which filesystem makes the news the most?
Let's see, GCC has optimization off by default. VC++ projects by default give you two project settings, one with no optimization. If you're using something advertised and marketed as an optimizing compiler (like ICC), then it's up to you to write your makefiles appropriately.
What the f&#k were they thinking, including an antique Matrox in the list? And that Radeon 7500...? OK, they were nice a year ago, but who cares!
Okay, time to burn some of my limitless karma...
Since when is one year ago ancient? Just because something is older than the last time you changed your underwear doesn't make it ancient. I'm getting pretty sick and tired of you munchkins running the video market. It makes it tough for the rest of us who want a solid stable video card instead of whatever the prepube crowd wants this week.
These aren't "crappy old cards", they're superb modern cards that have been around long enough to prove their merit. Maybe you should go read some reviews about last months cards. Or are those still too archaic for you? Maybe you need to wait till next week to read about this week's cards.
Some of us have better things to do than to buy a new video card everytime the industry says "jump". Some of us has dropped out of the constant upgrade rat race that you kids insist on playing.
Who's the user? If it's WIndows lusers, then by all means use http. It makes their life easier. But if the users are *NIX, Mac or other, then use ftp. These folks have a clue and can deal with it.
Warning! The above is sarcasm. But it is so apropos. Paraphrased quote from a conversation I had with a Windows luser:
"I need to find a good FTP program so I can download this software I found. Which do you think is better, ProFTP2K for $25, or should I spend more for EZDownloadFTPPlus at $50?"
Simply put, diversity plus freedom of choice creates inequality
Well duh! Just look at any area where there is choice and diversity and you will see this.
Unfortunately, too many people do not understand this. They shout for equality of outcomes, not realizing that it getting it would destroy diversity and choice. They should be shouting for equality of opportunity, but they oh so rarely do. In a fair race, everyone has equality at the starting line...
I'm programming on a very complex system. I simply cannot know about all the parts that my code touches. I would need three engineering degrees just to understand it all. I have to program in a black box because the white box is too big.
This is why I demand complete requirements and specifications, and invite all relevant parties to my design and code reviews. And when I'm the one called on to write the reqs and specs, I make sure I get a sign off absolving me of responsibility for it (you would be surprised how much closer the docs are inspected when you start demanding stuff like that).
The problem isn't the developers writing black boxes, but the upper management buying into the party line of Microsoft, thinking that snap-together black box components will reduce the resource needs for the project.
It's a shame that this view is dismissed out-of-hand by the industry.
There's a reason why it's dismissed out-of-hand. That's because the industry has to work with real computers, not virtual machines. The fundamental assumption of real world systems is that data is typed. The further you get away from this assumption, the more overhead you need to make things work. Does that data fit in 32 bits or 48 bits? The CPU needs to know.
This may sound simplistic, but work your way up the scheme of things. At a very low level, houses are made of wood, so at a very high level you're better off with strong fire codes. At a very low level, data is typed, so at a very high level you're better off with strong types.
Of course, this is an industry so conservative that a primitive language like Java is considered "state of the art".
Since when is Java a "primitive" language? Or is this just your bias that all strongly typed languages are primitive? p.s. I am not a Java fan.
And in my experience, the industry most certainly does not consider Java to be state-of-the-art. Those businesses that did were the ones that led the way in the dot.bomb crash. Java serves an important role, and is an important language in some domains, but in the meantime the industry is still waiting for Java to fulfill its promised hype of "write once run anywhere", a Java office suite, and a Java OS that can actually work outside of a think tank.
In my experience, strongly-typed code tends to be more susceptible to unexpected inputs, just because it's such a pain to handle and test them.
That's why you only accept string input, and validate as a string, and only then convert it to your strong typed data. I thought everyone knew this. scanf() has been deprecated for the last twenty years!
As a maintainer, I would much rather have code that I can see is logically correct with my eyes, than code that a compiler can tell me type checks.
Why do you keep assuming that us "strong" types think that type checking is the end of the story? Throw away your stereotypes and look at the world the way it really is. We don't toss our software over the wall just because it compiles. We all want code that we can see is logically correct without a compiler. That's why we don't bring compilers into our code reviews. But compilers are also useful tools to catch those dumb mistakes that we all make.
My experience has convinced me that a strong team can produce more robust code in a runtime-typed language
Use the right tool for the job. I write software for a realtime system. Is a runtime typed language appropriate? Hah! On the other hand, Python and other high level scripting languages are good tasks like complex text processing.
Dynamic typing: Variables don't have types, but objects do.
I must be one of those dinosaurs, since that doesn't even parse in my experience. In an OO language, all objects are variables, and in a "purist" OO language, all variables are objects. Or at least, that's how I treat them.
Dude! It's not your choice of scripting language that relegates you to the tiny cubical in the corner. It's your hygiene!
What the fsck is "GNU/WINE"! Aaargh! It's one thing to give RMS some credit, but this reeks of puerile toadying in an effort to look sophisticated in front of other juvenile sycophants.
Repeat after me, "WINE is not a GNU project!"
I'm just wondering if I can use WINE to compile Windows apps under non-GNU systems. Like for instance FreeBSD, NetBSD or Linux...
San Fransisco, Manhattan, whereever. The key point is that those places are the most expensive in the US. This is an online publication. They can do business out of Boise for a 1/1000 the rent. If they absolutely need a SF/NY address to attract the advertisers, then they can rent mail box and answering service.
Why isn't there a nonprofit equivalent of Salon?
If Salon can lose 80 MILLION FREAKING DOLLARS as a for profit company, then I don't want to how many millions they'll piss away as a nonprofit. Let's see, NPR can get away with being a nonprofit because they get donations from rich multinational corporations, taxpayer funding from sympathetic bureaucracies, and bi-weekly guilt trips laid on the listeners. And even then you can pay twenty NPR staffers for the price of one Salon suit.
Morality and rights are utterly irrelevant and until humans give up these mystical notions, the human race will continue to flounder in the mud.
Hmmm, where have I heard that before? Oh right! It was that seventeenth century libertine dying in the gutter from syphilis. Sometimes I think the purpose of philosophy is merely to justify the bizarre behaviors of the philosophers.
Rather then acting like adults Theo and others make personal attacks, against projects, against persons etc.
WTF are you talking about! Did you even bother to read the thread? Of course not, you're a slashdot reader. No slashdot reader ever bothers to inform themselves.
Here is what Theo said: "I'm now going to step aside and let our user community decide how do deal with such copyright violations."
This was the post that started it all. Doesn't sound like personal attacks to me. In fact, the only personal attacks I can find were attacks on Theo.
From everything I have seen all the BSD projects seem to simply be full of arrogant babies.
Relatively speaking, everyone is an "arrogant baby" to someone else. No operating system is free from this. Certainly Linux, Windows and Mac fans are not free from this trait.
I think Linux users should clean up their own interdistro arrogancy and ad-hominem attacks before they commence with dispensing Good Housekeeping tips to other free operating system projects.
As you note, CLX is licensed under the GPL. I'm looking for a single instance of a non GPL library that claims ownership over any application linking to it.
Besides which, the CLX EULA itself is in violation of the GPL, merely by existing. You cannot impose a separate contract on top of the GPL.
I mean, what is it with all these people who are so deathly afraid of seeing plain text? It's like some phobia that communicable and reaching epidemic proportions. Who frigging cares if the BIOS displays text or not! Why is this such a big deal?
Geez people! That text isn't going to hurt you. It isn't going to damage your mind or warp your spine. It's just some pixels on the screen. Get over it!
If it's so much of an aesthetic horror, then go get yourself an OS that doesn't require rebooting at odd intervals, and just don't reboot! Aaaargh!
Title 17, Sec. 101, defines a derivative work as:
When I link an application to a library, I am not recasting, transforming, adapting, revising, annotating, elaborating or modifying the original work. In fact, I don't even need to have even seen or examined the library in order to link to it.
At compile time, a library is a black box. You cannot create a derivative work from a black box. Take a book as an example. How would it be even remotely possible to make a derivative work of the book without opening it? Yet I can make an application use a library that I don't even have installed on my system! I've done it before! I've got a program that worked with Qt 3.1 flawlessly, as a binary package, two months before I ever installed Qt 3.1 on my system. How can that be possible if my program is a derivative work of Qt 3.1? I've got another program that is "based on" MFC, yet works flawlessly under WINE, with not one byte of Microsoft DLL anywhere in sight! How can it be derivative of MFC when I don't have MFC available to recast, transform, adapt, revise or modify from?
The usual answer to this conundrum by the FSF is their specious argument that an application is not a derivative if there is more than one implementation of an API available. Yet where is this stated in copyight law? Nowhere! Dependency is not synonymous with derivation. The words "dependent" and "dependency" do not exist in the above definition.
p.s. Static linkage is a different matter, since the process of static linkage creates a "compilation" of the application and library into a whole.
p.p.s. What major software company (other than Trolltech which uses the GPL) considers linkage to be derivation? Please cite from a license or EULA or other documentation. I'm not doubting their existance, I just want to know who.
If your application doesn't work without libfoo then it is clearly a derivative work of libfoo.
...it is on such firm ground that only an idiot would want to get up in front of a judge and become a precedent.
Apparently, you're using the same faulty definition of "derivative work" that the FSF is. Go read up on Title 17 then get back to us. Dependency is not derivation. Duh!
No one challenges the FSF because you don't want to go to court to begin with. If you're a little guy, you don't go head to head with the FSF because they have millions of dollars and hundreds of lawyers. If you're a big guy, you don't go head to head with the FSF because a lawsuit if very bad for business. It has nothing to do with the validity of the GPL, but everything to do with the size and reputation of the FSF and the bad mojo that goes along with a lawsuit. Remember, every still thinks the winner of the McDonald's hot coffee lawsuit was a nincompoop, even though she was in the right.
Most of the GPL is quite valid. But there are two parts where it is somewhat shaky. The first is the imposition of terms upon third parties. The second is implicit treatment of linkage as derivation.
The end user can still use the software
Not if it's a library. Using the library means linking to it, and that's restricted by the FSF.
And apparently, the FSF is completely happy with this situation. If they really wanted reasonable copyright terms, then they would have already explicitely placed their 20+ year software (like the original emacs, gcc, etc) under the public domain. Since they haven't, they fall into the same category as third term congressmen campaigning for term limits.
GPLd software will never enter the public domain as long as the FSF has a say in the matter.
100% Java
Why is that nice? Come to think of it, what's the whole point of this article anyway? Is using an editor written in Java just another bullet point to bolster your Javahippness? Does it earn you points at your local JUG meetings? "Oooh! Look at me, I'm using a Java text editor! Won't you congratulate me?"
Who give a fsck what language a text editor is written in? I hate lisp. Hate it with a passion. But I still use Emacs.
You forget on situation: when the problem does not occur (goes away) under gdb. This is more frequent than many people realize.
Infrastructure, as in kernel, filesystem, libc, etc., need to be free. Not free as in it pleases RMS, but free as in no restrictions.
Using this kind of software in an embedded system could mean that unrelated and underived proprietary information might have to be released, since all linkage will be static. If Linux were under the pure GPL without any linkage exception, it would be failing in the embedded market.
General purpose libraries, and stuff that acts as general purpose libraries (kernels, filesystems) must not place any restrictions on software that merely uses them. But the GPL restricts how you may use the software since it (or rather the FSF's interpretation of the GPL) declares that linkage is usage.
Because it's infrastructure. Such stuff should be under the LGPL, BSD, MIT or similar unrestricted or weak copyleft licenses. Even the Linux kernel has an exception that moves its license to the state of weak copyleft.
...as ReiserFS/EXT3/XFS make all the news here.\
And here you have discovered the biggest diffrerence between Linux and *BSD. BSD developers don't give a flying fsck about making the news, they just want good solid stable code. I mean, who out there with more than two bytes of valuable data gives a rat's arse about which filesystem makes the news the most?
Let's see, GCC has optimization off by default. VC++ projects by default give you two project settings, one with no optimization. If you're using something advertised and marketed as an optimizing compiler (like ICC), then it's up to you to write your makefiles appropriately.
What the f&#k were they thinking, including an antique Matrox in the list? And that Radeon 7500...? OK, they were nice a year ago, but who cares!
Okay, time to burn some of my limitless karma...
Since when is one year ago ancient? Just because something is older than the last time you changed your underwear doesn't make it ancient. I'm getting pretty sick and tired of you munchkins running the video market. It makes it tough for the rest of us who want a solid stable video card instead of whatever the prepube crowd wants this week.
These aren't "crappy old cards", they're superb modern cards that have been around long enough to prove their merit. Maybe you should go read some reviews about last months cards. Or are those still too archaic for you? Maybe you need to wait till next week to read about this week's cards.
Some of us have better things to do than to buy a new video card everytime the industry says "jump". Some of us has dropped out of the constant upgrade rat race that you kids insist on playing.
Who's the user? If it's WIndows lusers, then by all means use http. It makes their life easier. But if the users are *NIX, Mac or other, then use ftp. These folks have a clue and can deal with it.
Warning! The above is sarcasm. But it is so apropos. Paraphrased quote from a conversation I had with a Windows luser:
"I need to find a good FTP program so I can download this software I found. Which do you think is better, ProFTP2K for $25, or should I spend more for EZDownloadFTPPlus at $50?"
Simply put, diversity plus freedom of choice creates inequality
Well duh! Just look at any area where there is choice and diversity and you will see this.
Unfortunately, too many people do not understand this. They shout for equality of outcomes, not realizing that it getting it would destroy diversity and choice. They should be shouting for equality of opportunity, but they oh so rarely do. In a fair race, everyone has equality at the starting line...
I'm programming on a very complex system. I simply cannot know about all the parts that my code touches. I would need three engineering degrees just to understand it all. I have to program in a black box because the white box is too big.
This is why I demand complete requirements and specifications, and invite all relevant parties to my design and code reviews. And when I'm the one called on to write the reqs and specs, I make sure I get a sign off absolving me of responsibility for it (you would be surprised how much closer the docs are inspected when you start demanding stuff like that).
The problem isn't the developers writing black boxes, but the upper management buying into the party line of Microsoft, thinking that snap-together black box components will reduce the resource needs for the project.
Aaahh, a variable is just a name then.
It's a shame that this view is dismissed out-of-hand by the industry.
There's a reason why it's dismissed out-of-hand. That's because the industry has to work with real computers, not virtual machines. The fundamental assumption of real world systems is that data is typed. The further you get away from this assumption, the more overhead you need to make things work. Does that data fit in 32 bits or 48 bits? The CPU needs to know.
This may sound simplistic, but work your way up the scheme of things. At a very low level, houses are made of wood, so at a very high level you're better off with strong fire codes. At a very low level, data is typed, so at a very high level you're better off with strong types.
Of course, this is an industry so conservative that a primitive language like Java is considered "state of the art".
Since when is Java a "primitive" language? Or is this just your bias that all strongly typed languages are primitive? p.s. I am not a Java fan.
And in my experience, the industry most certainly does not consider Java to be state-of-the-art. Those businesses that did were the ones that led the way in the dot.bomb crash. Java serves an important role, and is an important language in some domains, but in the meantime the industry is still waiting for Java to fulfill its promised hype of "write once run anywhere", a Java office suite, and a Java OS that can actually work outside of a think tank.
In my experience, strongly-typed code tends to be more susceptible to unexpected inputs, just because it's such a pain to handle and test them.
That's why you only accept string input, and validate as a string, and only then convert it to your strong typed data. I thought everyone knew this. scanf() has been deprecated for the last twenty years!
As a maintainer, I would much rather have code that I can see is logically correct with my eyes, than code that a compiler can tell me type checks.
Why do you keep assuming that us "strong" types think that type checking is the end of the story? Throw away your stereotypes and look at the world the way it really is. We don't toss our software over the wall just because it compiles. We all want code that we can see is logically correct without a compiler. That's why we don't bring compilers into our code reviews. But compilers are also useful tools to catch those dumb mistakes that we all make.
My experience has convinced me that a strong team can produce more robust code in a runtime-typed language
Use the right tool for the job. I write software for a realtime system. Is a runtime typed language appropriate? Hah! On the other hand, Python and other high level scripting languages are good tasks like complex text processing.
Dynamic typing: Variables don't have types, but objects do.
I must be one of those dinosaurs, since that doesn't even parse in my experience. In an OO language, all objects are variables, and in a "purist" OO language, all variables are objects. Or at least, that's how I treat them.
So what's the difference?