Teaching open source
Inspiring Minds while The World Evolves
Attribution-NonCommercial-ShareAlike 4.0 International (CC BY-NC-SA 4.0)
Craig Gardner
● Senior Software Engineer, and
● Software Engineering Manager, SUSE
○ Craig.Gardner@suse.com
● Adjunct Instructor, Utah Valley University
○ CS2450 Software Engineering I
○ CS305G Global Ethics and Technology
○ Craig.Gardner@uvu.edu
The Challenge
Slow growth in open source contributors
versus rapid growth in demand
“It’s hard to find people to hire. Because
everybody’s [already] been hired.”
-- Greg Kroah-Hartman, CoreOS Fest 2016
Presentation Endurance
● Why open source
● Where we can make the biggest impact
● How to use open source
● What students are ready to do today
○ Preparing students to contribute
Why open source?
open source versus programming
Teaching programming is common
and worthwhile
Teaching open source is not so common
It’s also programming
… but is more valuable
… accomplishes more with less
Free Software (as in “Freedom”)
Richard Stallman (FSF):
1) Freedom to run the program any place, any purpose and forever.
2) Freedom to study how it works and to adapt it to our needs. This
requires access to the source code. (i.e. open source)
3) Freedom to redistribute copies [of the sources and binaries], so that
we can help our friends and neighbours.
4) Freedom to improve the program and to release improvements to
the public. This also requires the source code.
http://www.gnu.org/philosophy/free-sw.html
Open Source in Schools?
“Free” software seems counterintuitive
● Schools promise students jobs
● … paying jobs
● Schools are funded by taxes
● … and corporations
● Most schools simply don’t understand
● Most schools have limited scope and time
Standard Approach in Schools
… Hence, teaching is typically patterned
according to a Proprietary Modelx`
Broken Approach
● Individual work versus collaboration
○ “Collaboration can’t assert the individual has learned
anything!”
● Writing code from scratch versus reuse
○ “How do I know the student is learning how to
program if he’s just borrowing someone else’s
code?”
Benefits to Schools
School Administrations that use open source:
● Low cost
● Increased reliability of software
● Better stability of operating environment
● Easier to audit
● Freedom, with no vendor lock in
Where is open source?
● 64 percent of companies currently
participate in open source projects
○ Up from 50 percent in 2014
○ Next 2-3 years: 88 percent expected
● More than 78 percent of companies cite a
reliance on open source software
https://www.blackducksoftware.com/future-of-open-source
Status of open source
“Recruiters are in hot pursuit of [open source] talent. As
business continues its tectonic shift to an open source
model, employers are hungrier than ever for skilled Linux
professionals who can demonstrate their competencies.”
Linux Foundation 2015 Linux Jobs Report
http://www.linuxfoundation.org/publications/linux-foundation/linux-jobs-report-2015
Future of open source
https://blogs.technet.microsoft.com/windowsserver/2015/05/06/microsoft-loves-linux/
Future of open source
“Open Source software is at the heart of Apple
platforms and developer tools, and Apple
continues to both lead and make significant
contributions to many Open Source projects.”
http://www.apple.com/opensource/
Future needs
● 71% of new STEM jobs are in computing
● Only 8% of STEM graduates are computing
● 1 in 4 schools teach programming
Easy to see the connection
www.code.org ; data collected from www.bls.gov
Preparing for College
Champions of open source
● Harvard
● Rochester Institute of Technology
● Oregon State University
● Experiments at high schools
○ Wasatch Institute, Utah
○ Penn Manor, Pennsylvania
open source is the New CV
● Actual display of programming skills
● Typical display of collaboration skills
● Insight into evolution / improvement
● Harder to misunderstand
Turning Students into Contributors
This is the hard part
Exposing students to open source is easy
Getting students contributing is the hurdle
Getting students interested in a project
Getting students inserted into the project
Hurdle
Hurdles
A Hurdle Metaphor:
● running is normal
○ Basically just a controlled fall forward
● hurdling is not at all natural
● it hurts when you fail
Hurdle Fails
open source Projects
The rest of the Metaphor:
● Programming is normal
○ It’s just programming
● contributing does not come naturally
○ At least compared to what the students have
experienced so far
● it hurts when you fail
Where Can We Make The Biggest Impact?
Start Young
Start young with Programming
● students in China and Thailand start in Grade 3
● 88% of global businesses can’t fill positions
● Fairly well defined pipeline
○ Future needs depend on early start
○ Harder to train later than to start early
○ early education drives later education
http://www.linuxfoundation.org/news-media/announcements/2015/03/2015-linux-jobs-report-linux-professionals-high-demand
Industry Involvement
● Schools follow the money
● What schools can’t get from Government,
they get from Industry
○ or go without
But if schools could do more with less ...
How to use open source
open source in the Classroom
● Pick specific projects of interest
● Plenty of variety; easy to hard
● Start with examples
● Move gradually to contributing
● Class assignments model open source
project
● Recognize and reward collaboration
Preparing Students to Contribute
Preparing Students to Contribute
● Start with programming
● Solve real problems
● Encourage team programming
● Demonstrate that Failure is part of Success
Preparing for Success
Nietzsche
Hurdles may hurt (a little), but
“That which does not kill me makes me
stronger.” -- Friedrich Nietzsche
Great Success
Sometimes with our hurdle skills, we do this:
Like a Boss
Keys to Success
1) Teach applicable skills
2) Give students opportunity to validate skills
3) Teach students to collaborate
4) Get students exposed to communities that
interest them
5) English
Your Challenge
Inspire a young person;
get involved in education
Find a young person, and become a mentor
● code.org an excellent resource, and plenty of free resources
● Guide the student to solve real problems
Find a local school, and offer to help in the classroom
● You’re already volunteer in software communities...
● Donate a little time to your local classroom
● Don’t look to “fix” their problems, but offer to be a resource
● Hook them up with solving real problems with open source
Success to Us All!
Thank You
Craig Gardner
University Instructor
Software Engineering Manager
craig.gardner@opensuse.org
Photo and Graphic Credits
10. Apple Inc. logo: https://en.wikipedia.org/wiki/Apple_Inc.#/media/File:Apple_logo.svg
19. Hurdle: http://www.sportswarehouse.co.uk/product_images/o/765/harrod_schools_hurdle_junior__86266_zoom.jpg
21. Hurdle fails:
http://www.projectaccelerator.co.uk/wp-content/uploads/2013/11/project-hurdles.jpg
http://www.hahastop.com/pictures/Hurdles_Fail.jpg
http://funnyasduck.net/post/10566
34. Hurdle wins:
http://media.mensxp.com/media/guylife/content/2012/Feb/hurdlesinline.jpg
http://cdn.bleacherreport.net/images_root/slides/photos/000/147/900/knowshon-moreno-jumps-hurdles-defender_display_image.jpg?
1264994305
http://news.bbcimg.co.uk/media/images/75521000/jpg/_75521047_rvpheader.jpg
License Governing this Presentation
This is the creative work of Craig Gardner, who retains copyright for this work
This is Open Source
Licensed under Creative Commons
Attribution-NonCommercial-ShareAlike 4.0 International (CC BY-NC-SA 4.0)
https://creativecommons.org/licenses/by-nc-sa/4.0/
For non-commercial use, sharing/copying allowed as long as you give appropriate credit to the author
If you remix, transform, or build upon the material, you must distribute your contributions under the
same license as the original

Teaching open source 2016

  • 1.
    Teaching open source InspiringMinds while The World Evolves Attribution-NonCommercial-ShareAlike 4.0 International (CC BY-NC-SA 4.0)
  • 2.
    Craig Gardner ● SeniorSoftware Engineer, and ● Software Engineering Manager, SUSE ○ Craig.Gardner@suse.com ● Adjunct Instructor, Utah Valley University ○ CS2450 Software Engineering I ○ CS305G Global Ethics and Technology ○ Craig.Gardner@uvu.edu
  • 3.
    The Challenge Slow growthin open source contributors versus rapid growth in demand “It’s hard to find people to hire. Because everybody’s [already] been hired.” -- Greg Kroah-Hartman, CoreOS Fest 2016
  • 4.
    Presentation Endurance ● Whyopen source ● Where we can make the biggest impact ● How to use open source ● What students are ready to do today ○ Preparing students to contribute
  • 5.
  • 6.
    open source versusprogramming Teaching programming is common and worthwhile Teaching open source is not so common It’s also programming … but is more valuable … accomplishes more with less
  • 7.
    Free Software (asin “Freedom”) Richard Stallman (FSF): 1) Freedom to run the program any place, any purpose and forever. 2) Freedom to study how it works and to adapt it to our needs. This requires access to the source code. (i.e. open source) 3) Freedom to redistribute copies [of the sources and binaries], so that we can help our friends and neighbours. 4) Freedom to improve the program and to release improvements to the public. This also requires the source code. http://www.gnu.org/philosophy/free-sw.html
  • 8.
    Open Source inSchools? “Free” software seems counterintuitive ● Schools promise students jobs ● … paying jobs ● Schools are funded by taxes ● … and corporations ● Most schools simply don’t understand ● Most schools have limited scope and time
  • 9.
    Standard Approach inSchools … Hence, teaching is typically patterned according to a Proprietary Modelx`
  • 10.
    Broken Approach ● Individualwork versus collaboration ○ “Collaboration can’t assert the individual has learned anything!” ● Writing code from scratch versus reuse ○ “How do I know the student is learning how to program if he’s just borrowing someone else’s code?”
  • 11.
    Benefits to Schools SchoolAdministrations that use open source: ● Low cost ● Increased reliability of software ● Better stability of operating environment ● Easier to audit ● Freedom, with no vendor lock in
  • 12.
    Where is opensource? ● 64 percent of companies currently participate in open source projects ○ Up from 50 percent in 2014 ○ Next 2-3 years: 88 percent expected ● More than 78 percent of companies cite a reliance on open source software https://www.blackducksoftware.com/future-of-open-source
  • 13.
    Status of opensource “Recruiters are in hot pursuit of [open source] talent. As business continues its tectonic shift to an open source model, employers are hungrier than ever for skilled Linux professionals who can demonstrate their competencies.” Linux Foundation 2015 Linux Jobs Report http://www.linuxfoundation.org/publications/linux-foundation/linux-jobs-report-2015
  • 14.
    Future of opensource https://blogs.technet.microsoft.com/windowsserver/2015/05/06/microsoft-loves-linux/
  • 15.
    Future of opensource “Open Source software is at the heart of Apple platforms and developer tools, and Apple continues to both lead and make significant contributions to many Open Source projects.” http://www.apple.com/opensource/
  • 16.
    Future needs ● 71%of new STEM jobs are in computing ● Only 8% of STEM graduates are computing ● 1 in 4 schools teach programming Easy to see the connection www.code.org ; data collected from www.bls.gov
  • 17.
    Preparing for College Championsof open source ● Harvard ● Rochester Institute of Technology ● Oregon State University ● Experiments at high schools ○ Wasatch Institute, Utah ○ Penn Manor, Pennsylvania
  • 18.
    open source isthe New CV ● Actual display of programming skills ● Typical display of collaboration skills ● Insight into evolution / improvement ● Harder to misunderstand
  • 19.
    Turning Students intoContributors This is the hard part Exposing students to open source is easy Getting students contributing is the hurdle Getting students interested in a project Getting students inserted into the project
  • 20.
  • 21.
    Hurdles A Hurdle Metaphor: ●running is normal ○ Basically just a controlled fall forward ● hurdling is not at all natural ● it hurts when you fail
  • 22.
  • 23.
    open source Projects Therest of the Metaphor: ● Programming is normal ○ It’s just programming ● contributing does not come naturally ○ At least compared to what the students have experienced so far ● it hurts when you fail
  • 24.
    Where Can WeMake The Biggest Impact?
  • 25.
    Start Young Start youngwith Programming ● students in China and Thailand start in Grade 3 ● 88% of global businesses can’t fill positions ● Fairly well defined pipeline ○ Future needs depend on early start ○ Harder to train later than to start early ○ early education drives later education http://www.linuxfoundation.org/news-media/announcements/2015/03/2015-linux-jobs-report-linux-professionals-high-demand
  • 26.
    Industry Involvement ● Schoolsfollow the money ● What schools can’t get from Government, they get from Industry ○ or go without But if schools could do more with less ...
  • 27.
    How to useopen source
  • 28.
    open source inthe Classroom ● Pick specific projects of interest ● Plenty of variety; easy to hard ● Start with examples ● Move gradually to contributing ● Class assignments model open source project ● Recognize and reward collaboration
  • 29.
  • 30.
    Preparing Students toContribute ● Start with programming ● Solve real problems ● Encourage team programming ● Demonstrate that Failure is part of Success
  • 31.
  • 32.
    Nietzsche Hurdles may hurt(a little), but “That which does not kill me makes me stronger.” -- Friedrich Nietzsche
  • 33.
    Great Success Sometimes withour hurdle skills, we do this:
  • 34.
  • 35.
    Keys to Success 1)Teach applicable skills 2) Give students opportunity to validate skills 3) Teach students to collaborate 4) Get students exposed to communities that interest them 5) English
  • 36.
    Your Challenge Inspire ayoung person; get involved in education Find a young person, and become a mentor ● code.org an excellent resource, and plenty of free resources ● Guide the student to solve real problems Find a local school, and offer to help in the classroom ● You’re already volunteer in software communities... ● Donate a little time to your local classroom ● Don’t look to “fix” their problems, but offer to be a resource ● Hook them up with solving real problems with open source
  • 37.
    Success to UsAll! Thank You Craig Gardner University Instructor Software Engineering Manager craig.gardner@opensuse.org
  • 38.
    Photo and GraphicCredits 10. Apple Inc. logo: https://en.wikipedia.org/wiki/Apple_Inc.#/media/File:Apple_logo.svg 19. Hurdle: http://www.sportswarehouse.co.uk/product_images/o/765/harrod_schools_hurdle_junior__86266_zoom.jpg 21. Hurdle fails: http://www.projectaccelerator.co.uk/wp-content/uploads/2013/11/project-hurdles.jpg http://www.hahastop.com/pictures/Hurdles_Fail.jpg http://funnyasduck.net/post/10566 34. Hurdle wins: http://media.mensxp.com/media/guylife/content/2012/Feb/hurdlesinline.jpg http://cdn.bleacherreport.net/images_root/slides/photos/000/147/900/knowshon-moreno-jumps-hurdles-defender_display_image.jpg? 1264994305 http://news.bbcimg.co.uk/media/images/75521000/jpg/_75521047_rvpheader.jpg
  • 39.
    License Governing thisPresentation This is the creative work of Craig Gardner, who retains copyright for this work This is Open Source Licensed under Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International (CC BY-NC-SA 4.0) https://creativecommons.org/licenses/by-nc-sa/4.0/ For non-commercial use, sharing/copying allowed as long as you give appropriate credit to the author If you remix, transform, or build upon the material, you must distribute your contributions under the same license as the original