SlideShare uma empresa Scribd logo
1 de 23
Open Source and GitHub for Teaching
with Software Development Projects
FOSS4G-Europe, Bremen, July 2014
Daniel Nüst (52°North GmbH), Thomas Bartoschek (Institute for
Geinformatics, Münster)
Teaching Software Development w/ GitHub @ FOSS4G-E, Bremen, 2014 2
Why use Open Source?
Save money
Teaching Software Development w/ GitHub @ FOSS4G-E, Bremen, 2014 3
Why do Open Source?
Save money
Be effective
“Egoistic collaboration” is the present and
future of software development (Google,
Amazon, Yahoo, Microsoft, …)
Teaching Software Development w/ GitHub @ FOSS4G-E, Bremen, 2014 4
Open Source Development in Seminars
All real world software developers use open
source.
Reasons for software projects in education:
Students must learn about licenses (code,
data, documentation)
Business models!
Social & collaborative software development
Students learn project mgmt/lifecycle
Teaching Software Development w/ GitHub @ FOSS4G-E, Bremen, 2014 5
Why bother?
The ultimate goal is to increase the quality
of software development in project
seminars so that geospatial open source
software can benefit from (a) direct
contributions, and (b) programmers that
are acquainted with the “open source way”.
Teaching Software Development w/ GitHub @ FOSS4G-E, Bremen, 2014 6
Scrum
agile software development method –
acknowledges reality
• roles: product owner, scrum master, team
member
• sprints & stand-ups, review meetings
• backlogs
Teaching Software Development w/ GitHub @ FOSS4G-E, Bremen, 2014 7
BASICS ON GIT AND GITHUB
Teaching Software Development w/ GitHub @ FOSS4G-E, Bremen, 2014 8
Git
Development is collaboration, and source code
management is the at the core, but should not
get in the way.
THE SCM of today.
≠
Teaching Software Development w/ GitHub @ FOSS4G-E, Bremen, 2014 9
GitHub Platform
Free (10 Million repositories end of 2013, http://en.wikipedia.org/wiki/Github)
Organisation accounts
Provide material
Students can fork assignments, don’t start from
scratch
Hosting included (e.g. http://geosoft2.github.io/)
Issue tracker
Teaching Software Development w/ GitHub @ FOSS4G-E, Bremen, 2014 10
GitHub for Education
https://education.github.com/
Stop emailing code, never loose your work, stay organized, build a portfolio
Teaching Software Development w/ GitHub @ FOSS4G-E, Bremen, 2014 11
GitHub for Education (cont.)
Teach more effectively
Private repos, teams, ….
distribute starter code, give students feedback,
provide automated tests, collect assignments
Teaching Software Development w/ GitHub @ FOSS4G-E, Bremen, 2014 12
HOW DO WE DO IT?
Teaching Software Development w/ GitHub @ FOSS4G-E, Bremen, 2014 13
GitHub Collaboration Model
http://video.esri.com/watch/3223/social-coding-and-the-
future-of-open-source
Fork & Pull
Pull requests
– Discussion
– Transparency
https://help.github.com/articles/using-pull-requests
Teaching Software Development w/ GitHub @ FOSS4G-E, Bremen, 2014 14
Fork & Pull
Teaching Software Development w/ GitHub @ FOSS4G-E, Bremen, 2014 15
Teaching Software Development w/ GitHub @ FOSS4G-E, Bremen, 2014 16
Grading with GitHub
Challenge: grading group work is hard.
• GitHub allows transparency
• Distinguish numbers (lines changed) from
content
• Students estimate their contributions well
(questionnaire)
• Some quantification possible (# pull requests
created, merged, issues opened/closed), use
to facilitate engagement (not to grade)
Teaching Software Development w/ GitHub @ FOSS4G-E, Bremen, 2014 17
Grading with GitHub (cont.)
Challenge: Different kind of work done by
students.
• Git for collaborative
writing
(docs,
reports, …)
• Value doc.
writing in the
same way
https://github.com/Geosoft2/geosoft2-2014-fundamentals
Teaching Software Development w/ GitHub @ FOSS4G-E, Bremen, 2014 18
Experiences
Students…
… hesitate to establish hierarchies or take over
responsibility > Scrum.
… are careful about not being exposed
publicly.
… are challenged by communication
requirements of collaborative software
development.
… have to be continuously motivated to adopt
an open innovation and development process.
Teaching Software Development w/ GitHub @ FOSS4G-E, Bremen, 2014 19
Experiences (cont.)
… hesitate to publish code. Force them.
… do learn the sense of documentation.
Teachers…
… must stay in touch with new developments
and the business world.
… must be ready to interact.
Teaching Software Development w/ GitHub @ FOSS4G-E, Bremen, 2014 20
Experiences (cont.)
Adjust Scrum…
… using 2 Week long sprints.
… allowing virtual stand-ups, plus weekly with
whole seminar.
… flex up scrum Masters: teachers, another
group’s member.
Teaching Software Development w/ GitHub @ FOSS4G-E, Bremen, 2014 21
Experiences (cont.)
https://github.com/enviroCar/ & https://envirocar.org
Prototype developed in project seminar – new OS project for tracking cars
Teaching Software Development w/ GitHub @ FOSS4G-E, Bremen, 2014 22
How is this relevant for FOSS4G?
Need contributors > get them early!
Students developing as open source are more
likely to use and contribute.
Need capable developers > students,
internships, better devs in the long run, …
Need features > get them done!
Teaching Software Development w/ GitHub @ FOSS4G-E, Bremen, 2014 23
Next, and Goals
Collaborate with you
Share experiences > “open innovation” for
teaching
Guidelines for Teaching Open Software
Development in Projects

Mais conteúdo relacionado

Semelhante a Open Source and GitHub for Teaching with Software Development Projects

32 ways to use google apps in the classroom
32 ways to use google apps in the classroom32 ways to use google apps in the classroom
32 ways to use google apps in the classroom
dwest001
 

Semelhante a Open Source and GitHub for Teaching with Software Development Projects (20)

Spread GHOP: Google Highly Open Participation Contest
Spread GHOP: Google Highly Open Participation ContestSpread GHOP: Google Highly Open Participation Contest
Spread GHOP: Google Highly Open Participation Contest
 
Collaboracionglobal
CollaboracionglobalCollaboracionglobal
Collaboracionglobal
 
Dive into the World of Coding with a Live Python Course
Dive into the World of Coding with a Live Python CourseDive into the World of Coding with a Live Python Course
Dive into the World of Coding with a Live Python Course
 
FLOSS Case Studies
FLOSS Case StudiesFLOSS Case Studies
FLOSS Case Studies
 
Flutter festival ppt
Flutter festival ppt Flutter festival ppt
Flutter festival ppt
 
Github job support.pptx
Github job support.pptxGithub job support.pptx
Github job support.pptx
 
Hacktoberfest 2020 - Open source for beginners
Hacktoberfest 2020 - Open source for beginnersHacktoberfest 2020 - Open source for beginners
Hacktoberfest 2020 - Open source for beginners
 
FTA towards-master-programme-free-software - fossa2010
FTA towards-master-programme-free-software - fossa2010FTA towards-master-programme-free-software - fossa2010
FTA towards-master-programme-free-software - fossa2010
 
OpenNTF Webinar 05/07/13: OpenNTF - The IBM Collaboration Solutions App Dev C...
OpenNTF Webinar 05/07/13: OpenNTF - The IBM Collaboration Solutions App Dev C...OpenNTF Webinar 05/07/13: OpenNTF - The IBM Collaboration Solutions App Dev C...
OpenNTF Webinar 05/07/13: OpenNTF - The IBM Collaboration Solutions App Dev C...
 
Resume
ResumeResume
Resume
 
Androids
AndroidsAndroids
Androids
 
Onboarding in Open Source Software Projects: A Preliminary Analysis
Onboarding in Open Source Software Projects: A Preliminary AnalysisOnboarding in Open Source Software Projects: A Preliminary Analysis
Onboarding in Open Source Software Projects: A Preliminary Analysis
 
Aniruddha Chakravarty resume
Aniruddha Chakravarty resumeAniruddha Chakravarty resume
Aniruddha Chakravarty resume
 
A Semantic-rich Framework for Learning Software Patterns
A Semantic-rich Framework for Learning Software PatternsA Semantic-rich Framework for Learning Software Patterns
A Semantic-rich Framework for Learning Software Patterns
 
Teaching with MATLAB
Teaching with MATLABTeaching with MATLAB
Teaching with MATLAB
 
Introductory session flutter festival
Introductory session   flutter festivalIntroductory session   flutter festival
Introductory session flutter festival
 
32 ways to use google apps in the classroom
32 ways to use google apps in the classroom32 ways to use google apps in the classroom
32 ways to use google apps in the classroom
 
python online training.docx
python online training.docxpython online training.docx
python online training.docx
 
32 ways to_use_google_apps_in_the_classroom
32 ways to_use_google_apps_in_the_classroom32 ways to_use_google_apps_in_the_classroom
32 ways to_use_google_apps_in_the_classroom
 
Development of a Modular Unit of a Higher Level Framework or Tool for Basic P...
Development of a Modular Unit of a Higher Level Framework or Tool for Basic P...Development of a Modular Unit of a Higher Level Framework or Tool for Basic P...
Development of a Modular Unit of a Higher Level Framework or Tool for Basic P...
 

Mais de Daniel Nüst

containerit at useR!2017 conference, Brussels
containerit at useR!2017 conference, Brusselscontainerit at useR!2017 conference, Brussels
containerit at useR!2017 conference, Brussels
Daniel Nüst
 
JavaScript Client Libraries for the (Former) Long Tail of OGC Standards
JavaScript Client Libraries for the (Former) Long Tail of OGC StandardsJavaScript Client Libraries for the (Former) Long Tail of OGC Standards
JavaScript Client Libraries for the (Former) Long Tail of OGC Standards
Daniel Nüst
 
Linked data and rdf
Linked  data and rdfLinked  data and rdf
Linked data and rdf
Daniel Nüst
 

Mais de Daniel Nüst (20)

RR & Docker @ MuensteR Meetup (Sep 2017)
RR & Docker @ MuensteR Meetup (Sep 2017)RR & Docker @ MuensteR Meetup (Sep 2017)
RR & Docker @ MuensteR Meetup (Sep 2017)
 
containerit at useR!2017 conference, Brussels
containerit at useR!2017 conference, Brusselscontainerit at useR!2017 conference, Brussels
containerit at useR!2017 conference, Brussels
 
Docker @ Data Science Meetup
Docker @ Data Science MeetupDocker @ Data Science Meetup
Docker @ Data Science Meetup
 
Containers for sensor web services, applications and research @ Sensor Web Co...
Containers for sensor web services, applications and research @ Sensor Web Co...Containers for sensor web services, applications and research @ Sensor Web Co...
Containers for sensor web services, applications and research @ Sensor Web Co...
 
Docker @ FOSS4G 2016, Bonn
Docker @ FOSS4G 2016, BonnDocker @ FOSS4G 2016, Bonn
Docker @ FOSS4G 2016, Bonn
 
Atlas Zukünfte
Atlas ZukünfteAtlas Zukünfte
Atlas Zukünfte
 
Frameworks for geoprocessing on the web with R
Frameworks for geoprocessing on the web with RFrameworks for geoprocessing on the web with R
Frameworks for geoprocessing on the web with R
 
Agile 2015 a-geo-label-for-the-sensor-web
Agile 2015 a-geo-label-for-the-sensor-webAgile 2015 a-geo-label-for-the-sensor-web
Agile 2015 a-geo-label-for-the-sensor-web
 
Visualising Interpolations of Mobile Sensor Observations
Visualising Interpolations of Mobile Sensor ObservationsVisualising Interpolations of Mobile Sensor Observations
Visualising Interpolations of Mobile Sensor Observations
 
WPS Application Patterns
WPS Application PatternsWPS Application Patterns
WPS Application Patterns
 
JavaScript Client Libraries for the (Former) Long Tail of OGC Standards
JavaScript Client Libraries for the (Former) Long Tail of OGC StandardsJavaScript Client Libraries for the (Former) Long Tail of OGC Standards
JavaScript Client Libraries for the (Former) Long Tail of OGC Standards
 
5 Star Open Geoprocessing
5 Star Open Geoprocessing5 Star Open Geoprocessing
5 Star Open Geoprocessing
 
The 52°North Web Processing Service
The 52°North Web Processing ServiceThe 52°North Web Processing Service
The 52°North Web Processing Service
 
Linked data and rdf
Linked  data and rdfLinked  data and rdf
Linked data and rdf
 
OGC SOS for Your Data
OGC SOS for Your DataOGC SOS for Your Data
OGC SOS for Your Data
 
sos4R - Accessing SensorWeb Data from R
sos4R - Accessing SensorWeb Data from Rsos4R - Accessing SensorWeb Data from R
sos4R - Accessing SensorWeb Data from R
 
Connecting R to the Sensor Web
Connecting R to the Sensor WebConnecting R to the Sensor Web
Connecting R to the Sensor Web
 
sos4R @ OGC TC
sos4R @ OGC TCsos4R @ OGC TC
sos4R @ OGC TC
 
sos4R - 52° North Innovation Price Presentation
sos4R - 52° North Innovation Price Presentationsos4R - 52° North Innovation Price Presentation
sos4R - 52° North Innovation Price Presentation
 
Visualizing the Availability of Temporally Structured Sensor Data
Visualizing the Availability of Temporally Structured Sensor DataVisualizing the Availability of Temporally Structured Sensor Data
Visualizing the Availability of Temporally Structured Sensor Data
 

Último

1029-Danh muc Sach Giao Khoa khoi 6.pdf
1029-Danh muc Sach Giao Khoa khoi  6.pdf1029-Danh muc Sach Giao Khoa khoi  6.pdf
1029-Danh muc Sach Giao Khoa khoi 6.pdf
QucHHunhnh
 
Salient Features of India constitution especially power and functions
Salient Features of India constitution especially power and functionsSalient Features of India constitution especially power and functions
Salient Features of India constitution especially power and functions
KarakKing
 
1029 - Danh muc Sach Giao Khoa 10 . pdf
1029 -  Danh muc Sach Giao Khoa 10 . pdf1029 -  Danh muc Sach Giao Khoa 10 . pdf
1029 - Danh muc Sach Giao Khoa 10 . pdf
QucHHunhnh
 
Spellings Wk 3 English CAPS CARES Please Practise
Spellings Wk 3 English CAPS CARES Please PractiseSpellings Wk 3 English CAPS CARES Please Practise
Spellings Wk 3 English CAPS CARES Please Practise
AnaAcapella
 

Último (20)

ICT Role in 21st Century Education & its Challenges.pptx
ICT Role in 21st Century Education & its Challenges.pptxICT Role in 21st Century Education & its Challenges.pptx
ICT Role in 21st Century Education & its Challenges.pptx
 
How to Give a Domain for a Field in Odoo 17
How to Give a Domain for a Field in Odoo 17How to Give a Domain for a Field in Odoo 17
How to Give a Domain for a Field in Odoo 17
 
Making communications land - Are they received and understood as intended? we...
Making communications land - Are they received and understood as intended? we...Making communications land - Are they received and understood as intended? we...
Making communications land - Are they received and understood as intended? we...
 
Python Notes for mca i year students osmania university.docx
Python Notes for mca i year students osmania university.docxPython Notes for mca i year students osmania university.docx
Python Notes for mca i year students osmania university.docx
 
FSB Advising Checklist - Orientation 2024
FSB Advising Checklist - Orientation 2024FSB Advising Checklist - Orientation 2024
FSB Advising Checklist - Orientation 2024
 
General Principles of Intellectual Property: Concepts of Intellectual Proper...
General Principles of Intellectual Property: Concepts of Intellectual  Proper...General Principles of Intellectual Property: Concepts of Intellectual  Proper...
General Principles of Intellectual Property: Concepts of Intellectual Proper...
 
Food safety_Challenges food safety laboratories_.pdf
Food safety_Challenges food safety laboratories_.pdfFood safety_Challenges food safety laboratories_.pdf
Food safety_Challenges food safety laboratories_.pdf
 
1029-Danh muc Sach Giao Khoa khoi 6.pdf
1029-Danh muc Sach Giao Khoa khoi  6.pdf1029-Danh muc Sach Giao Khoa khoi  6.pdf
1029-Danh muc Sach Giao Khoa khoi 6.pdf
 
Micro-Scholarship, What it is, How can it help me.pdf
Micro-Scholarship, What it is, How can it help me.pdfMicro-Scholarship, What it is, How can it help me.pdf
Micro-Scholarship, What it is, How can it help me.pdf
 
Basic Civil Engineering first year Notes- Chapter 4 Building.pptx
Basic Civil Engineering first year Notes- Chapter 4 Building.pptxBasic Civil Engineering first year Notes- Chapter 4 Building.pptx
Basic Civil Engineering first year Notes- Chapter 4 Building.pptx
 
Mehran University Newsletter Vol-X, Issue-I, 2024
Mehran University Newsletter Vol-X, Issue-I, 2024Mehran University Newsletter Vol-X, Issue-I, 2024
Mehran University Newsletter Vol-X, Issue-I, 2024
 
UGC NET Paper 1 Mathematical Reasoning & Aptitude.pdf
UGC NET Paper 1 Mathematical Reasoning & Aptitude.pdfUGC NET Paper 1 Mathematical Reasoning & Aptitude.pdf
UGC NET Paper 1 Mathematical Reasoning & Aptitude.pdf
 
Mixin Classes in Odoo 17 How to Extend Models Using Mixin Classes
Mixin Classes in Odoo 17  How to Extend Models Using Mixin ClassesMixin Classes in Odoo 17  How to Extend Models Using Mixin Classes
Mixin Classes in Odoo 17 How to Extend Models Using Mixin Classes
 
SOC 101 Demonstration of Learning Presentation
SOC 101 Demonstration of Learning PresentationSOC 101 Demonstration of Learning Presentation
SOC 101 Demonstration of Learning Presentation
 
Salient Features of India constitution especially power and functions
Salient Features of India constitution especially power and functionsSalient Features of India constitution especially power and functions
Salient Features of India constitution especially power and functions
 
1029 - Danh muc Sach Giao Khoa 10 . pdf
1029 -  Danh muc Sach Giao Khoa 10 . pdf1029 -  Danh muc Sach Giao Khoa 10 . pdf
1029 - Danh muc Sach Giao Khoa 10 . pdf
 
How to Manage Global Discount in Odoo 17 POS
How to Manage Global Discount in Odoo 17 POSHow to Manage Global Discount in Odoo 17 POS
How to Manage Global Discount in Odoo 17 POS
 
Spellings Wk 3 English CAPS CARES Please Practise
Spellings Wk 3 English CAPS CARES Please PractiseSpellings Wk 3 English CAPS CARES Please Practise
Spellings Wk 3 English CAPS CARES Please Practise
 
HMCS Max Bernays Pre-Deployment Brief (May 2024).pptx
HMCS Max Bernays Pre-Deployment Brief (May 2024).pptxHMCS Max Bernays Pre-Deployment Brief (May 2024).pptx
HMCS Max Bernays Pre-Deployment Brief (May 2024).pptx
 
Graduate Outcomes Presentation Slides - English
Graduate Outcomes Presentation Slides - EnglishGraduate Outcomes Presentation Slides - English
Graduate Outcomes Presentation Slides - English
 

Open Source and GitHub for Teaching with Software Development Projects

  • 1. Open Source and GitHub for Teaching with Software Development Projects FOSS4G-Europe, Bremen, July 2014 Daniel Nüst (52°North GmbH), Thomas Bartoschek (Institute for Geinformatics, Münster)
  • 2. Teaching Software Development w/ GitHub @ FOSS4G-E, Bremen, 2014 2 Why use Open Source? Save money
  • 3. Teaching Software Development w/ GitHub @ FOSS4G-E, Bremen, 2014 3 Why do Open Source? Save money Be effective “Egoistic collaboration” is the present and future of software development (Google, Amazon, Yahoo, Microsoft, …)
  • 4. Teaching Software Development w/ GitHub @ FOSS4G-E, Bremen, 2014 4 Open Source Development in Seminars All real world software developers use open source. Reasons for software projects in education: Students must learn about licenses (code, data, documentation) Business models! Social & collaborative software development Students learn project mgmt/lifecycle
  • 5. Teaching Software Development w/ GitHub @ FOSS4G-E, Bremen, 2014 5 Why bother? The ultimate goal is to increase the quality of software development in project seminars so that geospatial open source software can benefit from (a) direct contributions, and (b) programmers that are acquainted with the “open source way”.
  • 6. Teaching Software Development w/ GitHub @ FOSS4G-E, Bremen, 2014 6 Scrum agile software development method – acknowledges reality • roles: product owner, scrum master, team member • sprints & stand-ups, review meetings • backlogs
  • 7. Teaching Software Development w/ GitHub @ FOSS4G-E, Bremen, 2014 7 BASICS ON GIT AND GITHUB
  • 8. Teaching Software Development w/ GitHub @ FOSS4G-E, Bremen, 2014 8 Git Development is collaboration, and source code management is the at the core, but should not get in the way. THE SCM of today. ≠
  • 9. Teaching Software Development w/ GitHub @ FOSS4G-E, Bremen, 2014 9 GitHub Platform Free (10 Million repositories end of 2013, http://en.wikipedia.org/wiki/Github) Organisation accounts Provide material Students can fork assignments, don’t start from scratch Hosting included (e.g. http://geosoft2.github.io/) Issue tracker
  • 10. Teaching Software Development w/ GitHub @ FOSS4G-E, Bremen, 2014 10 GitHub for Education https://education.github.com/ Stop emailing code, never loose your work, stay organized, build a portfolio
  • 11. Teaching Software Development w/ GitHub @ FOSS4G-E, Bremen, 2014 11 GitHub for Education (cont.) Teach more effectively Private repos, teams, …. distribute starter code, give students feedback, provide automated tests, collect assignments
  • 12. Teaching Software Development w/ GitHub @ FOSS4G-E, Bremen, 2014 12 HOW DO WE DO IT?
  • 13. Teaching Software Development w/ GitHub @ FOSS4G-E, Bremen, 2014 13 GitHub Collaboration Model http://video.esri.com/watch/3223/social-coding-and-the- future-of-open-source Fork & Pull Pull requests – Discussion – Transparency https://help.github.com/articles/using-pull-requests
  • 14. Teaching Software Development w/ GitHub @ FOSS4G-E, Bremen, 2014 14 Fork & Pull
  • 15. Teaching Software Development w/ GitHub @ FOSS4G-E, Bremen, 2014 15
  • 16. Teaching Software Development w/ GitHub @ FOSS4G-E, Bremen, 2014 16 Grading with GitHub Challenge: grading group work is hard. • GitHub allows transparency • Distinguish numbers (lines changed) from content • Students estimate their contributions well (questionnaire) • Some quantification possible (# pull requests created, merged, issues opened/closed), use to facilitate engagement (not to grade)
  • 17. Teaching Software Development w/ GitHub @ FOSS4G-E, Bremen, 2014 17 Grading with GitHub (cont.) Challenge: Different kind of work done by students. • Git for collaborative writing (docs, reports, …) • Value doc. writing in the same way https://github.com/Geosoft2/geosoft2-2014-fundamentals
  • 18. Teaching Software Development w/ GitHub @ FOSS4G-E, Bremen, 2014 18 Experiences Students… … hesitate to establish hierarchies or take over responsibility > Scrum. … are careful about not being exposed publicly. … are challenged by communication requirements of collaborative software development. … have to be continuously motivated to adopt an open innovation and development process.
  • 19. Teaching Software Development w/ GitHub @ FOSS4G-E, Bremen, 2014 19 Experiences (cont.) … hesitate to publish code. Force them. … do learn the sense of documentation. Teachers… … must stay in touch with new developments and the business world. … must be ready to interact.
  • 20. Teaching Software Development w/ GitHub @ FOSS4G-E, Bremen, 2014 20 Experiences (cont.) Adjust Scrum… … using 2 Week long sprints. … allowing virtual stand-ups, plus weekly with whole seminar. … flex up scrum Masters: teachers, another group’s member.
  • 21. Teaching Software Development w/ GitHub @ FOSS4G-E, Bremen, 2014 21 Experiences (cont.) https://github.com/enviroCar/ & https://envirocar.org Prototype developed in project seminar – new OS project for tracking cars
  • 22. Teaching Software Development w/ GitHub @ FOSS4G-E, Bremen, 2014 22 How is this relevant for FOSS4G? Need contributors > get them early! Students developing as open source are more likely to use and contribute. Need capable developers > students, internships, better devs in the long run, … Need features > get them done!
  • 23. Teaching Software Development w/ GitHub @ FOSS4G-E, Bremen, 2014 23 Next, and Goals Collaborate with you Share experiences > “open innovation” for teaching Guidelines for Teaching Open Software Development in Projects

Notas do Editor

  1. Who is a prof. software developer? Who is involved in univsersity level teaching?
  2. Yes, it is fun, reasonable, “the right thing”, better quality, …
  3. Work with REAL software
  4. Process Fork this project Do your research Edit the handout.md file in your folder Create a presentatation based on your handout Send a pull request before the submission deadline Present at the seminar If you see an error or want to extend information of your own or a colleagues handout... Update your local fork Make the changes Send a pull request to the original author of the topic and dicuss or changes The original author merges your changes and send a pull request to update the main repository
  5. Works for advanced seminars of developers
  6. Show of hands – who would be interested to join a google group?