Did you know that a coding project can be free to view online but not free for you to copy into your own project? A student finds a clever Python program on a public repository, presses Download and discovers a mysterious file named LICENSE. That little file may be more important to responsible reuse than the download button.
The direct answer: vocabulary such as licence, copyright notice, attribution, patent grant and source code lets students tell what they may do with someone else’s code. MIT, Apache 2.0 and GNU GPLv3 are widely used software licences with different conditions. Understanding those conditions helps a coding club reuse examples, publish a group project and explain its choices without pretending every public repository is in the public domain.
First, the two different meanings of ‘public’
In this fictional classroom example, Asha and Daniel are building a weather-station display. Their teacher asks them to research an existing graphing program. They find a public code repository. Public describes who can access or view it; licensed for reuse describes which permissions the creator has granted. The two ideas are not interchangeable. A visible source file with no licence is generally still protected by copyright; students should not guess that ‘online’ means ‘take anything’.
They check the repository’s licensing information, notice any restrictions on separate photographs or music, and ask whether the program they are planning to share falls within the permission given. They also read the school’s project and submission rules. This is research literacy rather than a way of getting around crediting classmates.
A three-way guide in plain English
- MIT licence: a permissive licence that commonly allows use, modification and redistribution, including in commercial projects, provided the required copyright and permission notices are preserved. Do not simplify it to ‘no conditions’.
- Apache License 2.0: another permissive licence. It includes express patent-related terms, notice obligations, and requirements about certain changes and accompanying NOTICE files where applicable. It does not grant permission to use someone else’s trademarks as if they endorse the project.
- GNU GPL version 3: a copyleft licence. When distributing a covered modified program, distributors generally must make the corresponding source available and follow GPL requirements, including keeping the relevant freedoms and licence terms. Merely using a program privately does not itself mean publishing all your own unrelated files.
These are simplified reading guides, not replacement licences or legal advice. To decide a real project, read the licence attached to the particular code and check any additional dependencies and school requirements. The words ‘MIT’, ‘Apache’ and ‘GPL’ are not interchangeable labels for ‘free’.
A classroom scenario: what changes when the project is shared?
Step 1 — Finding code: The students locate a graph component labelled MIT. They can explain its licence in a sentence: ‘If we reuse it, we must retain the copyright and permission notice.’ They record the repository, author where supplied, licence version and the file they actually copied. The point is a verifiable trail, not a decorative acknowledgement paragraph.
Step 2 — Combining materials: Daniel copies an open-source graph component but also sees a photograph of a weather sensor on the same page. He should not assume the software licence covers the photograph. A repository can have different licences for code, documentation, data, artwork or third-party dependencies. This is why the singular word licence can mislead when the materials are a mixture.
Step 3 — Modifying: Asha changes the graph colours, labels and accessibility text. Under some licences she may need to keep or supply notices about changes. The team should record what they modified. These notes also help Science reporting: ‘We adapted an existing graphing component but collected our own temperature data.’ Attribution does not turn borrowed measurement data into the students’ own observations.
Step 4 — Distributing: They plan to publish a downloadable project. If the relevant code is under GPLv3 and the sharing counts as distribution of covered software, they need to understand source-availability and licence obligations. If they have not checked, they should seek teacher or qualified guidance before publishing rather than assuming a public demo and a distributed software package are identical cases.
A common misconception: ‘Open source’ means ‘no rules’
The expression open source refers to licensing freedoms and conditions, not the absence of rules. Some licences are called permissive because they place relatively few conditions on reuse. Copyleft is a licensing approach designed to preserve specified freedoms when covered software is redistributed. A proprietary licence may allow use without granting source-code reuse. A free trial means a price or access arrangement and tells us little about permission to modify source code. These are different dimensions.
Another misconception: ‘We gave credit, so copying is automatically legal.’ Credit is important, but it does not magically create permission where no licence exists. Conversely, some software licences require particular notices even when a student already mentions the original author in a presentation. Read the conditions, not just the social etiquette.
The words that behave like commands
Notice four word families: licence → licensed → licensing; attribute → attribution; distribute → redistribution; modify → modification. Common collocations include ‘retain a copyright notice’, ‘distribute source code’, ‘publish a modified version’, ‘comply with licence terms’ and ‘review a dependency’. These combinations matter because a term such as retain instructs us not to remove something; distribute describes an action that may trigger conditions.
In a student write-up, compare ‘I used someone’s code’ with ‘I adapted an MIT-licensed sorting function and retained its copyright and permission notice.’ The second explains what was reused and what was done. Do not claim a particular licence permits something until you have read the actual terms.
A worked code-club exercise without writing any code
Three fictional download folders arrive. Folder A contains a README, a source file and an MIT LICENSE file. Folder B contains an Apache 2.0 licence and a NOTICE file. Folder C contains a GPLv3 licence and instructions about supplying corresponding source with distributions. For each folder, learners answer three questions: What can we verify? What must we keep or provide if we share a modified version? What is still unknown about photographs, third-party libraries or the school assignment?
A possible answer for Folder B is: ‘We should read the Apache conditions; any applicable NOTICE obligations matter; the code’s licence does not prove the photograph can be reused.’ A less useful answer is: ‘Apache means everything is okay.’ The objective is accurate classification before acting, not memorising the largest number of licence names.
Diagnostic questions for primary and secondary learners
- Does the learner know the difference between viewing source code and obtaining permission to redistribute it?
- Can they say what a copyright notice is for, in everyday language?
- Can they describe one important condition of MIT without calling it ‘copyright-free’?
- Can they say why Apache 2.0 and GPLv3 should not be treated as exact synonyms?
- Can they identify the moment at which a private experiment becomes a shared download or public release?
- Can they admit what they still need to check?
For a Primary child using Scratch-style projects, the teacher might start with ‘view’, ‘copy’, ‘credit’ and ‘permission’ before introducing full licences. For a Secondary G1, G2 or G3 learner interested in computing, the licence names offer a realistic extension to English reading, program design and responsible collaboration. The task is not an examination requirement or a promise of a particular grade.
A five-day retrieval and application routine
Day 1: explain ‘open source’ versus ‘publicly visible’ using two short examples. Day 2: close the source material and recall the shared notice idea behind MIT and Apache. Day 3: compare permissive and copyleft approaches without writing ‘better’ or ‘worse’. Day 4: inspect a real repository’s licence and any third-party notices. Day 5: present one use case with a source link, a chosen licence, a condition to satisfy and an unanswered question. Parents and teachers can assess the reasoning rather than a glossy slide.
To transfer the lesson into Mathematics and Science, have students annotate a program’s input units, variable meanings and credited data source. Good vocabulary makes the provenance of a formula or graph traceable. In a future career, the same care matters when collaborating across software teams, writing documentation or deciding whether a tool can be redistributed.
Frequently asked questions
Can I use anything labelled MIT for a school project? MIT licensing commonly grants broad permissions, subject to preserving required notices, but check the actual files, licence scope and school rules. A repository’s pictures and data may have other rights.
Does Apache 2.0 require everyone to use Apache 2.0 for every new project? It is a permissive licence, not the same copyleft model as GPLv3. Compliance with its particular notices, change information and other conditions still matters.
Does GPL mean a student must publish every file on their computer? No. The obligations relate to covered software and specified forms of distribution, not unrelated private files.
Is giving the author’s name enough? Not necessarily. Check the permissions and required notices in the licence, and distinguish code from other assets.
Reliable starting points and related eduKate lessons
For authoritative plain-language summaries and links to complete terms, read MIT licence, Apache License 2.0, GNU GPLv3 and the Open Source Initiative licence directory. For the related but different job of managing version history with teammates, see eduKateSG’s Commit, Push and Pull guide. To work on meaning and inference more generally, see How English Works: Reading and Comprehension.
All pupils, school clubs, folders and project situations here are fictional teaching examples. The discussion is educational information, not a determination of legal rights in a particular codebase.
