Author Topic: Development vs Plagiarism.  (Read 2842 times)

0 Members and 1 Guest are viewing this topic.

Offline dunkTopic starter

  • Expert Roboticist
  • Supreme Robot
  • *****
  • Posts: 1,086
  • Helpful? 21
    • dunk's robot
Development vs Plagiarism.
« on: June 10, 2010, 08:51:28 AM »
according to http://dictionary.com:
Quote
de·vel·op·ment
   /dɪˈvɛləpmənt/ Show Spelled[dih-vel-uhp-muhnt] Show IPA
–noun
1.
the act or process of developing; growth; progress: child development; economic development.
2.
a significant consequence or event: recent developments in the field of science.
3.
a developed state or form: Drama reached its highest development in the plays of Shakespeare.
4.
Music . the part of a movement or composition in which a theme or themes are developed.
5.
a large group of private houses or of apartment houses, often of similar design, constructed as a unified community, esp. by a real-estate developer or government organization.
6.
Chess . the act or process of developing chess pieces.
7.
Mining . the work of digging openings, as tunnels, raises, and winzes, to give access to new workings, and of erecting necessary structures.
and
Quote
pla·gia·rism
   /ˈpleɪdʒəˌrɪzəm, -dʒiəˌrɪz-/ Show Spelled[pley-juh-riz-uhm, -jee-uh-riz-] Show IPA
–noun
1.
the unauthorized use or close imitation of the language and thoughts of another author and the representation of them as one's own original work.
2.
something used and represented in this manner.

so why am i writing about semantics here?
well most days when we build robots we are building on the work of others.
is this Development or Plagiarism?

in the quotes above i am clearly just copying and pasting someone else's work and using it for my own purposes.
that's fine. i've not tried to hide the fact.
all credit for the text is inferred by the link to http://dictionary.com.

when you are quoting someone directly it is a pretty clear cut case.



so what about when you include someone else's code/circuit element/documentation in your project?
well it's a big gray area....
here are my thoughts.


example 1.
you see a cool project on the internet, think "that rocks" and set off to make your own from scratch, without looking at the technical details and solve all the technical problems on your own.

Q. do you have to credit the original project?
A. unless the original is truly groundbreaking, probably not.
although much of the project may be the same you did it on your own right?

Q. should you credit the original project?
A. absolutely. it's only polite.
someone else inspired you so repay the favor by saying sending people their way.

Q. what are the advantages of crediting the original project?
A. more than you might think.
- first of all, it does not make you look any less clever than pretending you came up with something all on your own. building on someone else's work is the smart choice.
- most people who document things on line are doing it because they are nice people. it is really demoralising when you discover someone has ripped of your work without giving you any credit. a simple ThankYou encourages people to post more documentation which might be useful to you in the future.
- it gives anyone reading your documentation more perspective. the more knowledgeable your users the less support you have to provide.
- it makes the documentation more interesting if more cool stuff is listed.
- this is the big one: the more links to high quality documentation of similar projects you put on your web pages the better your search engine results will be.


example 2.
you see a cool project on the internet, think "thats pretty slick" and set off to make your own after looking at the technical details of the online project.
most of the work is entirely your own but you have been unavoidably influenced by the original.

Q. do you have to credit the original project?
A. that depends on the lenience attached to the original project.
for most "Open Source" type licenses, yes you do.
although it's legally very hard to prove and there is unlikely to be any repercussions if you don't it is definitely the polite option.

Q. should you credit the original project?
A. absolutely. you have copied someone else's idea even if the implementation is your own.
briefly make it clear to what extent your work is similar to the original.

Q. what are the advantages of crediting the original project?
A. very much the same as example 1.


example 3.
you are making your own entirely original project but want to copy and paste in some bit of code you can't be bothered writing for your self.
also you link to some external libraries.

Q. do you have to credit the original code you have used?
A. first check any attached licenses and make sure you are allowed to re-distribute the "borrowed" code.
- generally with code snippets posted on line without leniences the spirit they are intended to be used is just to copy them in and forget.
- copying in large chunks of someone else's project or redistributing files from libraries is another matter. as a general rule of thumb credit should be added in the form of inline comments for "copy and pasted" code.
- "borrowed" library files should be left with any original licensing and ownership information in place. they should also be credited in any documentation you provide.

Q. should you credit the original code?
A. absolutely. i would make the exception and say "no" for short snippets copied from web forums but everything else should be attributed to the original developer.

Q. how does this affect any datasheets you read, compilers, IDEs, hardware programmer, etc?
A. i would say: include them all. generally the licensing on components like these do not require it but if you intend other users to be able to build your project then all information is useful.
for example, everyone who uses AVR-GCC to compile their microcontroller code should say ThankYou to those guys somewhere in their docs. the GCC developers are the hardworking un-sung heroes that make much of what we do possible. for free.

Q. what are the advantages of crediting the original project?
A. very much the same as example 1.



so yea, dunk rant over.
publishing your latest cool project is great for the on line community but people actually think more of you if you provide the full story. (ie. links to other pre-existing similar works.)

i submit this as a simple example of what i'm talking about: http://forums.trossenrobotics.com/datacenter/drivers-libraries-firmware-7/axon-ps2-controller-interface-library-144/
it made me feel appreciated for the effort i put in and it improves on my original work.
by including one link to my original project JadeKnight no longer needs to write loads about the theory behind it.
everybody wins.
(except the guys sitting in the baesment writing AVR Libc. (http://www.nongnu.org/avr-libc/) ThankYou GCC coder guys!!!)


dunk.

Offline Admin

  • Administrator
  • Supreme Robot
  • *****
  • Posts: 11,704
  • Helpful? 173
    • Society of Robots
Re: Development vs Plagiarism.
« Reply #1 on: June 10, 2010, 09:19:43 PM »
Here's why its better for you not to plagiarize:

A) Some guy went through tons and tons of hard work to bring you something that made your own project possible/easier - thank him for it! Its only a line or link back of effort.

B) You'd be pissed off if someone claimed all your hard work was theirs

C) If you say something wrong, having a link back makes it easier to blame it on the other guy ::)

D) As Dunk said, you can pass off some of the noob tech support to someone else

E) If you are caught plagiarizing, people will stop respecting *all* of your work - assuming you just steal everything

Offline little-c

  • Robot Overlord
  • ****
  • Posts: 186
  • Helpful? 1
Re: Development vs Plagiarism.
« Reply #2 on: June 11, 2010, 03:10:46 AM »
F) any companies finding you plagerising, are extreamly unlikely to employ you. or if your employed, likely to fire you. it will almost certainly be in the employment contract.

G) copyright law, do it to the wrong guy, and you will end up in court. and fines/jail, criminal record ect.

Offline KurtEck

  • Robot Overlord
  • ****
  • Posts: 217
  • Helpful? 12
Re: Development vs Plagiarism.
« Reply #3 on: June 11, 2010, 07:51:38 AM »
I totally 1000% agree with any new concepts or refinements of concepts that you should both acknowledge the person, for all of the above reasons!

The real question is how much and how far and what point does it more or less just become free game?

Example using the PS2 controller.  Several months ago, I ported some of my previous PS2 support to the Axon2 and webbotlib.  I did use Dunk's tutorial to help me get it running on my Axon2 based Lynxmotion Brat.  I also remember thanking him back then (Thanks again :) ).  The question is should I put this in the code as well as everyone else who help influence it?  This would include:

a) The Curious Inventor: http://store.curiousinventor.com/guides/PS2 - probably the best place that I found information on the PS2.

b) Lynxmotion (Jim and James Frye): Who have had several tutorials on using the PS2 controller on Basic Stamp, Basic Atoms and Basic Atom Pros:  http://www.lynxmotion.com/images/html/build034.htm

c) From Lynxmotion I also read the document by Nathan Scherdin of Basic Micro: http://www.lynxmotion.com/images/files/ps2cmd01.txt

d) Likewise: http://sophiateam.undrgnd.free.fr/psx/index.html and http://www.csie.ntu.edu.tw/~b89094/dualshock/ps_eng.html
..

e) The first time I used the PS2 on an AVR based system, the code was based both on the lynmotion code as well as code by: Windsor Schmidt  ([email protected]) dated 2004

f) For a little while I also was playing with the propeller chip and looked at the PS2 code for it, developed by: Micah Dowty <[email protected]>

In addition to all of the above, I also spent lots of time, trying to figure out why some wireless controllers work and others don't.  This included lot of time with my logic analyzer by Saleae.com, looking at all of the signals.  Changed the PS2 code to return structured data instead of just an array of bytes...  Made suggestions for the new Arduino library...

So again Thanks everyone!
Kurt

Offline Soeren

  • Supreme Robot
  • *****
  • Posts: 4,672
  • Helpful? 227
  • Mind Reading: 0.0
Re: Development vs Plagiarism.
« Reply #4 on: June 11, 2010, 06:51:56 PM »
Hi,

according to http://dictionary.com:
Quote
de·vel·op·ment
   /dɪˈvɛləpmənt/ Show Spelled[dih-vel-uhp-muhnt] Show IPA
–noun
1.
the act or process of developing; growth; progress: [...]
and
Quote
pla·gia·rism
   /ˈpleɪdʒəˌrɪzəm, -dʒiəˌrɪz-/ Show Spelled[pley-juh-riz-uhm, -jee-uh-riz-] Show IPA
–noun
1.
the unauthorized use or close imitation of the language and thoughts of another author and the representation of them as one's own original work.
2.
something used and represented in this manner.
I fail to see how anyone can mix up these terms. Selling a Rolex copy is plagiarism, while development clearly covers...well, development - either accept this, or you'll have to claim that every timepiece in the world is plagiates of the first timepiece ever made.


so why am i writing about semantics here?
Too much spare time or too little blood in the alcohol would be my guess ;D


well most days when we build robots we are building on the work of others.
is this Development or Plagiarism?
That depends... A whole lot of people is just copying raw or building from kits (and still claiming to be designing robots, even though that has nothing to do with design - it's more like assembling a jigsaw puzzle). Apart from the plagiarism (using terms like "I designed it") beginners have to start somewhere and I guess learning is an entirely different ball game from development or plagiarism.
If only the noobs would stop documenting their entire process with endless amounts of blurry 10Mpixel shots of the misery from every angle possible, but with no useable info, perhaps the net.noise could be kept down, making it faster to get useable search results.


in the quotes above i am clearly just copying and pasting someone else's work and using it for my own purposes.
that's fine. i've not tried to hide the fact.
all credit for the text is inferred by the link to http://dictionary.com.
In the spirit of that, what about the inventors of any part in your PC, Bill Gates (even if you're using a .nix clone) as inarguably, PC's wouldn't have been so widespread and a common household item if it weren't for him, the guys working in the power plants, the construction workers that build the plants, the blokes that designed the plants, the miners getting the coal (or whatever fuel a given plant is using), the Sun (not the paper) for making it all possible, your parents and the joy of *sensored* for making you happen, etc. etc.

Well, some things are common to all, or their origin is lost to time, so it would be insane to include them. If your 'bot is using wheels, same thing applies.

If you're using a library (that you didn't make, buy or comissioned someone to make) you should give credit of course. If you used someones design for a platform and just changed the power source and added an arm, same thing applies.
But if you saw a stair climbing 'bot and thought, hey, I can do that too and build something entirely different from scratch, but with the same purpose (stair climbing), I don't see any credit should be due.
The difference is... Development vs. plagiarism.


As a side note, I am always amused when people advocate (monetary) free software and then goes on with a raised index finger "now remember to say pretty thanks".
That's not free, that's just changing monetary payment to gratitude payment, something like the types that are very loud about all the causes they donate to "anonymously" - free is placing stuff in the public domain. (I'm not directing this towards you dunk).

Besides all this... What's the fun in just copying other peoples stuff? It's the process of creation, making something from "nothing" that gives the greatest buzz.
Regards,
Søren

A rather fast and fairly heavy robot with quite large wheels needs what? A lot of power?
Please remember...
Engineering is based on numbers - not adjectives

 

SMF spam blocked by CleanTalk