Ignorance from Princeton.

schwern on 2003-11-06T05:31:01

Slashdot mentioned a column in Syllabus magazine entitled The FREE, 0% APR, Better Sex, No Effort Diet. Attempting to be a commentary on Free Software, its really an ignorant ramble more likely to be written by a usenet crank on a trolling binge than an employee of Princeton University in an IT magazine for academia.

So pissed off I was by this bit of near libel:

These folks are some of the same great people who are supposed to be working for you anyway, plus a smattering of teenagers too young to work at Redmond, hackers, virus creators, and a menagerie of others with whom you will feel great pride in entrusting your IT infrastructure.


that I actually sat down and wrote a letter to the editor. Here it is (a bit mangled by <ECODE>).

Hello. My name is Michael G Schwern and I'm writing to you as the editor of Syllabus to express my disappointment that "The FREE, 0% APR, Better Sex, No Effort Diet" was published in November 2003's issue of Syllabus. As a magazine about IT issues in academia, I would have expected better editorial control and I would expect better of Princeton University.

Howard's column is an uninformed, free-associating rant against Free Software the likes of which I would expect to see in a Usenet troll posted by one of the "teenagers too young to work at Redmond, hackers, virus creators" he tries to link Free Software developers to, not in a serious IT magazine. I'm appalled Howard produced this article, which reduces itself to base name-calling, after writing his more intriguing "Reflections" columns. I'm appalled Syllabus published this pile of lies in their magazine which is "influencing decisions made across the higher ed enterprise". Were it not an editorial column it would be libel.

I am a Free Software developer. I have been helping the development of the Perl programming language, and miscellaneous others, for nearly six years now with a focus on Quality Assurance. I would like to counter some of Howard's most galling claims. So that I don't sink to Howard's level of unsubstantiated mud slinging, I'd like to counter some of his smears with someone lacking in his article: Facts.

With my specialty in Perl QA, I will target Howard's most chaffing claim that in order to use Free Software "we may have to give up project planning, quality control, coding standards, accountability, version control, and support" by providing direct counter examples in the development of Perl, the Free Software project with which I am most familiar.

Perl is an extremely popular programming language originally for Unix system administrators but exploded into prominence for web programming during the .com boom and has expanded into a powerful, Enterprise level general purpose language since then. Such corporations as Morgan Stanley, Ticketmaster, Pair Networks and Amazon.com use Perl extensively. It has been developed since 1987 originally by Larry Wall [1] (a happily married father of four) and now by a talented international collection of Perl users who donate their time to help out. Perl is backed by The Perl Foundation [2], a 501c3 non-profit which has raised over $40,000 in the last year to help repay some of the most talented Perl developers for their volunteering time. Perl is built from 200,000 lines of C code and contains over 230,000 lines of documentation. It supports over 35 operating systems, many of which you've probably never even heard of. [3] It comes as standard on nearly every Unix machine shipped today including Apple's OS X. And yes, its all Free. [4]

Project planning is ultimately handled by Larry Wall who layed out the design and purpose of Perl years ago. His intentions are carried out by our development lead (known as the Pumpkin King) who has responsibility for a single major release of Perl. Development goals for each version are set and met. Older major revisions are maintained by different Pumpkin Kings. Backwards compatibility is vigorously enforced both by our test suite and by individuals acting as a volunteer Backward Compatibility Police.

Quality control in Perl is provided by its extensive testing suite which, at last count, totals over 100,000 lines of code in 850 individual files. The test suite is nearly as large as Perl itself. It is shipped with the source code of Perl and run as part of the installation process. The bleeding edge version of Perl is build and tested dozens of times a day [5]. We have an extensive bug tracking system not only for Perl [6] but for all those who write Perl libraries [7]. Finally, a team of volunteer testers ensure report problems in Perl libraries. [8]

Coding standards are layed out in several documents [9,10] and enforced by the small group of people who have access to commit changes to Perl (the Pumpkin King and his assistants). Most changes are first discussed on the development list and often altered for stylistic reasons before committing. All changes are logged to a mailing list [11] if you wish to systematicly review and make stylistic comments.

Version control is provided by Perforce [12] who generously makes their commercial software free for use by Free Software projects. A publicly browsable repository is available via the web [13]. In addition, all older versions of Perl and all libraries are archived [14].

As for accountability, you can join the Perl development list and read all the discussions, decisions, fighting, squabbling, mistakes, fixes and ponderings by the Perl development team. In fact, you can read the last eight years of development team communications. [15] And you can join right in!

A commercially supported and quality assured version of Perl can be bought from ActiveState [16] should you desire commercial support.

Perl is not an atypical Free Software project. PHP, Python, Apache, Linux, BSD, MySQL, PostgreSQL... just to name a few can all support similar histories and support. Its a mature, long established development project and its Free, yet you can get commercial support. Eclipsing common commercial practices, its internal developer discussions are open to the public as are its bug list, version control system and development releases. How much more accountability do you want?

Are there Free Software projects that don't have this level of organization, maturity and accountability? Are there commercial projects that don't? Yes, lots on both counts. First time programmers eager to rush out and write some code adorn both the commercial and non-commercial world. Free or commercial, it doesn't matter. Either your organized or you're not. To label all Free Software as a bunch of disorganized teenagers writing code indiscriminately is to display a lack of understanding of what really effects software development. Something I would hope the manager of technology strategy and outreach at Princeton University would know something about. The difference with Free Software is the books are open. You can read the code, talk the to the developers, see the bugs, check for yourself if the project has its act together. You see the successes and the many, many failures. You can audit the whole system. With closed development commercial software you just have to take their word on it that everything's hunky dory.

Finally I would like to address Howard's most base and childish charge. His equating Free Software developers to "a smattering of teenagers too young to work at Redmond, hackers, virus creators..." Shame on you. Shame on you to try link Free Software volunteers to a collection of malicious virus authors or say that they children irked becasue they can't work at Microsoft. Shame on your for belittling their efforts. Shame on you for reducing an academic opinion column to schoolyard name-calling.

Yes, some of the developers are teenagers who are too young to work at Redmond. Some are happily married fathers and mothers. Some are grey bearded old crufty Unix geeks. Some are even IBM and Sun employees. Many have no credentials at all. Free Software development is largely a meritocracy. We don't care who you are as long as you do good work. I myself am a 28 year old single male two failed out of an Electrical and Computer Engineering program with no accreditations, certifications or affiliations with any large software company. I write good code and that's all that matters. Male, female, young, old, fat, short, bad English, bad breath, we don't care. Just so long as you write good code and play well with others. And shouldn't that be all that matters?

I invite Howard to have a look at the people who create Free Software, as seen through the lens of Julian Cash [17] at the O'Reilly Open Source Convention. [18] I invite him to come to the conference and meet the people he's slandered. As an employee of Princeton University Howard should know that the best way to expel ignorance is education.

I apologize for the length of this letter, but I felt the false characterizations in Howard's column needed a rebuttal backed up with evidence. I thank you, Mary, for reading and hope Syllabus will keep its columns in the realm of informed opinion.

[1] http://www.wall.org/ [2] http://www.perlfoundation.org/ [3] http://www.perldoc.com/perl5.8.0/pod/perlport.html#Supported-Platforms [4] http://www.perldoc.com/perl5.8.0/README.html [5] http://nntp.x.perl.org/group/perl.daily-build.reports [6] http://rt.perl.org/perlbug [7] http://rt.cpan.org/ [8] http://testers.cpan.org/ [9] http://www.perldoc.com/perl5.8.0/Porting/patching.html [10] http://www.perldoc.com/perl5.8.0/pod/perlhack.html [11] http://nntp.x.perl.org/group/perl.perl5.changes [12] http://www.perforce.com [13] http://public.activestate.com/cgi-bin/perlbrowse [14] http://history.cpan.org/backpan/ [15] http://www.xray.mpe.mpg.de/mailing-lists/perl5-porters/ [16] http://www.activestate.com/Products/PerlDirect/ [17] http://www.juliancash.com/view/jc_os/set/small_index.html [18] http://www.oreillynet.com/oscon2003/


Well written ...

autarch on 2003-11-06T05:57:57

But I think you should've just threatened to hack into TRW and screw up his credit rating ;)

SA users too

Matts on 2003-11-06T09:06:44

Princeton use SpamAssassin according to Justin Mason's latest blog entry on just this topic. I guess what's good for the goose...

Very Good Points - This happens too often

TeeJay on 2003-11-06T09:54:57

This is the second time I've heard of supposedly serious journals dismissing free software or perl in such an underhanded way.

It is safe to say that all the major Free Software projects have very good version control, testing and QA.

The Apache group is probably the best example of well managed code and organised people - they have produced standards defining code that frequently shames the big names of IT like Microsoft or IBM.

It is obvious this fool has never even looked at open source code

Even the small scale open source projects I have worked on have :

  • Version Control and Changelogs
  • Test Scripts, and error reporting by email or through rt.cpan.org
  • Object oriented design, that is peer reviewed.
  • Contributions and bug fixes from Academia (I have had code, patches and bug reports from Universities throughout Europe and the US), and developers at several large software companies
And thats just a handful of projects I do in my spare time.

Re:Very Good Points - This happens too often

TeeJay on 2003-11-06T10:04:29

I noticed he doesn't even cite anything to justify his claims - such as available code be discredited.

what a prize muppet

So...

chaoticset on 2003-11-06T15:17:19

<OB M$ RANT>
So...does this mean that Howard Strauss is actually a dependant of Microsoft, seeing as how they own him?
</OB M$ RANT>
Whoops -- this isn't Slashdot...! :\

Re:So...

schwern on 2003-11-07T04:13:13

I would hope Bill could afford better.

trolling cynic...

da on 2003-11-06T16:39:32

My impression, reading the article, was that the author has a lot of experience with crappily managed Free Software. Which I would suggest is not uncommon in academic settings (at least, it was at the school I attended in the mid-90s). Beyond the lies in the article, I got a mild grin out of:

Another way to get free software is to have students develop our critical systems. We all know how clever students are and how being born in the computer age they have bypassed a million years of evolution to become cyber sapiens. Software development is instinctive to them. While your aging, over-21 staff demands high salaries and benefits, and fusses with security, documentation, and project planning, cyber sapiens work for a few dollars an hour and can manage several projects in their heads without writing a single thing down. They also write bug-free code, work during exams and vacations, and are not distracted by alcohol, sports, or the acquisition of potential mates.

So he's a cynic. Which would be fine, if he didn't also lie:

We may have to give up project planning, quality control, coding standards, accountability, version control, and support, but it’s FREE and we get the ability to modify the source code ourselves, something that is extremely dangerous to do, was discredited decades ago, and few people do anyway.

I hope they get a huge pile of nastygrams from ex-readers.

Ignorance from Princeton

nkuitse on 2003-11-11T21:26:20

I've submitted this to slashdot: Princeton tech manager exposes open source evils!

No idea if they'll accept it, of course...

Circular references.

schwern on 2003-11-13T07:59:30

Where do you think I got the link from?

Well said....

Adrian on 2003-11-18T18:37:46

I'm glad somebody still has the energy to write coherent, non-flame responses to this sort of nonsense.

I used to do it all of the time. Now, to be honest, I just can't be bothered. On the bad days I think this is because I have become lazy. On the good days I think it is because the argument has already been won in the world at large ;-)

Response from Princeton

Adrian on 2003-11-21T15:48:48

Can be found at http://web.princeton.edu/sites/oitdepts/eis/Buy_Build_OpenSource.html for those who have not seen it already.