Live data from Hacker News

My boundaries as an open source developer

joeldenning.com

51–60 of 251 posts

Re: My boundaries as an open source developer

#51
post #36

Earlier quoted context omitted.

The license very clearly tells you that you should not assume that the software is "production ready" and that if you do, that's on you. > THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE ...

You quote doesn't mean what you think it means. It just means "we will hide the real state of our software because we can, so you can choose to loose valuable time evaluating it now or else more time fixing it later. We could tell exactly how production ready it is, but we choose not to."

No, the license means exactly what it says.

An open source project (in most licenses) offers zero assurance of it being usable for production and that's what it means. If you want to use it for production you need to either (a) do whatever evaluations you feel necessary to ensure it will be stable for production for your needs, or (b) pay the authors for a signed support contract so they take on that responsibility.

Re: My boundaries as an open source developer

#52
post #35

Earlier quoted context omitted.

I would imagine that much of the software that you download from Github doesn't claim to be production ready. Many open source licenses include language like this: > THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. What you choo…

why do they hide what the real state is under "as is". "as is" can mean that it is great or that it is shit. So "as is" is not enough if you really want to be honest with people. But they don't want to be honest, they want to be famous and a little bit of "hide the garbage under the rug" doesn't hurt right? Well it does.

There's no hiding, it is about responsibility.

If you want to take it for free, then it is 100% on you to figure out if it's going to meet your needs and all the consequences (fixing any problems that may arise) are on your shoulders.

If you don't prefer that, you have the option to try to negotiate a support contract with the authors, for suitable payment.

What you can't get is assurance of production readyness for free.

Re: My boundaries as an open source developer

#53

I had a very similar experience with running open source projects. I was getting frustrated with people not contributing in any significant way. Functionally useless bug reports. Coding bootcamp students submitting PRs that did nothing but change some grammar in the README (and never actually changing it correctly). Feature requests for things I had explained in several other issues that I would never do. Requests fo…

You’re saying no one uses your software whether it’s open or closed, you just got annoying “contributions”. How did you know no one was using it? How would you know if someone was?

No, I didn't say people weren't using the software. I could see that in a lot of different ways: how many people were active on the project site, how many people had forked the project on github, etc.

My point was that my reaction to things like feature requests I didn't want to build was a signal that I wasn't interested in building just a user base for the project. If what I were interested in were building a project that people wanted to use, could sell to them, etc., then I would discard my notions about what I wanted to build and I'd build what people wanted. That was the epiphany I had. I realized I had been lying to myself about my motivations. I realized that my actions proved I didn't really care about getting people to just use the software.

Because I was so annoyed by the lack of contribution, despite the obvious signals that people were using the software, I (eventually) realized that my true goal was for people to interact with my code, not my program. There's a difference there. Any feature in a program can be implemented in any number of ways. But there's necessarily only one way that it's implemented in my program. Thus to be more focused on contributions than usage implies that I care more about how people see my implementation of the features than the features themselves.

I didn't start these projects thinking, "let me make a thing that will prove my prowess as a developer". I made the things to scratch some personal itch. The software on its own fulfills that particular need.

The act of open sourcing it was a different thing entirely. It's not trivial to open source a project; there's a lot of work in trying to prepare it for use by other people. Why go through all of that? What need did I expect opening the code to fulfill for me? Opening code doesn't attract users. So few users care if a project is open or not that they can safely be ignored as a rounding error. So why focus time on opening the code, verus any other action I could take with my time?

Thus the realization that I had been deluding myself.

Re: My boundaries as an open source developer

#54
post #50

Earlier quoted context omitted.

I don't understand. You have "developer forks". Everything after that is irrelevant. That's the whole point of open source.

On GitHub a fork is a lightweight thing. People fork the repo in order to contribute because they can't push to the original repo. It's not like you are philosophically against Emacs and decide to fork it to produce XEmacs.

Just as I don't understand the original comment, I also don't understand yours. You don't need to push to the original repo because open source allows you to make your fork available to others. The developer of the original has a right to decide to accept your changes or not, so I fail to see why it matters that your PR isn't accepted.

Re: My boundaries as an open source developer

#55
I think the missing aspect is that the platforms put this stuff in front of your face and human curiosity will have your attention directed at it anyway. You will actively be thinking about that troll who opened up an issue or someone in your Twitter DMs asking for help.

Although I respect the author's boundaries, that is sadly just part of the job of putting your work on the internet. This does not just stop at open source, if you put anything out for the world to consume, do know that this is what you're signing up for whether you like it or not. People will "find a way" to contact you and won't read your boundaries or even know about them before they do.

I keep an autoresponder in a notes file that I copy and paste regularly as it's a full time job to keep up with the requests.

Re: My boundaries as an open source developer

#56
post #34

I totally get where they are coming from but it does make it sound like unsupported software. After reading that, I would not use it without completely understanding the code as if I had written it myself (and maybe that's what you should do for every dependency anyway). I would probably look for another open source project to use instead. There seems to be a constant supply of people starting open source projects wh…

> it does make it sound like unsupported software

Nearly all open source software is by definition unsupported (read the license).

If you need support you can pay for it (and in the blog the author specifically states they are open to communications regarding paid consulting work).

Re: My boundaries as an open source developer

#57
post #34

I totally get where they are coming from but it does make it sound like unsupported software. After reading that, I would not use it without completely understanding the code as if I had written it myself (and maybe that's what you should do for every dependency anyway). I would probably look for another open source project to use instead. There seems to be a constant supply of people starting open source projects wh…

> maybe that's what you should do for every dependency anyway

Exactly. When your colleague wants to write new code in your repo you do a code review. When a stranger writes a large amount of code shouldn't you also do a code review?

Re: My boundaries as an open source developer

#58

Earlier quoted context omitted.

You don't need to use github, especially when you don't want the public making issues.

800# gorilla. don't think gitlab supports this either. that probably leaves self-hosting and all the brittleness and pain around that.

Correct, there's no way to restrict GitLab merge requests to trusted users, while still allowing others to view merge requests. It's either visible/accessible to all, or only to project members.

Re: My boundaries as an open source developer

#59
> I am contacted dozens of times every week with varying requests to answer people’s questions

Occasionally happens to me. I mean, not dozens of times a week, but I've had a few weeks with more than a dozen times.

> fix bugs

"Please file an issue at http://the.issue.tracker/wherever"

> or build new features

"Please file an issue at http://the.issue.tracker/wherever"

> set up consultations

So, this one is interesting. I mean, it almost never happens to me, and certainly not w.r.t. my FOSS specifically. If I were looking for work, this would be a boon, would it not? And if I'm fully booked, then:

"I am currently not available for consultancy. You may inquire again, if relevant, in ____ months."

> or discuss business opportunities.

"I'm sorry, not interested. Good luck with your business."

Although I guess if there were dozens of these emails per week, I would create a private email box and keep the existing one only for FOSS-support-related business, attending to it every couple of weeks or so. And perhaps create an auto-reply with the above replies :-)

Re: My boundaries as an open source developer

#60
I think there should be term like suffering from open-source fatigue.

Being an active open source dev myself I can relate to this but at the same time I also have been on the other side of the fence when my oss projects didn't get a lot of traction and any mention from anyone, even if it was an issue, got me really excited and it also kinda validated my efforts.

It's like being a mini celebrity feeling happy when somebody asks for your first autograph but as you become more successful more people want your time and attention and then you don't want it anymore. Also unlike being a celebrity you may get some fame but rarely any fortune, so that makes it all the more easy to get annoyed when people try to eat your attention for their own benefit.

Post reply on HN