Well, if that bothers you then why did you buy the book in the first place? It's not like they are hiding the fact that each chapter has a different author.
I actually like that kind of book better. I find reading 50 to 100 pages on a topic at a time to be a palatable amount of information. Nobody really sits down and reads 936 pages on an IT topic cover to cover anyway. I think it is good to get a variety of explanitory styles.
If you move towards the cutting edge of any field, it ALWAYS happens that books and journals have more authors writing in smaller doses. If that bothers you, stay away from the innovation horizon.
He can GROW UP and handle some immature bozo who bothers him in online forums like a man.
I think this is a bit overly harsh, but I do agree that litigation should be a last resort. A much better plan is to agressively RESPOND. The best counterattack to inaccurate speech is accurate speech. Trust your audience. Most people recognize a creep when he's called on it.
Make a website and post the correct responses to all of the inaccuracies and lies that the anonymous coward is spreading. Do it in the form of an FAQ. Restate his assertions in question form, answer them. Ask your own question, answer them. The go to EVERY forum where the lies have been posted and post the link with a brief statement and put him on the defensive.
Be sure to pose questions back to the originator:
Q: Why does John Doe post anonymously? A: He knows what he is saying is false and he doesn't want to associate his name with his pretended beliefs.
Q: Why does he post my private information? A: He doesn't want a battle of ideas, but rather a battle of cheap shots.
Q: Why does he keep repeating lie X, when the truth is Y? A: Because he doesn't care about the truth, but instead wants the negative effect of deceitful propaganda.
Q: Who is John Doe? What is his agenda? A: He may be a crackpot. He may work for one of my competitors. He may be an ex-girlfriend. He may be mentaly ill. We don't know because he posts anonymously. We don't really know anything about him other than he likes to spew anonymous attacks. He clearly has an agenda to try to damage my business through lies and deceipt.
Q: How credible is John Doe? A: He spews anonymous attacks and won't respond to the truth. I put my name on my work and my communications. You be the judge who is more credible.
Why is that a reason to think twice? Fast time-to-market is good. Multiple authors working in parallel is one among several reasonable strategies to achieve it. The fact that many are Indian is completely irrelevant -- so what? Do you have some weird hangup where you only want to look at white anglo saxon males?
I use Wells Fargo for both my ordinary banking and my Visa card. I can do all my banking using mozilla. For example, I can transfer money from my checking account to my Visa card to pay it off. In fact, you can set it up to automatically make a payment. Additionally, they have overdraft protection, so if I bound a check, it rolls over to the credit card. They also have online bill pay, which does an e-transfer if possible or snail-mails a physical check if not.
Combine this with their ATM/Check card and I never go to the bank and I never buy stamps. Hell, I don't even go to the ATM that much since everybody takes check cards these days. Oh, and WF will respond to service requests by email if you want.
The only downside is their credit card interest rate isn't that good, but you shouldn't be carrying a balance month-to-month anyway.
I would love to see Linux come into its own..but it's going to happen when truely professional software companies jump on the bandwagon, not guys on sourceforge.
So IBM, Oracle, Dell, and Sun don't count?! Perhaps you didn't hear that OracleWorld has been retitled "OracleOnLinuxWorld" this year.
Name one company besides MS that isn't jumping on the bandwagon.
I'm 100% Linux at home, but at work I've got one linux box and one windows box. I spend 80% of my time on the windows box, the rest on the linux box. The biggest thing that is stopping me from adopting windows at work is the fact that we've put a lot of our business data in windows only apps. It's not that equivalents programs don't exist, in most cases they do. In many cases the cutover cost would be prohibitive.
For example, we use an off the shelf app called "HEAT" to track tickets from the call center into our development shop. There are plenty of open source equivalents (like say bugzilla), but our data is in HEAT. HEAT has a web-app called iHEAT, but I'd have to convince management to use it. There is no hope of changing away from HEAT. We use MKS Source Integrity for source control. If we upgraded to the Enterprise edition, we could use this on linux, but the standard edition still appears to be Windows only. There is no hope of us changing this tool either. I'm guessing Evolution now is interoperable with MSExchange, so that's probably not a show-stopper any more. I think MSExchange has a web access layer we could use too. It is, of course, critical for drop-in 100% interoperability here from Linux.
We're an Oracle shop and we do our development in TOAD and the Oracle tools. The latter have linux support in the newer versions (so when we convert it'll be OK), but the TOAD equivalents (TORA was farthest along last time I looked), are still catching up. I can do some work in a plain text editor (JEdit rocks).
I don't see how phpGroupWare (which is a great project, by the way) solves the single sign on problem. It only adds another thing you have to sign on to.
Ant IS the proper way to make a makefile. 'make' is obsoleted by Ant, which is the standard way to build java, period.
Ant is a proven product, has a well-defined, well-documented, and *validatable* syntax, unlike make. XML is self documenting anyway, and if you don't like the way it looks when you try to read it directly (?), write an XSLT to have it pretty print any way you like (for example to a nice HTML page with a table).
'make' uses its homegrown bizarre antiquated syntax that is NOT userfriendly, and suffers from an obnoxious reliance on whitespace (tab vs space is important). It is not self-documenting, nor can it leverage the large body of XML tools.
Ant has long since left make in the dust, and the 2nd generation tools like Maven, Gump, and Jelly, which all build on Ant, are the future.
No, this is the perfect opportunity for subversion. Your rudeness to the question is completely unwarented. The open source community is going to have to find ways to force it's way onto the beachheads patrolled by such pointy haired MS lovers. This is a perfect case study of the real world obstacles that will be encountered.
If you think that you can just turn your back whenever a "goofy restriction" is in place, you are dooming the world to MS dominance.
The mostly open source Java Model-View-Controller solution would implement Java Server Pages (JSP) using the Tomcat servlet container for the presentation layer (use JSP's custom tags to give the web designer a code free job), a Postgres or Firebird backend for the model, and either a custom servlet or something like Struts from the Apache Jakarta project for the Controller.
The above meets all of your stated requirements, and its all very battle hardened and will scale as big as you need. The databases are probably the limit on scalability, but I'd say you are at least breaking even switching from MS SQL-Server to either Postgres or Firebird. It's also pretty platform independent, again limited by the databases. Except for the JRE, it's all open source.
If you want to be cutting edge, look at Cocoon from the Apache Jakarta project for an XML/XSLT based presentation layer. Throw in Apache AXIS for SOAP somehow to round out a fully "web services" buzzword compliant system.
The LAMP (linux, apache, MySQL, Perl/Python/PHP) option is another one that was the "hot" thing at least until IBM decided to invest a billion dollars and Apache Jakarta technologies started exploding.
Java just passed Visual Basic as the most widely used language, defined in terms of employees doing it, which is different from the number of job postings right now. Perl is now third, followed by C and C++.
I tried to find the market share study I'd seen that said this, but I couldn't find it. I did find this story however.
On a whim, I tried looking at the number of keyword hits at jobsearch.monster.com . Here are the hit counts for job postings in the last 60 days. I think this is pretty telling, actually.
1307 SQL 1140 Unix or Linux 1063 Windows 1062 Access 1029 Unix 1023 J2EE or Java 1005 C
976 Java
888 Oracle
821 C++
763 network
621 Visual Basic
595 Web Services
570 XML
464 HTML
457 Computer Security
385 ASP
288.net
281 J2EE
254 Linux
225 Javascript
214 TCP/IP
210 Perl
206 DB2
204 JSP
188 SAP
141 IIS
138 Peoplesoft
134 Exchange
131 WebSphere
110 Cobol
85 MCSE
70 Apache
70 SOAP
60 SAS
44 Delphi
42 DNS
28 MySQL
20 JUnit
19 Python
10 Pascal
I agree with you completely and have made this same point on the deep linking issue.
The plaintiffs in this case chose to hook up a server to a network. They chose to assign it an IP and a DNS name to facilitate network connectivity. They chose to install web server software. They chose to configure that software to respond to HTTP requests for files on port 80 of their outside IP. They chose to start their web server. They chose not to use any of the myriad of standard security mechanisms such as firewalls, authentication, access controls, encryption, etc... that could have secured their file. They chose to put the file in question in the directory the web server was configured to publish to the outside world.
Then Reuters asked for the file via an HTTP GET request and the machines followed the instructions they were given and provided the file. It's kind of sickening that this argument isn't laughed out of court.
My experience is that the best software is produced when several different private corporate interests cooperate with the user-developers. The open source development model (as distinct from the open source licence) is what I consider the best practice for producing high quality software. The top half of your post is pure FUD.
Your argument appears to be based on one of the following two assumptions:
1) it is just plain evil to let someone profit from taxpayer funding
No, I have no problem with private entities profiting -- until it motivates behavior that is counter productive to the taxpayers at which point they would be reasonable to cut it that bad behavior. Let companies sell service, support, and consulting based around publicly funded GPL software. The policy goal for public spending is to benefit the public -- if that happens to allow private profits, then great. You seem to take those private profits as an end in itself.
or
2) a company that improves public domain software and sells it as proprietary somehow either makes the software less good, or makes it impossible for open source work to proceed on the software.
Do I really need to explain "embrace, extend and extinguish" to you? If somebody augments my IP, I want access to the modifications. The public is justified in demanding the same thing for software it pays for, and in fact, by starting out GPL, they are likely to reduce development costs by leveraging free 3rd party submissions.
But yes, I do consider proprietary software "less good". I value source code openness. I value the ability to make a derivitive work myself. I value unlimited installations and zero licence managment costs. I value unrestricted 3rd party source code auditing. I value lock-in avoidance. I value source code mixability with the large body of existing GPL compatible code.
I view all of these things as features of the licencing model that make GPL software inherently more valueable than proprietary software which is otherwise source code identical.
Okay... so you agree with me that GPL is less competitive.
That is not what I said. We are discussing how a spending policy would discriminate against certain forms of competition by using the GPL. Where the public pays for software, this would deny a public subsidy to those competitors who would harm the interests motivating the public in the first place.
All spending decisions discriminate in the market place. It is inherent.
In fact, by assuring that all use of the software will be under a non-proprietary licence, the government is assuring competition in the services market.
Your argument misses the point that all models are allowed to compete with each other if the software is released as public domain.
No, you missed the point of my post. The GPL will stifle some forms of competition -- those that are destructive to the people's interest in paying for the software in the first place. This is the desired and reasonable outcome of using the GPL.
This also suggests the simple way that the RIAA/MPAA will kill freenet. They will create their own nodes and flood the network with files. I posted a message to the freenet mailing list about how they could counter this and nobody responded back to it.
The basic design of Freenet makes it impossible to control signal to noise.
Amendment X - The powers not delegated to the United States by the Constitution, nor prohibited by it to the states, are reserved to the states respectively, or to the people.
Thus the 10th Amendment shines no light at all on whether a state has the power to regulate something which the Federal government cannot. In fact, the 14th Amendment prohibits states from enforcing any law which "abridge[s] the privileges or immunities of citizens". The Supreme Court has ruled that the priviledges and immunities therein includes the right of Free Speech.
Forcing the government to release code under GPL is *removing* competition from the market. Public domain is much better.
Perhaps it does stifle some competition, but only competition that may be destructive to the purposes the government created the software in the first place. The big functional difference between the GPL and BSD or public domain is that the GPL is robust to "embrace, extend, and extinguish".
If the public finances the creation of software, it seems grossly unfair to allow proprietary extensions to that software that break compatibility. The GPL offers a quid-pro-quo that seems clearly in the public interest. It says: we the people created this IP -- you can use it, modify it, distribute it, etc... but any IP that you create that piggy-backs off of this work must be accessable by the public. The payment for using the GPL code is not monetary, it is IP. This way, the public gets not just the IP they funded, but a continuing return on their investment in the form of IP extensions to the original code.
Contrast this with the BSD or public domain licences. Let's say the public creates an email app by hiring a contractor. That app has a nice open mailbox format. A private entity could take the app, convert the mailbox format to a proprietary format and actually compete against the original app by leveraging the things it does well. That is wrong. Yet it is exactly the model that pervades many software companies.
Easterbrook is certainly the flag carrier for the "enforcable" camp, but ProCD is far from settled law. It directly conflicts with decisions in the 5th, 3rd, and 9th Circuits, even if it is joined by decisions from the WA Supreme Court and (just recently) by the Federal Circuit.
Ultimately, I believe that the tendancy towards enforcability of such contracts is just one manifestation of the "corporate communism" that is destroying America. The traditional conservative-liberal dichotomy is increasingly irrelevant in a world where a single party system dominates a corporatist government willing to sacrifice citizens and competition for campaign cash.
This example is nice in that it may force a court to do what should have been done a long time ago: apply standard principles of contracts to EULAs.
I do, however, predict the result will not be happy for the author of this worm. The Court will rule that the EULA is a "contract of adhesion" and that its terms are unconscionable and unenforcable. The Court will then rule that the author is a cyber terrorist and will sentance them to severe punishment.
Microsoft will go on doing what they were doing before and nothing will change except that "little people" will have their face rubbed in the fact that the law only protects big money.
Actually it is a major piece in the classification 3 dimensional worlds (mathematicians call them "manifolds"). A manifold is the higher dimension analog of a surface. 3-manifolds in particular have direct relevence to virtual reality in CS. We've all seen 2-D games where you go off the top and come up from the bottom and similar with the right and left side. You probably never thought of the fact that such a game is "topologically" played on a surface that is a torus. Variations to this can exist -- imagine that moving off the top brings you in from the bottom but reflected so if you go off the top right, you come in the bottow left (right-left wraps as before). Now you are playing on a "Klein bottle", which is a surface that cannot be embedded in the normal 3-D world. The classification of all surfaces is a standard problem in first year graduate topology and/or algebraic topology.
One approach is to look at the different ways you can draw a loop, where two loops are equivalent if you can make a movie where one morphs into the other continuously. It turns out that the structure of the fundamentally different ways of putting loops in surfaces completely classifies surfaces. For example, if all loops are equivalent then the surface is a sphere.
For 3-D "worlds" there are many more possibilities. It is actually a long standing problem to identify what all the possibilites are. The Poincare conjecture, which may now be solved, completes a major piece of that puzzle. It may even complete it all (I don't recall). The obvious thing to do with 3-manifolds is to look at how you can embed spheres, but this approach has failed miserably, because nobody could prove that if any sphere embeddings can be morphed into any other then the "world" is the 3-sphere.
The point of my post was to highlight an ambiguity in the story. It is not clear which of two critically different positions these legislators are advocating.
The moderators implicitly agree that the ambiguity exists and is important.
Well, if that bothers you then why did you buy the book in the first place? It's not like they are hiding the fact that each chapter has a different author.
I actually like that kind of book better. I find reading 50 to 100 pages on a topic at a time to be a palatable amount of information. Nobody really sits down and reads 936 pages on an IT topic cover to cover anyway. I think it is good to get a variety of explanitory styles.
If you move towards the cutting edge of any field, it ALWAYS happens that books and journals have more authors writing in smaller doses. If that bothers you, stay away from the innovation horizon.
He can GROW UP and handle some immature bozo who bothers him in online forums like a man.
I think this is a bit overly harsh, but I do agree that litigation should be a last resort. A much better plan is to agressively RESPOND. The best counterattack to inaccurate speech is accurate speech. Trust your audience. Most people recognize a creep when he's called on it.
Make a website and post the correct responses to all of the inaccuracies and lies that the anonymous coward is spreading. Do it in the form of an FAQ. Restate his assertions in question form, answer them. Ask your own question, answer them. The go to EVERY forum where the lies have been posted and post the link with a brief statement and put him on the defensive.
Be sure to pose questions back to the originator:
Q: Why does John Doe post anonymously?
A: He knows what he is saying is false and he doesn't want to associate his name with his pretended beliefs.
Q: Why does he post my private information?
A: He doesn't want a battle of ideas, but rather a battle of cheap shots.
Q: Why does he keep repeating lie X, when the truth is Y?
A: Because he doesn't care about the truth, but instead wants the negative effect of deceitful propaganda.
Q: Who is John Doe? What is his agenda?
A: He may be a crackpot. He may work for one of my competitors. He may be an ex-girlfriend. He may be mentaly ill. We don't know because he posts anonymously. We don't really know anything about him other than he likes to spew anonymous attacks. He clearly has an agenda to try to damage my business through lies and deceipt.
Q: How credible is John Doe?
A: He spews anonymous attacks and won't respond to the truth. I put my name on my work and my communications. You be the judge who is more credible.
You get the idea.
Why is that a reason to think twice? Fast time-to-market is good. Multiple authors working in parallel is one among several reasonable strategies to achieve it. The fact that many are Indian is completely irrelevant -- so what? Do you have some weird hangup where you only want to look at white anglo saxon males?
I use Wells Fargo for both my ordinary banking and my Visa card. I can do all my banking using mozilla. For example, I can transfer money from my checking account to my Visa card to pay it off. In fact, you can set it up to automatically make a payment. Additionally, they have overdraft protection, so if I bound a check, it rolls over to the credit card. They also have online bill pay, which does an e-transfer if possible or snail-mails a physical check if not.
Combine this with their ATM/Check card and I never go to the bank and I never buy stamps. Hell, I don't even go to the ATM that much since everybody takes check cards these days. Oh, and WF will respond to service requests by email if you want.
The only downside is their credit card interest rate isn't that good, but you shouldn't be carrying a balance month-to-month anyway.
I would love to see Linux come into its own..but it's going to happen when truely professional software companies jump on the bandwagon, not guys on sourceforge.
So IBM, Oracle, Dell, and Sun don't count?! Perhaps you didn't hear that OracleWorld has been retitled "OracleOnLinuxWorld" this year.
Name one company besides MS that isn't jumping on the bandwagon.
Try Wyvern -- it's a java based graphical MUD. It reminds me a lot of the old Ultimas, except it's multi-player.
I'm 100% Linux at home, but at work I've got one linux box and one windows box. I spend 80% of my time on the windows box, the rest on the linux box. The biggest thing that is stopping me from adopting windows at work is the fact that we've put a lot of our business data in windows only apps. It's not that equivalents programs don't exist, in most cases they do. In many cases the cutover cost would be prohibitive.
For example, we use an off the shelf app called "HEAT" to track tickets from the call center into our development shop. There are plenty of open source equivalents (like say bugzilla), but our data is in HEAT. HEAT has a web-app called iHEAT, but I'd have to convince management to use it. There is no hope of changing away from HEAT. We use MKS Source Integrity for source control. If we upgraded to the Enterprise edition, we could use this on linux, but the standard edition still appears to be Windows only. There is no hope of us changing this tool either. I'm guessing Evolution now is interoperable with MSExchange, so that's probably not a show-stopper any more. I think MSExchange has a web access layer we could use too. It is, of course, critical for drop-in 100% interoperability here from Linux.
We're an Oracle shop and we do our development in TOAD and the Oracle tools. The latter have linux support in the newer versions (so when we convert it'll be OK), but the TOAD equivalents (TORA was farthest along last time I looked), are still catching up. I can do some work in a plain text editor (JEdit rocks).
I thought he was very clear.
I don't see how phpGroupWare (which is a great project, by the way) solves the single sign on problem. It only adds another thing you have to sign on to.
Ant IS the proper way to make a makefile. 'make' is obsoleted by Ant, which is the standard way to build java, period.
Ant is a proven product, has a well-defined, well-documented, and *validatable* syntax, unlike make. XML is self documenting anyway, and if you don't like the way it looks when you try to read it directly (?), write an XSLT to have it pretty print any way you like (for example to a nice HTML page with a table).
'make' uses its homegrown bizarre antiquated syntax that is NOT userfriendly, and suffers from an obnoxious reliance on whitespace (tab vs space is important). It is not self-documenting, nor can it leverage the large body of XML tools.
Ant has long since left make in the dust, and the 2nd generation tools like Maven, Gump, and Jelly, which all build on Ant, are the future.
No, this is the perfect opportunity for subversion. Your rudeness to the question is completely unwarented. The open source community is going to have to find ways to force it's way onto the beachheads patrolled by such pointy haired MS lovers. This is a perfect case study of the real world obstacles that will be encountered.
If you think that you can just turn your back whenever a "goofy restriction" is in place, you are dooming the world to MS dominance.
The mostly open source Java Model-View-Controller solution would implement Java Server Pages (JSP) using the Tomcat servlet container for the presentation layer (use JSP's custom tags to give the web designer a code free job), a Postgres or Firebird backend for the model, and either a custom servlet or something like Struts from the Apache Jakarta project for the Controller.
The above meets all of your stated requirements, and its all very battle hardened and will scale as big as you need. The databases are probably the limit on scalability, but I'd say you are at least breaking even switching from MS SQL-Server to either Postgres or Firebird. It's also pretty platform independent, again limited by the databases. Except for the JRE, it's all open source.
If you want to be cutting edge, look at Cocoon from the Apache Jakarta project for an XML/XSLT based presentation layer. Throw in Apache AXIS for SOAP somehow to round out a fully "web services" buzzword compliant system.
The LAMP (linux, apache, MySQL, Perl/Python/PHP) option is another one that was the "hot" thing at least until IBM decided to invest a billion dollars and Apache Jakarta technologies started exploding.
Are there really that many companies using Java?
.net
Yes. Lots.
Java just passed Visual Basic as the most widely used language, defined in terms of employees doing it, which is different from the number of job postings right now. Perl is now third, followed by C and C++.
I tried to find the market share study I'd seen that said this, but I couldn't find it. I did find this story however.
On a whim, I tried looking at the number of keyword hits at jobsearch.monster.com . Here are the hit counts for job postings in the last 60 days. I think this is pretty telling, actually.
1307 SQL
1140 Unix or Linux
1063 Windows
1062 Access
1029 Unix
1023 J2EE or Java
1005 C
976 Java
888 Oracle
821 C++
763 network
621 Visual Basic
595 Web Services
570 XML
464 HTML
457 Computer Security
385 ASP
288
281 J2EE
254 Linux
225 Javascript
214 TCP/IP
210 Perl
206 DB2
204 JSP
188 SAP
141 IIS
138 Peoplesoft
134 Exchange
131 WebSphere
110 Cobol
85 MCSE
70 Apache
70 SOAP
60 SAS
44 Delphi
42 DNS
28 MySQL
20 JUnit
19 Python
10 Pascal
Get a job as a military contractor. Duh.
Q: How many CPUs does it take to run MS SQL Server
A: Four, one to hold the light bulb and three to turn the ladder.
I agree with you completely and have made this same point on the deep linking issue.
The plaintiffs in this case chose to hook up a server to a network. They chose to assign it an IP and a DNS name to facilitate network connectivity. They chose to install web server software. They chose to configure that software to respond to HTTP requests for files on port 80 of their outside IP. They chose to start their web server. They chose not to use any of the myriad of standard security mechanisms such as firewalls, authentication, access controls, encryption, etc... that could have secured their file. They chose to put the file in question in the directory the web server was configured to publish to the outside world.
Then Reuters asked for the file via an HTTP GET request and the machines followed the instructions they were given and provided the file. It's kind of sickening that this argument isn't laughed out of court.
My experience is that the best software is produced when several different private corporate interests cooperate with the user-developers. The open source development model (as distinct from the open source licence) is what I consider the best practice for producing high quality software. The top half of your post is pure FUD.
Your argument appears to be based on one of the following two assumptions:
1) it is just plain evil to let someone profit from taxpayer funding
No, I have no problem with private entities profiting -- until it motivates behavior that is counter productive to the taxpayers at which point they would be reasonable to cut it that bad behavior. Let companies sell service, support, and consulting based around publicly funded GPL software. The policy goal for public spending is to benefit the public -- if that happens to allow private profits, then great. You seem to take those private profits as an end in itself.
or
2) a company that improves public domain software and sells it as proprietary somehow either makes the software less good, or makes it impossible for open source work to proceed on the software.
Do I really need to explain "embrace, extend and extinguish" to you? If somebody augments my IP, I want access to the modifications. The public is justified in demanding the same thing for software it pays for, and in fact, by starting out GPL, they are likely to reduce development costs by leveraging free 3rd party submissions.
But yes, I do consider proprietary software "less good". I value source code openness. I value the ability to make a derivitive work myself. I value unlimited installations and zero licence managment costs. I value unrestricted 3rd party source code auditing. I value lock-in avoidance. I value source code mixability with the large body of existing GPL compatible code.
I view all of these things as features of the licencing model that make GPL software inherently more valueable than proprietary software which is otherwise source code identical.
Okay... so you agree with me that GPL is less competitive.
That is not what I said. We are discussing how a spending policy would discriminate against certain forms of competition by using the GPL. Where the public pays for software, this would deny a public subsidy to those competitors who would harm the interests motivating the public in the first place.
All spending decisions discriminate in the market place. It is inherent.
In fact, by assuring that all use of the software will be under a non-proprietary licence, the government is assuring competition in the services market.
Your argument misses the point that all models are allowed to compete with each other if the software is released as public domain.
No, you missed the point of my post. The GPL will stifle some forms of competition -- those that are destructive to the people's interest in paying for the software in the first place. This is the desired and reasonable outcome of using the GPL.
This also suggests the simple way that the RIAA/MPAA will kill freenet. They will create their own nodes and flood the network with files. I posted a message to the freenet mailing list about how they could counter this and nobody responded back to it.
The basic design of Freenet makes it impossible to control signal to noise.
Amendment X - The powers not delegated to the United States by the Constitution, nor prohibited by it to the states, are reserved to the states respectively, or to the people.
Thus the 10th Amendment shines no light at all on whether a state has the power to regulate something which the Federal government cannot. In fact, the 14th Amendment prohibits states from enforcing any law which "abridge[s] the privileges or immunities of citizens". The Supreme Court has ruled that the priviledges and immunities therein includes the right of Free Speech.
Forcing the government to release code under GPL is *removing* competition from the market. Public domain is much better.
Perhaps it does stifle some competition, but only competition that may be destructive to the purposes the government created the software in the first place. The big functional difference between the GPL and BSD or public domain is that the GPL is robust to "embrace, extend, and extinguish".
If the public finances the creation of software, it seems grossly unfair to allow proprietary extensions to that software that break compatibility. The GPL offers a quid-pro-quo that seems clearly in the public interest. It says: we the people created this IP -- you can use it, modify it, distribute it, etc... but any IP that you create that piggy-backs off of this work must be accessable by the public. The payment for using the GPL code is not monetary, it is IP. This way, the public gets not just the IP they funded, but a continuing return on their investment in the form of IP extensions to the original code.
Contrast this with the BSD or public domain licences. Let's say the public creates an email app by hiring a contractor. That app has a nice open mailbox format. A private entity could take the app, convert the mailbox format to a proprietary format and actually compete against the original app by leveraging the things it does well. That is wrong. Yet it is exactly the model that pervades many software companies.
Easterbrook is certainly the flag carrier for the "enforcable" camp, but ProCD is far from settled law. It directly conflicts with decisions in the 5th, 3rd, and 9th Circuits, even if it is joined by decisions from the WA Supreme Court and (just recently) by the Federal Circuit.
Ultimately, I believe that the tendancy towards enforcability of such contracts is just one manifestation of the "corporate communism" that is destroying America. The traditional conservative-liberal dichotomy is increasingly irrelevant in a world where a single party system dominates a corporatist government willing to sacrifice citizens and competition for campaign cash.
This example is nice in that it may force a court to do what should have been done a long time ago: apply standard principles of contracts to EULAs.
I do, however, predict the result will not be happy for the author of this worm. The Court will rule that the EULA is a "contract of adhesion" and that its terms are unconscionable and unenforcable. The Court will then rule that the author is a cyber terrorist and will sentance them to severe punishment.
Microsoft will go on doing what they were doing before and nothing will change except that "little people" will have their face rubbed in the fact that the law only protects big money.
Actually it is a major piece in the classification 3 dimensional worlds (mathematicians call them "manifolds"). A manifold is the higher dimension analog of a surface. 3-manifolds in particular have direct relevence to virtual reality in CS. We've all seen 2-D games where you go off the top and come up from the bottom and similar with the right and left side. You probably never thought of the fact that such a game is "topologically" played on a surface that is a torus. Variations to this can exist -- imagine that moving off the top brings you in from the bottom but reflected so if you go off the top right, you come in the bottow left (right-left wraps as before). Now you are playing on a "Klein bottle", which is a surface that cannot be embedded in the normal 3-D world. The classification of all surfaces is a standard problem in first year graduate topology and/or algebraic topology.
One approach is to look at the different ways you can draw a loop, where two loops are equivalent if you can make a movie where one morphs into the other continuously. It turns out that the structure of the fundamentally different ways of putting loops in surfaces completely classifies surfaces. For example, if all loops are equivalent then the surface is a sphere.
For 3-D "worlds" there are many more possibilities. It is actually a long standing problem to identify what all the possibilites are. The Poincare conjecture, which may now be solved, completes a major piece of that puzzle. It may even complete it all (I don't recall). The obvious thing to do with 3-manifolds is to look at how you can embed spheres, but this approach has failed miserably, because nobody could prove that if any sphere embeddings can be morphed into any other then the "world" is the 3-sphere.
The point of my post was to highlight an ambiguity in the story. It is not clear which of two critically different positions these legislators are advocating.
The moderators implicitly agree that the ambiguity exists and is important.