Education is an important field for open source software to target. Today’s generation will define the future to come, and the lessons of open source software are important to teach to professors and students, including children, teens, and young adults. There are already several different initiatives to better teach open source, including Fedora, in school. The Fedora Council approved the University Involvement Initiative as an objective for the entire project in early 2014. Its goal is to increase the number of university students who use and contribute to Fedora.
For those who already live in an education system surrounded by Windows, it can be difficult to see how to implement Fedora and other open source technologies. Common questions include:
- How do you shape the curriculum around open source technology?
- How can you work with an individual student’s needs for their digital assignments?
- Is it sustainable in the long-term?
However, schools in the real world already deploy and use open source software in their own curriculum. Fedora Magazine had a chance to catch up with Jonathan Dieter, a schoolteacher and systems administrator in Lebanon. Jonathan’s school uses open source tools and Fedora to teach kids how to make and not just how to use.
Tell us a bit about yourself!
“My name is Jonathan Dieter and I’m the system administrator for the Lebanon Evangelical School in Loueizeh, Beirut, Lebanon. I also teach twelve lessons a week to grade six (11-12 years-old) and grades nine and ten (14-16 years-old). I’ve been teaching at the school for a total of almost 14 years.”
How were you first introduced to Linux and Fedora? When you began using Linux, could you see its application to learning and education?
Instructor Jonathan Dieter goes over using tools and features inside of Blender.
“We originally started looking into Linux back in 2000 mainly because we wanted to move away from Windows NT on our servers. I started off with Mandrake Linux , but switched to Fedora Core 2 in late 2004. As a school, we started migrating our servers from Windows to Linux (a combination of Fedora and CentOS) in 2005/2006 and made the decision to switch our desktops over to Fedora in 2008, mainly because I was sick and tired of reinstalling Windows on an almost daily basis due to constant virus reinfections.
We didn’t choose Fedora because we thought it had better tools for teaching, but we did choose Fedora knowing that it did have all the necessary tools and would be far less of a pain from the sysadmin point of view.”
What type of curriculum is prepared for your students? When you begin a course, where do you start? By the end, where do you hope to be?
“Because our computer courses aren’t mandated by the local government, we’ve had complete freedom to come up with our own curriculum. We originally designed it for sixth to twelfth grade (though we’re extending it down to fourth grade now). At our school, computers is a mandatory subject for one hour a week, so each year’s curriculum is designed to be around 35-40 hours of teaching, with plenty of time for homework assignments.
Our current curriculum is as follows.
- General computer knowledge (15 lessons)
- Parts of the computer
- Includes disassembling a computer and passing the parts around
- Sizes and prefixes
- Open source software
- Binary numbers
- Touch typing (20-25 lessons)
By the end of grade six, students should be able to look at an advertisement for a computer and identify what the different specifications actually mean . They should be able to identify any part of the computer by name and explain its purpose. They should be able to look at a USB drive and figure out roughly how many songs and/or videos would fit on it. And they should be able to touch type comfortably.
A group of students work on their lab assignment with their workstation. (Jonathan Dieter, CC-BY-SA)
- Intro to word processing (15 lessons)
- Basic rules to follow
- Bullets and numbering
- Inserting images
- Photo editing (5-10 lessons)
- Ethics of editing photos
- Photo enhancement (curves, saturation, etc)
- Photo manipulation (cloning, healing, etc)
- Presentations (15 lessons)
- Basic rules to follow
- Guidelines on creating a good-looking presentation
- Each student gives a presentation to the class about themselves
By the end of grade seven, students should be able to create a simple document that follows standard formatting conventions and looks nice without being overdone. They should be able to paste a photo of their head on Matt Damon’s body and they should understand the contexts in which doing so might be unethical.
- Intro to spreadsheets (18-20 lessons)
- Understanding cell data types
- Mathematical operations using cell references
- Absolute vs. relative cell references
- Creating simple web pages (17-20 lessons)
- Simple HTML
- Simple CSS
By the end of grade eight, students should be able to create spreadsheets complex enough to create a simple budget or an invoice. They should also be able to create a simple static web site that has a consistent theme.
- Advanced word processing (15 – 20 lessons)
- Purpose and use of the different CC licenses
- Formatting using Styles
- 3D modeling (20 lessons)
- Designing 3D objects
- Adding materials and textures
- Simple animation
By the end of grade nine, students should be able to create a newsletter that looks professional. Students should also be able to create a simple 3D scene that can be used either for a still picture or a short animation.
A student tweaks his lock design in Blender, a free and open source animation studio. (Rowana Bejjani, CC-BY-SA)
- Programming using Scratch (15 – 20 lessons)
- Creating simple linear animations
- Creating simple games
- Programming using Python (20 lessons)
- Understanding functions, variables, statements and conditions
- Error handling
By the end of grade ten, students should be able to design and program simple games and animations in Scratch, and in Python they should be able to create simple programs that can do things like factoring numbers or carrying on a simple conversation.
- Advanced spreadsheets
- Simple functions (IF, SUM, etc)
- Advanced functions (nested IF statements, SUMIF, etc)
- Advanced graphing (Scatter graphs, etc)
- Statistical analysis using spreadsheets
- LOGO programming
As I mentioned earlier, we’re in the process of creating an extra year to work with by moving the grade 6 syllabus down to 4th and 5th grade, moving Scratch down a year or two, adding in a media course for 15-20 weeks, and doing a full year of Python in grade 10.”
This picture features one of the locks made in Blender by a student. (Mohammad, CC0)
How does Fedora play an integral impact in being able to teach kids programming and computing skills?
Teacher Rowana Bejjani teaches HTML basics to her class. (Jonathan Dieter, CC-BY-SA)
“One of the biggest benefits of using Fedora has been that it forced our students out of the Windows monoculture and we have been forced to teach our students how to do things rather than how to use programs. When I was in school, we had Microsoft Word ’97, and nothing I learned about how using Word ’97 is still applicable today. But almost all of the guidelines I learned about how to create a nice-looking document are still applicable today.
And that’s my goal in teaching my students. I want my students to learn why to do things, not just memorize a bunch of steps.”
How does using Fedora make teaching these skills easier?
“When it comes to teaching Python , Fedora is a champion. Because Python is a first-class citizen of Fedora, I’m not having to jump through hoops to get things to work properly, like I did when I tried teaching Python on Windows ten years ago. All the students need is a text editor and a terminal.
Fedora has also been great in that there have been massive changes over the last ten years or so, but they’ve been fairly gradual. The advantage of Fedora’s rapid release schedule is that you get small changes every six months rather than massive changes every five years.
The largest change we’ve had to deal with was switching from GNOME 2 to GNOME Shell, but we actually made the switch early because our students loved the shell’s shiny new UI.”
What is the biggest problem or problems that using Fedora in your computer labs has helped solve?
“The original problem we had with Windows was constant virus reinfection (even with antivirus installed and running). Oddly enough, that problem completely disappeared when we switched to Fedora.
Having said that, the overall reliability of our systems has improved greatly since switching to Fedora. For each lesson, we used to expect that there would be at least three or four systems down, while now, most of the time, we have every system up and running. When a system is down, 90% of the time it’s a hardware problem.
And while Fedora has obviously helped us keep our software costs down, in recent years, we’ve also used it to cut our hardware costs by switching to multiseat systems.”
Students share some creativity and ideas on their Blender projects. (Rowana Bejjani, CC-BY-SA)
If a colleague from another school asked for your thoughts about whether using Fedora would be helpful in school labs, what would you tell him or her?
“It really depends on the sysadmin and the school. If they want a living computer department, and, most importantly, are willing to put in the time, money and effort to keep it vibrant and growing, then, by all means, use Fedora. If they are looking for something that they can set up and then ignore for a few years, I wouldn’t recommend it.”
Want to learn more?
Want to learn more about Jonathan’s work? You can find more information about his efforts to teach Linux and open source in schools on his personal blog .