Beefy Boxes and Bandwidth Generously Provided by pair Networks
Keep It Simple, Stupid
 
PerlMonks  

Looking for old Perl CGI code

by ton (Friar)
on Oct 12, 2005 at 21:57 UTC ( [id://499704]=perlquestion: print w/replies, xml ) Need Help??

ton has asked for the wisdom of the Perl Monks concerning the following question:

I'm trying to defend against a lawsuit from some guys who are claiming a patent on a subset of CGI. (You can view the patent here). I'm looking for any published or publically available Perl scripts written before May 15, 1994 that use CGI.

I'm pretty sure that CGI.pm won't work, as it was written after 1994 (I think). Anyone know of any really old scripts out there that can help me get rid of these guys?

Update: Just to clarify, I meant "scripts written before 1994 that have CGI capabilities," not "scripts written before 1994 that use the CGI package." Sorry for any confusion.


-----
Be bloody, bold, and resolute; laugh to scorn
The power of man...

Replies are listed 'Best First'.
Re: Looking for old Perl CGI code
by dave_the_m (Monsignor) on Oct 12, 2005 at 22:47 UTC
    My my, you can tell it's a patent because it's completely incomprehensible to anyone "versed in the art" :-(

    I don't know whether this is what you're after, but the old source tarball of the NCSA httpd web server 1.1,

    ftp://ftp.ncsa.uiuc.edu/Web/httpd/Unix/ncsa_httpd/old/httpd_1.1/httpd_source.tar.Z

    contains several sample CGI scripts dated Dec 1993, and one of them (wais.pl) is a perl script.

    Is there any specific aspect of CGI usage you need evidence of?

    Dave.

      I'm not exactly skilled at reading patents either, but I think I need a script that takes inputs on what data you want and how to show it, and outputs HTML with the <TABLE> tag. Ideally, the script would access a dB, but I think I can live without that. Essentially, this looks like (I think) a script that runs a predetermined SQL call and spits out an HTML table.

      I'll start looking through the sample scripts. Thanks!


      -----
      Be bloody, bold, and resolute; laugh to scorn
      The power of man...
        Netscape 1.1 added the <TABLE> tag in April '95. I'm not sure how far back you'll find scripts using it before then.

        Good luck, though

Re: Looking for old Perl CGI code
by dragonchild (Archbishop) on Oct 12, 2005 at 23:11 UTC
    I don't think the referenced patent has any applicability to CGI scripts written in Perl. To quote:

    1. A method of serving output signals from a serving device to a plurality of browsing devices connected to a network, wherein said output signals represent commands executable by a browsing device so as to display viewable data in accordance with a specified page format; (emphasis mine)

    A CGI script, particularly from the mid-90's, returned back HTML. HTML isn't a series of commands executable by anything - it's a Markup Language, invented at CERN (if memory serves). That patent may be applicable to DHTML, particularly the NS3 world of Javascript and Ecmascript.

    Plus, WTF is Dennis Ritchie doing suing over Perl CGI scripts? I don't think he wants to get into a fight with the FSF (which is what he's looking to do). Have you sent an email their way yet? Maybe Stallman should get involved.


    My criteria for good software:
    1. Does it work?
    2. Can someone else come in, make a change, and be reasonably certain no bugs were introduced?
      HTML isn't a series of commands executable by anything

      Well, it's a muddy issue but the long and short of it is that you're the one that's going to end up dirty if you take that stance. Given what we do, we tend to have very specific ideas of what words like "executable" should mean. Broader definitions exist, though, than the technical ones we are most comfortable with. For instance, you can think of an <h1> tag as a "command" to a "browsing device" to start rendering text as a level one header. The end tag, </h1> can similarly be thought of as a command to stop rendering text as a level one header. And so forth.

      Our predisposition to think of things like "commands" as being part of "programming languages" and to think of "programming languages" as usually being Turing complete is, it turns out, more a matter of jargon than anything. Try debating with an intelligent but non-technical person about whether HTML is a programming language or not. It's not an easy debate to win.

      Dennis Ritchie didn't have anything to do with this patent, by the way.

      -sauoq
      "My two cents aren't worth a dime.";
      
        For instance, you can think of an <h1> tag as a "command" to a "browsing device" to start rendering text as a level one header. The end tag, </h1> can similarly be thought of as a command to stop rendering text as a level one header. And so forth.

        There's only one problem with that - HTML tags are requests, not commands. And, no, I'm not thinking in terms of Turing completeness. I'm thinking in terms of the difference between a command and a markup tag. A command (which may or may not be part of a Turing-complete language) is not a request or an option. It's a requirement. If the recipient of an "executable command" does not perform the action in a well-defined manner (that is not implementation-dependent), then the recipient is broken.

        HTML, on the other hand, is completely optional and implementation-dependent. Yes, we have certain expectations of how a standard browser on a standard computer is going to behave and we would definitely consider IE or FF buggy if it displayed h3 tags as bigger than h1 tags. However, go watch a blind guy on the Net for a few hours and watch how his browser handles tags. Half are ignored and the other half are rendered in speech emphasis, not upon the screen. And, what about mobile devices?

        The gist is that HTML is a format for specifying how to optionally decorate plaintext. It has nothing to do with commands, executables, or anything else of the sort.


        My criteria for good software:
        1. Does it work?
        2. Can someone else come in, make a change, and be reasonably certain no bugs were introduced?
      Heh. That was exactly the first thing I thought of as well. The problem is that the "Related Art" portion has this text:
      A known way of improving the quality of images derived from text-based systems is to add formatting commands or instructions to data strings. These instructions control operations of a receiver, such that the signals are processed in such a receiver, to ensure that the transmitted signals are processed in such a way as to generate a high quality video image that is capable of being displayed at a requesting client's terminal.

      In addition to improving the quality of displayed images, such an approach also facilitates an improvement in system compatibility. Thus, the incoming control signals are executed by a receiver's terminal in a way that is compatible with the receiving system. Thus, the output signals may be considered as executable instructions that cause operations to be performed upon the viewable data in accordance with the local constraints.

      So it looks like they defined "executable instructions" in such a way as to include things that are not actually executable instructions. D'oh.


      -----
      Be bloody, bold, and resolute; laugh to scorn
      The power of man...
      This is some British dude named Andrew Ritchie, not Dennis Ritchie. (And I'd guess it'd be Lucent who decided to act or not on Ritchie's patents.)
      The "patent" actually states: "In a preferred embodiment, the network is the Internet. Preferably, requests are made by browsing clients in the form of URLs and output signals are supplied back to browsing devices in the form of hypertext mark-up language commands."

      So it appears to be claiming patent over anything that generates html on the fly.

      --------------------------------------------------------------

      $perlquestion=~s/Can I/How do I/g;

Re: Looking for old Perl CGI code
by EvanCarroll (Chaplain) on Oct 12, 2005 at 22:49 UTC
    I would ask Stein as well, see what he knows about those old cgi days. He might be able to tell you he was employing a different framework of CGI 5years before the patent, then again he might tell you a patent inspired his design =D.
    Copyright 1995-1998, Lincoln D. Stein. All rights reserved. This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. Address bug reports and comments to: lstein@cshl.org. When sending bug reports, please provide the version of CGI.pm, the version of Perl, the name and version of your Web server, and the name and version of the operating system you are using. If the problem is even remotely browser dependent, please provide information about the affected browers as well.


    Evan Carroll
    www.EvanCarroll.com
      Good idea. I just sent him an email. Thanks!

      -----
      Be bloody, bold, and resolute; laugh to scorn
      The power of man...
Re: Looking for old Perl CGI code
by jdtoronto (Prior) on Oct 13, 2005 at 03:56 UTC
    Ton:

    Sometime in 2003 I understand that Ablaise Limited, the assignee of the Andrew Ritchie patent, instigated legal action against Nettec plc in the UK for infringenebt of this patent. In March of 2005 Nettec plc issued a stament which would appear to indicate that the action was resolved and that Ablaise even paid a substantial amount to Nettec plc in terms of legal costs.

    Maybe it would be as well if you, or the attorneys, contacted Nettec plc to ascertain what happened in the UK. Assuming of course that you are not associated with Nettec!

    jdtoronto

      Thanks; I'm on it.

      -----
      Be bloody, bold, and resolute; laugh to scorn
      The power of man...
Re: Looking for old Perl CGI code
by sauoq (Abbot) on Oct 12, 2005 at 22:24 UTC

    For Perl stuff, you should be looking at stuff that used cgi-lib.pl then. That's what we used prior to perl5 and CGI.pm. Not sure when that became available but I'll look into it.

    Update: Or maybe that won't help. It looks like cgi-lib.pl is copyright 1995.

    -sauoq
    "My two cents aren't worth a dime.";
    
      This might work. The latest version has a 1995 copyright date, but I think it existed in some form in 1994. Look at some of the sample source code (here and here), which contain 1994 copyrights. Time to email Brenner!

      -----
      Be bloody, bold, and resolute; laugh to scorn
      The power of man...
        My email got bounced back. Anyone have his current address?

        -----
        Be bloody, bold, and resolute; laugh to scorn
        The power of man...
Re: Looking for old Perl CGI code
by nedals (Deacon) on Oct 13, 2005 at 00:50 UTC

    This may be a long shot

    Eugene Eric Kim, graduate of Harvard, wrote a book, 'CGI Developer's Guide', that was published in 1996. He also wrote articles for 'Dr Dobb's Journal', which I understand, started circulation around 1992.

    Maybe, just maybe, Kim wrote an article on CGI in that publication prior to 1994. He may also be someone you could contact.

    Good Luck....

      I'll take any shot, short or long. :)

      Thanks!


      -----
      Be bloody, bold, and resolute; laugh to scorn
      The power of man...
Re: Looking for old Perl CGI code
by Tanktalus (Canon) on Oct 13, 2005 at 04:49 UTC

    A brief look at the patent, and I have to wonder what the heck on the web does not infringe on this patent? Which, of course, gives an idea for another tactic - to find as many other technologies as possible that also infringe on this patent, and hand that research to them. Should they refuse to follow up, you may be able to claim that they are not enforcing their patent, thus you may use it at will. If you can show, for example, that Lotus Domino Go does something similar when a Lotus Notes database is behind it, you might find a deep-pocket ally ;-) (I would estimate that IBM has about equal likelihood of: fighting the patent, licensing the patent, and licensing it in such a way to donate it to open-source. Just based on past patent and open-source behaviour.)

    Differently risky is to argue that the patent is invalid because it is not non-obvious to the average practitioner in the field. Kind of needs you to find a number of "experts" to pay to the stand.

    Have you talked to FSF? They may be able to help find prior art or even lawyer funding, especially if you're in the US.

      My reading of the papers I can find (very few!) relating to the Nettec plc case in England is that their legal opinions and patent opinions were that the patent is not valid, or at least the British parent patent is not valid. Hence the rason I suggested that ton contact them. What that means for the US Patent is unclear to me, I am not sure if the British patent falling would affect the US Patent.

      Ablaise Limited seems to be pretty much unknown, aside from an application for a trademark their is very little on the Web about them at all. When the case against Nettec plc was launched in 2003 the court required Ablaise to deposit GBP 60,000 as security. Later it was ordered to despoit a much larger sum, the following is taken from Nettec's interim results for the first half of 2005.

      (a) Patent litigation
      On 1 April 2003 proceedings were served on Nettec plc by Ablaise Limited ("Ablaise") alleging patent infringement. Your Board received advice that there are strong arguments that the Patent in question owned by Ablaise Limited is invalid. Your Board vigorously defended the action, seeking to protect its position on costs by obtaining orders in May and October 2003 that Ablaise pay a total of £376,000 into court as security for Nettec plc's costs. Although the sum in respect of the first costs order was paid into court by Ablaise, it failed to make the second payment and accordingly Ablaise's claim was struck out on 11 December 2003.
      Your Board has received advice that there are strong arguments that the Patent owned by Ablaise Limited is invalid, and that the claim brought against Nettec plc is concluded. However, the Patent remains in existence and could be asserted in the future. Your Board has received legal advice that any further action by Ablaise impacting on Nettec plc is unlikely, and that any further proceedings brought by Ablaise would be unlikely to be successful. Consequently, no provision has been made for any further claim.
      Wherein it seems that Ablaise either did not have the resources or possibly the will to proceed with the prosecution of their claim. I see they are listed as plaintiff in another case, I wonder if this is the one that ton is involved in given the recent dates.
      ABLAISE LTD. vs. E TRADE SECURITIES, LLC.
      Court: candce
      3:2005cv03581
      Filed: 9/6/2005
      Good luck ton!

      jdtoronto

        Hi Ton, Were you successful in finding anything of interest? Ablaise is knocking on everyone's door.

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: perlquestion [id://499704]
Approved by kirbyk
help
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others surveying the Monastery: (2)
As of 2024-04-20 03:56 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found