The effective daum coursework focused on open source software in Jeju National Univ. (2011)
2011 5th International Workshop on Practical Engineering EducationThe Effective Daum’s Courseworkfocused on Open Source Softwarein Jeju National University Seokchan Yun*, Youngchul Byun** (Daum Communications Corp, Korea*, Jeju National University, Korea**)
Agenda• Why Open Source? – Daum’s needs for OSS education – Benefits of OSS education – Encouragement program for students• Open Source Class in Universities – Open Source@Seneca – Open Source Coursework in JNU – Results• Conclusion
Daum’s Technical Platform• GLAMJI – Operation: Linux (Redhat)+Apache + MySQL – Development: Java (Tomcat, Struts, Spring) – Environment: IDE (Eclipse, SubVersion)• Daum Forge – Project management using Wiki, Jira and Trac – Using project tools in open source softwares – Needs to understand OSS culture!• Supporting OSS community
GLAMJI Platform – GNU/Linux – Apache – MySQL – Java (Struts, Spring) – IDE (Eclipse, Subversion, Jira)
Why supporting OSS community?• http://ftp.daum.net – OS: Red Hat Enterprise Linux AS release 4 – Memory: 12GB – Storage: 4TB Raid Storage – Network: Gigabit Ethernet• http://oss.daum.net – Community hosting server• The key of Daum’s technical needs gathers students being familiar with Open Source Software. – Supporting local college curriculum
Benefits for students Why do you join Open Source?• Intellectually stimulating : 44.9%• Personal Skill-up : 41.3%• Supporting to be public source code : 33.1%• Non-work functionality : 29.7%• Work functionality : 33.8%• Pleasure on community : 20.3%• Improving career : 17.5%• Reputation : 11.0%• Hating commerce software : 11.1% Reference: Boston Consulting Group (2002) http://www.bcg.com/publications/publication_view.jsp?pubID=935&language=English
When do you join Open Source?Free/Open Source Software: Survey and Studyhttp://www.infonomics.nl/FLOSS/report/index.htm
Why is important to students?• Problems – Despite of decreasing CS students, there is no chances to join real world software development. – Hard to recognize enterprise needs and global trends.• Reason – The period for intelligent stimulation ▶ Creative works – Joining real-world software development. – Learning chance to contribute for the society. – Understanding community-driven software projects. – Meet-up software mentors in community – Going to the good software companies
Existing Activities• Extending OSS users – Supporting to install Open source software and teaching OSS to student and let them use OSS – Projects • FSF: http://www.gnu.org/education/ • KDE: http://edu.kde.org/ • Ubuntu: http://www.ubuntufund.org/ • OpenOffice: http://education.openoffice.org/• Connecting OSS community – Google Summer of Code and Google Highly Open Participation Contest, NCSoft Winter of Code• Educational Curriculums – OpenSource@Seneca, Mozilla Education Project, JNU’s Daum Track
Finish elementary students to use Linux Mongolian students to use OLPC
Google Summer of Code• What’s SoC? – Google Summer of Code is a program designed to encourage college student participation in open source development with global scale communities• Benefits – Students gain: skills, real world experience, sample code, and contacts. – Organizations gain: new contributions, contributors, and global exposure.
By universities http://google-opensource.blogspot.com/2008/05/this-weeks-top-10s-universities-for.html
Google code-in (aka, Google Highly Open Participation Contest)• For K12 students• The contest was a great success with 361 students (ages 13-18) from 48 countries completing a total of 2,167 tasks during the 7 week contest period.
Existing Activities• Offering education materials by Google – – http://code.google.com/edu/resources/index.html• Open Source Class : But, not sustainable – http://www.cs.pdx.edu/user/coursedetails/110 – http://www2.sims.berkeley.edu/academics/courses/is296a- 2/f05/ – http://wiki.cs.rpi.edu/trac/rcos/wiki/ – http://www.cs.umd.edu/class/fall2007/cmsc433/projects/os/ind ex.html• There is almost no educational programs for open source software.
OpenSource@Seneca• Introduction – The first open source class engaged with OSS communities by Seneca College in Canada• How to – Opening Classes from 2006 • DPS909: Topics in Open Source Development • DPS911: Open Source Project – http://zenit.senecac.on.ca/wiki/index.php/Main_Page – Joining OSS developers as a lecturers • Mozilla, Fedora, OpenOffice etc. – Encouragement to join communities directly • http://zenit.senecac.on.ca/wiki/index.php/Project_List
The first Open Source Class in Korea (2007) Search “Open Source Class” in Google!
Coursework• Introduction and history of Open Source Software• Developers tools – SVN(Mercurial), Bugzilla, L10n and documentation• Community-driven process – Build, QA and release• Lab project : connect to directly OSS projects – Choice: Source-contribution, l10n and marketing etc. – Requirement: at least one more participation in existing OSS projects
How many join OSS project?• 2007 (35 students) – Localization in Sourceforge.net – Some guys became l10n owner of specific project• 2008 (28 students) – Joining local OSS project : TextCube and XE Project• 2009 (33 students) – Joining local OSS project : Daum Open Editor• 2010 (44 students) – Joining global OSS project: Mozilla Support• 2011 (26 students) – Joinng global and local OSS projects – Debian, OpenOffice, Mozilla, Ubuntu and XE
Extending coursework Training OSS focused SW engineers Curriculum, textbook and facilitation OSE Track CT Track OSS based OSS based Operating OSS based Software System Programming Learning language OSS based Project Management OSS based OSS based OSS based Project Project and Programming Management Excises Language
Curriculum and Textbooks CE Department: 10 classes for Open Software Experts Education Department: 5 classes for Computational Thinking
IV. 적용 현황 OSE Track Curriculum 2009 Class name Textbook Dept. Grade Students 1 2 Computer Mobile Programming Java-based Mobile Apps ● Engineering 3 10 (JNU) Java-based Ubiquitous Artificial Intelligence ● 〃 10 Programming Open Source Software OSS Class Part I ● 〃 3 17 Development Open Source Programming OSS Class Part II ● 〃 4 16 Internet Programming PHP Lanuage ● 〃 2 61OSETrack Operating Systems Linux Basics ● 〃 3 39 Data Structure Java-based Data Structure ● 〃 2 55 Database MySQL Basics ● 〃 3 22 Structured P2P Pastry Network Applications Using FreePastry ● 〃 4 21 Embedded System Linux based Embedded System ● 〃 3 33 Analysis on Open source Software Designs ● 〃 4 10 softwares 294
CT Track Curriculum 2009 Class Name Textbook Institution Grade Students 1 2 Computer Programming Language Logo programming ● Education 2 10 (JNU) Information Society Jeju Women’s Logo Programming ● ● 2 313 and Computer High School Information Society Jeju Science Logo Programming ● ● 1 41 and Computer High SchoolCT Computer Computer Programming C Language ● ● Education 1 21 (JNU) Computer Web Programming PHP Language ● Education 1 28 (JNU) Computer System Programming Linux Basics ● Education 2 23 (JNU) 436
FacilitationCE DepartmentEducation Department High School
V. 적용결과 Results Survey Half of students heard about open source software Most of students are participating and understands the class Participation Knowledge 적극적 비적극적 예 아니오 9%43% 57% 91% Understanding Continuing Learning 100% 70% 50% 20% 0% 예 아니오 3% 9% 11% 11% 37% 40% 89%
Daum Tack Coding test #1 in all local applicants Rate: 2008- 100%, 2009- 88%, 2010- 90%
One suggestion!• Make “UNIQUE” class for “OPEN SOURCE SOFTWARES” to join community compared with “SOFTWARE ENGINEERING”! – Linux or Web programming class is NOT focused on real open source software.• Encourage community participation not only to make source code! – All students don’t love to make source code.
Conclusion : The future of OSS class for enterprise• Extending OSS Eco-system – Training long-term SW engineers – Human resources for OSS based SW companies – Vitalization value-added software based on OSS• Just Education – Extending Open Source Courseware • MIT: http://ocw.mit.edu/index.html • OCWC: http://ocwconsortium.org/ – Not only knowledge but also Sharing (Real engineering education)