Legal & Ethical Concerns
In this lesson we will go over the legal and ethical concerns of sharing and using code!
Popcorn Hacks 1
What is a legal concern that arises when sharing/using code?
What is an ethical concern that arises when sharing/using code?
Legal Concerns
Intellectual Property (IP)
Definition: Intellectual Property (IP) refers to creations of the mind, including inventions, literary and artistic works, designs, symbols, names, and images used in commerce. It grants creators exclusive rights to their work.
Digital Impact on IP:
- The digitization of information has made it easier to share, copy, and distribute content online.
- While this has increased accessibility, it has also raised concerns about ownership, unauthorized use, and infringement.
- Businesses and individuals struggle to protect their digital assets from unauthorized replication or misuse.
Copyright Protection:
- Copyright safeguards original works such as books, music, films, and digital content.
- It prevents unauthorized use, reproduction, or distribution of creative works.
- Copyright protection is automatic upon creation, but registration offers additional legal advantages.
- Infringement can lead to penalties, including fines or legal action.
Other Forms of IP Protection:
- Patents: Protect inventions by granting exclusive rights to inventors.
- Trademarks: Safeguard brand names, logos, and slogans from unauthorized use.
- Trade Secrets: Cover confidential business information that provides a competitive advantage.
Enforcing IP Rights:
- Legal measures such as licensing agreements and digital rights management (DRM) help control IP usage.
- Companies and creators must actively monitor and enforce their rights to prevent infringement.
- IP protection continues to evolve with advancements in technology and digital platforms.
Licensing a Repository
What is a Software License?
A software license is a legal agreement that defines how others can use, modify, and share your code. Without a license, the default rule is “All Rights Reserved”, meaning nobody else can legally use your code.
Why is Licensing Important?
- Protects your work while allowing others to use it under set conditions.
- Encourages open-source collaboration with clear rules.
- Prevents legal issues from arising when using or sharing code.
without a license you can’t collaberate, and can seem unprofetion, and like a beginner in the coding community!
Open Source/Access
- Some of the legal ways to use materials created by someone else, include Open Source Code & Open Access
Open Source Software VS Open Access Code
Open-Source Software (OSS): Software whose source code is publicly available for anyone to use, modify, and distribute.
Open Access Code: online research that is freely available without any access restrictions and with minimal limitations on use, including copyright and licensing constraints
Advantages
- Open source are programs that are made freely available for anyone to use and make modifications to (through their own version of the content)
- Open Source Code –> Encourages people to collaborate and contribute to your creation
- Open access is online research free of any and all restrictions on access and free of several restrictions on use, such as copyright and license restrictions
Disadvantages
While open source content is usually used with good intention, the fact that it is free and anyone can make changes to it allows people to use it to harm other individuals or groups
Open-Source Licenses/their uses and restrictions
License | Permissions | Restrictions | Common Uses |
---|---|---|---|
MIT | Free to use, modify, and distribute with credit | No liability/warranty | Web apps, libraries, frameworks |
Apache 2.0 | Similar to MIT but includes patent protection | No liability, must include license notice | Large-scale projects, APIs |
GPL (General Public License) | Free to use, but modifications must also be open-source | Can’t make a private version | Software meant to stay open-source |
BSD 3-Clause | lets you use, modify, and share the code freely—even in closed-source projects—as long as you don’t use the original author’s name to promote your version. | No warranty | Academic projects, software |
Creative Commons (CC0, CC-BY) | let creators choose how others can use their work (not used often code) | Not for software, mostly docs, images | Documentation, art, books |
SKIT EXAMPLE
Non-profit organization: GPL – allows anyone to share and use the website,
but forces others who use the code to also release their project under GPL/General Public Lisence (Copyleft).
Indie Game Developer: MIT – able to distribute code and share project freely
while keeping credit to the original developer.
Big Tech Company: Apache 2.0 – provides patent protection for the company
while allowing open-source development and commercial use.
Popcorn Hacks 2
You're building an open-source lyric guessing app. You want it to spread fast, but also don’t want big corporations to steal your work (without giving you credit!). Which license do you pick?
Explained–> Choosing licenses for your code depending on your use. MIT for easy acsess, GPL for protection from theft/plagirism, Apache for patent/legal protection
What is Considered Breaking the Law?
Breaking software licensing laws can lead to legal action, repo takedowns, or financial penalties.
Action | Reasoning | License Violated |
---|---|---|
Using code that has no license | Default is “All Rights Reserved”, meaning you can’t use it. | Any repo without a license |
Modifying & distributing GPL code without releasing changes | GPL requires derivative works to be open-source too. | GPL (General Public License) |
Removing a required license notice | Some licenses (MIT, Apache) require you to keep the copyright notice. | MIT, Apache 2.0, GPL |
Selling open-source software as your own | You must follow the license terms, even if commercial use is allowed. | GPL, Apache 2.0, CC |
Using code with a Non-Commercial (NC) license for profit | Some licenses prohibit any commercial use. | Creative Commons NC |
Copying software without paying for a proprietary license | If software isn’t open-source, you need a paid license. | All proprietary software |
Ethical Concerns
Ethical Concerns of Misusing Code
-
Respect for Intellectual Property: Using code without permission disrespects the creator’s effort and legal rights.
-
Violation of Developer Trust: Open-source relies on community trust; misuse undermines this ecosystem.
-
Unfair Advantage: Using unlicensed or improperly licensed code can give an unfair edge over others who pay for/correctly use lisences.
-
Lack of Attribution: Failing to credit original authors (required in many licenses) is a form of plagiarism.
-
Commercial Exploitation: Profiting from someone’s work without respecting license terms is ethically wrong, even if technically allowed.
Supreme Court Google Vs. Oracle (example)
Explained –> Oracle claiming Google coppied the APIs/softwhere, Google claims it was fair use due to lisences and due to APIs not being subject to copyright
Plagiarism & Stealing Code
Just because something isn’t illegal doesn’t mean it’s ethical. Stealing code can slow progress, discourage collaboration, and over time lead to legal issues.
What’s Wrong?
- Removing author credit and claiming code as yours
- Copying code from GitHub/Stack Overflow without credit
- Selling modified open-source code without permission
What’s Right?
- Forking a repo and keeping author credit
- Adding a comment or README to give credit
- Following open-source licenses for modifications
Real-World Example
“the Trump administration’s new action plan can ensure that American-led A.I. built on democratic principles can prevail over CCP-built, autocratic, authoritarian AI.”
explained –> The article talks about the concerns from publishers/creative industries on tech companies (like google and OpenAI) push for little/no copyright laws on AI models. Allowing the AI to be trained on copyright material without proper payment or citations. This raises ethical concerns on stollen intellectual property and what could happen if we fully disregard lisences in the computer science field.
For more information, read the full article:
Big Tech’s AI Pitch Seeks License to Steal
Homework
1. Create a new repo and add a lisence, Or add a new lisence/change a lisence of your repo. Then explain why you chose that lisence!
Using GitHub Web Interface
- Go to your repository on GitHub.
- Click “Add file” → “Create new file”.
- Name it
LICENSE
orLICENSE.txt
. - Click “Choose a license template” and select one.
- Commit the file to your repo.
OR Create A New Repo
- While creating a new repository, there will be a dropdown option to add a liecense to your repository. Just pick which liences and create repository