FOSS wingF02

Reading real open source code and sending changes back to it.

Open-source development: contributing to projects other people maintain, making software faster at the system level, and learning the tools that give you control over your own setup.

Next class
Members
13
Classes held
0

What you already use

You already use most of this

Layer Top

Creative tools

  • BlenderGPL-2.0Used to make films shown in cinemas.
  • GIMPGPL-3.0An image editor behind many campus posters.
  • OBS StudioGPL-2.0The tool behind most live streams.
  • GodotMITA game engine, popular for weekend game jams.

Developer tools

  • GitGPL-2.0Tracks every change you push. Its first version was written in ten days.
  • PythonPSFThe ML wing's main language.
  • DockerApache-2.0Packages an app so it runs the same on every machine.
  • KubernetesApache-2.0Runs containers across many machines.

The web

  • FirefoxMPL-2.0The last major browser engine not owned by a platform company.
  • nginxBSD-2Serves about a third of all websites.
  • PostgreSQLPostgreSQLThe database many projects end up choosing.
  • Node.jsMITRuns JavaScript on servers.

Core libraries

  • curlcurlMoves data in cars, printers and game consoles.
  • SQLitepublic domainThe most widely deployed database.
  • FFmpegLGPL-2.1Processes the video on most sites you watch.
  • OpenSSLApache-2.0Encrypts most secure connections.

The base system

  • LinuxGPL-2.0Runs every Android phone and most cloud servers.
  • GNU BashGPL-3.0The shell that runs most scripts.
  • systemdLGPL-2.1Starts the services on most Linux machines.
  • FreeBSDBSD-2Its network code runs inside the PlayStation.

20 projects · 5 groups · 9 copyleft

Read the licences down each column. The base system and the creative tools are mostly copyleft. The three groups in the middle, the ones companies build products on, are almost all permissive. That is by design, and it is why this wing spends four classes on licences.

A first contribution

One patch, from fork to merge

An example of a first contribution: your branch, the project's main line beside it, and the review that ends in a merge. The main line keeps moving while you work.

  • upstream/main
  • origin/refactor
  • you/fix-parseryours
Not forked yet
First reviewMerged

A ten-year-old project, someone else's code, and a bug you can reproduce. The main branch keeps moving while you work.

You fork the project and make a branch. The first job is finding which of two thousand files holds the bug. That takes longer than the fix.

Eighteen lines changed. A change this small is easy for a maintainer to review.

A maintainer you have never met reviews it in public and asks for changes. Many people give up here.

Second round. The code is mostly settled. The review is now about names and a missing test.

Third round. The patch is now three lines shorter than when the review started. Review is part of the work, not extra to it.

Merged. Your commit is now part of the project that thousands of machines download, and it stays there after you graduate.

3 review rounds · 11 days · 1 commit kept

Events

  1. RiceFest
  2. FOSS Weekend
  3. Language Wars

Best known for

RiceFest

Customise your own system, on Linux, macOS or Windows, into something unique that is still easy to use. Judges look at the whole setup, not just a screenshot: looks, usability, accessibility and performance.

FOSS Weekend

3days

Three days of contributing to real repositories, both the ones given and popular projects elsewhere. Harder issues and pull requests earn more points. Clean commits, documentation and review also count.

Language Wars

2sessions

An offline coding contest in many languages. In the first session, you solve algorithm problems in five languages. In the second, you pick one language, such as C++, Rust or Python, for a shared challenge. Entries are ranked on speed and memory use.

Files

Class files

No class files yet.

Class log

  • No classes logged yet.

Team

The team

2 coordinators · 5 senior members · 6 members

Kinshuk Sanand

Coordinator

No earned number yet

Shivansh Jain

Coordinator

strfry Summer of Bitcoin

Naman Khandelwal

Naman Khandelwal

Senior member

Summer of Bitcoin Formstr

Aryan Singh

Senior member

No earned number yet

Merin Theres Jose

Merin Theres Jose

Senior member

No earned number yet

Vennela Varshini Anasoori

Vennela Varshini Anasoori

Senior member

Google Summer of Code HumanAI

Anirudh Singh Rajora

Anirudh Singh Rajora

Senior member

1625 Expert

Members · 6

Manasvi Sharma

Member

Harsh Kumar

Harsh Kumar

Member

1321 Codeforce

Shreyansh Giri

Shreyansh Giri

Member

1328 Codeforces Rating

Tarun Kumar

Member

Atharva Vaish

Member

Ewansalan Dkhar

Member