to be fair, the blog post is talking about personal side projects, not Lasik software.
for personal side projects of the "handy SAAS thing that gives all your JSON a lustrous sheen" variety, he's probably more on target that quality seems to have gone by the wayside.
This is the ultimate "work smarter, not harder" dilemma. Since your goal is to actually wash the car, the answer depends entirely on how you plan to get the job done.
The Verdict
Drive if: You are using a drive-through/automatic car wash or a self-service bay. It’s pretty tough to scrub a car that’s sitting in your driveway from 50 meters away. Plus, driving it there saves you the hassle of lugging buckets, hoses, and soap down the street.
Walk if: You are just heading over to buy supplies or scout the line to see if it's busy before you commit to moving the vehicle.
Someone got a website to be served from some airbuds so a Sparc server, which is literally where we served websites from in the 90s, should be pretty easy
> - If you make your project public, it means you want and expect people to use it.
no, it doesn't, maybe I have a github project, I want to easily share it with ten of my friends for something, I don't particularly care if other people see it, so I make it public. That in no way implies I want random people to come along with bugs and PRs.
> You could at least write some documentation, so I don't waste my time and then find out, days later, i
if it doesnt have any documentation then that is a clear sign you should not expect anything from the author of that software. if reading some code and figuring out if it's useful to you or not is too much of a risk of your time, then assume it's not useful and move onto something else.
> If you set up a bug tracker, then at least have the decency to answer bug reports.
maybe the author had time and energy to answer bug reports a few years ago and maybe right now they don't. When bugs go unanswered (like, all the bugs, not just one in particular), that means the project is possibly in an unmaintained or semi-unmaintained status, might be time to move on. Or if it's just your bug, it usually means your bug is something the maintainers don't care about or dont have the cycles to spend effort on (again, could be time to move on).
certainly, if I'm an OSS author and I want people to use my project and stay with it, then yes, I'm certainly going to answer all bug reports. But I have no such obligation (indeed I have lots of projects and are in both categories and many in between).
> If you open it up to pull requests, it means you want people to contribute. Have the decency to review them. Someone took time away from their jobs, families or entertainment to write those PRs. Ignoring them because you don't need that feature, not affected by the bug, or simply because of code aesthetics is an insult to the one who wrote it.
counterpoint, people who barge in on your project with huge PRs for features or changes that were not discussed at all much less signed off on by the maintainers are incredibly rude and entitled, because they are using exactly your logic above "I starved my family to bring this to you!" to guilt you into taking your project into directions you may not have wanted, and beyond that, PRs are just as much work for maintainers as for the person contributing them. An unannounced PR to me is pretty much a bug report with a guilt trip attached, no thanks. I really wish Github would provide more options in this area.
> no, it doesn't, maybe I have a github project, I want to easily share it with ten of my friends for something,
Then make it private.
> I don't particularly care if other people see it, so I make it public.
Yeah, I see someone else made the same argument. It's a reckless disregard of other people's time and nerves. Build labyrinths and scatter them around the internet. Leave manholes uncovered. Markov chains to trap humans. You could at least say it's not maintained - no, not in the disclaimer.
> maybe the author had time and energy to answer bug reports a few years ago and maybe right now they don't.
Then close bug tracker and post "Abandoned" on the front page.
> counterpoint, people who barge in on your project with huge PRs for features or changes that were not discussed at all
Then say so and then reject them. That's what PR review means. I don't have a problem with rejected PRs. I have a problem with ignored PRs.
> It's a reckless disregard of other people's time and nerves. Build labyrinths and scatter them around the internet. Leave manholes uncovered.
That's a *you* problem, because you have wrong expectations.
> Then close bug tracker and post "Abandoned" on the front page.
You don't get to decide that.
> Then say so and then reject them. That's what PR review means. I don't have a problem with rejected PRs. I have a problem with ignored PRs.
Another case of you having wrong expectations. Like in networking, you should put a timeout on all requests. For all practical purposes a request that times out is to be treated the same as a rejection.
You're exactly right. I only get to decide what I do with my own toys. And I've decided I won't waste any of my time. If you (plural) can't write a one line answer to a bug report or click a reject PR button, then why should I put any effort?
> If you (plural) can't write a one line answer to a bug report or click a reject PR button, then why should I put any effort?
You wrote a PR because you benefited from source code that somebody on the internet shared for free, and wanted to share that work for free as well. See the PR as just one way to open source your patch. You could put it on your blog, in an email list, or keep it in a fork.
By opening a PR, you make it visible to other people who also benefit from the project and who may be interested in using it.
> then why should I put any effort?
Something I really want to say about this: if you decided to open a PR to an open source project, it is very likely that you put less effort into your PR than the other put into the open source project. But they gave it for free without complaining. You don't have to do it, but you can. And you will still have put less effort into it than the author.
> You could put it on your blog, in an email list, or keep it in a fork.
Get serious. Nobody's going to look into forks of a project to see what other people improved. Not even github has a search that good that would show bug fixes and improvements from forks that someone is searching for. How would you even search? (Well, to be honest, maybe Github has, or maybe Copilot can do that kind of search based on a half a page text description of what I'm looking for, but I'm really not aware that it exists.)
> By opening a PR, you make it visible to other people who also benefit from the project and who may be interested in using it.
Yeah, but if I have moral standards and care about not wasting those interested people's time, then I have to keep the PR forever maintained and rebased on current HEAD, even if I don't need to update my fork that often, or I stopped using that project altogether. If I didn't do that, then I would be a hypocrite.
At this point you just sound like you want to complain. I was saying that opening a PR is a nice way to share a patch, and all you get from it is an opportunity to complain about how difficult it may be to find a patch in a fork.
> Yeah, but if I have moral standards and care about not wasting those interested people's time
This has nothing to do with moral standards. I have benefitted multiple times from old, unmerged, outdated PRs. Because if someone fixes a bug, the valuable part is understanding what is going wrong and how to fix it. An outdated PR saves me that time.
> If I didn't do that, then I would be a hypocrite.
Not at all. You just have a very weird way to look at it.
Just sounds like you've moved the goal posts to something completely different. This entire statement is addressing people frustrated with their half broken PRs being closed. It has nothing to do with "not clicking the reject button"
Sorry, unless your IP is being infringed, you don't get to decide what's private or public. The internet is a vast and wondrous place. Figuring out which parts of it are worth your time is a you problem.
You make one really good birthday cake. Following the success of this went to your local school fete out of the goodness of your heart and set up a cake stall, had a complaints and suggestions box on the table, maybe even had a donation tin out. You know it's out of the goodness of you heart because everyone will SEE you doing this and maybe you'll get hired by the local bakery.
But then it's a bit of a long day and you start screaming at everyone who came up to you for wasting your time, rejected requests to not put broken glass fragments in the cakes, get into a fistfight with the local health inspector who pointed out you need certain food prep hygiene practices. You get big mad, and leave your stall in a huff, where hapless strangers stumble across your cakes only to find they are now covered in bugs and get sick from eating them.
Would this be acceptable or unacceptable behaviour on your part?
Are you as the cake stall operator taking advantage of the the commons in any way (donations, showing off your bake-folio?)
Are you damaging the commons or people visiting the commons?
Does your free speech expressed in cake form outweigh the rights of people to tell you to change what you are doing?
Does your freedom of expression mean you should never be accountable?
Should people be thankful that you let them have cakes covered in bugs, even if they get sick as a result?
Does the local health inspector who is an expert in a domain that overlaps with everything food have any standing?
This is a contrived thought exercise; obviously.
But I would bet that you clearly identify that violated social norms aren't great; you would agree there are expectations about access to a commons have implied standards of behaviour for all parties; you have expectations around quality vs general safety, etc.
Now imagine I make a weird cake and I think it's interesting. I put up a poster with a photo and a recipe and say "thought this was cool, try it if you want." And then some nonce comes along and tells me off for a reckless disregard of other people's time and nerves. Compares it to an open manhole cover that could get somebody killed.
Throwing some interesting code onto a web site isn't like setting up a booth at a community event. Its not even really like putting up a poster, since posters get seen by whoever happens to come nearby whereas web sites only get seen by people who seek them out, but it's about the closest you'll get to a real-world analogy.
Why are you trusting data to some random open-source project with no documentation?
The search engine is only going to direct you to my open source repo if you're searching for whatever it does. It's as if you'd only see my cake recipe if you were searching for cake recipes. And just like cake recipes, your search results will contain everything from superb production-tested projects (if there are any) to random stuff people have put up that isn't really used.
If you're searching for software and you find some random project that isn't very well tested or maintained, and you put that project to use in a place where it can cause data loss, that again sounds like a you problem.
If I post an article about how drinking bleach makes your skin softer, I share responsibility when someone does it.
If I post an article about how to make your own bleach, and a reader says “that sounds tasty” and drinks some, that’s not my responsibility in any way.
If I put up some trash code with a README that says “this is solid, reliable code that you should use for storing all of your financial data and family photos,” I have responsibility for what happens when people do that. If I just put up some trash code and say, I thought this was interesting and wanted to share it, and some numbskull decided to use it for something critical without thoroughly evaluating it first, not my responsibility.
> README that says “this is solid, reliable code that you should use for storing all of your financial data and family photos,”
Show me a readme like that! I'll wait.
Everybody writes a legalese disclaimer that basically say it's trash software and the author has no resposibility, but here's the thing: everybody ignores it. This is the reality of FOSS software.
Nobody has the time to audit the code of every FOSS they use. We all assume some basic quality such as not deleteting /var/db and the responsibility is yours to not do that or not publish it, no matter what you wrote in the readme/disclaimer.
“ SQLite is a C-language library that implements a small, fast, self-contained, high-reliability, full-featured, SQL database engine. SQLite is the most used database engine in the world. SQLite is built into all mobile phones and most computers and comes bundled inside countless other applications that people use every day.”
You don’t have to fully audit what you use, but you’d better do some basic vetting. If there’s no web site, no documentation, no activity on the issue tracker, then maybe when you put all your precious data into the thing and lose it, that’s your problem.
Anything you in a public space, will be made social by someone eventually. If you (GP) don't like it then tough shit. That's a You Problem, not an Us Problem.
And you can make github repositories that others can see but not the rest of us, it just costs a little money. You can host a book club at your house too and not have to listen to other people snicker at your friends' commentary on the book at the coffee shop. But if they're gonna keep saying stupid shit in the middle of a Starbucks, then someone is going to butt in.
A less generous response is one thing. Getting defensive about it and saying nobody is entitled to shit is something else entirely. And that's where the antisocial people of HN usually go.
I think people should return these cameras, this is good, but, is this really a trend or is MSN just reporting on a reddit sub with a few thousand people? So interesting a company owned by Microsoft would want to publicize people unsatisfied with a competitor...
Im not following how he knew the retaliation was "autonomous", like someone instructed their bot to submit PRs then automatically write a nasty article if it gets rejected? Why isn't it just the human person controlling the agent then instructed it to write a nasty blog post afterwards ?
in either case, this is a human initiated event and it's pretty lame
giant private companies like Google are not ever going to be involved with defying court orders, especially ones that do lots of business with the federal government (which will be just about any company even half of google's size). You can say it's wrong or whatever but it's like asking a brick wall to do an Irish jig.
The only solution to this problem is for the US to have a vastly more active anti-monopoly regime so that companies like Google, Facebook, Amazon etc. are simply not allowed to exist at such scales where consumers are locked into them.
I'm 57 and wrote my first line of BASIC in 1980, so while I can still chime in on this specific demographic I feel that I ought to. So im like this guy, but like a lot of other people in my specific demographic we aren't writing these long melancholy blog posts about AI because it's not that big of a deal. As an OSS maintainer most of my work is a lot of boring slog adding features to libraries to suit new features in upstream dependencies, nitpicky things people point out, new docs, tons of tedium. Claude helps a ton with all of that. no way is Claude doing the real architectural puzzle stuff, that's still fully on me! I can just use Claude to help implement it. It's like the ultimate junior programmer assistant. It's certainly a new, different and unique experience in one's programming career but it really feels like another tool, like an autocomplete or code refactoring tool that is just a lot better, with similar caveats. I mean in my career, I've had to battle the whole time people who don't "get" source code control (starting with me), who don't "get" IDEs (starting with me), people who dont "get" distributed version control (same), people who don't "get" ORMs (oh yes, same for me though this one I took much more dramatic steps to appreciate them), people who don't "get" code formatters, now we're battling people who don't "get" LLMs used for coding, in that sense the whole thing doesnt feel like that novel of a situation.
it's the LLMs that are spitting out fake photos and videos and generating lots of shitty graphics for local businesses, that's where I'm still wielding a pitchfork...
reply