I hear this argument a lot, and it's got one fatal flaw -- you cannot use GPL code legally without opening your source.
Correct.
This line of argument seems to be along the lines of "of course you can use GPLed code - just don't get caught", and it's always worried me. Correct me if I'm wrong, I frequently am!
No, that's not what it means. What it means is that the penalties and consequences of violating the GPL are not automatically that your source code itself falls under the GPL. In fact, placing your code under the GPL after the fact is not even sufficient as a legal remedy--it is simply not relevant to anything.
By analogy, if you park in a no-parking zone, the penalty and consequence is not automatically that your car gets towed; maybe you'll get a fine or maybe your car gets disabled instead. And it certainly isn't sufficient for you to say "my bad" and just drive away--you still got a ticket and will have to pay that.
How the copyright holder and how the courts deal with you if you violate the GPL depends on your behavior and on your product. You seem to think that forcing a company to GPL its code is the worst thing that can happen to it if they violate the GPL, but that's not true. On the other hand, that may be too severe a consequence. Either way, changes to the license of the code that was used to violate the GPL after the fact simply aren't relevant to the legal issue of the GPL violation. The only way they may enter is part of a voluntary negotiated settlement, if the copyright holder on the GPL'ed software agrees to accept that as a remedy.
Frankly, that's why I never really understood the point of copyright.
The point of copyright is to let people derive commercial rewards from the expression of ideas; copyright does not protect the ideas themselves.
(I apply this word here to code as well as other textual material) is alright, even though fundamentally it's the same thing, only more time-consuming;
No, it's not "fundamentally the same thing". There have been thousands of Mary-with-baby pictures. It's the expression--the actual painting--that is the work. If you create a new painting yourself, it contains the same ideas, but the work is, as you observe, in the actual creation of the painting. That's what copyright is supposed to do.
Patents are designed for protecting ideas themselves; patents are deliberately harder to get and more limited.
but if you read Slashdot and other sites, you'll see that in almost every single MS Office or OpenOffice stories, people are always complaining that OpenOffice can't read Word documents correctly.
What people complain about is not a statistically accurate representation of the real world, and you aren't even interpreting their complaints correctly.
Yes, OOo does not read some MS Word documents correctly. It's something almost everybody who uses OOo has encountered, and almost everybody would like that to be fixed.
However, that observation doesn't tell you whether that's a significant practical problem. In some environments, it may be an insurmountale problem (for example, if you are an enterprise that has implemented entire work flows as MS Office documents, complete with scripts and server applications). In many others, it may be insignificant. I have had no more problems with OOo and MS Word files than with different versions of MS Word.
If you are a home user or a small business, OOo is likely already a reasonable choice even if you need to deal with other people's Word documents frequently. Microsoft also makes available a Word viewer for free, which means that you really can read everything without ever having to purchase MS Office.
Reimplementation under other licenses of software under free or open source licenses is permitted. That is one of the essential freedoms of free software, and it's one way in which such source code differs from commercial source code.
With commercial source code ("community license", "shared source license", etc.), companies usually try to attach restrictions on your ability to re-implement the APIs, or even on your ability to compete with them. Sun's Java licenses are an example of such behavior.
That's why it's perfectly fine for employees to look at open source or free software, as long as they don't actually copy it into a closed source product. What you need to be scared stiff about is if your employees look at source code that is not under a FOSS license, because the risks of that are enormous.
It's good that a company is offering a comprehensive solution for this, and one that already contains lots of FOSS code.
Contrary to the company's claims of being "groundbreaking", that's not new: plagiarism detectors, code duplication detectors, etc. have been around for a while.
Those files will still be read more than once under some circumstances.
Those "circumstances" represent either a logically new login shell, in which case ssh-agent should run again and generate a new socket, or they represent a bug, in which case, a workaround in ssh-agent isn't going to be good enough.
There's a reason you still see conditionals based on the existence of $SSH_AUTH_SOCK (or whatever) wrapping any calls to ssh-agent/add even in.login and.bash_profile.
For example, the ssh-agent daemon (think "keychain for ssh passwords") needs to launch once, and only once for each user login session. Shell startup files are read every time a shell is started. Multiple terminal windows means multiple shells, but still only one login session.
If a majority of UNIX systems and their workalikes incorporate launchd, Apple isn't moving further away from standards, it's advancing the standards.
Can you think of a single one of Apple's changes to UNIX that has been picked up by any UNIX system? I can't. Apple simply doesn't seem to be in a position to set standards for UNIX.
Something like launchd will hopefully happen eventually, but it is unlikely to come from Apple.
From a practical point of view, the kind of databases that people like Gray have made a career out of have been very useful up to a point, no question.
On the other hand, those databases have already been pushed far beyond their limits: people have been using them inappropriately in many applications. Much of the "hot" recent stuff Gray mentions is not new technology: smart people have been proposing it and using it for years, only to be beaten down in the market by the relentless push behind relational technologies beyond any reasonable limits.
The research problems aren't new either: approximate, probabilistic, and inferential retrieval have a long tradition, but they have received relatively little funding because most of it has been going to fairly meaningless and incremental improvements in the kinds of traditional databases Gray has made a career out of.
Let bygones be bygones, but perhaps it's time for people like Gray to retire and leave the next generation of databases to people who actually have the background to work on areas like approximate and probabilistic retrieval. Research in those areas can build on the core storage technologies for existing databases, but the kind of expertise required for making new discoveries in those areas is completely different from what someone coming out of a database research group will have learned.
OCaml's implementation of parameterized types is similar to that of C#,
No, it's not. C# generates specialized native code of parameterized methods for type parameters that are primitive types or value classes. O'CAML doesn't even have value classes, and it side-steps the issue for primitives by not really having primitives.
And, whatever O'CAML does, it just isn't all that fast for numerics.
I wish it weren't so. I wish the O'CAML developers would add value classes and that they would treat type parameters like C# does. But they don't.
petroleum has a non-biological source. The gist is that non-biological methane is converted into longer-chain hydrocarbons by bacteria deep in the crust.
Well, if it's converted by bacteria, it does have a biological source.
In any case, the widespread existence of hydrocarbons, including complex hydrocarbons, in space suggests that oil and gas can be generated in vast quantities by means other than decaying trees and dinosaurs.
It simply states that there probably was some intellegence involved in this phenominon we call "life." It does not go so far as to state where the intellegence resides, whether it is in God or mice.
Well, that's a hypothesis, it just is one for which there is no evidence whatsoever.
Most fundimentalists consider God to be even outside time. Unchanging, simply existing. [...] He simply exists, timeless and unchanging.
OK, well, then "God" is not intelligent, because things that exist "unchanging" and "outside time" fail to satisfy basic attributes of what we call "intelligent".
Christian Fundimentalists
I can't figure out whether you are trying to be funny or just can't spell.
In what nanny-state, commie pipe dream is it the government's responsibility to provide internet access to people who can almost certainly get it cheapy from commercial ISPs?
You got it backwards. When a town votes and decides to turn certain services like Internet access over to a public utility, that's called "democracy". Perhaps you have heard of it.
When the state government comes in and negates the will of the voters in some corrupt scheme to help commercial campaign contributors to make more money, that's "real communism" (i.e., corrupt, centralized government).
That idea has been tried numerous times before and it doesn't work well. Most things do not need to be versioned, or versioning them is harmful to system performance. The things that do need to be versioned require a lot more functionality than a file system can provide on its own.
At this point, it is doubtful to me that anything remotely related to versioning or metadata belongs anywhere near the kernel. But if it does, then the right way to provide it is via user-level servers (like Plan 9), not by hacking stuff deep into the bowels of the file system. Simple versioning, like the kind that has been provided in file systems, could be safely, transparently, and simply provided in the C library, in a way analogous to the way Emacs does it.
SVG could become the Ogg Vorblis of graphic formats. It's out there, but arrived too late and no one much cares.
It took MP3 a decade to catch on, with no competition; Ogg Vorbis has pretty good commercial support already after much less time. I wouldn't view it as a failure.
SVG actually has a better chance: it fulfills a real need that none of the existing alternatives (including Flash) address.
Unlike proprietary Microsoft extensions, which Microsoft foists upon the world with a product release and incomplete documentation, when "we" do it, it's an open standard developed with community involvement, and everybody gets the standard at the same time.
Microsoft has had exactly the same time to implement it as every other browser vendor. In fact, they have implemented it: it's part of Avalon. The only reason it's not in IE is because Microsoft generally has dropped the ball on IE.
So, it is OK if it's us because we do it differently: we do it fairly.
You should be more concerned about the minds that are bouncing around inside the brains of other primates, primates humans kill, abuse, cage, and eat.
A human brain inside a sheep's head would probably not have a human mind; supporting a brain holding a human mind required all sorts of complex anatomical adaptations even just to support its size, adaptations that sheep just don't have.
What you are going to have is human brain cells inside a sheep's skull, and that is likely mostly just going to be a creature that's going to be a sheep, and probably not even a very smart sheep as far as sheep go.
As usual, Apple did a stellar job on the visual appearance of everything and on marketing these features.
Functionally, however, there is little there that is new. Desktop search, applets, RSS, and all that have been available on Windows and Linux for much longer than Tiger.
There are a bunch of things in UNIX that are, well, showing their age: cron, init (in its various forms), inetd, etc. It's not hard to improve on them. In fact, there have been lots of improved versions. But, in the end, it doesn't make enough of a difference for people to break compatibility.
Apple should think carefully whether they want to move even further away from UNIX sysadmin standards as they already have.
This is a fair point, but it not so correct these days. The Hotspot technology in recent versions of the JVM do an amazing optimising job, removing much of the cost of inheritance and doing things like inlining.
Not even close. Java lacks support for efficient, user-defined, small datatypes (complex numbers, 2-vectors, 3-vectors, etc.). C, C++, and Fortran have them. They are essential for any numerical programming language. Despite 20 years of trying, people have not been able to compile that stuff efficiently automatically, and HotSpot isn't even close.
I would say (from personal experience) that Java is vastly better than C for numerical work, as it removes the need for the memory management required in C - and mathematical coders should not have to worry about these things.
Java is unsuitable for serious numerical work. C is barely suitable--it's painful, but at least you can get the work done at all.
I think it is extreme to call IBM, HP, Oracle and thousands of other members of the JCP 'dopes'.
The big companies don't have a choice--they have to participate. But IBM clearly isn't happy with Sun's ownership of Java anymore, which is why they have created projects like Jikes and Eclipse. The individuals that participate do have a choice, and they are dopes in my opinion.
People join the JCP because they get to change Java. This process works.
No, it does not work--just look at the dreck it has produced. It amounts to free labor for Sun. Of course, Sun gets largely what they pay for...
Won't all new star trek series compete against reruns? They'll probably still have reruns of old Star Trek in a few years.
Yes, but at the prices you will be paying for them once everything is under DRM, you'll be sitting up on your hind legs and saying "give me another, PLEASE".
Think 1950's, a few television channels, and total control. It's what they want to get back to. It allows them to put out any kind of shit, and with the low production costs...
I hear this argument a lot, and it's got one fatal flaw -- you cannot use GPL code legally without opening your source.
Correct.
This line of argument seems to be along the lines of "of course you can use GPLed code - just don't get caught", and it's always worried me. Correct me if I'm wrong, I frequently am!
No, that's not what it means. What it means is that the penalties and consequences of violating the GPL are not automatically that your source code itself falls under the GPL. In fact, placing your code under the GPL after the fact is not even sufficient as a legal remedy--it is simply not relevant to anything.
By analogy, if you park in a no-parking zone, the penalty and consequence is not automatically that your car gets towed; maybe you'll get a fine or maybe your car gets disabled instead. And it certainly isn't sufficient for you to say "my bad" and just drive away--you still got a ticket and will have to pay that.
How the copyright holder and how the courts deal with you if you violate the GPL depends on your behavior and on your product. You seem to think that forcing a company to GPL its code is the worst thing that can happen to it if they violate the GPL, but that's not true. On the other hand, that may be too severe a consequence. Either way, changes to the license of the code that was used to violate the GPL after the fact simply aren't relevant to the legal issue of the GPL violation. The only way they may enter is part of a voluntary negotiated settlement, if the copyright holder on the GPL'ed software agrees to accept that as a remedy.
Frankly, that's why I never really understood the point of copyright.
The point of copyright is to let people derive commercial rewards from the expression of ideas; copyright does not protect the ideas themselves.
(I apply this word here to code as well as other textual material) is alright, even though fundamentally it's the same thing, only more time-consuming;
No, it's not "fundamentally the same thing". There have been thousands of Mary-with-baby pictures. It's the expression--the actual painting--that is the work. If you create a new painting yourself, it contains the same ideas, but the work is, as you observe, in the actual creation of the painting. That's what copyright is supposed to do.
Patents are designed for protecting ideas themselves; patents are deliberately harder to get and more limited.
but if you read Slashdot and other sites, you'll see that in almost every single MS Office or OpenOffice stories, people are always complaining that OpenOffice can't read Word documents correctly.
What people complain about is not a statistically accurate representation of the real world, and you aren't even interpreting their complaints correctly.
Yes, OOo does not read some MS Word documents correctly. It's something almost everybody who uses OOo has encountered, and almost everybody would like that to be fixed.
However, that observation doesn't tell you whether that's a significant practical problem. In some environments, it may be an insurmountale problem (for example, if you are an enterprise that has implemented entire work flows as MS Office documents, complete with scripts and server applications). In many others, it may be insignificant. I have had no more problems with OOo and MS Word files than with different versions of MS Word.
If you are a home user or a small business, OOo is likely already a reasonable choice even if you need to deal with other people's Word documents frequently. Microsoft also makes available a Word viewer for free, which means that you really can read everything without ever having to purchase MS Office.
Reimplementation under other licenses of software under free or open source licenses is permitted. That is one of the essential freedoms of free software, and it's one way in which such source code differs from commercial source code.
With commercial source code ("community license", "shared source license", etc.), companies usually try to attach restrictions on your ability to re-implement the APIs, or even on your ability to compete with them. Sun's Java licenses are an example of such behavior.
That's why it's perfectly fine for employees to look at open source or free software, as long as they don't actually copy it into a closed source product. What you need to be scared stiff about is if your employees look at source code that is not under a FOSS license, because the risks of that are enormous.
It's good that a company is offering a comprehensive solution for this, and one that already contains lots of FOSS code.
Contrary to the company's claims of being "groundbreaking", that's not new: plagiarism detectors, code duplication detectors, etc. have been around for a while.
That's nice and all, but how will these technologies help cars to 'not crash'? It seems like a digital calendar will lead to more crashes.
Don't be too hard on Microsoft--they obviously have a hard time figuring out this "can't crash" thing.
Those files will still be read more than once under some circumstances.
.login and .bash_profile.
Those "circumstances" represent either a logically new login shell, in which case ssh-agent should run again and generate a new socket, or they represent a bug, in which case, a workaround in ssh-agent isn't going to be good enough.
There's a reason you still see conditionals based on the existence of $SSH_AUTH_SOCK (or whatever) wrapping any calls to ssh-agent/add even in
Sounds like the reason is stupidity.
In most sports, you should be wearing safety glasses anyway, and whatever fashionable tints you want incorporate, you can incorporate there.
I suspect people put this tint into contact lenses because you probably look kind of stupid wearing pink safety glasses.
For example, the ssh-agent daemon (think "keychain for ssh passwords") needs to launch once, and only once for each user login session. Shell startup files are read every time a shell is started. Multiple terminal windows means multiple shells, but still only one login session.
.bashrc or .cshrc; someone tell him about .login or .profile.
Apparently Siracusa hasn't advanced beyond
It's a new twist to old-school Unix hackers, and the initial reaction is predictably cautious.
It's not just a "new twist", it breaks dozens of system management frameworks.
If a majority of UNIX systems and their workalikes incorporate launchd, Apple isn't moving further away from standards, it's advancing the standards.
Can you think of a single one of Apple's changes to UNIX that has been picked up by any UNIX system? I can't. Apple simply doesn't seem to be in a position to set standards for UNIX.
Something like launchd will hopefully happen eventually, but it is unlikely to come from Apple.
From a practical point of view, the kind of databases that people like Gray have made a career out of have been very useful up to a point, no question.
On the other hand, those databases have already been pushed far beyond their limits: people have been using them inappropriately in many applications. Much of the "hot" recent stuff Gray mentions is not new technology: smart people have been proposing it and using it for years, only to be beaten down in the market by the relentless push behind relational technologies beyond any reasonable limits.
The research problems aren't new either: approximate, probabilistic, and inferential retrieval have a long tradition, but they have received relatively little funding because most of it has been going to fairly meaningless and incremental improvements in the kinds of traditional databases Gray has made a career out of.
Let bygones be bygones, but perhaps it's time for people like Gray to retire and leave the next generation of databases to people who actually have the background to work on areas like approximate and probabilistic retrieval. Research in those areas can build on the core storage technologies for existing databases, but the kind of expertise required for making new discoveries in those areas is completely different from what someone coming out of a database research group will have learned.
OCaml's implementation of parameterized types is similar to that of C#,
No, it's not. C# generates specialized native code of parameterized methods for type parameters that are primitive types or value classes. O'CAML doesn't even have value classes, and it side-steps the issue for primitives by not really having primitives.
And, whatever O'CAML does, it just isn't all that fast for numerics.
I wish it weren't so. I wish the O'CAML developers would add value classes and that they would treat type parameters like C# does. But they don't.
petroleum has a non-biological source. The gist is that non-biological methane is converted into longer-chain hydrocarbons by bacteria deep in the crust.
Well, if it's converted by bacteria, it does have a biological source.
In any case, the widespread existence of hydrocarbons, including complex hydrocarbons, in space suggests that oil and gas can be generated in vast quantities by means other than decaying trees and dinosaurs.
It simply states that there probably was some intellegence involved in this phenominon we call "life." It does not go so far as to state where the intellegence resides, whether it is in God or mice.
Well, that's a hypothesis, it just is one for which there is no evidence whatsoever.
Most fundimentalists consider God to be even outside time. Unchanging, simply existing. [...] He simply exists, timeless and unchanging.
OK, well, then "God" is not intelligent, because things that exist "unchanging" and "outside time" fail to satisfy basic attributes of what we call "intelligent".
Christian Fundimentalists
I can't figure out whether you are trying to be funny or just can't spell.
In what nanny-state, commie pipe dream is it the government's responsibility to provide internet access to people who can almost certainly get it cheapy from commercial ISPs?
You got it backwards. When a town votes and decides to turn certain services like Internet access over to a public utility, that's called "democracy". Perhaps you have heard of it.
When the state government comes in and negates the will of the voters in some corrupt scheme to help commercial campaign contributors to make more money, that's "real communism" (i.e., corrupt, centralized government).
Well done, you've just described VMS' native filesystem.
Yes, and fortunately, VMS is history.
That idea has been tried numerous times before and it doesn't work well. Most things do not need to be versioned, or versioning them is harmful to system performance. The things that do need to be versioned require a lot more functionality than a file system can provide on its own.
At this point, it is doubtful to me that anything remotely related to versioning or metadata belongs anywhere near the kernel. But if it does, then the right way to provide it is via user-level servers (like Plan 9), not by hacking stuff deep into the bowels of the file system. Simple versioning, like the kind that has been provided in file systems, could be safely, transparently, and simply provided in the C library, in a way analogous to the way Emacs does it.
Your not fammilair with the underpinnings of OS X are you.
Actually, I am reasonably familiar with them, I'm just not very impressed with them.
Thats ok Apple does a great job of seperating the core from the fluff on top.
Well, one thing is for certain: your statement is pure fluff.
SVG could become the Ogg Vorblis of graphic formats. It's out there, but arrived too late and no one much cares.
It took MP3 a decade to catch on, with no competition; Ogg Vorbis has pretty good commercial support already after much less time. I wouldn't view it as a failure.
SVG actually has a better chance: it fulfills a real need that none of the existing alternatives (including Flash) address.
Unlike proprietary Microsoft extensions, which Microsoft foists upon the world with a product release and incomplete documentation, when "we" do it, it's an open standard developed with community involvement, and everybody gets the standard at the same time.
Microsoft has had exactly the same time to implement it as every other browser vendor. In fact, they have implemented it: it's part of Avalon. The only reason it's not in IE is because Microsoft generally has dropped the ball on IE.
So, it is OK if it's us because we do it differently: we do it fairly.
You should be more concerned about the minds that are bouncing around inside the brains of other primates, primates humans kill, abuse, cage, and eat.
A human brain inside a sheep's head would probably not have a human mind; supporting a brain holding a human mind required all sorts of complex anatomical adaptations even just to support its size, adaptations that sheep just don't have.
What you are going to have is human brain cells inside a sheep's skull, and that is likely mostly just going to be a creature that's going to be a sheep, and probably not even a very smart sheep as far as sheep go.
As usual, Apple did a stellar job on the visual appearance of everything and on marketing these features.
Functionally, however, there is little there that is new. Desktop search, applets, RSS, and all that have been available on Windows and Linux for much longer than Tiger.
There are a bunch of things in UNIX that are, well, showing their age: cron, init (in its various forms), inetd, etc. It's not hard to improve on them. In fact, there have been lots of improved versions. But, in the end, it doesn't make enough of a difference for people to break compatibility.
Apple should think carefully whether they want to move even further away from UNIX sysadmin standards as they already have.
This is a fair point, but it not so correct these days. The Hotspot technology in recent versions of the JVM do an amazing optimising job, removing much of the cost of inheritance and doing things like inlining.
Not even close. Java lacks support for efficient, user-defined, small datatypes (complex numbers, 2-vectors, 3-vectors, etc.). C, C++, and Fortran have them. They are essential for any numerical programming language. Despite 20 years of trying, people have not been able to compile that stuff efficiently automatically, and HotSpot isn't even close.
I would say (from personal experience) that Java is vastly better than C for numerical work, as it removes the need for the memory management required in C - and mathematical coders should not have to worry about these things.
Java is unsuitable for serious numerical work. C is barely suitable--it's painful, but at least you can get the work done at all.
I think it is extreme to call IBM, HP, Oracle and thousands of other members of the JCP 'dopes'.
The big companies don't have a choice--they have to participate. But IBM clearly isn't happy with Sun's ownership of Java anymore, which is why they have created projects like Jikes and Eclipse. The individuals that participate do have a choice, and they are dopes in my opinion.
People join the JCP because they get to change Java. This process works.
No, it does not work--just look at the dreck it has produced. It amounts to free labor for Sun. Of course, Sun gets largely what they pay for...
Won't all new star trek series compete against reruns? They'll probably still have reruns of old Star Trek in a few years.
Yes, but at the prices you will be paying for them once everything is under DRM, you'll be sitting up on your hind legs and saying "give me another, PLEASE".
Think 1950's, a few television channels, and total control. It's what they want to get back to. It allows them to put out any kind of shit, and with the low production costs...
(It won't work, but that's their dream.)