Empowering open source communities

29/4/2021 4-minute read

Empowering open source communities in higher education: a case study.

In this article, I will discuss the idea of empowering and getting more people engaged in the open-source communities based on my experience for four years as a Computer engineering student in Turkey. The primary reason to write is to inspire more people to work in the open-source and spotlight some key points to create healthy-easy access and open source community atmosphere inside universities.

Since GitHub is the lead of open source platforms, I will consider the 80/20 rule and focus on GitHub as a platform to share codes and have a base on it. Yet, we still have multiple platforms and other Version control systems.

People usually use GitHub as a place to store their code when they need to publish it or share it with others.Despite using GitHub as a storage platform that’s not the main purpose of it, neither how open source works. The main idea about GitHub is having a social experience while coding! Besides using GitHub as storage, they might have only one commit on their repositories without considering the idea of version control, how commits work neither how people will read their repository history. I will be sharing some solutions that I think will work to get the most out of GitHub and help the community to develop better open source tools.

The next few points will help communities to get healthier and stronger by the time:

Understanding Version control:

By understanding the version control system, developers will be able to know the purpose of version control, how to use it, and what they can do when they get into trouble. Many junior developers in my country get shocked when they get to work on real world problems since they have not used any tools during their studies. There is a gap between the education system and professional work we can fill by establishing open source workshops in the universities and building communities that value sharing the latest news and have empathy for their members.

Understanding open source:

Open source and the idea of sharing your work with others for any reason you can have can gain benefits and help in the future. One of the fundamental things that happen with people is they only share their codes without thinking about how others would read or receiving them. We can work on this by thinking about the fourth wall when you write your code, shall, focus, and think about how others can read it, what they need to know, the purpose they use, and how to use the code on their projects. This way will help when some read the code and understand if it fits their needs or not.

Community and mentorship:

Having a community and seniors to talk with them would help and add a lot to your own experience. For instance, if you got stuck with your work and did not know how to act. Having people who gain the community and the university trust, is to share their knowledge, work, and give feedback to others would make a more creative and inclusive atmosphere.

Open source and VCS 101:

Having an integrated curriculum with universities or even workshops can give a great push for the community and open source this way people will start fresh and understand how things work. Besides that, it will highlight the mentors and seniors and create a future reference for others.

Communication means documentations:

The main way to connect with others is by coding. Having good well-written elegant documentation without them, the new programmer will get lost in the code and prefer to write their code. Besides having good documentation, people can join, follow newsletters, see the latest developer technologies, and how to use them.

Big projects and asynchronous work:

Usually, university students work on small teams or even asynchronous projects where they wait for each other to push their codes to the main repo. Having this way of work is useful for the short term but not practical and makes it hard to understand the real-life examples, code reviews, and tests. A work out for this trouble is to have an extensive project or hackathon to let people contribute to real-world projects and see how things get done in the world.

Zooming out to the solutions, you can realize that one of the particular solutions is to have communities, the mindset of sharing, and publishing, which is the base of open source. This kind of work needs igniting and support from both the educational institutes and the tech companies to benefit each other and gain a full cycle of knowledge. This way, we can easily have an inclusive and satisfying tech community where it can have software that can benefit the earth in the future.