How to get high school students interested in open source?
I’ve been holding a few workshops on getting high school students in North India interested in software development and open source. Here is what I learned.
There is a misconception among educators and parents alike that at school level, the only thing that interests students is getting admission in a good college. However, I have found that several of them are in fact looking for ways to fill the gaps in between their studies and would love to do something constructive.
During one of the sessions, we called for a show of hands among students for who wanted to pursue computer science or engineering as a career. I was very surprised that none of the girls sitting in the audience raised their hands. However, when I spoke with them one on one, I found out this was NOT actually the case. They were very interested in math and science. Several of them were very smart and knew their way around computers as well. They were simply too afraid to ask for help and speak up. This made me wonder if it was indicator of an underlying problem about diversity in tech?
Explaining Open Source to a Newbie
I began by talking about some of the products that they have come across in their lives — Android, Mozilla Firefox, Visual Studio and proceeded to link all of them by the common thread of open source software.
I also talked about communities and projects (which can easily get too scary and big, so I had to make sure to keep telling them it wasn’t too tough) Most of all, I introduced them to Google Code In, an open source program for 13 to 17 year olds. I stepped them through some of the examples from the past projects.
For fielding questions about their ability to participate in such a program, I quickly chose to divide my audience in groups:
- Beginners: These students who had never written any code in their lives except for the basic Logo programming and using HTML to build websites. (mainly 13/14 year olds) I gave them easier tasks such as building and installing an application, writing technical blog posts, or suggesting changes to a website.
- Intermediate: They had some knowledge of programming constructs, had built some programs in C++ and Java. For them, we introduced the slightly tougher tasks such as fixing small bugs, adding features and getting engaged with the open source community, in general.
- Advanced: Unfortunately I did not have the good fortune of interacting with any students who were already contributing but ideally, I’d let them pick and choose whatever they wish to work on with some mentoring assistance available instead of walking them through.
Student Take Aways
Mostly they took away a very enthusiastic impression of me harping about how they should make the most of this opportunity. I was happy to field some queries about GCI later in the day and GSoC from those who were turning 18 soon. I also had questions about how to get started to create a GitHub account and advice around learning GIT.
We announced a 15 day competition (Ala Hacktoberfest) wherein the students were to submit their contributions and then send them to us. We would then award the top three participants! We are yet to get the entries in from this so I can’t comment on the success of the competition but hopefully it will be something promising 🙂
How do you replicate this in your school?
If you have a working knowledge of how the community works here, you can access my slide deck. Please feel free to reach out to me about any inconsistencies, mistakes or areas of improvement.
If you are an educator and looking for help or any other learnings from my experience conducting these sessions, you can tweet to me @prachim1210.
I do this for outreach and awareness and mostly because I have a lot of fun interacting with kids 🙂