Making college curricula accessible

Many months back, I happened upon WikiSyllabus, BeyondSyllabus, and one of the creators Akhsay. WikiSyllabus is “open-source Wikipedia of university syllabi” where college curricula are stored in easy-to-use markdown files. I happened to chat with Akshay, and I understood the vision of what they are trying to build - and I realized that it was radically different from the possibilities I imagined when I first saw the project. But let me take a step back and understand the problem.

In the traditional educational system, e.g., an engineering college, which most members of the FOSS community experience, education feels static. Knowledge is with you, without helping you understand that knowledge changes or that the students can have a hand in improving knowledge. Most college curricula feel rigid, with strict lecture plans, reading material, and so on, instead of feeling fluid, making the students feel like they can shape the curriculum as they improve their understanding of themselves and the subjects. There are constraints that the traditional education system cannot break free of - the primary of which is addressing an “average” student who isn’t real, without leaving sufficient space for the spectrum of student interests and capabilities.

With the rise of interest in Free and Open Source Software, more and more students (and faculty) are feeling the need to contribute to FOSS. In some cases, we’ve heard of faculty members mandating that FOSS contributions be made as part of a course curriculum. This is counterproductive as students will inevitably game the system by putting in the least amount of effort when making a contribution. This hurts everyone - the student hasn’t learned anything, the FOSS community is worse off, and the teacher didn’t achieve what they aimed to do (or maybe they turned a blind eye).

@mrugesh pointed out in a community call yesterday that spammy contributions from Indian students to FOSS projects have become a significant problem. Projects like ExpressJS have to deal with a significant number of spammy PRs from students of Indian origin, painting the overall Indian FOSS ecosystem in a negative light every October (thank you, Hacktoberfest). @Shree_Kumar pointed out that this is the least of the problems with our education system, but I do agree with @mrugesh that the issue is getting out of hand, hurting the morale of the FOSS maintainers and the naive students.

Is there a way to solve both of these problems - the fact that college curricula feel rigid and the fact that students want to but aren’t ready to contribute to existing FOSS projects? What about a FOSS project that they create or one their seniors/college created that they could contribute to? What about a project that frees up their college curricula from rigid and unchanging PDF files into accessible markdown files?

I wanted to run an experiment with different groups of students, and my opportunities arrived from a college in Nandyala and another in Hyderabad. In both cases, there was an interest in learning Git & GitHub, a common interest among most college students. I used this excuse to introduce the following framework

  • a GitHub repository (and org) is created for the college. See, for example, FOSS at ACE · GitHub and RGMCETxFOSS · GitHub
  • GitHub Pages are enabled on the GitHub repository, making it easy to create a website. See, for example, FOSS at ACE and My Docs
  • Mkdocs is configured in the Git repo, so markdown content could be easily converted into a static site
  • CI/CD is setup in the GitHub repository, so every time a PR is merged Mkdocs builds and deploys the static site

Git and GitHub are now taught within this scaffolding

  • Students create a fork and a new branch of the curriculum Git repository
  • On a new branch, students create a folder structure, emulating a college curriculum. See, for example, cse-ds at RGMCET with cse-ds > N-sem > Course-ID.md
  • Students copy over content from the PDF curriculum file into a markdown file. For now, they just add text, but after a few cycles, we can start teaching them the basics of markdown as well
  • They commit, push the branch, and open a PR with their changes. Installing mkdocs on their machines and checking that the changes work as expected locally is ideal, but that requires additional setup that we don’t always have
  • PR gets merged, ignoring major or minor issues, and the updated website is checked to see the changes introduced in the PR
  • Rinse and repeat. Please note that the first iteration of the cycle could be performed purely from the browser - fork the repo, create a branch, create a file/folder, add contents, create a commit, open PR can all be done from the browser, meaning that the students have to do ZERO setup ahead of time
  • Future iterations can introduce Markdown basics, e.g., defining tables, a gentle introduction to Mkdocs itself, the Git workflow (branches, commits, merges), and so on

Like I mentioned earlier, I tried this twice - once with a group of 100+ CSE Data Science students at the RGMCET college, Nandyal, on October 8 and with 5 CSE students from Ace Engineering College, Hyderabad, on October 18. It could have been better, but I personally think that the experiment was a success because 87 PRs were opened by RGMCET students in the GitHub repository, and all 5 students from ACE opened PRs. Unfortunately, activity in the repositories stopped after my sessions, and I’ll try to work on that problem in the near future.

WikiSyllabus has seen good success in receiving regular contributions from people, but instead of focusing on their own college curricula, the project is attempting to make every college curriculum accessible via a single Git repository. In my personal opinion, this isn’t the best way forward. Not because of any scalability concerns with the technology, but because it takes away a sense of ownership from students from various colleges and consolidates it into a single place. Wouldn’t it be better to have a different org/repo for each college (the smallest meaningful unit)? You might argue that the smallest meaningful unit is a specific degree (CSE, EEE), but I disagree because the repository needs to enable students from across different degrees to come together under the same umbrella, very much like a physical college. Creating separate repos for each degree means that the students will happily become blind to work happening in other degrees/departments/curricula.

Even for students/clubs that take this project seriously, they should be able to make the PDF curricula accessible in such a way within a semester. What then?

First-order work

  • Course reading material doesn’t only have to be an entire textbook, but instead a list of articles, talks, and YouTube playlists that expertly communicate the relevant topics. This causes a deviation from the “official” curriculum, but, understandably, such information will never end up in an “official” curriculum
  • Course assignments could now be extended by the students themselves to include easier and advanced problem sets, for students who need them
  • Course curriculum itself could be changed/extended to include concepts that are necessary but aren’t introduced in the “official” curriculum. Curriculum revisions happen infrequently, but technology is moving rapidly

Higher-order work

  • Identify and replace proprietary software usage from courses, e.g., Tableau for Data Visualization, Microsoft SQL Server for Databases
    • if no alternative FOSS project exists for proprietary software, maybe consider creating one?
  • Create entirely new courses that don’t exist in the “official” curriculum, e.g., self-study courses, that provide a structured path to interested students who are willing to pursue them on their own time

There’s a significant risk here - reputational risk for the college by allowing a publicly visible, student-maintained curriculum to deviate from the official curriculum. Even though it isn’t officially recognized by the college, making this content accessible via markdown/static sites could mean that this becomes more visible on search engine rankings. One way to manage this risk is by not moving onto the first-order or higher-order work until sufficient trust has been built up with the college faculty/administration regarding the effort. This is easier said than done, but we (FOSS United) have the benefit of only choosing to work with students and colleges that already have trust in us.

Please note that this is also heavily inspired by the work of @vysakh_premkumar and the NITC FOSSCell Wiki.

At the end of the day, the goal is to create a digital commons that every student in a college can participate.

Future experiments

  • I’ve mentioned this a few times to @ansh , @Suslime, and others and I intend to nudge FOSS Clubs next semester to consider this approach when teaching Git, GitHub in their respective colleges
  • Create a full-fledged guide that an instructor can use to teach Git & GitHub in this way, e.g., how to configure GitHub Pages, GitHub Actions workflow code, Mkdocs setup, etc

Happy to hear thoughts/comments/feedback/criticism regarding the experiments and the overall idea.

4 Likes

Over the past few weeks, from late January to the first week of February, I ran the “Making College Curricula Accessible” that @rahulporuri outlined in his post, across five colleges in and around Chennai.

The five sessions

FOSS Club SRM Chennai was the first. Around 70 students. The energy was good, students split into teams, each team picked a course, and they started digitising their curriculum into markdown files. PRs came in steadily. Repo: GitHub - nammahari/srm-workshop · GitHub & Forum : FOSS Club SRM - Updates thread - #20 by Tarun_Akash

FOSS Club Pondicherry University had 100+ participants, but the internet gave out almost immediately. It could have collapsed entirely, but students pulled out their hotspots and kept going. We couldn’t get everyone online, but the ones who did get through made their contributions. That stubbornness was something. Repo: GitHub - nammahari/pondy-university: FOSS Workshop at Pondy University · GitHub & Forum : FOSS Club Pondicherry University - #3 by vishnupiriyan_v

Chennai Institute of Technology (Department session) is my favourite of the lot. ~60 students, every single one active, contributions flowing in, questions coming from all sides. The session had a rhythm that felt really natural. Repo: GitHub - nammahari/cit-hackers · GitHub

The FOSS Club at Sai University Chennai had about 30 students. Small group, very interactive. Almost everyone contributed and got their PR merged. Repo: GitHub - nammahari/saiu-workshop: static site with mkdocs · GitHub & Forum : FOSS Club at Sai University (2025 - 2026) - #7 by B.Vaibhav

FOSS Club Chennai Institute of Technology (full club session) had 120+ students. A good number of contributions across the board. Repo: GitHub - nammahari/cit-workshop: Git Workshop · GitHub

How the sessions ran

Each session followed the same structure. Students were divided into teams, and each team was assigned a course to work on. I started by explaining what FOSS is and why it matters, then introduced the basics of Markdown. After that, it was a walkthrough of forking the repo, editing files in GitHub’s in-browser editor, and raising a PR. Zero local setup required.

One thing that came up in almost every session: merge conflicts. Students would run into them and get confused, which turned into one of the better teaching moments of the day. Explaining merge conflicts in the context of something they’d just done themselves made it stick.

To close each session, I walked students through what happens after a PR gets merged: how the GitHub Actions workflow triggers, how MkDocs builds the site from the markdown files, and how GitHub Pages serves it live. Watching that pipeline explained in front of them, right after they’d made a contribution that went through it, gave it meaning.

What stayed with me

The moment that repeats across all five sessions is students watching their edit go live on the site. That moment of seeing their name in a merged PR, and then refreshing the page and seeing the change actually there, does something. That’s their first real open-source contribution, and it didn’t require setting up a dev environment or understanding a codebase.

Also worth saying clearly: these are our repos. We set them up, and we maintain the scaffolding. The students are contributing their college’s curriculum to a site we built for that purpose. The ownership model matters here. Students aren’t maintaining a project; they’re making their curriculum accessible for the first time, as a contribution to something larger than their college.

Internet issues showed up at almost every venue. Students worked around it with hotspots. That says something about motivation when the task is concrete and the feedback is immediate.

What comes next

The pattern works. If you’re part of a FOSS Club and want to try this at your college, reach out. Happy to help set it up.

2 Likes