Legal & Ethical Concerns in Computer Science

  • Focus on issues around sharing and using code.
  • Legal concerns: breaking laws related to intellectual property.
  • Ethical concerns: fairness, trust, respect for creators.

Popcorn Hacks 1

Q1: What is a legal concern that arises when sharing/using code?
Answer: Infringing on copyright or using code without a proper license.

Q2: What is an ethical concern that arises when sharing/using code?
Answer: Failing to credit the original author or misusing open-source trust.


Intellectual Property (IP)

  • Definition: Creations of the mind protected by law.
  • Types:
    • Copyright: Protects creative works (books, music, software).
    • Patents: Protect inventions.
    • Trademarks: Protect brand identifiers (logos, slogans).
    • Trade Secrets: Protect confidential business info.

Digital Impact:

  • Easier to copy/share content online.
  • Harder to control ownership & usage.

Enforcing IP:

  • Use licensing agreements and Digital Rights Management (DRM).
  • Monitor for unauthorized use.

📝 Licensing a Repository

What is a Software License?

  • Legal terms for using, modifying, and sharing code.
  • No license = All Rights Reserved.

Why Licensing Matters:

  • Protects your work.
  • Enables collaboration with clear rules.
  • Avoids legal trouble.

🔓 Open Source/Access

Open Source Software (OSS)

  • Public source code.
  • Can be used, modified, distributed.

Open Access Code

  • Free online research.
  • Minimal usage restrictions.

Advantages:

  • Encourages collaboration.
  • Freely modifiable.

Disadvantages:

  • Can be misused for harm.

📜 Open-Source Licenses Overview

License Permissions Restrictions Common Uses
MIT Use, modify, distribute with credit No warranty/liability Web apps, libraries, frameworks
Apache 2.0 Like MIT + patent protection Must include license notice, no liability Large-scale projects, APIs
GPL Use, modify, distribute, must stay open-source No private versions, share alike Projects that must remain open
BSD 3-Clause Use, modify, share freely Can’t promote with original author’s name Academic, closed-source projects
CC (CC0, CC-BY) Use as creator allows Not for code, mostly docs/images Docs, art, books

🎭 SKIT EXAMPLES:

  • Non-Profit: GPL – forces code users to share their projects too.
  • Indie Developer: MIT – easy distribution with credit.
  • Big Tech: Apache 2.0 – patent protection + open-source.

Popcorn Hacks 2

Question: 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?

  • MIT
  • GPL
  • Apache 2.0
  • Answer: GPL – forces others to keep their code open, preventing misuse.

🚫 What is Breaking the Law?

Action Reason License Violated
Using unlicensed code “All Rights Reserved” means no use allowed Any repo without license
Modifying GPL code without sharing changes GPL requires shared modifications GPL
Removing license notice Required for many licenses MIT, Apache, GPL
Selling open-source code as your own Must follow license terms GPL, Apache, CC
Using NC-licensed code for profit NC = Non-commercial only Creative Commons NC
Using paid software without buying license License required Proprietary software

🤔 Ethical Concerns

Misusing Code:

  • Disrespect for IP: Undermines creators’ rights.
  • Violation of Trust: Hurts open-source communities.
  • Unfair Advantage: Hurts fair competitors.
  • Lack of Attribution: Plagiarism.
  • Commercial Exploitation: Profiting unethically.

📜 Supreme Court: Google vs Oracle

  • Oracle claimed Google copied APIs.
  • Google claimed “Fair Use”.
  • Debate on copyright and software APIs.

❌ Plagiarism & Stealing Code

What’s Wrong?

  • Removing credit.
  • Copying code from GitHub/Stack Overflow without credit.
  • Selling open-source code without permission.

What’s Right?

  • Forking with author credit.
  • Adding README for credit.
  • Following license terms.

📰 Real-World Example

  • Concern: AI models trained on copyrighted material without credit/payment.
  • Ethical debate: Should AI training bypass copyright laws?
  • Article: Big Tech’s AI Pitch Seeks License to Steal

🏠 Homework

Task:

  1. Create or Update Repo License:
    • Add or change a license.
    • Explain your choice.

How-To:

  • Existing Repo:
    • Go to GitHub repo → Add file → Create LICENSE.
    • Choose a license template.
    • Commit.
  • New Repo:
    • During creation, select a license from the dropdown.