Claudiu Popa, core maintainer of Python linter Pylint, became involved with the project by fixing a couple bugs. It’s a common tale in the world of open source: you find a project that addresses a need, but hasn’t been updated in a while, so you start contributing fixes.
“Pylint is a pretty old project,” Claudiu said. “It [was] started in 2003 by a French company [as] their flagship open source project.”
The project wasn’t pulling in a lot of contributors, though. To drive a stronger community around the project, Claudiu moved it to be hosted on GitHub.
Finding a new home
Claudiu feels like he positively influenced the course of the project by moving it to GitHub, because the number of contributors doubled.
But not a lot of people are interested in maintaining Pylint, so help is still hard to come by. In fact, even the original maintainers stopped contributing a few years ago. People might submit a bug fix or improvement request, but that’s it.
Claudiu tries to make Pylint part of his day job, but he can only work on it as it pertains to his employer. “We have all sorts of checks specific to an organization, specific to my company, and we wrote our own checks finding particularities specific to our project,” he said. “So I work on it at my job only as it pertains to my job.”
This is actually a common way open source maintainers are able to work on their projects—49% of open source maintainers say that their employers support their work. But they do face a restriction of autonomy, and often their work on open source becomes deprioritized for the work of their employer.
Issue triage
This means he spends a lot of his free time working on Pylint. Issue triage takes up most of his time. That’s why even though he and the other maintainers have a lot of major items they’d like to do on their roadmap, there’s just not enough time to work on those things.
“If I did, there would be no one to do bug fixes or respond to issues,” Claudiu said.
To make things easier, he created an issue template, which works great when people actually follow the template. Unfortunately, though, some people will delete the template and write their own.
“I would prefer to spend more time making Pylint faster,” Claudiu said. “But issues are still part of my responsibility.”
Using funding to set aside time
Claudiu was one of the early Python maintainer to sign on with Tidelift. He hadn’t really looked into any other business models for funding open source, but a friend encouraged him to apply. He said it’s helped him set aside time to work on the project.
Time is key, and something he thinks all open source users should consider when they complain about project performance.
“We maintainers have our own lives,” Claudiu said. “We’re busy, we don’t necessarily do just this. In a way, I think folks should be more considerate about the time of project maintainers.”
--
If you’re interested in a managed open source subscription that gives you the flexibility to build with open source components like Pylint together with the confidence of commercial-grade software, check out the Tidelift Subscription.