Does copyrighted code protect intellectual property rights on novel algorithms it implements? Imagine you have come up with a novel algorithm to solve a problem, and have implemented it in, e.g., javascript, and have put its src, along with an appropriate copyright, on a publicly available code repository, e.g, bitbucket. Can the copyright alone be enough to keep another entity (let's call it Evilsoft) from copying the algorithm or integrating it with software it produces (which might not be written in the same programming language)? If it isn't the answer, what else is?
No, copyright absolutely does not protect anything "novel" or anything related to algorithms or generally anything functional at all. Copyright only protects your "expressed representation of a creative work". Other people can duplicate your work with a different "expression" and not be infringing on copyright. And if there is nothing creative in your work then it's not even eligible for copyright in the first place. For example, if you figure out how to sort an array with fewer computational steps than what anybody else is doing then that is functional code, not creative code, and anybody can reverse engineer/duplicate your sorting algorithm. However, patents do provide the protection you're looking for. If you want to protect your fancy algorithm then apply for a patent. Patents expire an order of magnitude sooner than copyright, but they are the only means of legally protecting this type of intellectual property. Unlike copyright, patent protection is only available if you apply for it, and it has to be approved by the relevant government department in your country (although you can start using the patented technology before approval has gone through).
united-states You are protected by copyright as a matter of law, even if you don't post a copyright notice, although you have slightly more procedural rights if you do post a copyright notice and there would need to be a filing with the copyright registrar (a division of the Library of Congress) before you brought suit. You can't really get any other intellectual property protections for it except possibly a trademark if you have a distinctive mark or name or logo for the app.
There is no IP in ideas Any code would by subject to copyright (who owns that copyright is itself a convoluted and separate question), however, if the 4 of you abandoned any existing code, notes and images and start over you would have no legal impediment.
Addressing the question of programmer liability, generally speaking, a person who creates something that others use to infringe on copyright is not liable is liable if there are non-infringing uses for the thing (Sony). They can be liable if they intentionally contribute to infringement, viz Grokster one who distributes a device with the object of promoting its use to infringe copyright, as shown by clear expression or other affirmative steps taken to foster infringement, is liable for the resulting acts of infringement by third parties. End-user liability is different. In order to legally download (watch) anything, you have to have permission from the rights-holder, and from the site operator. The site operator will have terms of service according to which you can access material: if you violate those terms, you are infringing on copyright (you didn't do what the permission to copy required of you). If the site-owner knowingly distributes material without permission, he is an infringer and you have no legal license to copy (watch) that content, so you too are an infringer. If the site-owner unknowingly distributed material without permission and generally complies with the DMCA safe harbor requirements, he is not an infringer but you the user are. Congress has not created an innocent-infringement defense where you can defend yourself against an accusation of infringement by proving that you didn't know that the material was distributed without permission (there is an option to reduce liability for statutory damages to $200 in case of unknowing infringement, but not make all liability go away).
Such clauses are called "copyright assignment", "invention assignment", and/or "works for hire" clauses, partly depending on the clause's intent and wording. They're pretty common in employment contracts for software development and some creative positions. Frankly, the clauses don't actually do much, at least in the US -- copyright law already recognizes the concept of works made for hire (which belong to the employer), and claims too far beyond that are often rejected if they aren't obviously related to company business. With that said, your hypothetical programmer's painting is safe unless it depicts, say, the contents of an email from the CEO. :) Even if the clause technically entitles the employer to claim ownership, the employer has no legitimate interest in doing so. Likewise, that app created outside work is safe as long as it is created using no company resources and is unrelated to the employer's business. If the app is obviously related, that's where things get hairy.
As far as I can tell, whenever GitHub redistributes code, it adheres to all of the requirements of the GPL/BSD etc. For example, it never gives away code without including the license text, and it doesn't claim to add unpermitted restrictions to the code. The section you're concerned about is this: That means you're giving us the right to do things like reproduce your content (so we can do things like copy it to our database and make backups); display it (so we can do things like show it to you and other users); modify it (so our server can do things like parse it into a search index); distribute it (so we can do things like share it with other users); and perform it (in case your content is something like music or video). That section isn't worded very precisely, but I understand this to mean they want to reproduce your content in full, not just the code without the license text attached. They want to display your content in full, as you provided it. They want to modify it internally (i.e. they are not redistributing this modified form) in order to allow searching. To the extent that they display code-snippets as search results, that is likely defensible as fair use (search engines are frequently cited as examples of successful fair use defenses). GitHub appears to be acting consistently with the GPL when it reproduces, displays, modifies, and distributes code that you upload. If I'm correct about these facts then nothing that GitHub does with the code goes beyond what the many contributors to a GPL project have explicitly permitted, or what is otherwise permitted by fair use law. If you had some code with a more restrictive license, you might not be able to simultaneously comply with that restrictive license and GitHub's License Grant. Consider the scenario where you have some code that is licensed exclusively to you, and you are not given permission to reproduce or distribute it. In that scenario, the code's license prevents you from agreeing to GitHub's request for a license grant.
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.
There are two processes that go on all the time, and are generally considered legal: Encryption algorithms are attacked by cryptographers and weaknesses identified. In most cases this results in a gradual reduction of the work required to break the algorithm by a few orders of magnitude at a time. The history of SHA-1 is a good example of this. People identify security holes in software and follow responsible disclosure rules. This means that they notify the vendor and give them an opportunity to fix the bug before going public. Note that this is merely considered good practice; immediate publication would be legal too. Your scenario sits at the intersection of these two processes: an attack (process 1) which completely destroys the security of many systems (process 2). Responsible disclosure occupies a legal grey area: someone who finds a bug might have had to exploit it to at least some degree to demonstrate it, and there have been cases where vendors have used police or courts to retaliate. However this wouldn't apply to your scenario. In America the First Amendment makes it unconstitutional to use the legal system to stop people saying true things (copyright excepted, and untrue things are often legal too). If your Wunderkind lives in America then a widely published factual description of their solution would therefore be legal. Legal problems only start if they provide the details in secret to people they should reasonably suspect of intending to use them for crime.