Slashdot Mirror


Code Copying Survey for Developers

Struan Robertson writes "With all the controversy surrounding SCO's allegations that its Unix code was copied into Linux, we're running a survey with ZD Net to gauge industry practice on code copying. Do you keep a code library? Do you take it from one employer to another? These are the questions we're asking. All answers will be anonymous. The results - with expert legal analysis - will be published free - we're not doing this to sell reports etc. If you're a developer and happy to help, see our questions on SurveyMonkey.com."

25 of 389 comments (clear)

  1. Loop by andy666 · · Score: 5, Funny

    I think the first person to write a loop should complain a lot!

  2. Yup, and I keep it... by tcopeland · · Score: 5, Funny

    ...right here. And here, too.

    And lots of other folks contribute too. Good times!

  3. Do you keep a code library? by Anonymous Coward · · Score: 5, Funny

    Hell no, I like rewriting conversion and formatting routines. That's like a paid vacation!

    1. Re:Do you keep a code library? by RLW · · Score: 5, Funny

      Exactly. Why keep a code library around when you can get paid to rewrite stuff which can be put together nearly in your sleep? It's a good way to start the day while I'm still groggy. Then I can get paid to debug it in the afternoon after I wake up.

  4. Sure, Why Not? by Saeed+al-Sahaf · · Score: 5, Insightful
    Yes, it's standard to keep a code lib, and take it from job to job. Why reinvent the wheel?

    This is one reason that software patents are just silly. At some point, virtually every technique will have been written, then software companies will indeed all become like SCO: A few developers and a fucking platoon of IP lawyers.

    --
    "Who are in control, they are not in control of anything - they don't even control themselves!" - Glen Beck
    1. Re:Sure, Why Not? by mrtrumbe · · Score: 5, Interesting
      Because it's illegal?

      Seriously, though, would you really trust a person who completely relied on copy/pasting legacy code into current projects? Do you know where that person got the code to begin with? Did he write it? Does he even understand the code?

      While just about everyone I know keeps a personal code library containing *some* proprietary code, most don't actively use it. Those who are unscrupulous enough to copy/paste the code into current projects are not people you want around in the long term. I mean, did they even think about the best solution to the problem before doing that copy/paste?

      Most people I know use their library as a reference for future development. This allows them to take the best features/ideas of their historical library and integrate those ideas in new and better ways into their current projects. And I don't see a problem with this behavior. Any person with a decent memory would remember their best ideas and features, anyway, so the illegality of this behavior is questionable.

      Taft

    2. Re:Sure, Why Not? by somethinghollow · · Score: 5, Insightful

      1) Not only that, I think programmers should share. We are, after all, computer scientists. What if every other scientist locked up all of their secrets and just said, "Yeah the Earth moves around the Sun. I won't tell you why or how I know, though."

      2) In the beginning, people shared code to do common things (e.g. sorting algorithems). I wonder if they mean "Do you keep a copy of your sorting algorithems to use in other programs?" or "Do you keep a copy of your accounting software to recompile at your next job?"

      3) I agree w/ the parent. It's just plain stupid to re-write some things when you have a perfectly good solution already written. Besides, if you write it over enough times, you'll remember how to write it... then you are ALWAYS carrying around code from job to job. You can't not take it.

    3. Re:Sure, Why Not? by dubious9 · · Score: 4, Insightful

      Which brings us upon an interesting question. Even if you didn't bring the same exact code, you're the same exact person. If you implement the code in the same way, if you have a good memory it could be almost verbatim. Same class/file name, variable etc.

      Is that illegal? To be legal can I never write a program with similar functionality? Or do I just have to do it in a different way? How different does it need to be to be legal?

      If you can defend reimplementing something very similar, then how different is that then copying the file exactly?

      I guess my point is that at some point a reimplementation by the same person for the same thing looks like you copied it exactly then changed things around.

      --
      Why, o why must the sky fall when I've learned to fly?
  5. You’d be surprised how much of a career… by Anonymous Coward · · Score: 4, Interesting

    ...you can build on view source followed by a cut-and-paste. I beg, borrow, or steal from wherever I can and I expect you to do the same from me. I am open to learning new techniques, code structure, and excellent documentation from the code I read and steal. I have never taken a core money making idea and used it as the central core of my own money making idea, but everything else is fair game as far as I am concerned.

  6. Code library. by FictionPimp · · Score: 5, Interesting
    I maintain a code library. But its written very generic. I usually copy that code and use modify it to fit the project i'm working on. I dont see a problem with that because the code is technically different in each project and used in a different way. For example (this one is a little far fetched) Lets say I wrote a function to format a date. In 1 program I may use that function to only output as mm/dd/yyyy. In another program I may use that same function to only output mm/yy.

    Its technically the same code, but I remove the the parts that are not used.

    Besides, even if I didn't have the database. I will write a function to do something very close to the exact same way 90% of the time. Most of the developers I know have very reconizable styles. I can usually tell who on my team wrote what parts by the code alone.

    Sorry for my spelling errors, I dont have time to spellcheck.

  7. Code libraries aren't that helpful by Future+Man+3000 · · Score: 4, Interesting
    For the most part, when you go into a new job you're maintaining or cleaning somebody else's work. A library of programming and style books is probably worth more than a code library.

    Besides, the parts of a code library that are most likely to be reusable are also most likely to be publically known algorithms (B-Tree, MD5 hash, etc.) and therefore published in some form already. It's probably wrong to take something that you were specifically paid to produce for one company along with you to another, so don't do it.

    --

    I never vote for anyone. I always vote against.
    -- W.C. Fields

  8. Question 6 by Anonymous Coward · · Score: 5, Insightful

    Is unreasonable. You are assuming I would reuse code but not saying if its in house or between companies. In my stats class this question would be deemed unethical and slanted. Thus, the results of the survey would be thrown out.

  9. Kind of a stupid survey. by Queuetue · · Score: 5, Insightful

    It asks

    3. By law, who do you think owns the rights in a piece of software that you develop or in code that you write?

    Me
    My employer
    The client who commissioned and is paying for the development

    But never asks where I developed it, nor what legal documents exist to protect various parties.

    Obviously, if I'm working on code under a work for hire agreement, it belongs to the guy with the cash. If not, It's copyright me. If it's OSS code that I need to improve for a client's benefit, of course it doesn't belong to either of us - it belongs to the original author.

    Did I do it at home? Did I start it before or after getting involved with the company or client? Does the client mind freeing the source? Does it contain proprietary information?

    This survey is worthless so far, except to publish articles.

    1. Re:Kind of a stupid survey. by eddy+the+lip · · Score: 5, Interesting

      I'm pretty sure that this is what you meant, but just to clarify (under US law at least - it's the same in Canada, but I couldn't find a reference quickly) - if you're an independent contractor, the copyright only belongs to the guy with the cash if it's explicitly stated in the contract that this is a work for hire.

      Only certain kinds of work actually qualify as a "work for hire" under the copyright statute. For example, it is a common misconception that software qualifies as a work for hire. It is not, however, one of the enumerated categories of works that qualifies as a work for hire in the copyright statute.
      Source

      When freelancing, or representing my company, I never assign the copyright to the buyer, unless:

      • they understand that all code used will be written from scratch,
      • that this will dramatically increase the development time of the project
      • that $x is the price if it's not a work for hire, and that $x + $bignum is the price if it is.

      Part of what people get when they hire me or my company is a big-ass code library. It's impossible to be competitive these days without that. I'm not about to assign any part of that to someone else, and I'm not going to be giving them copyright on anything I might develop for them without appropriate compensation.

      As for the survey, yeah, most of the questions were maddeningly vague. They didn't include most of the copyright situations I've been faced with, including the one where I had an employee contract stating that they could use anything I wrote for them as they saw fit, and so could I.

      --

      This is the voice of World Control. I bring you Peace.

  10. Choice? by sploxx · · Score: 5, Interesting

    Emmm. Just got this question in the survey:

    6. Would you re-use blocks of code written elsewhere

    a) ( ) Only if you were confident that nobody would find out

    b) ( ) Whether it would be found out or not

    Where is 'c) I won't'?

  11. bad questions by Sharth · · Score: 4, Interesting

    Alot of these questions are very badly written. First off, I'm wandering through it, and I'm wondering if this question is referring to code that I have written, or is it code that I've just found along the way. This "survey" really needed to be beta tested (even in an irc forum or something) before being posted to slashdot. Heck, the mods coulda helped out a little and looked at the survey first...

  12. I get paid hourly by BillFarber · · Score: 5, Funny

    Why would I keep a library of code to help me get the job done faster and for less money?

  13. It's all the same to me by Hockney+Twang · · Score: 4, Insightful

    If I write a program that performs a particular function, and then later want to write a program to do the same thing, I end up producing an almost exact replica of what I coded previously. Maybe it's just me, but my coding style is basically set in stone.

    So, in that key, I'm not physically keeping a code library, but I am reproducing code that may have become the property of another party.

  14. This is not a can of worms you want to open by Featureless · · Score: 5, Interesting

    ...unless you really know what you're in for, and are ready to talk about reforming our laws.

    Our intellectual property laws, when interpreted strictly, are a bit of a farce. Especially when it comes to thinks like patents, work for hire, the nebulous concept of derived works, "clean rooms..." all the way down to the embattled idea of fair use, backups, lending versus copying, onerous and unenforcable NDAs and employment contracts, and the end fact that, as a society, we have never ever, even for a day, played by the basic copyright rules "100%."

    Our whole industry functions by ignoring the rules most of the time. I have never worked anyplace where all the rules (licenses, for instance) were followed. I always follow them myself to the best of my abilities - but it's impossible. I've probably unintentionally violated a license by now, and I've almost certainly infringed thousands of patents. I have never brought code from one client to another without permission or license, not even once, not even when it would have saved untold time and money and was simply the most obvious, easy thing to do... but over the years I received quite a bit of pressure under various circumstances to do it, and I'm certain that quite a few other people do.

    That said, because the SCO issue (or non-issue, to be frank) is raised, let me say that it's a different thought process when you're going between the commercial and the free software world - both because the pressures to cheat don't exist (or hardly to any similar extent) in OSS, and because it is almost certain in OSS you'll be caught out. It's like parking a stolen car on the street in front of your house.

    But commercial project to commercial project, yes, I bet it happens quite often. And also from OSS to commercial - I would be shocked if there were many large commercial projects that don't have stolen OSS code in them...

  15. Good reason... by lukewarmfusion · · Score: 4, Insightful

    ...not to document your own code?

    Sorry, but a hack != programmer. You can toss together a bunch of stuff other people have written, but when it breaks you'll need to be able to fix it. If you never learn how to do that, you'll never be more than a cut-and-paste drone.

    It's great to be able to use resources like View Source to learn new stuff, see new techniques, even find quick examples of how something's done. But if you can't understand how to do it on your own (which may take much longer, granted) then you're not going to last.

  16. I'd suggest no one take this survey. by Queuetue · · Score: 4, Interesting

    It's written by someone who either doesn't understand the issues involved, or is interested in 'interesting news' not a legitimate survey.

    Most questions don't take into account the varying ways that code gets licensed and work gets done. They assume you're either giving the code to your employer or stealing it, when there is a whole universe of licensing paths in between those two nodes.

  17. this survey smells of trolls by meshko · · Score: 4, Insightful

    It does. Stupid questions of the type "have you stopped drinking whiskey in the morning?". I got really aggravated after answering 5 questions.
    I have a "code library" (whatever they mean by that) which I wrote in my spare time. It is released under GPL. I'm the copyright holder. I can assign any other license to that code. Therefore I can embed parts of this library in any proprietary code I write for my employer.
    I also reuse other people's code released under BSD, MPL etc. This is all legal, but the survey doesn't know about this stuff.

    --
    I passed the Turing test.
  18. It could have happened by ChiralSoftware · · Score: 5, Insightful
    If software patents had existed thirty or forty years ago, there would be patents on the for loop, linked lists, the subroutine, use of buffers, storing text in the form of a sequence of bytes (an invention called a "string"), use of APIs, re-use of code in a form called a "library", the process of merging multiple files of executable code together known as "linking", and many other things, and the process of taking a file containing "source code" and turning it into executable (a novel invention known as "compiling"). All of these things would be patented. Non-commercial software could not exist because there's just no way to write a program without strings, lists and loops, unless your program just consists of a long list of NOOP instructions. But of course NOOP could have been patented too. In fact all these inventions are much more patentable than the stuff that is getting patented now, because when these software constructs were developed, they really were completely novel and non-obvious, unlike things like one-click ordering.

    --------
    Create a WAP server

  19. MS Astroturfers! by Queuetue · · Score: 4, Informative

    I'd think pretty long and hard before answering these questions. This group appears to be a MS astroturf (false grassroots) organization, going as far as quoting that shill Didio from the Yankee Group.

    The survey is full of misleading questions and will *force* you to admit you steal. Watch out.

  20. Oh yeah by ENOENT · · Score: 4, Insightful

    I really want to haul the same old bloated and broken code that I wrote 5 years ago from job to job, like an albatross around my neck. That would really make me happy.

    The biggest tempatation in looking for new jobs is being able to forget the current code base forever, and never have to add YET ANOTHER feature onto already-baroque code that nobody wants to take the time to rewrite.

    --
    That's "Mr. Soulless Automaton" to you, Bub.