Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Tweak first-time contributors #1818

Merged
merged 3 commits into from
Dec 18, 2024
Merged

Tweak first-time contributors #1818

merged 3 commits into from
Dec 18, 2024

Conversation

stevepiercy
Copy link
Contributor

@stevepiercy stevepiercy commented Dec 13, 2024

  • Move the section about free support to the top of the page, outside "For students and learners", and make it less curmudgeonly
  • Rephrase grumpy text to be nicer, giving guidance to first-timers
  • Remove redundant "free support" sentence.
  • Convert a first-contributions resource to a "see also" for better visibility
  • Attempt to drive home that first-timers should do the Plone CLA first
  • Define "unclaimed" issue.
  • Clarify how to claim an issue.
  • Give guidance to determine whether an issue has been claimed, if it is not clear
  • Correct the process to include acceptance of the invitation to join a Plone Team in GitHub

See discussion starting at plone/volto#6506 (comment).


📚 Documentation preview 📚: https://plone6--1818.org.readthedocs.build/

- Move the section about free support to the top of the page, outside "For students and learners", and make it less curmudgeonly
- Rephrase grumpy text to be nicer, giving guidance to first-timers
- Remove redundant "free support" sentence.
- Convert a `first-contributions` resource to a "see also" for better visibility
- Attempt to drive home that first-timers should do the Plone CLA first
- Define "unclaimed" issue.
- Clarify how to claim an issue.
- Give guidance to determine whether an issue has been claimed, if it is not clear
- Correct the process to include acceptance of the invitation to join a Plone Team in GitHub
@stevepiercy
Copy link
Contributor Author

@miohtama your site returns a 500 Error establishing a database connection https://opensourcehacker.com/2012/08/14/high-quality-automated-package-releases-for-python-with-zest-releaser/

Copy link
Member

@ichim-david ichim-david left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@stevepiercy this looks fine to me. It's still useless though if there is no policing of these guidelines and thus a user can be added to the contributor group even though he didn't follow our requirements needed before they should start to contribute.

I continue to express the fact that the contributor role should be given after a member of the plone organization sees the work that the user is producing. A user could have the contributor agreement signed and yet not to be added to the contributor group until the user shows willingness to follow through on review comments and gets the work to the finish line. Once a pull request is merged then they can be added.

Of course, you will tell me it's not in the scope of this pull request and that's not how we do things and it's fine, but I still want to express my displeasure of this whole system where there is a lot of work being done for these users that don't have a real interest to contribute to Plone beyond their token action, time that could be spent on more important fixes and reviews.

@stevepiercy
Copy link
Contributor Author

@ichim-david the only requirement is that the first-timer complete the Plone CLA process. There are no other requirements. Everything else is a suggestion or recommendation.

AFAIK, there is no screening of Plone CLA applications. Its sole purpose is to assign permission to the Plone Foundation to publish a contribution. Its purpose is not to judge the quality of contributions.

If you want to change that, you'll need to bring it up with the Plone Foundation Board.

Personally, I wish there was some bot that could check whether someone makes a first-time comment in a given repository, then smack them upside the head to READ THE CONTRIBUTING DOCS. I searched but found no such bot. This would be the best way to save developer time.

@stevepiercy
Copy link
Contributor Author

stevepiercy commented Dec 17, 2024

@acsr and @davisagli I'd appreciate your reviews, since you both made comments about the language used toward first-timers in other issues that this PR resolves.

Copy link
Member

@davisagli davisagli left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Good clarifications.

@davisagli
Copy link
Member

Personally, I wish there was some bot that could check whether someone makes a first-time comment in a given repository, then smack them upside the head to READ THE CONTRIBUTING DOCS. I searched but found no such bot. This would be the best way to save developer time.

I haven't evaluated it closely, but maybe something like https://github.com/marketplace/actions/first-contribution?

@stevepiercy
Copy link
Contributor Author

Personally, I wish there was some bot that could check whether someone makes a first-time comment in a given repository, then smack them upside the head to READ THE CONTRIBUTING DOCS. I searched but found no such bot. This would be the best way to save developer time.

I haven't evaluated it closely, but maybe something like https://github.com/marketplace/actions/first-contribution?

I think that GitHub lacks an API endpoint for a first-time comment. There are bots for first-time creation of either an issue or pull request, but not a comment.

In Documentation, I set up Welcome, which is an app based on Probot, to welcome first-time issues, pull requests, and merged pull requests. I might switch to Boring Cyborg to add automatic labeling.

@stevepiercy
Copy link
Contributor Author

@davisagli see #1820. Merging now.

@stevepiercy stevepiercy merged commit 1d69e14 into 6.0 Dec 18, 2024
3 checks passed
@stevepiercy stevepiercy deleted the clarify-unclaimed-issues branch December 18, 2024 09:36
@acsr
Copy link

acsr commented Jan 13, 2025

Ah, yes it's not easy. But @ichim-david yoou need to ignore those feelings. In fact you do everything for yourself. You can blame parasite like behaviour and missing valuation of the main work, but it does not help to make the docs better in an easy way. Sometimes you get 20 dove nuts before you find a gem, but it is worth the process.

At the end the pessimists do the work and survive and the optimists seem to be happier but die earlier. Crazy natural selection…

@ichim-david
Copy link
Member

Ah, yes it's not easy. But @ichim-david yoou need to ignore those feelings. In fact you do everything for yourself. You can blame parasite like behaviour and missing valuation of the main work, but it does not help to make the docs better in an easy way. Sometimes you get 20 dove nuts before you find a gem, but it is worth the process.

At the end the pessimists do the work and survive and the optimists seem to be happier but die earlier. Crazy natural selection…

@acsr I respect your opinion. It is indeed a worthy goal to have to be more ignorant of the bad feelings hoping for the best. I share the sentiment that we are always welcoming of good work done either with docs or within the Plone and Volto repos. however...

" Sometimes you get 20 dove nuts before you find a gem, but it is worth the process."
Not for me. My time is limited and the little time I have I want to dedicate to the open source project that I love and use for the past 20 years already and it's users that share the same goals that I have.
This means having the peace of mind to check out work that has been created as part of an actual need or pain point of the software that was gained after spending some time with it.

Genuine work will always find its way to get merged but work done without understanding what is requested just to show that you done something is not something I am interested in checking.

Receiving 30 pull requests that are missing the mark acts like a DDOS attack on the open-source development and detracts from the focus and time needed to be spent on issues that matter.

We are acting like the gyms that sell more memberships than they can hold at a time banking on the idea that most people will be lazy and will only go to the gym every now and then. It's all good until some event happens that brings the floodgate only to get then angry customers that they have no room to exercise at the gym.

In the same way we have Octoberfest and GSOC and other events where there is an influx of interest and we are selling this idea that we are all so welcoming of all contributions only to realize that we don't have enough reviewers to review work or that the few reviewers that are available are flooded with bad work that detracts them from more important work.

As such yes I stick to my opinion that the contributor agreement process is broken and it needs to be fundamentally changed and the community should be more careful on how we try to integrate newcomers in a way that is sustainable both for them and for the available reviewers.

@stevepiercy
Copy link
Contributor Author

@acsr when you need to deal with an alleged copyright infringement as we did last week and are working through now with the Board, all joy flies out the window.

Would you like to dig through a barrel of rotten apples just to get the one juicy ripe one? That's a much more accurate metaphor for what is happening in Volto right now. We have collected zero valuable gems, but a few tasty fruit snacks. A snack is not enough to sustain the people whose livelihood depends on a good harvest and preserving it from rot.

We're also dealing with moderation in the Plone Community Forum. We previously manually reviewed new accounts, but found it was consuming too much moderator time. Now we just automatically approve new accounts, and manually ban the bad actors. We will likely add the Akismet plug-in for Discourse to automatically screen and ban the bad actors.

We're also dealing with people who have zero interest in Plone who sign the Plone Contributor Agreement (PCA), merely because it is a requirement to getting a review for their pull request, in hopes of getting accepted into GSoC, fulfilling a class requirement, or padding a resume. When the PCA was done in person, on paper, at PloneConf or sprints, the applicant by virtue of attending the Plone event implicitly had a stake in the success of Plone. Although the in-person part still exists, we are getting overwhelmed by drive-by PCA applicants.

The shear volume from all of these serious problems are wearing down the core contributors to Plone. We are seeing qualified people walk away and fewer stepping up.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
Status: Done
Development

Successfully merging this pull request may close these issues.

4 participants