Live data from Hacker News

Why Computing Students Should Contribute to Open Source Software Projects

cacm.acm.org

11–20 of 179 posts

Re: Why Computing Students Should Contribute to Open Source Software Projects

#11
Students approach the course and its assignment with trepidation and complete it with jubilation. Ensuring students can make meaningful contributions to an open source project requires balancing their inexperience with the fast-paced sophistication of modern, open source software development.

Re: Why Computing Students Should Contribute to Open Source Software Projects

#12
post #10

I only hope it would not be some kind of common sentiment "you have to contribute to an open source project to earn better grade or get a job". It will end up as Huawei Linux kernel "contributions" - a lot of pointless commits that are only a pain for project maintainers and bring zero actual value.

From the article, and up to your point. On the expected learnings there is:

...

> Choosing realistic contribution goals. (Initially students tend to wildly overestimate their ability to contribute to a project.) This is a key activity in agile development sprints;

...

also

> Try to contribute a trivial fix as a warm-up exercise and as a way to test your ability to follow the project's workflows.

Re: Why Computing Students Should Contribute to Open Source Software Projects

#13
post #8

> in the 21st century programming proficiency on its own is neither representative of the skills that the marketplace requires from computing graduates, nor does it offer the strong vocational qualifications it once did. Universities are not vocational education facilities though. Time a student has in university is better spent on getting deeper understanding of things that are hard to pick up in the workplace, and…

The CACM Viewpoint proposal doesn't mean that students have to work on the kind of open source projects that businesses will assign developer labour to. The open source projects can be chosen to complement the educational aims of the course.

Re: Why Computing Students Should Contribute to Open Source Software Projects

#14
post #10

I only hope it would not be some kind of common sentiment "you have to contribute to an open source project to earn better grade or get a job". It will end up as Huawei Linux kernel "contributions" - a lot of pointless commits that are only a pain for project maintainers and bring zero actual value.

We're already creeping in that direction. Everyone wants some work for free, or at a discount rate and enough people are willing to offer that in hopes of rapid advancement, so we'll keep ratcheting the value of our skills to the bottom, starting with passion projects and moving to desperate make-work hustle. Not even mad about it, it's the way of things.

Re: Why Computing Students Should Contribute to Open Source Software Projects

#15
post #10

I only hope it would not be some kind of common sentiment "you have to contribute to an open source project to earn better grade or get a job". It will end up as Huawei Linux kernel "contributions" - a lot of pointless commits that are only a pain for project maintainers and bring zero actual value.

I think a better description would be how Hacktoberfest turned out, with lots of inexperienced people spamming simple PRs to lots of projects.

Re: Why Computing Students Should Contribute to Open Source Software Projects

#16
post #13
post #8

> in the 21st century programming proficiency on its own is neither representative of the skills that the marketplace requires from computing graduates, nor does it offer the strong vocational qualifications it once did. Universities are not vocational education facilities though. Time a student has in university is better spent on getting deeper understanding of things that are hard to pick up in the workplace, and…

The CACM Viewpoint proposal doesn't mean that students have to work on the kind of open source projects that businesses will assign developer labour to. The open source projects can be chosen to complement the educational aims of the course.

This just sounds like hacktoberfest blended with eternal September...

Re: Why Computing Students Should Contribute to Open Source Software Projects

#17
post #8

> in the 21st century programming proficiency on its own is neither representative of the skills that the marketplace requires from computing graduates, nor does it offer the strong vocational qualifications it once did. Universities are not vocational education facilities though. Time a student has in university is better spent on getting deeper understanding of things that are hard to pick up in the workplace, and…

I agree with your point of view, it does seem to shift some of the teaching burden from instructors to project maintainers. I generally like the way student performance is assessed, with more emphasis on the technical quality and presentation rather than the binary "was this contribution accepted or not?". However I still think that, depending on the initial choice of the project and the issue to work on, some students may receive a lower grade through no fault of their own, e.g. a PR not getting accepted by deadline, changes required at the last minute, etc. These problems are not present with traditional assignments isolated from the "real world", and I believe those can teach the student just as much as open-source participation, if done right. Take group projects, for instance, where students are expected to collaborate using project management tools, set up unit tests themselves, etc.

Re: Why Computing Students Should Contribute to Open Source Software Projects

#18
I would not consider "inflicting" this on an open source project, unless I had discussed it with the maintainers in advance.

Some of my colleagues do something similar to this, where the students work on an open source project which is maintained by academics. They do get some amazing patches which add significant new features, but there are also some students who need help. It's a valuable learning experience for the students (which it should be, they are at University!), and at the end they are much more ready to usefully contribute to open source projects.

However, I wouldn't feel it was fair to impose that on another open source project, as almost all projects are "reviewer time poor".

Re: Why Computing Students Should Contribute to Open Source Software Projects

#19
post #9

Any website to see open source project for contributions? I'm willing :)

Not exactly a site, but should suffice. Curated list of projects that are open for contributions from beginner… contributors:

https://github.com/MunGell/awesome-for-beginners

Re: Why Computing Students Should Contribute to Open Source Software Projects

#20
post #8

> in the 21st century programming proficiency on its own is neither representative of the skills that the marketplace requires from computing graduates, nor does it offer the strong vocational qualifications it once did. Universities are not vocational education facilities though. Time a student has in university is better spent on getting deeper understanding of things that are hard to pick up in the workplace, and…

I completely agree with both points.

1) No, universities shouldn't waste too much time preparing people for the job; they should prepare give people the more scientific types of skills that one doesn't really pick up on the job: Data structures, algorithms, paradigms like OOP and FP, etc.

2) Unleashing a horde of yet incompetent newbies on the open source world with a mission to contribute won't be helping FOSS; what's more, if this was the norm, it would cause much more harm than good by spamming projects with low-quality contributions. See Goodharts law.

Post reply on HN