KDE Needs You! 🫵 - Formalize and boost KDE's processes for recruiting active contributors
Open, Needs TriagePublic

Tokens
"Like" token, awarded by mte90."Like" token, awarded by shevchuk."Like" token, awarded by T-bond."Like" token, awarded by florianricher."Love" token, awarded by tbertels."Love" token, awarded by aakarshmj."Like" token, awarded by rokejulianlockhart."Like" token, awarded by gcb."Burninate" token, awarded by muelsyse."Love" token, awarded by aniqakhokhar."Like" token, awarded by felixernst."Like" token, awarded by redstrate."Like" token, awarded by ognarb."Love" token, awarded by alexde.
Assigned To
Authored By
paulb, Jun 28 2024

Description

(Looking for a better name)

Description

TL DR: Make recruiting active contributors into projects a priority and an ongoing task for the KDE Community.

The lack of new contributors to projects, even in flagship projects such as Plasma, Krita, GCompris and Kdenlive, threatens the long-term survival not only of each individual project, but of KDE itself.

In this proposal I will discuss how this problem is a major stumbling block to KDE's growth; how it will only get worse over time unless tackled head on; and finally how it can possibly be solved via a community-wide goal.

The Problem

KDE hosts many projects, most of which are small applications that, in true UNIX/Linux tradition, do one simple thing and do it well. Examples include AudioTube, Arianna, Tokodon, GhostWriter, Gwenview, Spectacle, etc.

If we take away the flyby contributions (which cannot be relied upon for continuous and stable development), these projects are often maintained by one or two people at most. According to the bus factor, this is already problematic in that it only takes one person to leave the project for development to be severely impaired or stopped.

Unfortunately, it is not only the smaller projects that are affected by the lack of a stable team of contributors. Plasma itself is only developed by between 8 and 10 people, Kdenlive by 2, GCompris by 2 and Krita by about 7. I assume the state of the development teams working on KDE's frameworks is equally bad.

In addition, many of the developers working on these long-standing flagship projects are aging, overworked and burnt out. As the adoption of KDE software increases, support alone will further increase the stress on our teams if nothing is done.

We urgently need to attract new skilled and dedicated contributors to these projects to ensure their survival, and by extension the survival of KDE itself.

What it will take

Until now, we have relied on mentoring programmes and organic word of mouth to attract new volunteers. The figures above show that these methods, as they stand, are not enough. For many long-standing projects, the number of volunteers has not increased, and in some cases has even decreased.

A more committed and multi-pronged approach is needed. Here are some ideas that could be put into practice by those working towards this goal. We could

  • Leverage our current community, recruiting more aggressively over social media, through our contacts and through our KDE Network. This would have the added advantage of binding the Network nodes giving them a common goal and a clear sense of purpose.
  • Create and support a permanent and stable recruitment team within KDE, with a paid contractor to manage it if necessary. This team would take on the mentoring projects, as these will be key to the recruitment effort.

I am not suggesting that the mentorship team should be absorbed by the recruitment team, but rather that the mentorship team should _become_ the recruitment team (since the main purpose of the mentorship programmes is recruitment anyway) by broadening its scope a bit and increasing its resources.

  • Work with academic institutions, such as vocational schools and colleges, to try to get students to do their internships or final projects with KDE. At several events I have attended, the topic has come up organically from teachers and professors, so we have a potential untapped source of contributors there.
  • Related to the above is working with companies. I have had a number of companies, mainly start-ups, ask how they can get involved in FLOSS projects. The idea of having junior developers learn the knowledge and ethos of FLOSS projects has resonated. It may be worth talking to MBition, KDAB, SUSE, Qt, etc., too. This would provide training for developers, and a pool of candidates for their own workforce.
  • Change the way we approach mentoring to make it more efficient and self-sustaining. I explain how this could be done below.

Where would the resources come from to support all these new mentees?

  • From a strengthened recruitment team. The mentoring team would take on the task of recruitment and would benefit from the additional support of volunteers working towards this goal. If necessary, the team could be further augmented with a contractor if this made economic sense.
  • From the developers themselves. We would encourage harried developers to slow down development and spend time making it easier to bring new contributors into the fold. It's often argued that developers don't have the time to mentor and train new contributors, but why not? There are no quarterly targets to meet, no board of directors demanding more and more output. Development could slow down by 1/4 for, say, two years and KDE would not be affected in any significant way. So instead of 100 changes listed in the changelog, there are now 75, so what? This is not a big deal folks.

Also, the slowdown would only be temporary. The plan is that as more recruits are trained into the projects and become productive, development will speed up, and the recruits themselves will become mentors, freeing up the more experienced developers to do what they do best.

  • From external organisations. Schools and companies would be encouraged to get involved in mentoring themselves, taking over some of the mentoring process and relieving the pressure on KDE to provide every second of the mentoring programme for every candidate.

This would have the side effect of (hopefully) encouraging companies to incorporate KDE technologies into their own products, and perhaps even get academic institutions to include KDE-based FLOSS development in their curricula.

  • From increasing the number of mentees per mentor, i.e. let's mentor _groups_ rather than individuals. Not only is it more realistic (and more similar to what we do in KDE) to approach task-solving in a team of equals than as individuals, but my teaching experience has shown me that mentoring 3 or 4 mentees working together in a team is not x3 or x4 the work, quite the opposite: well-planned mentoring for a group would take advantage of peer-teaching, where members help each other.

How will we know we have succeeded?

We will know we have succeeded if we can increase the number of developers who contribute regularly to our core projects. To put a number on it, let's say our goal is to increase the number of regular contributors to Plasma, Kdenlive, GCompris, Krita and KDE Connect by 50% in the next two years.

Hopefully the project will develop its own inertia and recruiting new contributors will become just another thing the community does, like releasing new versions of our software every three months.

Projects this is built upon

This project would be like the 2018 Onboarding Goal, but more complete. While that goal focused on processing contributors once they joined the community and helping them become productive members of KDE, this goal would also (and mainly) actively implement ways to attract recruits from outside the community and build pipelines that would ensure a steady stream of potential contributors for the foreseeable future.

The mentorship programme has already started on its way to becoming more widespread by creating a dedicated website and adding new programmes such as the Chinese OSPP to the list of programmes offered. Developing the mentoring team into a full recruitment team would be the next logical step for the project.

Champions

I am willing to put work into this

I am interested

paulb created this task.Jun 28 2024, 4:57 PM
paulb moved this task from Backlog to Not ready for voting on the Goal Setting 2024 board.
brsvh updated the task description. (Show Details)Jun 29 2024, 11:50 AM
brsvh added a subscriber: brsvh.
paulb updated the task description. (Show Details)Jun 29 2024, 12:05 PM
paulb updated the task description. (Show Details)
paulb updated the task description. (Show Details)

Here, I will only introduce some of my ideas, which may be applicable only in China.

Collaborate with External Organizations

This is an insteresting topic, and in China, it is somewhat feasible.

Based on my past experiences, primarily from myself and those who, like me, sought external mentors for their final projects. Most Chinese universities allow students to find external mentors and independently decide on their graduation projects.

The usual restrictions are:

  • The mentor typically needs to have a certain academic degree, preferably a Doctorate.

Apart from this, there are basically no additional costs for external guidance. The challenge lies in how to connect with potential students and find suitable mentors for them.

In collaboration with university professors, in most Chinese C.S. and S.E. programs, courses like "Linux Application Design" mainly using GTK and Qt for software design, are often offered. If we can break down various medium to low difficulty tasks from community software each year, we could try to find suitable professors to incorporate these as optional coding assignments.

However, collaborating directly with universities in China is very challenging. It usually requires significant commitments, including guaranteed internship quotas and mentoring promises.

Mentorship (OSPP)

About OSPP, I believe we can set more ambitious goals for the upcoming years. This year, we released only one project, which attracted three potential students. Based on this, if we have more projects, we could gain stable new contributors each year.

Unfortunately, from my observation, OSPP usually caps the number of projects a single open-source community can have at 2-4. However, they also support communities that manage the entire process themselves to increase the project limit.

For the next two years, we can have the following expectations:

  • In 2025, we can aim to release 2-4 projects.
  • In 2026, if conditions allow, we can try to support more projects ourselves. The costs are manageable, with each mentor costing 3000 CNY and each student 8000/12000 CNY (including taxes).

Promotion

I plan to start some initiatives next year to promote these activities through KDE Network China. In the past two years, KDE Network China's activities have been dormant. I intend to invest some effort this fall (China timezone) or next year to improve this. In March, April, May, September, October, and November, I will seek opportunities to visit some Chinese universities for offline promotional events. During the remaining months, I will try to represent KDE Network China in various GNU/Linux user group events across China. Through these activities, I aim to encourage potential contributors to participate in SoK, GSoC, OSPP, and the community.

paulb updated the task description. (Show Details)Jun 29 2024, 5:33 PM
paulb added a comment.Jun 29 2024, 5:42 PM

Here, I will only introduce some of my ideas, which may be applicable only in China.

    1. Collaborate with External Organizations

      This is an insteresting topic, and in China, it is somewhat feasible.

      Based on my past experiences, primarily from myself and those who, like me, sought external mentors for their final projects. Most Chinese universities allow students to find external mentors and independently decide on their graduation projects.

      The usual restrictions are:
  • The mentor typically needs to have a certain academic degree, preferably a Doctorate.

Are these for projects like end of course dissertations and PhDs?

Apart from this, there are basically no additional costs for external guidance. The challenge lies in how to connect with potential students and find suitable mentors for them.

In collaboration with university professors, in most Chinese C.S. and S.E. programs, courses like "Linux Application Design" mainly using GTK and Qt for software design, are often offered. If we can break down various medium to low difficulty tasks from community software each year, we could try to find suitable professors to incorporate these as optional coding assignments.

That sounds like a good plan.

However, collaborating directly with universities in China is very challenging. It usually requires significant commitments, including guaranteed internship quotas and mentoring promises.

Ok. Do conditions change from university to university?

  1. Mentorship (OSPP)

    About OSPP, I believe we can set more ambitious goals for the upcoming years. This year, we released only one project, which attracted three potential students. Based on this, if we have more projects, we could gain stable new contributors each year.

    Unfortunately, from my observation, OSPP usually caps the number of projects a single open-source community can have at 2-4. However, they also support communities that manage the entire process themselves to increase the project limit.

Still sounds good.

For the next two years, we can have the following expectations:

  • In 2025, we can aim to release 2-4 projects.
  • In 2026, if conditions allow, we can try to support more projects ourselves. The costs are manageable, with each mentor costing 3000 CNY and each student 8000/12000 CNY (including taxes).

Do we have to pay to participate?

  1. Promotion

    I plan to start some initiatives next year to promote these activities through KDE Network China. In the past two years, KDE Network China's activities have been dormant. I intend to invest some effort this fall (China timezone) or next year to improve this. In March, April, May, September, October, and November, I will seek opportunitiesto visit some Chinese universities for offline promotional events. During the remaining months, I will try to represent KDE Network China in various GNU/Linux user group events across China. Through these activities, I aim to encourage potential contributors to participate in SoK, GSoC, OSPP, and the community.

This sounds great. We will give you support from Promo for all these activities.

brsvh added a comment.Jun 30 2024, 9:42 AM

Here, I will only introduce some of my ideas, which may be applicable only in China.

    1. Collaborate with External Organizations

      This is an insteresting topic, and in China, it is somewhat feasible.

      Based on my past experiences, primarily from myself and those who, like me, sought external mentors for their final projects. Most Chinese universities allow students to find external mentors and independently decide on their graduation projects.

      The usual restrictions are:
  • The mentor typically needs to have a certain academic degree, preferably a Doctorate.

Are these for projects like end of course dissertations and PhDs?

I mean bachelor thesis.

Apart from this, there are basically no additional costs for external guidance. The challenge lies in how to connect with potential students and find suitable mentors for them.

In collaboration with university professors, in most Chinese C.S. and S.E. programs, courses like "Linux Application Design" mainly using GTK and Qt for software design, are often offered. If we can break down various medium to low difficulty tasks from community software each year, we could try to find suitable professors to incorporate these as optional coding assignments.

That sounds like a good plan.

However, collaborating directly with universities in China is very challenging. It usually requires significant commitments, including guaranteed internship quotas and mentoring promises.

Ok. Do conditions change from university to university?

The requirements are usually even more than this.

  1. Mentorship (OSPP)

    About OSPP, I believe we can set more ambitious goals for the upcoming years. This year, we released only one project, which attracted three potential students. Based on this, if we have more projects, we could gain stable new contributors each year.

    Unfortunately, from my observation, OSPP usually caps the number of projects a single open-source community can have at 2-4. However, they also support communities that manage the entire process themselves to increase the project limit.

Still sounds good.

For the next two years, we can have the following expectations:

  • In 2025, we can aim to release 2-4 projects.
  • In 2026, if conditions allow, we can try to support more projects ourselves. The costs are manageable, with each mentor costing 3000 CNY and each student 8000/12000 CNY (including taxes).

Do we have to pay to participate?

No. This is the additional pack beyond the limit. For example, if in 2026 we want to host six projects, four would be free, and two would be self-funded.

alexde added a subscriber: alexde.
fabianr added a subscriber: fabianr.Jul 2 2024, 9:18 AM
paulb renamed this task from Recruit All the People to KDE Needs You! 🫵 - Formalise and boost KDE's processes for recruiting active contributors.Jul 6 2024, 5:08 PM
ngraham updated the task description. (Show Details)Jul 6 2024, 8:10 PM
felixernst updated the task description. (Show Details)Jul 8 2024, 10:54 AM
felixernst awarded a token.
felixernst added a subscriber: felixernst.
ognarb updated the task description. (Show Details)Jul 8 2024, 8:38 PM
ognarb added a subscriber: ognarb.
frdbr added a subscriber: frdbr.Jul 29 2024, 3:53 PM
fanzhuyifan updated the task description. (Show Details)Aug 9 2024, 5:28 PM

Pinging @tcanabrava, this reminds me of some work he has done with some universities here in Brazil.

frdbr added a comment.Aug 12 2024, 7:01 PM

Hello,

Please note that the deadline is on Wednesday, just two days away, so you still have a bit of time to put the finishing touches on your proposal. Take a moment to polish, adjust, and refine your ideas to ensure they’re ready for voting.

If you need any help or have questions, don’t hesitate to reach out.

georgefkd updated the task description. (Show Details)Aug 15 2024, 10:40 AM
georgefkd added a subscriber: georgefkd.
muelsyse updated the task description. (Show Details)Aug 15 2024, 2:57 PM
muelsyse awarded a token.
muelsyse added a subscriber: muelsyse.
gcb awarded a token.Aug 15 2024, 4:14 PM
aakarshmj added a subscriber: aakarshmj.
aronkvh updated the task description. (Show Details)Aug 20 2024, 11:15 PM
aronkvh added a subscriber: aronkvh.
T-bond added a subscriber: T-bond.

I strongly suggest this idea since we need a lot of contributors and improved workflow and somehow it'll expand the exposure of plasma to students etc.

I strongly suggest the target recruits of this will be, those who will be looking forward to improving their portfolio and took up some project. This could be an agile based contributors like GSoC and when they are interested in the project they could become an active contributor, of course that depends on the healthy environment people given in the KDE community. Maybe an official record or certificate of active participation (like KDE Discuss profile) which will help a lot of people to get into KDE. I mentioned this because many students will be requiring an Internship for their portfolio. So it'll be a win win situation for both themselves and KDE Community.

TL:DR: Through programs like Internship, small virtual events etc it'll help people to get into the contribution of KDE Community.

I would like any comment on this method, coz I want things to be improved in KDE Community too. So wanna know what others feel about this too and it'll help me convince u better.

shevchuk added a subscriber: shevchuk.
mte90 awarded a token.Aug 29 2024, 4:19 PM
dlaska added a subscriber: dlaska.Aug 31 2024, 8:13 AM

You might want to think about building long-term relationships with organizations like https://www.freecodecamp.org (9.87M subscribers on YT) to initiate a “coding for a cause” type program.

frdbr added a comment.Sep 2 2024, 12:29 PM

The voting process is over, the votes are being tallied and the chosen proposals will be announced at Akademy. In the meantime we would like to invite you all to join the KDE Goals matrix room to stay in the loop, get in touch with other people and team up on other proposals if yours doesn’t make it—or rally some support if it does.

frdbr renamed this task from KDE Needs You! 🫵 - Formalise and boost KDE's processes for recruiting active contributors to KDE Needs You! 🫵 - Formalize and boost KDE's processes for recruiting active contributors.Sep 7 2024, 12:08 PM
saphyel added a subscriber: saphyel.Jan 4 2025, 2:40 PM