Is it ethical to copy the design of software?
January 26, 2010 10:23 AM Subscribe
Is it ethical or legal to copy the design of software, but not the code?
A friend is looking at some software for her (very small) business. It's about $900 and in a fairly niche area. I've looked at the demo and it's written in Access. I feel like I could easily write a clone in a web framework (e.g. LAMP).
However, while it would be a very straightforward project (which I would enjoy doing), I think they've made some very good design decisions and I like the logic of the software. I would be inclined, certainly as I was starting out, to recreate the look and organizational decisions they've made.
I'd also expect to write this as open source. I've checked and there is no open source equivalent already available in the field.
Is it ethical of me to write a clone like this? Is it legal? I suspect it's legal, but ethically I feel like I'm benefiting from the design work that someone else has done.
A friend is looking at some software for her (very small) business. It's about $900 and in a fairly niche area. I've looked at the demo and it's written in Access. I feel like I could easily write a clone in a web framework (e.g. LAMP).
However, while it would be a very straightforward project (which I would enjoy doing), I think they've made some very good design decisions and I like the logic of the software. I would be inclined, certainly as I was starting out, to recreate the look and organizational decisions they've made.
I'd also expect to write this as open source. I've checked and there is no open source equivalent already available in the field.
Is it ethical of me to write a clone like this? Is it legal? I suspect it's legal, but ethically I feel like I'm benefiting from the design work that someone else has done.
IANAL, but I can tell you than my own personal code of conduct would prohibit me from directly lifting design elements from anyone else's work. High-level data modeling choices or basic UI layouts might be another story, but it's still a slippery slope for me.
posted by JeffK at 10:32 AM on January 26, 2010
posted by JeffK at 10:32 AM on January 26, 2010
When the PC first came out, and cloners wanted to create their own, the big stumbling block was the BIOS.
A company decided to create their own. They created two engineering teams. The first disassembled the copyrighted BIOS in IBM's PC and analyzed the code, and wrote design documentation from it. That documentation was passed to the other team who used it to implement their own code.
They were sued, and the court found that they were not violating copyright.
posted by Chocolate Pickle at 10:33 AM on January 26, 2010 [3 favorites]
A company decided to create their own. They created two engineering teams. The first disassembled the copyrighted BIOS in IBM's PC and analyzed the code, and wrote design documentation from it. That documentation was passed to the other team who used it to implement their own code.
They were sued, and the court found that they were not violating copyright.
posted by Chocolate Pickle at 10:33 AM on January 26, 2010 [3 favorites]
I wouldn't call copying an entire program ethical.
On the other side of the coin, I often reference other programs when making decisions about feature design, i.e. "these big sites handle [feature] this way, so people are used to doing it that way," or "I've seen a really nice implementation of [feature] in x program, I think we should use that structure as I found it really easy-to-use."
Learning from other programs is good.
Copying another program is bad.
posted by Billegible at 10:38 AM on January 26, 2010 [1 favorite]
On the other side of the coin, I often reference other programs when making decisions about feature design, i.e. "these big sites handle [feature] this way, so people are used to doing it that way," or "I've seen a really nice implementation of [feature] in x program, I think we should use that structure as I found it really easy-to-use."
Learning from other programs is good.
Copying another program is bad.
posted by Billegible at 10:38 AM on January 26, 2010 [1 favorite]
Chocolate Pickle: The instance you're referring to is Compaq "clean room" reverse-engineering the IBM BIOS. Compaq was never sued for their reverse-engineering. There is, so far as I know, very little legal basis for clean room reverse engineering. Further, the OP is not suggesting a clean room reverse engineered approach.
posted by saeculorum at 10:43 AM on January 26, 2010
posted by saeculorum at 10:43 AM on January 26, 2010
A general rule of thumb for design "influence" is that it has to be arguably 10% different or else you're a dirty dirty thief.
10% being...of course...an exceptionally vague rubric.
posted by carlh at 10:44 AM on January 26, 2010
10% being...of course...an exceptionally vague rubric.
posted by carlh at 10:44 AM on January 26, 2010
Copyright infringement is a very fact-specific inquiry. In this case it would depend a lot on what the two programs in questioned looked like. You should talk to a copyright lawyer, especially if you plan to sell your potential clone for money. I am not an attorney.
That said, copyright generally does not protect the functional aspects of a design. So, for example, if you were the first person to use a slider widget (e.g., for controlling volume), the fact that the slider is a straight line and has a control point of some kind is probably not copyrightable. For a slider widget to be functional it needs to be straight and it needs to have a control point. A curved slider widget or one with no control point would not be very usable, so the decision to have those features is not a creative one. Other parts of the design, such as the color scheme, shape of the control point, etc are probably protected.
Thus, certain parts of the software's design probably do not fall under the copyrightable 'look and feel.' But working out which parts do and do not fall under copyright is really something that you'll need to work through with an attorney.
(There may be other issues as well such as trade dress, design patents, or even (although this is unlikely) utility patents. These are all issues that an attorney can help you with and that AskMe really can't).
posted by jedicus at 10:58 AM on January 26, 2010
That said, copyright generally does not protect the functional aspects of a design. So, for example, if you were the first person to use a slider widget (e.g., for controlling volume), the fact that the slider is a straight line and has a control point of some kind is probably not copyrightable. For a slider widget to be functional it needs to be straight and it needs to have a control point. A curved slider widget or one with no control point would not be very usable, so the decision to have those features is not a creative one. Other parts of the design, such as the color scheme, shape of the control point, etc are probably protected.
Thus, certain parts of the software's design probably do not fall under the copyrightable 'look and feel.' But working out which parts do and do not fall under copyright is really something that you'll need to work through with an attorney.
(There may be other issues as well such as trade dress, design patents, or even (although this is unlikely) utility patents. These are all issues that an attorney can help you with and that AskMe really can't).
posted by jedicus at 10:58 AM on January 26, 2010
Well, under US copyright law, the sequence, structure and style of a work may be copyrighted. There have been several "look and feel" copyright infringement actions. I remember one of the big cases involved Lotus 1-2-3 against Borland Quattro Pro. See Lotus Development Corp. v. Borland International, Inc., 516 U.S. 233 (1996), a 4-4 decision of the Supreme Court. The decision affirmed by that tie said that Lotus couldn't copyright its hierarchies. If you read the underlying opinion, though, there's certainly a lot of food for thought in there about what MIGHT be copyrightable.
The Wikipedia article on the case says that the "impact" is, "The implementation is subject to copyright. The public interface may also be subject to copyright to the extent that it contains expression". I'm not sure that's a conclusive summary, but it's probably enough to get the OP to see where this all heads.
(For further reading on this, you might want to look at the "idea / expression dichotomy" (or divide) and the scenes a faire doctrine.) Bottom line, the legal side of this is pretty complicated and lots of intellectual property lawyers and professors have spilled a lot of ink (both actual and virtual) on the subject.
Hopefully obviously, this is just a general discussion of the state of the law and is not intended to be specific legal advice. IAAL but IANYL.
posted by QuantumMeruit at 11:05 AM on January 26, 2010
The Wikipedia article on the case says that the "impact" is, "The implementation is subject to copyright. The public interface may also be subject to copyright to the extent that it contains expression". I'm not sure that's a conclusive summary, but it's probably enough to get the OP to see where this all heads.
(For further reading on this, you might want to look at the "idea / expression dichotomy" (or divide) and the scenes a faire doctrine.) Bottom line, the legal side of this is pretty complicated and lots of intellectual property lawyers and professors have spilled a lot of ink (both actual and virtual) on the subject.
Hopefully obviously, this is just a general discussion of the state of the law and is not intended to be specific legal advice. IAAL but IANYL.
posted by QuantumMeruit at 11:05 AM on January 26, 2010
Response by poster: I appreciate the responses so far. A couple of clarifications:
1. It's an Access executable protected by a key, so I cannot see the underlying tables. I can only see the UI.
2. The UI is very elemental (single menu with x number of tabs for the primary screen, with fields on each tab).
3. When I say the look, as much as anything, I mean the tabs and the function of each tab.
Generally, I feel like it's a Gimp vs Photoshop kind of thing, except that in my case, mine would be web-based versus an OS-specific tool.
posted by idb at 11:05 AM on January 26, 2010
1. It's an Access executable protected by a key, so I cannot see the underlying tables. I can only see the UI.
2. The UI is very elemental (single menu with x number of tabs for the primary screen, with fields on each tab).
3. When I say the look, as much as anything, I mean the tabs and the function of each tab.
Generally, I feel like it's a Gimp vs Photoshop kind of thing, except that in my case, mine would be web-based versus an OS-specific tool.
posted by idb at 11:05 AM on January 26, 2010
Just curious, but are you trying to save your friend some money, or ?
I would be pretty hesitant to clone a niche application and open source it simply because it's not really fair to the folks involved. They've invested time, effort and thought into their design, to take that design -- the results of their work. investment, time and money -- seems completely unethical.
posted by rr at 11:07 AM on January 26, 2010
I would be pretty hesitant to clone a niche application and open source it simply because it's not really fair to the folks involved. They've invested time, effort and thought into their design, to take that design -- the results of their work. investment, time and money -- seems completely unethical.
posted by rr at 11:07 AM on January 26, 2010
Response by poster: Yes, I'm trying to save her some money, but I'm not averse to creating open source tools either and have done so before. I wouldn't ask the question if I didn't have some qualms about it, but not to be too provocative about it, isn't this what most open source projects do?
posted by idb at 11:19 AM on January 26, 2010
posted by idb at 11:19 AM on January 26, 2010
There's kind of a long tradition in making open source alternatives to commerical software that are blatantly "inspired" by the commercial work. The open source folks likely will think it's ethical; the commercial folks won't.
posted by zsazsa at 11:24 AM on January 26, 2010 [1 favorite]
posted by zsazsa at 11:24 AM on January 26, 2010 [1 favorite]
3. When I say the look, as much as anything, I mean the tabs and the function of each tab.
Well, see, it all depends. It could be that the function of the application fairly well dictates what kind of information needs to be gathered as well as the logical formatting and arrangement of the data entry elements. Or it could be that it's a creative or aesthetic choice. You need to talk to an experienced copyright attorney who has worked software cases before and can give a professional opinion about what side of the line your clone might fall on and how it can avoid being on the wrong side of the line.
There's kind of a long tradition in making open source alternatives to commerical software that are blatantly "inspired" by the commercial work. The open source folks likely will think it's ethical; the commercial folks won't.
To be fair, there's a pretty long tradition of doing the same thing in commercial software as well. Just look at Windows/Mac OS/Xerox Star or the innumerable clones of various games.
posted by jedicus at 11:29 AM on January 26, 2010
Well, see, it all depends. It could be that the function of the application fairly well dictates what kind of information needs to be gathered as well as the logical formatting and arrangement of the data entry elements. Or it could be that it's a creative or aesthetic choice. You need to talk to an experienced copyright attorney who has worked software cases before and can give a professional opinion about what side of the line your clone might fall on and how it can avoid being on the wrong side of the line.
There's kind of a long tradition in making open source alternatives to commerical software that are blatantly "inspired" by the commercial work. The open source folks likely will think it's ethical; the commercial folks won't.
To be fair, there's a pretty long tradition of doing the same thing in commercial software as well. Just look at Windows/Mac OS/Xerox Star or the innumerable clones of various games.
posted by jedicus at 11:29 AM on January 26, 2010
Yes, and yes. This is not legal advice, etc. And they can sue you anyway. And they might win, just because the law is complex and it often comes down to who has better lawyers. But if the UI is basic elements, as you say, you should be fine.
posted by chairface at 11:30 AM on January 26, 2010
posted by chairface at 11:30 AM on January 26, 2010
The open source folks likely will think it's ethical; the commercial folks won't.
Ha. Open source person here, and I'm sitting here thinking "Of course you can clone some Access app."
I basically take the "ideas are worthless" approach. What you're talking about is using ideas from some existing software. I see no value in those ideas, and therefore don't really see any way theft can occur. What is valuable is implementation -- that is, work instantiated in a physical object (in this case, the actual software). If you were planning to lift code, graphics, etc, that would be uncool.
I would go further and suggest that no software has ever been written that didn't take ideas from either other software, or some pre-software object or system. That what you're planning on doing is not only ok, but is universally the way software gets designed, period. "...isn't this what most open source projects do?" Yes, and I'd strike "open source" there and replace it with "software."
And in case it's not clear, this is an ethical argument, not a legal one. The overlap between the two may vary.
posted by rusty at 11:50 AM on January 26, 2010 [1 favorite]
Ha. Open source person here, and I'm sitting here thinking "Of course you can clone some Access app."
I basically take the "ideas are worthless" approach. What you're talking about is using ideas from some existing software. I see no value in those ideas, and therefore don't really see any way theft can occur. What is valuable is implementation -- that is, work instantiated in a physical object (in this case, the actual software). If you were planning to lift code, graphics, etc, that would be uncool.
I would go further and suggest that no software has ever been written that didn't take ideas from either other software, or some pre-software object or system. That what you're planning on doing is not only ok, but is universally the way software gets designed, period. "...isn't this what most open source projects do?" Yes, and I'd strike "open source" there and replace it with "software."
And in case it's not clear, this is an ethical argument, not a legal one. The overlap between the two may vary.
posted by rusty at 11:50 AM on January 26, 2010 [1 favorite]
It is completely ethical to create and give away software that has the generally the same capability and organization as something that Company X sells for alot of money (e.g. OpenOffice). It's irrelevant how much Company X spent developing it. This happens all the time, every day. If you can improve the concept, even better. I suspect you will find out it's more work than you think, and that $900 isn't so ridiculous after you're done with coding and have to deal with recurring costs and support. But that's up to you.
Regarding the UI, don't rip off creative elements or wording obviously. Personally, I believe that beyond that nothing should be copyrightable in UI design. Some might consider that an extreme position, so: if the logic flow you want to duplicate is obvious, or there is prior art, then I'd say it is still ethical to copy it.
IANAL, this is not legal software advice, etc.
posted by ldenneau at 12:02 PM on January 26, 2010 [1 favorite]
Regarding the UI, don't rip off creative elements or wording obviously. Personally, I believe that beyond that nothing should be copyrightable in UI design. Some might consider that an extreme position, so: if the logic flow you want to duplicate is obvious, or there is prior art, then I'd say it is still ethical to copy it.
IANAL, this is not legal software advice, etc.
posted by ldenneau at 12:02 PM on January 26, 2010 [1 favorite]
Would you have the same hesitation if your were about to write, say, an email client? At a certain level, writing an application for a certain task requires task-specific actions that I don't think can be copyrighted.
posted by monospace at 12:08 PM on January 26, 2010
posted by monospace at 12:08 PM on January 26, 2010
Ethical - not really part of the equation unless you were/are going to produce an identical clone.
There is nothing wrong with this - I got my start in the business when a person arrived at my door with a $20,000 DOS-based real-estate-appraisal package and asked me to source an alternative. I looked around (pre-internet) and found nothing for Windows (3.11). I didn't use any of the look & feel - but did use the "feature" list.
Now - I got paid, whether or not you want to get paid is up to you. However - personally, that would have to be less than 6 hours work for me currently to make cloning a $900 software package worthwhile - and it would have to be something I had an interest/passion in - or something I could see having wide-spread use.
posted by jkaczor at 12:33 PM on January 26, 2010
There is nothing wrong with this - I got my start in the business when a person arrived at my door with a $20,000 DOS-based real-estate-appraisal package and asked me to source an alternative. I looked around (pre-internet) and found nothing for Windows (3.11). I didn't use any of the look & feel - but did use the "feature" list.
Now - I got paid, whether or not you want to get paid is up to you. However - personally, that would have to be less than 6 hours work for me currently to make cloning a $900 software package worthwhile - and it would have to be something I had an interest/passion in - or something I could see having wide-spread use.
posted by jkaczor at 12:33 PM on January 26, 2010
I vote for "nothing (ethically) wrong with this idea". If they're concerned about competing with FOSS, they need to make their proprietary implementation materially better than yours to such a degree that it mitigates the advantage of yours being free.
posted by Citrus at 12:38 PM on January 26, 2010
posted by Citrus at 12:38 PM on January 26, 2010
I feel like I could easily write a clone in a web framework (e.g. LAMP).
Err, the 'L' in LAMP is linux, which began as a free open source clone of expensive unixes. I doubt there's anything wrong with what youre doing. If your app is wrong then so is the OS you plan to write it in.
posted by damn dirty ape at 1:30 PM on January 26, 2010
Err, the 'L' in LAMP is linux, which began as a free open source clone of expensive unixes. I doubt there's anything wrong with what youre doing. If your app is wrong then so is the OS you plan to write it in.
posted by damn dirty ape at 1:30 PM on January 26, 2010
Having worked on a fair number of commercial Access and a couple of open-source LAMP projects, I have to say that it's pretty rare to have a business problem which is equally well solved using either technology (or either business model for that matter).
So I would ask: is it more natural for users of this software to have a local copy of this software running on their Windows desktop PC in the office, or is it something that they would expect to have running on their Linux web server?
The reason I ask is that this really determines the reach of your idea and thus the potential impact on the incumbent. If the natural home of the app is desktop/Windows/Access, then by all means build your app and open-source it but understand that it will likely remain a niche product used by a few techies who are prepared to install it on their web server to save $900.
If the natural home of the app is LAMP, then I say go for it - the incumbent presumably doesn't have the will or the ability to build a web-based product, so the market is open for you. When you've built it, you could open-source it, or you could consider offering the incumbent "first refusal" to buy it from you.
One final point: bear in mind that many SMEs have no in-house tech resource, crappy web hosting and no time to learn new technologies. For such companies a hosted LAMP solution might be a better offering - are you prepared to offer this yourself, effectively as a commercial service? If not, are you comfortable with a third-party taking your code, hosting it as a commercial service and competing with the incumbent?
posted by runkelfinker at 1:41 PM on January 26, 2010
So I would ask: is it more natural for users of this software to have a local copy of this software running on their Windows desktop PC in the office, or is it something that they would expect to have running on their Linux web server?
The reason I ask is that this really determines the reach of your idea and thus the potential impact on the incumbent. If the natural home of the app is desktop/Windows/Access, then by all means build your app and open-source it but understand that it will likely remain a niche product used by a few techies who are prepared to install it on their web server to save $900.
If the natural home of the app is LAMP, then I say go for it - the incumbent presumably doesn't have the will or the ability to build a web-based product, so the market is open for you. When you've built it, you could open-source it, or you could consider offering the incumbent "first refusal" to buy it from you.
One final point: bear in mind that many SMEs have no in-house tech resource, crappy web hosting and no time to learn new technologies. For such companies a hosted LAMP solution might be a better offering - are you prepared to offer this yourself, effectively as a commercial service? If not, are you comfortable with a third-party taking your code, hosting it as a commercial service and competing with the incumbent?
posted by runkelfinker at 1:41 PM on January 26, 2010
I'm with ldenneau above. I think it would be ethical for you to create software that is of similar design; I think as a web app it would be different enough to distinguish it from the original even if the way the software works is similar.
However, as someone who writes software for a living I might suggest that you give some further thought to doing this. I think you will find that it will wind up costing you much more than $900 of your time to build an application. For perspective, $900 is 45 hours of work at $20/hr.
The first 90% of building the thing might be pretty straightforward, but the remaining 10% is always a killer. It's NEVER as easy as you think. There is also the cost of ongoing support, and that fact that your friend may be pissed at you if you have a bug in your software that winds up costing your friend money or wastes her time (which equals money).
That said, it will probably be a good experience for you to do it if you've never built something completely on your own, so go ahead if you have the time and inclination.
posted by kenliu at 5:53 PM on January 26, 2010
However, as someone who writes software for a living I might suggest that you give some further thought to doing this. I think you will find that it will wind up costing you much more than $900 of your time to build an application. For perspective, $900 is 45 hours of work at $20/hr.
The first 90% of building the thing might be pretty straightforward, but the remaining 10% is always a killer. It's NEVER as easy as you think. There is also the cost of ongoing support, and that fact that your friend may be pissed at you if you have a bug in your software that winds up costing your friend money or wastes her time (which equals money).
That said, it will probably be a good experience for you to do it if you've never built something completely on your own, so go ahead if you have the time and inclination.
posted by kenliu at 5:53 PM on January 26, 2010
This thread is closed to new comments.
posted by Netzapper at 10:31 AM on January 26, 2010