During the summer semester of 2020, Red Hat’s Beyond platform offered a class on open source development in conjunction with Efi Arazi School of Computer Science at the Interdisciplinary Center (IDC) of Herzliya, Israel’s only private university. Due to Covid-19, the class was offered in a virtual environment, using Zoom for video conferencing and Slack for continuous communication. The class consisted of a collaborative team project as well as weekly lectures on the components needed for practical software development and open source methodologies. The goal was to give the students an inside taste of development practices in the industry.
This was the 3rd successful semester of the Beyond platform, an initiative started by Red Hat engineers Liora Milbaum and Irit Goihman. The program is a larger effort, guided by the CTOs office, to promote open source development concepts in Israel among teenagers, the military and the academic world. The goals of Beyond are to give the students a taste of real-world development and methodologies, while being exposed to the entire process of designing and developing a software project in a collaborative environment. The Red Hat engineers who participated as mentors were: Aviad Polak, Barak Korren, Danielle Barda, Omer Amsalem & Sim Zacks.
Giving the students an inside taste of open source development practices in the industry
The 20+ students in the class were divided into four groups and each one chose a development project. The projects were:
- SuperX – a comparative supermarket application. The system enabled users to build their shopping list and see which supermarket had the best prices. This system utilized XML price files that the supermarket chains are legally required to provide to the public.
- Sellotape – a modern audio podcast platform. It introduced an accessible way to listen to podcasts and streams. The system served as a simple social network, helping streamers and listeners to easily access and expose their live content as it centralizes streams from many popular streaming sources.
- Givit – a system to help students find free furniture. It automated the process of gathering needs from the students and then searched websites where people publicize giveaways.
- Tutor – a system to enable sharing reference material for classes. It enabled students to share helpful information they stumbled upon online and/or summaries that they wrote. Its goal is to give students all the information they need for every course they are taking.
The Red Hat engineers prepared and presented the weekly lectures. They also took responsibility for mentoring – working with the students to understand what is involved in real world software development, using an open source model, and answering their technical difficulties. The students were exposed to using GitHub, code review and Pep8 coding style requirements. As part of the project, each team had to design the system architecture, database and front end screens in addition to the core system functionality in python.
While the Red Hatters were there for support and direction, the students themselves were responsible for the entire project. To this end, they learned how to collaborate with each other and divide their assignments so each team member had an area of responsibility. Each assignment was broken down into bite-sized chunks that were easier to understand and develop. They also learned how to design a minimum viable product (MVP) using an agile workflow. As part of this, they came up with a minimum feature set that would be considered a success, instead of trying to design a monolithic application that they would never be able to complete on time.
“Right now, not only do I feel I am proficient in all the material taught in the course, but I have also made a transition. In the last few months I have been working in collaboration with friends from the army on a new project, the members came without experience, and here they switched roles, not only did I come to develop but also came to teach. Thank you for the opportunity to learn from you, thank you for your insistence on the little points and the deep understanding of everything we do. I wish for myself that our paths will cross later.“- An IDC C.S student.– An IDC C.S student.
Beyond plans to continue its knowledge sharing activities. So, stay tuned, more to come!