Copyright or protecting my code written in open source language We have a business that has become successful, the platform is a very customized build of Drupal where we integrate many different APIs and have a lot of custom code, mostly in PHP. Drupal and PHP are covered by the MIT license. We talked to a lawyer and they said because it is the GPLv2 license if someone requests the code we have to give it to them, can we copyright any of this code? How can we protect it. I know so many startups and platforms are written with open source software so I'm sure there is a clear answer to this but I can't seem to find one on the web. EDIT We are using drupal which is the GPLv2 license.
Ultimately, the issue presented is as much a technical one as a legal one. You can protect software written in a programming language that you don't own the rights to via copyright. Indeed, the vast majority of copyrighted programs are written in programming languages not owned by the author of the copyrighted work. You can't meaningfully protect software that is subject to a creative commons or MIT license for commercial purposes. The question then becomes, is the material you want to protect simply software written in an open source programming language, in which can you can protect the software, but not the underlying language, or is it a mere implementation of open source software that is not so transformative that its character as open source software (or a derivative work of open source software) is overcome. This would be a question of fact for a fact finding at a trial and would require considerable technical expertise and understanding to evaluate. I know so many startups and platforms are written with open source software so I'm sure there is a clear answer to this but I can't seem to find one on the web. There aren't a lot of clear precedents governing where the line should be drawn. Software of any kind you would recognize as such has only existed for about 50 years. Open source software has only existed for 20-30 years depending upon how you count it. And, open source software has only had widespread commercial use for an even shorter time period. This is an incredibly short among of time in terms of legal history, and it doesn't help that business to business copyright litigation doesn't take place at all in state courts and makes up a pretty small share of the overall federal court docket. And most of the copyright cases that are brought in the federal courts are very simple ones. For example, as of the year 2015, most copyright lawsuits in the U.S. merely alleged that anonymous Internet users downloaded pornography without permission to do so: [T]he adult website Malibu Media is a prodigious enforcer of its copyrights. According to law professor Matthew Sag of Loyola University in Chicago, Malibu alone was responsible for nearly 40 percent of all copyright filings in federal court in 2015. Litigation against anonymous downloaders, by Malibu and other copyright enforcers, made up nearly 60 percent of the federal copyright docket last year. In 2016, there were fewer than 4000 copyright infringement cases filed in the entire U.S. (in all media). And, the percentage of civil cases that go to trial at all in the federal courts (rather than being resolved by a settlement or default judgment) is very small to start with, with many of the cases that are resolved on the merits not appealed. There are fewer than 400 appeals per year, nationwide, in copyright, patent and trademark cases combined, and patent and trademark cases make up and outsized share of that total because the amount of money at stake is higher on average in patent and trademark cases than in copyright cases, and many copyright cases involve copyrights in media other than software. Maybe there are a dozen or two software copyright appeals a year these days. The figures from the last few years, however, are much, much higher than they have been historically, particularly in the area of software copyrights, which is why the case law is so thin on so many more sophisticated areas of software copyright law.
If you develop a program yourself and it wasn't a work made for hire, then the program is yours to do with as you please. You hold the copyright to it. Many developers choose existing licencing arrangements or they can choose to create a license on their own, or using an attorney. And sometimes they choose to release their programs into the public domain. If you release it into the public domain, you are essentially giving up your copyright. The IDE (Integrated Development Environment) you used to develop your program does not dictate what licenses you can use. There are some existing licenses that others use (which you are free to use or NOT to use) give varying protections to you regarding what you are allowing others to do; right of others to copy, right of others to modify, right of others to distribute, rights to sub-licence, and so on. One of the licensing schemes is the GNU General Public License (GPL). But there are many others, too many to list here.
If you use the reviewer's code, or code derived from it (e.g. if you just changed a variable name) then they own the copyright on that part of the software. If the reviewer describes a solution which you implement, or if you re-implement the code from scratch while taking ideas and methods from the reviewer's code, then you own the copyright on that code. However if there are only a few ways to implement something in code then the code is not creative and hence cannot be copyrighted. For example the regular expression in the question you link to is (as far as I can tell) the only correct solution to the problem: any programmer addressing the problem will have come up with that RE. In this the position is akin to a database of phone numbers: while the collection may be copyright (depending on whether selection or arrangement required creativity), the fact that Alice Jones has the number 012345 is not copyrightable, and neither is the alphabetical arrangement of names. Where it gets messy is the boundary between the two. The requirement to detect 4 or more repeated digits in a credit card number could be implemented in a number of ways, but whether there are enough of these to qualify any particular solution as "creative" would be a matter of fact for a court to decide.
Whenever there is a license to share things, the license creator wants the license to be widely used, but absolutely does not want slightly different licenses that could be used to trick people, or that just cause legal problems when used. Normal copyright law applies. And for the reasons above, the GPL license as an example allows you to copy the license verbatim but absolutely doesn’t allow you to make any modifications other than changing who is the person licensing a work. I would be curious what happens legally if someone licenses something with a sneakily modified copy of the GPL and then makes claims against a licensee who assumed it was the original GPL.
If the app (and the service accessed from the app) truly doesn't have any EULA, ToS, or license agreement, to include restrictions on reverse engineering, you can probably create an alternate front end, so long as you aren't using their logos, etc. However, their data may be a different beast, depending on the nature of it. For example, extracting data from Twitter would potentially violate Twitter's license on the original text copyright held by the authors in question. Wikipedia explicitly includes redistribution in their license agreement with authors/content creators. If all you are extracting and storing is the temperature at a particular weather station, you might have less of a concern. Anything beyond merely factual runs the risk of a copyright infringement as you store the data in your own database.
This is going to depend on several things. First of all, do you have a lawful, licensed copy of the SDK? My understanding is that Nintendo only licensed the SDK to selected game companies. If what you have is an unauthorized copy, you do not have the legal right even to use it. If what you have is properly licensed, then you do. Or is what you have an unofficial SDK created by someone other than Nintendo? Secondly, what does the license agreement that comes with the SDK provide? Does it require developers to register with Nintendo? If it does, you will need to comply. Nintendo cannot prevent others from writing programs designed to run on their hardware. But they can control who uses their development software, if they choose to. You cannot reproduce in your game any of Nintendo's copyrighted software (or anyone else's) without permission. That applies even more strongly if you intend to sell the software. But you can use any development software for which you have a valid license in whatever ways its license permits. I would expect this includes creating games. It would include selling games that you create that do not use any of Nintendo's code, unless there is a specific provision forbidding that in the license agreement.
united-states Functionality in general is not protected by copyright, although it may in some cases be protected by a patent. As the question noted, there are many IDEs and creating another one generally similar to those is not a violation of anyone's IP rights. The &quot;look and feel&quot; of a piece of software has been held by US courts to be protected by copyright. Broderbund Software. Inc., v. Unison World, Inc., 648 F. Supp. 1127 (N.D. Cal. 1986), was a relativcly early case in which the visual display elements of a software program were held to be protected by copyright. In the decision it is said that; On the “Choose a Font” screen, no mechanical or practical factor compelled [defendant] to use those exact words (“Choose a Font”). He could have written: “Select a Font,” or “Indicate a Typeface Preference,” or “Which Type Style Do You Prefer,” or any combination of these terms. . . .The bottom line is that the designer of any program that performed the same functions as “Print Shop” had available a wide range of expression governed predominantly by artistic and not utilitarian considerations. Another relevant early case was Digital Communications Associates, Inc. v. Softklone Distributing Corp., 659 F.Supp. 449 (N.D. Ga. 1987). In this case, the Defendant &quot;oftklone intentionally set out to &quot;clone&quot; or copy the functionality and interface of the popular program Crosstalk XVI (I was a user of thwt program many years ago). The court wrote: In the instant case, however, the arrange- ment of the status screen involves consider- able stylistic creativity and authorship above and beyond the ideas embodied in the status screen. It cannot be said that the idea of the status screen, i.e., using two symbol commands to change the operations of the computer program and reflecting that fact on a screen listing the computer program’s parameters/commands with their operative values, could not have been expressed in a large variety of ways. The defendants have never contended that they could not have arranged the parameters/commands in a wide variety of patterns without hampering the operation of their program. and found copyright infringement on that basis. Section 310 of Copyrightable Authorship: What Can Be Registered by the US Copyright office, says: The U.S. Copyright Office will not consider the so-called “look and feel” of a work. Invoking a work’s “feel” is not a viable substitute for an objective analysis of the work’s fixed and creative elements. See 4 MELVILLE &amp; DAVID NIMMER, NIMMER ON Copyright § 13.03[A][1][c] (2013) (criticizing the use of “feel” as a “wholly amorphous referent” that “merely invites an abdication of analysis”). The question asks: How far can I go in copying the user interface before it becomes copyright infringement ? There is no clear bright line on this matter. The more one copies interface elements and choices from a specific source, the stronger the case for infringement is. Using elements and choices that have become common industry practice in multiple works froim multiple developers and companies is probably safe. Clearly and extensively imitating the visual appearance and interface of a single specific work of software might well be infringement. One would be wise to consult a lawyer with experience in copyright law, and specifically &quot;look and feel&quot; issues, beforign publishing such a work of software. This issue is discussed extensively in Look And Feel In Computer Software (1993) by Jack Russo &amp; Jamie Nafziger, published by Computerlaw Group LLP, which seems to be a law firm specializing in computer law. The Law of Look and Feel by Peter Lee (Professor of Law and Chancellor’s Fellow, University of California, Davis.) &amp; Madhavi Sunder (Senior Associate Dean for Academic Affairs and Martin Luther King, Jr. Professor of Law, University of California, Davis.) is a 60-page law review article dealing with this topic. There is far more detail in these publications (and many others to be found on the net) than I can summarize in an SE answer. Configurable Interfaces The question asks whether the use of a configurable interface which could, but does not by default, imitate an existing interface would be infringement. I have not been able to find any case on point, or any discussion in a reliable source of this issue. Therefore, I am going to speculate. If there is a single choice between overall &quot;themes&quot; or &quot;shells&quot; and one of them imitates the interface from a protected program without permission, that would probably be legally the same as if the program shipped with that interface. It might or might not be infringement, depending on the details, as discussed above. If there are many settings, but the program is shipped with instructions advising a combination of settings that imitate another interface (or the developer or distributor provides such advice to users), that would probably be legally the same as if the program shipped in that configuration. If the developer provides a few preset configuration files which control these interface settings, and one such file results in settings that imitate another interface, that would also probably be legally the same as if the program shipped in that configuration. If there are many settings and there is no particular guidance or advice to a user on what combination to use, nor any predefined settings file, but users must discover (if they choose) a group of settings which imitate another interface, that is probably not infringement. I repeat that this section of the answer is based on general principals, but not on specific case law, nor on specific legal scholarship, and a court faced with this issue might rule otherwise. Before implementing this as a business plan, one might be wise to consult a lawyer with IP expertise.
The GPL does require you to keep any existing copyright notices: You may copy and distribute verbatim copies of the Program's source code as you receive it, in any medium, provided that you [...] keep intact all the notices that refer to this License and to the absence of any warranty [...] The GPL also recommends adding a notice to each file: Copyright (C) yyyy name of author - This program is free software[...] From my reading of the GPL, if the software you modify contains such notices, which is likely, you must preserve them. This effectively attributes the original author. However, as far as I can see, there is no requirement to have a list of acknowledgements (as is customary in scientific papers), which lists all the software you used. How to attribute parts that are integrated in source form? (Where licence information is given in the file header) If you keep the original file header (and possibly add to it), that should be enough. How to attribute parts that are integrated in binary form? As far as I can see, there is no additional attribution required for distribution in binary form. The GPL requires you to supply the source code along with the binary form, so the attribution in the source code will be available.