[alt.religion.computers] Reverse engineering, piracy, etc.

rang@cs.wisc.edu (Anton Rang) (12/18/89)

In article <4ZW1ijS00WBKE1qh5C@andrew.cmu.edu> jb3o+@andrew.cmu.edu (Jon Allen Boone) writes:
>In fact, some claim that this
>has been said "Write your own <smirk>"  Well, that~s what rms did - he
>didn~t like the actions that some group was taking, he had access to
>their stuff, he reversed engineered the software and viola - he had a
>version to use (or give away as i believe he did) and he didn~t have to
>put up with the other people bs.

  No, he did *not* reverse engineer the software.  Reverse engineering
means that you take somebody's software, figure out exactly how it
works, and write something which is implemented the same way (more or
less).  This is often illegal.  He simply wrote more-or-less
compatible replacements.

>If no one is interested in BIOS, then why does Phoenix claim that
>pirates are running them out of business?

  I don't know the details of this claim, but there are at least two
distinct reasons for piracy:  (1) to use software without paying for
it, or (2) to make money by selling other people's software.  I'm
willing to bet that #2 is the only reason people would bother to
pirate a BIOS implementation: so they could sell it more cheaply than
Phoenix (since the pirates don't have to pay back their development
costs).

>Now, the fact that *most* pirates are high-school kids

  Bad assumption.  Most pirates of game software may be high-school
kids.  Most pirates overall, though, are not: they're just average
computer users.  Corporations are bad at this.  The average school
pirates more software than all of the kids going to it.

>What you *can* say (and what i gather you are saying) is that given that
>MicroSoft hadn~t written Excel or Word, you sure-as-blue-blazes wouldn~t
>have either.

  If MicroSoft hadn't written Word, I suspect it would not have been
written for a LONG time.  I haven't got a steady enough source of
income to be able to spend 20 years writing, debugging, testing, and
writing manuals for a program like that.  Even if I got together with
10 other people and we wrote it in three years, there's no way I would
be willing to spend 3 years without any income for it.  I can't afford
to do that (not being independently wealthy).

  On the other hand, I can manage to spend 20-30 hours a week writing
programs if I expect to make some money from it.  I paid for three
years of college with money from commercial software I've written.  I
wouldn't have been able to spend much time on it if I were doing it
for free; I'd be working the 20-30 hours a week someplace where I
could make money.

  Sure, I write free software from time to time.  But I don't usually
spend the time to write user manuals, add in features which aren't
likely to be used by me or my friends, etc.

>Of course, you could alway says (with a tone of superiority) "well, if
>you want it, then reverse engineer it!"

  If you want it, and you're not willing to pay me for my time and
trouble, write it yourself--from scratch--since you obviously believe
that it wasn't any work for me to write it in the first place.

	Anton
   
+---------------------------+------------------+-------------+
| Anton Rang (grad student) | rang@cs.wisc.edu | UW--Madison |
+---------------------------+------------------+-------------+

jb3o+@andrew.cmu.edu (Jon Allen Boone) (12/20/89)

rang@cs.wisc.edu (Anton Rang) writes:
> In article <4ZW1ijS00WBKE1qh5C@andrew.cmu.edu> jb3o+@andrew.cmu.edu (Jon Allen Boone) writes:
> >In fact, some claim that this
> >has been said "Write your own <smirk>"  Well, that~s what rms did - he
> >didn~t like the actions that some group was taking, he had access to
> >their stuff, he reversed engineered the software and viola - he had a
> >version to use (or give away as i believe he did) and he didn~t have to
> >put up with the other people bs.
> 
>   No, he did *not* reverse engineer the software.  Reverse engineering
> means that you take somebody's software, figure out exactly how it
> works, and write something which is implemented the same way (more or
> less).  This is often illegal.  He simply wrote more-or-less
> compatible replacements.

While you claim that he did not reverse engineer the software (which
is contrary to what i have heard and read - why not ask rms himself? i
think i will), other than a legal technicality, i can't see what the
difference is.

> >If no one is interested in BIOS, then why does Phoenix claim that
> >pirates are running them out of business?
> 
>   I don't know the details of this claim, but there are at least two
> distinct reasons for piracy:  (1) to use software without paying for
> it, or (2) to make money by selling other people's software.  I'm
> willing to bet that #2 is the only reason people would bother to
> pirate a BIOS implementation: so they could sell it more cheaply than
> Phoenix (since the pirates don't have to pay back their development
> costs).

Actually, that's not quite true.  Some people pirate BIOS so that they
can get them for their PCs without having to pay for them.  Sometimes,
they even give them away to others so that they too do not have to pay
for them.

> >Now, the fact that *most* pirates are high-school kids
> 
>   Bad assumption.  Most pirates of game software may be high-school
> kids.  Most pirates overall, though, are not: they're just average
> computer users.  Corporations are bad at this.  The average school
> pirates more software than all of the kids going to it.

That well may be - if so, then you should take it up with the
management of the corporations - after all, they are responsible for
hiring the people - perhaps universities should stress *ethics* in
business more.  However, if it is true, then i find it hard to believe
that software companies too would be immune - thus i can find no
reason to sympathise with them when their software gets pirated in turn.

> >What you *can* say (and what i gather you are saying) is that given that
> >MicroSoft hadn~t written Excel or Word, you sure-as-blue-blazes wouldn~t
> >have either.
> 
>   If MicroSoft hadn't written Word, I suspect it would not have been
> written for a LONG time.  I haven't got a steady enough source of
> income to be able to spend 20 years writing, debugging, testing, and
> writing manuals for a program like that.  Even if I got together with
> 10 other people and we wrote it in three years, there's no way I would
> be willing to spend 3 years without any income for it.  I can't afford
> to do that (not being independently wealthy).

Why is it that you think it would have taken 20 years?  Perhaps you
work slowly, but i wouldn't think it would take you more than 6 months
worth of man-hours (which could stretch into 20 years! :-) ).
However, working full time on the project shouldn't take you 20 years!
Even if you got 3 people to work on it, it would take a long time - in
fact, it could well take longer - other programmers will have
different styles and methods that they wish to use - homogenization of
code is tough after having 3 or more people working on it.

>   On the other hand, I can manage to spend 20-30 hours a week writing
> programs if I expect to make some money from it.  I paid for three
> years of college with money from commercial software I've written.  I
> wouldn't have been able to spend much time on it if I were doing it
> for free; I'd be working the 20-30 hours a week someplace where I
> could make money.

I work 20 - 30 hours a week, and go to school full-time - i don't have
as much time to program as i would like, granted, but then again, i
*waste* too much time doing things like playing tetris - my fault!

>   Sure, I write free software from time to time.  But I don't usually
> spend the time to write user manuals, add in features which aren't
> likely to be used by me or my friends, etc.

Why not?  Do you normally write sloppy letters to your friends or
relatives?  Do you even bother to write to your friends or relatives?
Someone on the irclist was saying that irc needs more professionalism,
and while it may or may not, i think that most PD software does.  Just
because you are not paid doesn't mean you *shouldn't* do the best job
you are capable of doing.  There once was such a thing as pride in
workmanship (which can, and should, extend to software).  

> >Of course, you could alway says (with a tone of superiority) "well, if
> >you want it, then reverse engineer it!"
> 
>   If you want it, and you're not willing to pay me for my time and
> trouble, write it yourself--from scratch--since you obviously believe
> that it wasn't any work for me to write it in the first place.

You don't seem to realise that people do just that - however, in my
experience, they usually only implement the tools that they feel they
will need and will not bother trying to implement your entire program
if they do not need to.  Also, they often will take their work with
them instead of releasing it in the PD for much the same reasons you
claim you don't write as much free software as you seem to think we
want you to.

>         Anton
>    
> +---------------------------+------------------+-------------+
> | Anton Rang (grad student) | rang@cs.wisc.edu | UW--Madison |
> +---------------------------+------------------+-------------+




iain the flippant | You'll PAY To Know What You REALLY Think |
jb3o@andrew.cmu.edu(INTERNET) | Your MIND Left Intentionally Blank |
R746JB3O@cmccvb(BITNET) | SCIENCE DOES NOT REMOVE THE TERROR OF THE GODS|
disclaimer: anything I say may be wrong - I don't represent anyone but me

rang@cs.wisc.edu (Anton Rang) (12/21/89)

In article <4ZXac6_00WY7M=p5Y7@andrew.cmu.edu> jb3o+@andrew.cmu.edu (Jon Allen Boone) writes:
>While you claim that he did not reverse engineer the software (which
>is contrary to what i have heard and read - why not ask rms himself? i
>think i will), other than a legal technicality, i can't see what the
>difference is.

  The basic difference is that in one case, the *functionality* of the
software is being duplicated.  In the other (what I've usually heard
referred to as "reverse engineering"), the *implementation* is being
duplicated.  If you know a lawyer in copyright/patent law, you might
check with them (I probably will over break).

>Actually, that's not quite true.  Some people pirate BIOS so that they
>can get them for their PCs without having to pay for them.

  Note that pirating a BIOS requires copying ROMs.  This requires
equipment that the average user doesn't have.

>That well may be - if so, then you should take it up with the
>management of the corporations

  Yes, and various companies have done so (Lotus in particular has
been starting multi-million dollar suits for copyright infringement).

>However, if it is true, then i find it hard to believe
>that software companies too would be immune

  It's entirely possible that some software companies do pirate
others' software.  There are others which don't.  There are
non-software companies which don't, too.

>thus i can find no
>reason to sympathise with them when their software gets pirated in turn.

  Two wrongs don't make a right.

>Why is it that you think it [MSWord] would have taken 20 years?

  If I could work fulltime on it, I could probably do it within 3-5
years.  Maybe.  A word processor is a complicated piece of machinery,
when it incorporates page layout, table management, etc.  I haven't
written a WYSIWYG word processor yet, either, so would probably make a
false start or two.
  At a rough guess, designing the user interface would take 6 months,
writing the manual 6 months, polishing loose ends 3-6 months (i.e.
user testing), and thorough debugging 6 months.  This leaves perhaps a
year to write the program, on a 3-year schedule.
  Maybe 20 years was a bit of an exaggeration, but if I weren't
getting paid for it, I wouldn't be spending 40-60 hours a week on it,
either.

>Even if you got 3 people to work on it, it would take a long time - in
>fact, it could well take longer

  It's unlikely it would take longer (in real time) on a project which
is reasonably large (like this).  3 people isn't so many that
management becomes a problem.

>>   Sure, I write free software from time to time.  But I don't usually
>> spend the time to write user manuals, add in features which aren't
>> likely to be used by me or my friends, etc.
>
>Why not?

  There's a very simple reason: I write these programs to save me time
(this is one major reason I use computers).  If I try to think of
everything anyone might want in them, and implement that, they're not
saving me time any more.  If I need some graphics for a paper which is
due in a week, spending more than a week writing a graphics program is
counterproductive.

>Do you normally write sloppy letters to your friends or relatives?

  No, and I don't write sloppy code either.  On the other hand, when
writing to a friend, I don't mention everything which has happened in
my life, either--just the things which probably interest them
(otherwise my letters would be far too long and never get done!).

>Just because you are not paid doesn't mean you *shouldn't* do the
>best job you are capable of doing.

  I agree, and I do.  When I write a utility, it's programmed as well
as I can do it.  That doesn't necessarily mean that it has a polished
user interface, or that it has lots of extra features.  It just means
that what it does, it does well.

		Anton
   
+---------------------------+------------------+-------------+
| Anton Rang (grad student) | rang@cs.wisc.edu | UW--Madison |
+---------------------------+------------------+-------------+

jb3o+@andrew.cmu.edu (Jon Allen Boone) (12/22/89)

rang@cs.wisc.edu (Anton Rang) writes:
>   The basic difference is that in one case, the *functionality* of the
> software is being duplicated.  In the other (what I've usually heard
> referred to as "reverse engineering"), the *implementation* is being
> duplicated.  If you know a lawyer in copyright/patent law, you might
> check with them (I probably will over break).

Well, once put that way, i would say that i haven't read or heard that
rms "reverse engineered" the symbolics code - for he implemented it
his own way - he simply made it do that same thing that theirs did.

>   Note that pirating a BIOS requires copying ROMs.  This requires
> equipment that the average user doesn't have.

Well, last time i checked (about 2 or 3 years ago), you could get an
eprom burner and software (deluxe version) for $150 from ads in
Computer Shopper.  Plugged right into your Apple // and the software
would copy the rom into memory (or onto disk) and you could then burn
as many eproms as you wanted from it.  I was even there once when a
copy of ibm bios was made for a man who didn't want phoenix bios - the
pirateeer kept a copy for himself (burned, of course) and a copy on
disk for future use.

>   Yes, and various companies have done so (Lotus in particular has
> been starting multi-million dollar suits for copyright infringement).

good for them.

>   It's entirely possible that some software companies do pirate
> others' software.  There are others which don't.  There are
> non-software companies which don't, too.

this is true of most human activities.

>   Two wrongs don't make a right.

I don't think that this is a widely held attitude.  Very *few* people
feel that way.  In fact, take a look at the polls of people in terms
of whether or not they support the panama invasion - that was
definitely *wrong* but since, in their opinion, Noreiga was asking for
it, it was ok.   I find it hard to sympathize with those companies
that consistently break the law (or even stretch the law) and them
complain about being ripped off.

>   If I could work fulltime on it, I could probably do it within 3-5
> years.  Maybe.  A word processor is a complicated piece of machinery,
> when it incorporates page layout, table management, etc.  I haven't
> written a WYSIWYG word processor yet, either, so would probably make a
> false start or two.
>   At a rough guess, designing the user interface would take 6 months,
> writing the manual 6 months, polishing loose ends 3-6 months (i.e.
> user testing), and thorough debugging 6 months.  This leaves perhaps a
> year to write the program, on a 3-year schedule.
>   Maybe 20 years was a bit of an exaggeration, but if I weren't
> getting paid for it, I wouldn't be spending 40-60 hours a week on it,
> either.

Well, that is your perogative.  Taking even 3 or 4 years would make it
seem like you would have to be *quite* the visionary in order to see a
successful piece of software (for in 2 or 3 years, the hardware itself
will be outdated).  

>   It's unlikely it would take longer (in real time) on a project which
> is reasonably large (like this).  3 people isn't so many that
> management becomes a problem.

You probably have more experience with this than i do, so i defer to
your (assumed) greater expertise.

>   There's a very simple reason: I write these programs to save me time
> (this is one major reason I use computers).  If I try to think of
> everything anyone might want in them, and implement that, they're not
> saving me time any more.  If I need some graphics for a paper which is
> due in a week, spending more than a week writing a graphics program is
> counterproductive.

Well, then why would you submit these to the public domain?  Other
than in the hopes that others would like them and find them useful
(something you claim that they will not be, i believe).  I am talking
about a program that serves a particular purpose, granted, but written
with the full intention of submitting a truly useful program to the
public domain - not simply, hey here's something i used once in a blue
moon, whadda think?  This is the kind of software that peter says he
finds rampant in the public domain.  apparently, he doesn't find it
too useful, either.

>   No, and I don't write sloppy code either.  On the other hand, when
> writing to a friend, I don't mention everything which has happened in
> my life, either--just the things which probably interest them
> (otherwise my letters would be far too long and never get done!).

different strokes for different folks.

>   I agree, and I do.  When I write a utility, it's programmed as well
> as I can do it.  That doesn't necessarily mean that it has a polished
> user interface, or that it has lots of extra features.  It just means
> that what it does, it does well.

I would count the user interface and extra features (or documented
bugs :-) ) as part of the "well-done" or truly useful.  A truly useful
word processor allows more than simply inserting and deleting text,
even though this may be all *you* need.

I finally saw a truly well-done interface on a program copier the
other day.  It was for the Apple //GS and was written by some
hackers/pirates in France.  It looked so good, i thought it was a game
at first.  It is true that most utilities i have seen are more of the
quick and dirty types without great user interfaces....which is too
bad.


>                 Anton
>    
> +---------------------------+------------------+-------------+
> | Anton Rang (grad student) | rang@cs.wisc.edu | UW--Madison |
> +---------------------------+------------------+-------------+



iain the flippant | You'll PAY To Know What You REALLY Think |
jb3o@andrew.cmu.edu(INTERNET) | Your MIND Left Intentionally Blank |
R746JB3O@cmccvb(BITNET) | SCIENCE DOES NOT REMOVE THE TERROR OF THE GODS|
disclaimer: anything I say may be wrong - I don't represent anyone but me

rang@cs.wisc.edu (Anton Rang) (12/22/89)

In article <UZYPJke00W0TRLNsJO@andrew.cmu.edu> jb3o+@andrew.cmu.edu (Jon Allen Boone) writes:
[ much deleted, but well worth reading :-) ]
>rang@cs.wisc.edu (Anton Rang) writes:
>>   Note that pirating a BIOS requires copying ROMs.  This requires
>> equipment that the average user doesn't have.
>
>Well, last time i checked (about 2 or 3 years ago), you could get an
>eprom burner and software (deluxe version) for $150 from ads in
>Computer Shopper.

  You probably still can.  The average user still doesn't have one,
though.  And spending $150 for it is probably more expensive than
buying a copy of the BIOS in the first place, anyway, so this only
makes sense if you want to mass-duplicate it.

>>   Two wrongs don't make a right.
>
>I don't think that this is a widely held attitude.  Very *few* people
>feel that way.

  I agree, but being in the minority doesn't mean my attitude is wrong. :-)

>Well, that is your perogative.  Taking even 3 or 4 years would make it
>seem like you would have to be *quite* the visionary in order to see a
>successful piece of software (for in 2 or 3 years, the hardware itself
>will be outdated).  

  A good piece of software generally isn't too dependent on the hardware
(this is a vast overgeneralization, of course--it is patently false
for, say, process control or real-time systems, and there are lots of
other examples).  I've got programs I wrote on my Apple ][+ (quite
out-of-date) which are still very useful (now that I've ported them
over to my Mac and a VAX).

>> If I need some graphics for a paper which is due in a week,
>> spending more than a week writing a graphics program is
>> counterproductive [therefore I leave out some features].
>
>Well, then why would you submit these to the public domain?

  So that other people don't need to duplicate my effort.  If someone
with enough computer knowledge not to need a nice user interface
happens to need a quick-and-dirty graphics program, this might fit
his/her needs.  If they want to write a neat user interface and add
some features, more power to them.

>I would count the user interface and extra features (or documented
>bugs :-) ) as part of the "well-done" or truly useful.

  It depends on the application.  I could write a library for doing
symbolic integration of functions, without having a pretty user
interface, and the code might still be very useful to a certain class
of users.  If someone were to add a nice user interface, it would be
usable by a wider range of users; if someone were to expand it to
handle more functions, this would also make it more useful.
  Functionality doesn't necessarily need to be built in to the first
version of a program--the low-level routines, at least, are often
useful over and over.

>It is true that most utilities i have seen are more of the quick and
>dirty types without great user interfaces....which is too bad.

  Well, most utilities I've seen are useful primarily only to the
people who are used to horrid interfaces (i.e. programmers :-).  There
are a few exceptions; Disinfectant (a Mac virus-removal program) comes
to mind.  I just haven't seen that many "utilities" which are useful
to "Joe User"....

		Anton
   
+---------------------------+------------------+-------------+
| Anton Rang (grad student) | rang@cs.wisc.edu | UW--Madison |
+---------------------------+------------------+-------------+

jb3o+@andrew.cmu.edu (Jon Allen Boone) (12/22/89)

I agree with all your statements.  However, unless someone(s) is(are)
interested in changing this attitude, then peter will ultimately be
correct.  PD software will become a geek thing only.


iain the flippant | You'll PAY To Know What You REALLY Think |
jb3o@andrew.cmu.edu(INTERNET) | Your MIND Left Intentionally Blank |
R746JB3O@cmccvb(BITNET) | SCIENCE DOES NOT REMOVE THE TERROR OF THE GODS|
disclaimer: anything I say may be wrong - I don't represent anyone but me