How one learns from his students in his very own class..

The third semester of teaching CS3108 (Mozilla) is coming to an end. For those of you new to the course, it is one that I guide students at my school, National University of Singapore, where I am currently finishing my third year of undergraduate studies. (Kudos to Professor Lee Wee Sun for supporting me over the many months, as well as others I haven’t mentioned)

Over the past semesters, I have welcomed student feedback on how I can make the course better and more exciting, at the same time remaining its flexibility in allowing students to fulfill their dreams at working on a large open source project.

Some of the feedback have been interesting. The first two batches came back with the opinions that each lesson have an overview of what the lesson should be about (I’m getting better at this, doesn’t seem to be a problem this semester), while there have consistently been queries asking about the CAP (GPA in other countries) required to take the course (which there isn’t).

As for the latter, my professors have been noting the trend that half the students in the first lesson of the course seem to disappear after hearing about the expectations. I am of the opinion that only the independent survive, because I am a student myself, I do not possess the opinion that the students be spoonfed material. I merely guide them along, in return for some wonderful projects that have happened over the past courses. To be honest, by the second half of the course, the students are usually much more well-versed than I am in their own area of interest.

Of course, I could always do better. This semester, there has been thought about how to obtain a student-project more easily, and this in fact has recently been mitigated with the introduction of the `student-project` keyword a while back. Interestingly, the students are also suggesting to give homework, not in the form of overly tough laboratory work, but rather short little quests. Such quests could involve writing a simple mozmill test to open a new tab, or even to use the DOM Inspector and find out the id of the Go button in Firefox, for example.

I thoroughly enjoy my classes at school. It is a great opportunity for the students to learn about the open source world, as well as a place where I can also learn from the students themselves, especially since some of their technical coding skills may be better than my very own. It brings forth the message of humility, where no one is above anyone else. I always encourage them to refer to the classes as “sharing sessions”, and to call me by name rather than “Professor”, “Lecturer”, or “Sir”, especially since I am none of the former.

I will continue to teach the course for another two semesters, till I graduate. Hopefully by then someone will take over, but till then I will continue to teach the class even though it does occasionally get tiring on top of my own university work. I thank my professors (Professor Dave Humphrey included), past and present students and members of the Mozilla community who patiently help out the students as they swim their way out of the deep end. The course has helped both the community (they get fixes) and the students (they get the experience – one past student did enough to get his name in official credits, another made use of the experience to set up his company, and a third finally may have found enough confidence to apply for a Google Summer of Code project).

CS3108 (Mozilla) will count as one of the biggest achievements that I am proud of, during my university days. I sincerely hope both the students and myself will benefit from this experience as we begin to look for jobs after graduation and step out into the real world.

NUS Student Projects – finalized for AY 09/10 Semester 2

This time, three students from National University of Singapore are taking on Mozilla projects across various disciplines, in no particular order:

Feel free to say hi to them if you spot them on IRC!

HOWTO: Edit Mozilla code in 5 minutes – make a simple change and see the results instantly

A few days ago, one of my professors at National University of Singapore asked me if I could provide a screencast of making a change to Mozilla (Firefox) code and seeing the change post-re-compilation, for a CS2103 course (that I didn’t have to take due to it not being part of my module requirements). I happily obliged though, and here is the screencast:

Screencast in swf (just under 4 minutes)

(Created using Jing, and I have no idea how to convert it to Theora, so apologies for that.)

Free for educational purposes only, please contact for other requirements.

NUS in Mozilla map of students around the world

Mark Surman has an interesting post over at his blog, where he maps the list of students working on Mozilla around the world. It’s amazing how Mozilla just started off in the education area not too long ago – and already encompasses ~14 schools worldwide now, from the North America to Europe, from Asia to Oceania. Kudos especially to humph for his great work linking up folks around the world.

National University of Singapore (NUS) has just finished CS3108 (Mozilla) a few weeks ago (the 4 folks being Yuen Hoe, Yaoquan, Hendrik and Tony), it will be taking a break over the next semester as I head overseas for an exchange program. I look forward to more students stepping into Mozilla development in the future.

Before I end here, I would especially like to mention that it really reaps returns and satisfaction of the highest quality, when students transform from someone totally lost to someone capable in their own right in the world of open source, within mere weeks, guided by folks around the world, with different timezones, different cultures.

Talk on Open Source development for college students, by a college student

I gave a 1 hour talk on open source development at my school, National University of Singapore, on Friday evening 6.30pm, thanks to an invitation from one of my professors, Prof Damith. There were about 15-20 students in the audience, most new to OSS, while there were a handful who already worked on OSS projects, such as Linux and Bazaar. Bits of my Mozilla open source experience went in as well.

I accepted the invitation to give a talk because I love to teach anyone who is willing to learn. It perks me up when I see fellow students learning from me, eventually becoming better than me in their own areas of OSS development. It is one of the best feelings anyone can experience. (yeah, maybe on par with, but probably not surpassing the feeling of being in love)

The slides have been uploaded. I hope the slides would prove useful to anyone looking to work on OSS, please let me know if I can help students in any way, my summer isn’t fully booked yet, and I can head anywhere around the world for discussions / talks. 🙂

(WordPress.com prevents embedding of Google Presentation slides, so I did a link instead.)

student-project keyword is live on Mozilla bugzilla – start tagging now!

Dave Humphrey has written an excellent blog post where he describes the introduction of the “student-project” keyword in Mozilla bugzilla – he also covers how to classify bugs as student-projects.

I have also gotten some queries up and running over at Mozilla Wiki where you can keep track of these projects via queries, feeds and all. These queries are Mozilla-wide, they encompass all products from Firefox to Thunderbird, SeaMonkey to Sunbird etc.

Please start tagging, then tracking “student-project” now, if you are interested!

And do join us on #education on IRC, as well as the weekly meeting phone calls. We are having great momentum here, let us continue to maintain it and push forward. 🙂

NUS Student Projects – finalized

So here you go, four students from National University of Singapore are taking on Mozilla projects across various disciplines, in no particular order:

  • Yuen Hoe (moofang on IRC) is working on a Thunderbird accessibility bug 449560, as well as bug 227305 which is about drag-and-drop support of messages to the Desktop from Thunderbird.
  • Yaoquan (Yaoquan) is hacking on porting Personas to Thunderbird.
  • Tony (tonyvu) is intent on improving Ubiquity commands.
  • Hendrik (Hendrik) is tackling bug 475967, which is a Feature Request to “Right-click password dialog to forget saved password.”, probably implementing an extension if necessary.

Feel free to say hi to them if you spot them on IRC!