|
A good software engineer will also
- 're-use' prior art/code or the ideas/techniques expressed by that code
- attribute/give credit to the original writer
- while not exposing you to legal sh*t for any breaches of the prior 2 points
- making the code maintainable is a given (or is it these days ?)
|
|
|
|
|
Garth J Lancaster wrote: while not exposing you to legal sh*t for any breaches of the prior 2 points
Here is a scenario:
- A software engineer takes code from the Internet.
- He/she then modifies all variable, method and class names, and then deploys this modified code into production software. (Does not modify anything else in the code). Without attribution.
- Is this an IP breach? Morally/ethically yes, but legally?
|
|
|
|
|
IP rights only extend to the patent, copyright, trademark, and "trade secret" categories which probably wouldn't be open source though it doesn't exclude it.
It would probably be a violation of a license's terms though. That code would be considered a derivative work which still falls under the original license. It should be pretty easy to show that something is a line-by-line copy with different names to a judge.
Now if someone took the idea of your work and wrote their own with the same general logic but different implementation details, I have no clue. You'd have to ask a lawyer. My hunch is there's no way you'd be able to reasonably prove your case with only the source code.
EDIT: Some words.
|
|
|
|
|
Amarnath S wrote: Is this an IP breach? Morally/ethically yes, but legally?
I would say that it depends on the country. The modified code would probably be recognized as a "derivative work", and therefore subject to copyright, if nothing else.
Freedom is the freedom to say that two plus two make four. If that is granted, all else follows.
-- 6079 Smith W.
|
|
|
|
|
I've worked as an assistant expert witness on a number of 'IP' type cases - is it an IP breach (and only considering what you've outlined here) ? most certainly ... expert witnesses analysing code for such look at a number of factors to determine such, but that is some of the most obvious things to do, ie modifying variable/method/class names ..
Sometimes when you're analysing code, there may only be one way of doing something - sure .. but there can be a whole lots of other things/factors 'around that' which may provide the determination of 'copying' or not
.. as said above by others, none of this takes 'licensing' or "what is allowed for a 'derivative work'" into consideration... there be dragons everywhere
|
|
|
|
|
Garth J Lancaster wrote: I've worked as an assistant expert witness on a number of 'IP' type cases
That sounds like an awesome experience.
|
|
|
|
|
yes - although you learn it's not the meek that shall inherit the earth, it's the cockroaches & lawyers
|
|
|
|
|
Hmmm I'm sure there's a cockroach/lawyer joke in there somewhere....
Software rusts. Simon Stephenson, ca 1994. So does this signature. me, 2012
|
|
|
|
|
Garth J Lancaster wrote: it's not the meek that shall inherit the earth, it's the cockroaches & lawyers
No; it's only the lawyers. There are some things that even a cockroach won't do.
Freedom is the freedom to say that two plus two make four. If that is granted, all else follows.
-- 6079 Smith W.
|
|
|
|
|
I also did some work as an Expert Witness in a "you copied our code" case. I was able to easily show that the allegedly copied code was actually quite different in structure and method even though it achieved the same end (there's more than one way to skin a cat).
The interesting thing is that, to analyze the code, I was paid 5 times what I would have theoretically have been paid to actually write the code! I wish I could have done this kind of job more often, it was quite interesting and I could have retired years ago!
- I would love to change the world, but they won’t give me the source code.
|
|
|
|
|
yes, but IP + market forces + "we dont think we'll get caught" = temptation
Obviously there's a lot more to it, and a lot more techniques & considerations
|
|
|
|
|
Garth J Lancaster wrote: making the code maintainable is a given (or is it these days ?) Do you really think it? Haven't you read the insider news the last months / years?
M.D.V.
If something has a solution... Why do we have to worry about?. If it has no solution... For what reason do we have to worry about?
Help me to understand what I'm saying, and I'll explain it better to you
Rating helpful answers is nice, but saying thanks can be even nicer.
|
|
|
|
|
I once had a coworker who copy pasted EVERYTHING.
Basically, he didn't understand programming, but by copy/pasting (my) code he got by.
At one point I told him to use the Enumerable.Any<T>(Expression<Func<T, bool>>) function for something he needed.
We used Entity Framework and did things like Where(...).Select(...).OrderBy(...) all the time, but Any(...) wasn't used all that much.
So after five minutes this guy's like "Sander, can you help me? How do I use that function?"
And I'm like "What do you mean, how do you use it? It's just a function like all the others..."
He: "Yes, but what's the Expression thing? I don't get it."
Me: "The same you use for Where, Select and OrderBy? "
He checked it out and was flabbergasted at first, that he'd been using Expressions for the past two or so years.
Then he came back because he still didn't get it...
He'd never known about Expressions, just that he put in some random character and then => and then some code where the character was "suddenly" the class he (usually) expected.
E.g. dbContext.Persons.Where(p => p.FirstName == "Amarnath");
He literally didn't get it because instead of "Where" it said "Any" and that, to him, where completely different things.
I think that was when I also found out he thought I invented generics in .NET
I told him he shouldn't copy paste so much and that if he did he at least had to understand what he copy pasted.
Copy pasting is a right you have to earn by first writing it yourself.
Unfortunately, this guy really couldn't do anything without copy pasting and the legend goes he's still copy pasting to this day and until the end of times
Other than that he was a nice guy though, he knew his shortcomings so he wasn't an ass about it, we traded lots of music and generally got along well
|
|
|
|
|
If you think it's expensive to hire a professional to do the job, wait until you hire an amateur.
Red Adair
"We can't stop here - this is bat country" - Hunter S Thompson - RIP
|
|
|
|
|
I do 1, 2, and 3.
But I make my living with 4
I've seen too many developers that can do 1 and 2 and if you're lucky, they can do some of 3.
Most developers don't want to maintain the code they have written. (at least not for long)
When I copy something from the internet, I make it work.
Then the fun starts: Refactoring.
I can tweak a piece of code over and over again until it is according to my standards. (Variable names, Latest language constructs, etc)
|
|
|
|
|
I like the thing of a painter in Paris.
knocks out 3 paintings an hour, charges a high price.
"but it only took you 20 minutes".
No, took me 20 years of trial and error to learn how to make it look good in 20 minutes.
|
|
|
|
|
I can only think of a few times I got a snippet off the net where I didn't have to change it to fit my needs, sometimes significantly -- I got the code simply to figure out how to do something.
That said, our team standard is to annotate everything, keeping the author info if provided. We also add the URL to articles/blogs/posts on MSDN and other sites if we got an idea or solution.
It never hurts to share the credit, there's enough for everyone!
|
|
|
|
|
If they ask the question - giving them an answer is likely a waste of effort. I prefer to work for a boss who knows why she/he hired me.
|
|
|
|
|
Instagram is adding new Font very similar to Comic sans MS to its app!
- I am not using Instagram (not even quite sure how it works.. )
- Still can't understand nor care what's the deal with Comic Sans MS!
But... I have popcorn ready for the fireworks! I am sure some people somewhere will get very angry!
|
|
|
|
|
Another way to add some emotion to a debate. Not unlike caps.
It was only in wine that he laid down no limit for himself, but he did not allow himself to be confused by it.
― Confucian Analects: Rules of Confucius about his food
|
|
|
|
|
|
Isn't it fine? Since it's for instagram.
Using Comic Sans for the list of opening hours that a shop hangs in their window is something else entirely..
|
|
|
|
|
Perhaps they should add a Sans Comics font, to be used for serious messages.
Freedom is the freedom to say that two plus two make four. If that is granted, all else follows.
-- 6079 Smith W.
|
|
|
|
|
I believe you're onto something here! ^_^
|
|
|
|
|
Super Lloyd wrote: I am not using Instagram (not even quite sure how it works..
Me neither!
Do the people who use Instagram care about fonts? Or even know what they are?
|
|
|
|