Git is a powerful and popular source control tool, but often university students learn to use it on their own, in a haphazard way. In this interview, Irina Gulina, Sr. Software Quality Engineer, RHEL for SAP Solutions, CCSP, Red Hat, and Tomáš Tomeček, Senior Principal Software Engineer, Linux Integration Engineering, Red Hat, discuss the Mastering Git course they teach at Masaryk University (MUNI) at the Faculty of Informatics (FI) in Brno, Czech Republic. The course was organized with the help of Martin Ukrop, Red Hat Program Manager, Red Hat Research.
Read on to learn more about teaching a university course, the collaboration between Red Hat and MUNI, and how you can explore teaching a course of your own.
Tomáš Tomeček, Senior Principal Software Engineer at Red Hat
Irina Gulina, Senior Software Quality Engineer at Red Hat
Martin Ukrop, Red Hat Program Manager at Red Hat Research
Lenka Bočincová, Community Architect, OSPO, Red Hat
Tomáš and Irina, how and why did you decide to teach the Mastering Git course at Masaryk University?
Tomáš Tomeček: Some time ago we realized that we both appreciate the benefits of Git. We felt we had to evangelize the tool more, so we did a DevConf.cz workshop together.
Irina Gulina: It started at DevConf.cz in 2020, where we had a workshop on Git with Tomáš. After the session, Martin Ukrop asked if we would be interested in giving a Git workshop as part of the Open Source Development course at Masaryk University (MUNI),[editor’s note: the second-largest university in the Czech Republic]. We decided to give it a go. It went quite well, and students were engaged.
Martin invited us to deliver the same workshop several semesters in a row. The students always liked it, and the room was packed each time, but we felt that a two-hour workshop was not enough time for students to dive deeper into Git. So in 2022, with Martin’s support, the MUNI FI faculty finally gave their blessing to organize a six-week Git course. Students attending it get two credits to their record.
Martin, why did you invite Tomáš and Irina to lecture on Git at MUNI?
Martin Ukrop: I was coordinating a course on open source development at the Faculty at that time. For the course, students worked on making an upstream contribution, and they attended lectures on topics relevant to open source development. Many things that students needed to be able to contribute to open source projects—licensing, Git, CI/CD, technical writing, etc.—were not covered in mandatory faculty courses. I was looking for Red Hatters who would be able to cover the Git lecture when I stumbled across the workshop given by Irina and Tom at DevConf.cz. I got positive feedback on their work, so I approached them.
What did it take to start teaching a Git course at the university?
Tomáš: Courage, definitely. Lots of thinking and preparation. Starting a course from scratch was really tough, even with all the preparation and help. I did not expect we’d need to prepare materials for the course in the evenings and correct homework at night or during the weekend. Each class took us several days to prepare between content development, homework assignments, lab, and replying to students’ questions. It was fascinating to learn how much time teachers spend working beyond the time actually spent teaching.
Irina: Right. Submitting a course proposal, its syllabus, and course objectives was the easiest part. Preparing the course content, slides, labs, and homework—that was the most difficult and time-consuming part. I think we underestimated how much time it would take. However, we now have a good basis for the next lectures.
Martin: Hosted lectures in existing courses are quite common here, but rarely is a whole course organized by an industry partner. In a way, these are pilot efforts to institutionalize industry courses at MUNI FI. This course was also the first ever half-course, lasting only six weeks instead of the usual 13. Finally, we needed to get students interested and enrolled in the course, which was much easier than expected. Git is obviously still a hot and interesting topic.
Who could take that course?
Tomáš: The course was available to MUNI students only, but it doesn’t matter what program they study or if they are studying for a bachelor’s, master’s, or PhD degree. We tried to form a homogeneous group so all students would be on the same level, but it didn’t work. There was a big range in knowledge and experience: some students only knew a handful of Git commands, while others had already made upstream contributions.
Irina: To register for the course, students had to submit a request to confirm their interest and answer questions about why they want to take the course and what they know about Git. We wished we could have taken everyone, but we had more than 40 applications for only 20 spots.
Martin: We decided to constrain the course to a single seminar group of MUNI students to pilot the concept. Since things went well, we’re considering opening multiple seminar groups or replicating the effort at another local university.
Were there many women enrolled as students?
Irina: Approximately half the applications were from women, and we kept this ratio in the course group. When I studied at the university 17 years ago, we had very few women on the faculty—just two to four in a group of 25-30 students each year. It is nice to see that it is changing.
What does the typical lesson look like?
It was glorious to see students in action: when we proposed a task, they all started passionately working on it the right way.
Tomáš: In Czechia, the autumn semester typically starts in the middle of September and lasts until Christmas. Our course was an experiment as it only lasted half the semester. We had a two-hour-long class every week. It was glorious to see students in action: when we proposed a task, they all started passionately working on it the right way. Their engagement was rewarding.
Irina: During each class, we used slides listing the basic commands and graphs for Git operations. We tried to give lots of examples from our day-to-day experience. There were also labs where students first tried to resolve a task, and then we discussed it together. We often used a whiteboard to illustrate the flow. For homework assignments, we asked students to pair with someone new to complete them since it was a group task. We always started each class with slightly tricky questions based on the material from the previous lesson.
What was the students’ feedback?
Tomáš: Their feedback is the reason I want to do the course again. Despite my feeling like the course wasn’t good enough, they gave us great feedback on what worked, what could be improved, and what they learned. Students loved how Irina explained flows on a whiteboard and made it interactive by asking a million questions. They also liked when I provided examples from projects I was working on or showed shortcuts, tips, and tricks. And a cherry on top: one person commented this should be a mandatory course. It was heartwarming to see that all our effort had such an effect.
Irina: We definitely have things to work on and could benefit from automating some processes. But when students write about how much they learned and better understand Git after taking our course, or that it should be a mandatory course for all FI students, it is indeed heartwarming. Notably, one Master’s student was writing their graduation thesis and already had all the required credits to complete the program, but they still attended our course.
What are the plans for this Git course? Will you continue teaching it?
Irina: We’d like to continue it. I hope we can take more students for the next iteration. Maybe we will have more groups, ideally separated by levels for absolute beginners and more advanced. We are also considering teaching it at another university.
Martin, are there any other companies teaching in MUNI?
Martin: Hosted lectures by industry professionals from multiple companies are common in courses. As for running an entire course, that is still rare, and only a few companies have attempted it. They usually are dropped after a year as they consume too much time and effort. That’s why I started the Git course on a smaller scale with just one group over half a semester. If it continues to go well, we can strive for a sustainable way to grow. In the future, I can see multiple industry partners following suit and bringing their own courses to the university.
Martin, are there any other courses taught by Red Hatters in MUNI university?
Martin: Yes, there are. In parallel to the Git course, Red Hatters Mária Šviriková, Software Engineer, and Karel Hala, Principal Software Engineer, led a course on developing intuitive user interfaces in cooperation with Notino. Marek Grác, Senior Software Engineer, leads a course on applied machine learning. In the spring semester of 2023, we plan to test a half-course on technical writing. There are plans for multiple hosted lectures, but the mentioned courses are the largest efforts.
What would you recommend to others who want to teach at the university?
Tomáš: If you want to do it, go for it. It will be hard, demanding, and take a lot of time and energy, but it’s worth it. We are also happy to talk and answer your questions.
Irina: Ping the Red Hat Research team to ask for guidance. I think students are happy to attend a course from someone working in enterprise.
Martin: As Irina said, if you’re interested, contact the Red Hat Research team, which is responsible for research and teaching academic cooperation. We’ll guide you through the options and commitments. It’s wise to start small, maybe with a one-time workshop or a hosted lecture, and scale from there.
Learn more about the MUNI and Red Hat partnership
Explore course materials created by Red Hatters and faculty at partner institutions