My experience being a solo maintainer of open-source software in academia
pgbovine.net
pgbovine.net
This is online since 2010 if I remember correctly, it runs longer than a bunch of FAANG services that came and went. If people want to be snarky, please try a little harder to find a target that deserves it. Not every open source repository out there needs a fancy set of badges and hyper-responsive end-user support forum and the author is pretty clear about his intentions (heck, you're discussing a blog post stating exactly why and how this worked so well for 10 years).
Mobile apps basically expire in 2-4 years due to new permission models or the everchanging APIs. Web applications keep changing until one day they are bought by another company and either disappear or get redesigned into something unrecognizable. Out of the ones I use, only Craigslist and Reddit have remained relatively unchanged for a long period of time.
I find that even maintaining a website with no backend is time consuming. The links start to rot, you forget how your pages link to each other, new device form factors emerge, the images/js/stylesheets that were hotlinked start to break, and some company you rely on goes out of business or needs to "verify your login" with some forgotten information (a company like your registrar, ssl provider, web host, credit card processor).
I'm starting to think that for a solo maintainer, the less tooling you use the better. For my own pages, now I try to stick with a single index.html page, simple non-minimized html/css and maybe a bit of js but avoid jquery/bootstrap/googleanalytics. I would love to see more web pages optimized for long-term maintainability than aesthetics or fitting some web programming paradigm/toolchain.
Silence is the only scalable solution. I know that not making myself available feels unwelcoming and not inclusive; but I'm paid in my day job to serve students at my own university, not strangers on the internet who are using free software that I maintain in my spare time."
An interesting comment given past discussions on Hacker News about how demanding some users are about open source software (these users often tend to be other developers too).
It is just a whole lot less emotionally demanding than trying to interact with even very polite, but insistent people. There are just too many of them, and only one of me.
"Python Tutor's large international user base provides a unique platform for my research. This work has collectively led to almost a dozen research papers and several major grants so far."
In other words, he wants the (extremely large) benefits of an open source project but doesn't want to waste his time on those that don't have value to him.
He's running a startup with a $0 price tag rather than an open source project. He doesn't deserve to get any credit, it's something he does purely for his own benefit, and he's giving open source projects in general a bad reputation. Nothing that he's said is a justification for ignoring communication.
No, he benefits millions of users and is intentionally not taking "the (extremely large) benefits of an open source project" by stating he hasn't the time to deal with outside input.
If the source was closed and people could just use the (free) website nobody would care but since its open source he suddenly owes the world something?
I have no idea what this means. He wrote in his post that he does it for his benefit, and that he ignores most people because it doesn't benefit him to respond.
> If the source was closed and people could just use the (free) website nobody would care but since its open source he suddenly owes the world something?
Ignoring sincere communication has nothing to do with a software license. That's being a jerk. The choice of software license doesn't give you a right to be a jerk.
This is yet another one of those situations where someone is well known in the open source world and his fans think that excuses being an asshole.
He benefits from the software existing. He benefits from deriving a paper or two from running the platform. Neither has to do with it being open source.
The open source aspect benefits users only.
> The choice of software license doesn't give you a right to be a jerk.
It doesn't give anybody the right to contact the author, either.
Since "jerk" in this context means "not responding to sincere communication": if you send a sincere email to the CEO of IBM because you have proposals on how to improve SPSS (a tool that, as economist and professor, you're certainly familiar with), do you expect a substantial answer that isn't driven by the CEO's extensive staff and PR department?
Give that man a secretary and PR department and I'm sure he'll answer all communication.
Decent people: Philip is making this resource freely available to the world. It takes time and effort to maintain, so hey, thanks Philip.
You: Philip is not giving things away for free to my satisfaction.
This is a very HN-specific view of the world.
In the rest of the world, when someone contacts you with good intentions, you respond. Has nothing to do with entitlement. It's common courtesy.
The one aspect I'd change as the author is to not host the project on github because that platform seems to suggest a focus on being able to send stuff (patches, issues, ...) around and get reactions (for example it's impossible to disable the pull request UI). But that's a characteristic of GitHub not of Open Source.
Reading and categorizing for response 10-50 emails a day has it's own real costs, including the mental ones from getting home from work and then dealing with assholes, even if you do nothing more than hit block. Responding, even if it's a handful a day, is quite expensive. Let alone when you have 10k active users a day. It doesn't take many contacting you to create a serious time cost.
If you're capable of maintaining an open source project, you should be able to set up an email template. And if you're really so busy that you can't be bothered to do that, then put a message on your site telling users that the project is frozen, so you won't respond to email requests. But silence, that's something you do because you want to feel important. Completely unacceptable.
It's like any celebrity with a twitter handle, they now have to have template twitter reply or its not acceptable?
It's one thing when you have to deal with the support cases in your company when there is hard limit on how many people will be in touch with you. When you are releasing things to the world, there is no such limit. It can be one, it can be one thousand.
I too would like to have something open source one day, if I have something that I think can benefit people. I may not have time to respond to people, given my life and my health, so because of that I should not contribute? And if I did contribute in such circumstances, it is completely unacceptable?
You're literally writing this under a blog post detailing exactly that and it's also clear from the documentation of the project. What is your complaint here? That he potentially doesn't reply to every single e-mail?
I’m all for open source, but that doesn’t have to mean free. If millions of people use something, and get value out of it, they would only be right to return a small amount of that value.
Particularly the point about never responding to issues/emails. Would you if they came from sponsors?
But to counter my own point, this is academia, which is all about doing what the individual wants/deems important. Dr. Guo would probably turn down the money for the same reason he doesn’t want to excessively maintain/improve this project.
I am in a similar position as the author, some software I helped write on the side during my thesis is the only recognized remnant and actually got me my current job (tenured staff scientist)
I know that this is a hack to fit software into the usual credit scheme that academia uses. However, being a software maintainer might be more like being a journal editor (another category that gets you some points for tenure/promotion), especially since both having ongoing responsibilities.
When I worked as a programmer in academia, my lead professor said he'd had some folks from the computer science department over to look at what we were doing, and they commented that there were at least a couple of PhDs and 5 or 6 masters theses in there.
I don't know if that's true (and I didn't stick around long enough to find out) but I know that fully organizing and documenting every bit that I'd done would take many times longer than writing it in the first place.
I can definitely imagine writing a paper for the first major release. If the software solves an pressing scientific problem (e.g., replacing laborious experiments with accurate simulations) or shows off a new algorithm, the paper itself might be a big deal.
Subsequent versions seem trickier. You could certainly publish big technical advances, like a parallel version of the core algorithm. I'm not sure what you do for more routine maintenance and incremental improvements (e.g., bug fixes, more import/export formats, better UI). There are specialized journals that might take these "reports", like the Journal of Open Source Software, but I'm not sure if a CV of JOSS papers would give you a viable career.
[0] If I had to guess, I'd bet there were multiple PhDs in the topic you were working on. While the code base would be a good start, there's a lot more to a research degree than organizing and documenting some code.
As he states others have indeed done so and built research projects atop it, it would seem to be worth keeping open source.