Pro Yearly is on sale from $80 to $50! »

Training Software Engineers using Open-Source Software: The Professors' Perspective

Be6953eb1929f548597c7ebf2be91a22?s=47 Gustavo Pinto
January 14, 2018
69

Training Software Engineers using Open-Source Software: The Professors' Perspective

Be6953eb1929f548597c7ebf2be91a22?s=128

Gustavo Pinto

January 14, 2018
Tweet

Transcript

  1. Training Software Engineers using Open-Source Software: The Professors’ Perspective @gustavopinto

    @igorsteinmacher @gerosa_marco @ffilho_
  2. Traditional SE courses - Emphasis on the fundamentals - Little

    time available to teach in-depth details @gustavopinto
  3. Traditional SE courses Software industry needs - Emphasis on the

    fundamentals - Little time available to teach in-depth details - Eager to hire developers experienced with legacy code - Little time available to train developers @gustavopinto
  4. Traditional SE courses Software industry needs - Emphasis on the

    fundamentals - Little time available to teach in-depth details - Eager to hire developers experienced with legacy code - Little time available to train developers What is this ELK stack? @gustavopinto
  5. Traditional SE courses Software industry needs - Emphasis on the

    fundamentals - Little time available to teach in-depth details - Eager to hire developers experienced with legacy code - Little time available to train developers What is this ELK stack? What is this big O notation? @gustavopinto
  6. Why not introducing students to free/open source software?

  7. None
  8. Can we use open-source software to better support software engineering

    courses? @gustavopinto
  9. Semi-structured Interviews Do you use OSS in any course? Yes,

    I do! @gustavopinto
  10. How to find professors? Do you know any other prof?

    Hm.. Let me see.. @gustavopinto
  11. 7 professors interviewed (P1 — P7) @gustavopinto

  12. 7 professors interviewed (P1 — P7) @gustavopinto

  13. 7 professors interviewed (P1 — P7) @gustavopinto

  14. Research Questions RQ1. What makes a good OSS project for

    training SE students? @gustavopinto
  15. RQ1. What makes a good OSS project for training SE

    students? Research Questions Too complex Not maintained anymore Unfriendly community @gustavopinto
  16. RQ1. What makes a good OSS project for training SE

    students? Research Questions Too complex Not maintained anymore Unfriendly community @gustavopinto
  17. RQ2. What are the benefits of exposing students to OSS

    development? Research Questions @gustavopinto
  18. RQ2. What are the benefits of exposing students to OSS

    development? Research Questions @gustavopinto
  19. RQ3. What are the challenges associated with exposing students to

    OSS? Research Questions @gustavopinto
  20. RQ3. What are the challenges associated with exposing students to

    OSS? Research Questions @gustavopinto
  21. RQ1. What makes a good OSS project for training SE

    students? Professors mediated project selection @gustavopinto “We go through some recent pull requests, and then get an intuition whether students can use work on it”
  22. RQ1. What makes a good OSS project for training SE

    students? but students had some degree of freedom “there was a student team that liked networks and they chose NS3, which is a network simulator that has never occurred to me as a project to be selected.” [P2] Professors mediated project selection @gustavopinto “We go through some recent pull requests, and then get an intuition whether students can use work on it”
  23. RQ1. What makes a good OSS project for training SE

    students? “I know that is tempting to choose a popular project, but these tend to be harder to make contributions or to get contributions accepted.” [P3] Should be a balance between project popularity and relevance of a contribution @gustavopinto
  24. RQ1. What makes a good OSS project for training SE

    students? “If you pick a small project, maybe the contributions would have little relevance” @gustavopinto Should be a balance between project popularity and relevance of a contribution “I know that is tempting to choose a popular project, but these tend to be harder to make contributions or to get contributions accepted.” [P3]
  25. RQ1. What makes a good OSS project for training SE

    students? “the only thing I ask the maintainer is to provide faster feedback than usual” [P5] P5 and P4 get in touch with core member before letting students select a project “we present the projects that are closer to the contacts.” [P4] @gustavopinto
  26. RQ2. What are the benefits of exposing students to OSS

    development? We engage students with real projects “You teach your students how real world software is developed” [P4] @gustavopinto
  27. RQ2. What are the benefits of exposing students to OSS

    development? We engage students with real projects “You teach your students how real world software is developed” [P4] OSS is a good way to introduce new tools “it is a good way to teach version control systems” [P5] @gustavopinto
  28. RQ2. What are the benefits of exposing students to OSS

    development? Students develop their technical skills “They have to understand what the others had done, how is the architecture […]. This enforces them to develop a much more mature set of skills and reasoning” @gustavopinto
  29. RQ2. What are the benefits of exposing students to OSS

    development? Students develop their technical skills “They have to understand what the others had done, how is the architecture […]. This enforces them to develop a much more mature set of skills and reasoning” “They learn how to be part of a team, learn how to be part of a distributed project.” Good opportunity to learn social skills @gustavopinto
  30. RQ2. What are the benefits of exposing students to OSS

    development? It is an opportunity to motivate students “you can be proud of actually contribute to something” [P1] @gustavopinto
  31. RQ2. What are the benefits of exposing students to OSS

    development? It is an opportunity to motivate students “you can be proud of actually contribute to something” [P1] It is good for their curriculum “When interview with companies, they can say: ‘these are the projects I have contributed to. I was part of the team” [P6] @gustavopinto
  32. RQ3. What are the challenges associated with exposing students to

    OSS? “The big challenge is finding projects, or project candidates” [P7] RQ1 @gustavopinto
  33. RQ3. What are the challenges associated with exposing students to

    OSS? “The big challenge is finding projects, or project candidates” [P7] RQ1 active multiple PRs accepted /proposed large external contributors @gustavopinto
  34. RQ3. What are the challenges associated with exposing students to

    OSS? “Open-source software is not a fairy tale” [P4] Students face many barriers during the process “Finding a suitable thing to do is trick” [P1] “technical level could be the main problem” [P1] @gustavopinto
  35. RQ3. What are the challenges associated with exposing students to

    OSS? “We should engage students quickly” [P3] @gustavopinto The short duration of a course is an issue
  36. RQ3. What are the challenges associated with exposing students to

    OSS? “We should engage students quickly” [P3] The short duration of a course is an issue Professors’ time availability is a also challenge “I’d follow students closely to try to help them. However, I can’t follow them as close as I want to” @gustavopinto
  37. None
  38. Training Software Engineers using Open-Source Software: The Professors’ Perspective @gustavopinto

    @igorsteinmacher @gerosa_marco @ffilho_