[PLUG] Open source and professional employees

Curtis Poe cp at onsitetech.com
Wed Mar 20 23:36:42 UTC 2002


> > Further, he was developing some rather revolutionary ideas for regular
> > expression engines which may now never see the light as he will likely
be
> > sued if he continues to work on them.
>
> He can continue to work on them, he just can't release them while
> employed at that company.  Since the company has no method (or legal
> right) to track what he does at home on his own machines all he needs
> to do is wait.
>
> Colin

Colin,

I wish you were right.  Unfortunately, it's rather well-documented that he
came up with this idea while he was with his current employer (check the
timestamps):

http://www.xray.mpe.mpg.de/mailing-lists/perl5-porters/2000-05/msg00853.html
http://perlmonks.org/index.pl?lastnode_id=153046&node_id=59549

The beauty of his idea is that it allows NFA regular expressions to have
almost the same performance as DFA engines by turning the regex into a
series of ordered sets and eliminating backtracking.  This would
tremendously speed up regular expressions.  (I have lovely dreams of using
this with the JIT compiler in Perl6).  It's possible to write a regular
expression that can take years to run on simple data, but you and I could
solve in just a few seconds.  His idea solves that for the majority of
cases.

Unfortunately, since he conceived of this idea and documented it, it is no
longer public domain, but the proprietary work of his company, even though
it has no immediate benefit to his company.

Thus, with mailing lists like this being archived, I can't help but wonder
how many of us may be exposed.  I suspect that many open-source projects
today would be gutted if employers decided to crack down on them (and I know
of a couple of people who keep online identities private for this very
reason).

Cheers,
Curtis "Ovid" Poe
--
"Ovid" on http://www.perlmonks.org/
Someone asked me how to count to 10 in Perl:
push at A,$_ for reverse q.e...q.n.;for(@A){$_=unpack(q|c|,$_);@a=split//;
shift at a;shift at a if $a[$[]eq$[;$_=join q||, at a};print $_,$/for reverse @A





More information about the PLUG mailing list