Most active commenters
  • (4)
  • justinator(3)
  • Alex3917(3)
  • jstarfish(3)
  • jacquesm(3)

←back to thread

2024 points randlet | 72 comments | | HN request time: 0.826s | source | bottom
Show context
bla2 ◴[] No.17515883[source]
> I don't ever want to have to fight so hard for a PEP and find that so many people despise my decisions.

Leading a large open source project must be terrible in this age of constant outrage :-(

replies(9): >>17515955 #>>17515972 #>>17516193 #>>17516427 #>>17516776 #>>17516884 #>>17517282 #>>17517716 #>>17517821 #
1. sjm-lbm ◴[] No.17515955[source]
It's PHP and not Python, but every time I read something like this from a major open source figure, I always think of this old PHP mailing list thread:

https://bugs.php.net/bug.php?id=50696

replies(8): >>17516108 #>>17516130 #>>17516216 #>>17516240 #>>17516461 #>>17516708 #>>17516836 #>>17517666 #
2. Y_Y ◴[] No.17516108[source]
That's a good read. I feel like the "customer is always right" mentality does quite a bit of harm to OSS support.

Also reminds me of that dev (who I can't seem to search up) who had their email printed as part of a open-source software license in a car manual and would get ridiculous email from people who had car trouble.

replies(6): >>17516199 #>>17516206 #>>17516230 #>>17516371 #>>17516964 #>>17517308 #
3. coryfklein ◴[] No.17516130[source]
OMG there are some real gems in that thread.

> Escalate? Oh how I wish I had someone to escalate to. - rasmus@php.net

> After carefully reviewing this bug report with our board of directors on 4chan, we have come to the conclusion that your "rusty C skills" should be enough to fix the issue. I would therefore like to remind you that rasmus@php.net is http://en.wikipedia.org/wiki/Rasmus_lerdorf

replies(4): >>17516383 #>>17516676 #>>17517003 #>>17517845 #
4. JdeBP ◴[] No.17516199[source]
* https://news.ycombinator.com/item?id=16393228 * https://news.ycombinator.com/item?id=16763618
5. ranko ◴[] No.17516206[source]
You're probably thinking of Daniel Stenberg of curl fame:

https://daniel.haxx.se/blog/2016/11/14/i-have-toyota-corola/

replies(1): >>17517807 #
6. raverbashing ◴[] No.17516216[source]
"This is going to cause us MONTHS or fixing code for no real benefit since this behavior change is arbitrary and seemingly, was made for no reason"

Yeah, tough. Fix your code

That's the attitude some maintainers need in cutting unreasonable requests.

replies(1): >>17516395 #
7. ◴[] No.17516230[source]
8. vxNsr ◴[] No.17516240[source]
O_o I wonder how many times I've spoken to someone and didn't realize who it was/how important they were because of the anonymity of the internet.
replies(4): >>17516660 #>>17517001 #>>17517331 #>>17521892 #
9. krylon ◴[] No.17516371[source]
OTOH, way back, when I had a TV receiver card by Hauppage, and a new Linux kernel broke something, I posted a description of my troubles on Usenet, and within 24 hours, the person who had written the Video4Linux subsystem replied asking for more details (which I gladly provided), and a few days later, the bug was fixed.

That, I think, was the most awesome "customer support" experience of my life. I did make a point of being polite about it, however, which I consider a ground rule for dealing with people, especially if I want something from them.

But it was so awesome to post to a random usenet group about a driver problem and have the person who wrote the driver personally approach you for details. You don't get that with Windows, for sure. ;-)

replies(4): >>17517050 #>>17517497 #>>17517581 #>>17519508 #
10. ◴[] No.17516383[source]
11. ashelmire ◴[] No.17516395[source]
It's hilarious because it's literally a one-liner that Rasmus provided for him.
replies(1): >>17516460 #
12. sjm-lbm ◴[] No.17516460{3}[source]
It's more hilarious because his response to that (basically, "this is tax software so there will be a lot of QA when we make that change") is at least sort of legitimate, but only because his accounting software evidently only works due to undefined corner cases in the underlying platform, and that's just ... wow.
replies(3): >>17516692 #>>17517084 #>>17517300 #
13. ErikAugust ◴[] No.17516461[source]
I'm sure 'endosquid.com' is currently being by hammered by people wanting to find out who was so rude and unreasonable.
replies(1): >>17516603 #
14. Operyl ◴[] No.17516603[source]
Looks like it has been dead for a bit now.
replies(1): >>17517457 #
15. freehunter ◴[] No.17516660[source]
I know I've gotten into heated arguments on here or on Reddit with very well-known figures in the tech world without realizing who they are until after the fact. Luckily I don't think I've every argued with a developer about their own product before... that I know of.
replies(1): >>17516715 #
16. robaato ◴[] No.17516676[source]
Shades of:

It often happens that I wake up at night and begin to think about a serious problem and decide I must tell the Pope about it. Then I wake up completely and remember that I am the Pope.

Pope John XXIII

replies(1): >>17516848 #
17. justinator ◴[] No.17516692{4}[source]
I was on the side of the person giving the - I think fairly legit., bug until I came to, "tax software in php" and then I realized there's nothing really black and white in this world.
replies(1): >>17517330 #
18. swyx ◴[] No.17516708[source]
found prior HN discussion: https://news.ycombinator.com/item?id=4145179
19. swyx ◴[] No.17516715{3}[source]
i have a great solution: speak to everyone like they are a human being with feelings :)
replies(1): >>17516795 #
20. TimTheTinker ◴[] No.17516795{4}[source]
* slow clap *

“A word aptly spoken is like apples of gold in settings of silver.” —Proverbs

21. Sir_Cmpwn ◴[] No.17516836[source]
Archive:

http://archive.is/XYXoi

22. spease ◴[] No.17516848{3}[source]
“But, Doctor, I am Pagliacci!”
23. Alex3917 ◴[] No.17516964[source]
> "customer is always right" mentality does quite a bit of harm to OSS support.

It goes both ways. All too often people promote their new library on HN and Reddit, wait until a bunch of people are using it as a dependency, and then abandon it without even telling anyone whether or not it’s abandoned.

replies(2): >>17517068 #>>17517252 #
24. fpgaminer ◴[] No.17517001[source]
When I was much younger I started building a ray casting engine. I was having trouble wrapping my brain around how to render the floors so ... I emailed Ken Silverman.

It escapes me now _why_ I emailed him. I certainly had no idea the gravity of who he was (for those also unaware, he is perhaps most famous for creating the Build engine used in games like Duke Nukem 3D). I believe I was under the false assumption at the time that the Build engine was a raycaster (I hadn't played Duke Nukem), and I probably found a personal page of his about the Build engine while trying to solve my problem.

Either way, young me emailed Ken Silverman like it was nothing. He responded! He corrected me about the Build engine, but also proceeded to help describe how to render floors in a raycasting engine.

It still took me awhile more to get the hang of the math, and I believe a few more emails back and forth with him. I feel bad now, knowing now who he was. But I appreciated his help immensely. I think I wrote 3 or 4 more ray casting and tracing engines back then. Some were rudimentary, one was a raycaster but allowed arbitrary 2D level geometry (and even used some tricks to put "holes" in walls to cheat windows and have multiple heights). One was for a code golf competition. And one was _super_ efficient; the math and levels were set up such that 90% of the logic was just binary math rather then having to do the usual multiplications, divisions, and square roots. They're a lot of fun to make and I learned a lot.

Ken, if you ever stumble on this comment, thank you!

replies(3): >>17517353 #>>17517424 #>>17525407 #
25. hlmencken ◴[] No.17517003[source]
Born in Greenland, that's a first I've seen.
26. kwhitefoot ◴[] No.17517050{3}[source]
I had the same experience. Suddenly Emacs Gnus reader stopped working, about 11:00 on a Friday morning. I posted the bug and had a reply from Lars Ingebrigtsen with an explanation and a workaround by 13:00. I think it was fixed by the beginning of the following week.

My experience of trying to get help from Microsoft on the other hand is, well let's just say not quite so impressive; they kept me on hold for 45 minutes once and never did solve my problem.

replies(1): >>17517426 #
27. jstarfish ◴[] No.17517068{3}[source]
Not using toy libraries for production systems is a lesson every young developer learns early on in their career.
replies(3): >>17517183 #>>17517245 #>>17517678 #
28. ocschwar ◴[] No.17517084{4}[source]
The underlying platform? WOuld that be Python or the tax law?
29. jacquesm ◴[] No.17517183{4}[source]
Fortunately every young developer is also schooled extensively in telling toy libraries apart from serious ones.
replies(3): >>17517708 #>>17517858 #>>17519660 #
30. passiveincomelg ◴[] No.17517245{4}[source]
In what parallel universe are you and how do I find the next wormhole to get there? :)
replies(1): >>17517728 #
31. cf498 ◴[] No.17517252{3}[source]
There is a fundamental difference between the extreme of stuff like GnuPGP, OpenSSL and other extreme of stuff someone created over the weekend and was nice enough to make available

I dont want to know, how much of core infrastructure is resting on the shoulder of overworked and burned out BDFL. This isnt a ego complex in most cases, but the knowledge that without someone with their commitment working at the project it will crumble.

32. zaphar ◴[] No.17517300{4}[source]
One of the hidden costs when you elect to use a language like PHP in the early 00's is that as they fix the glaring issues in their language and stdlib you will be incurring a continuing maintenance cost.

It's a combination of your choice to pick PHP and their choice to fix the languages warts colliding.

It may even have been a reasonable choice for reasons of time to market, hiring, and other business related factors. But the conflict in this thread highlighted that whoever chose PHP in the beginning did not factor in this hidden cost when he made his choice. The results of that lack of information were predictable.

replies(3): >>17517548 #>>17517831 #>>17517901 #
33. bsg75 ◴[] No.17517308[source]
An interesting debate: Are _users_ of FOSS "customers" ?
replies(1): >>17518102 #
34. ScottBurson ◴[] No.17517330{5}[source]
Did you catch the part about "it makes you lose faith in the product"? ROFL
replies(1): >>17517920 #
35. gomox ◴[] No.17517331[source]
When I was 19 I was interning at Google and I got into a mild discussion on a mailing list with Rob Pike. When I went back to school the next semester someone was teaching a class on UTF-8 and I thought the name of the creator sounded familiar.

Thank god I don't have access to those emails anymore so I don't have to endure the cringe.

To make myself feel better, I posit that that kind of youthful arrogance is at the origin of many innovations done by youngsters that didn't know better.

replies(1): >>17517751 #
36. heurist ◴[] No.17517353{3}[source]
I've done nothing worth mentioning here, but I have received a couple emails asking detailed questions about things I'd done and forgotten about years ago or looking for early career advice, and I'm more surprised and honored that someone took the time to appreciate my work than anything.
replies(1): >>17517500 #
37. code_duck ◴[] No.17517424{3}[source]
That’s great. In your naïveté, you were unaware not intimidated by his prominent figure or reputation. I’ve found that some very well-known people and companies are more approachable than one might expect, possibly because people usually assume they will be indifferent to personal communication and don’t try to talk to them.
38. undseg ◴[] No.17517426{4}[source]
Back in the days Microsoft would have amazing customer support. And I'm talking about "API customers", many times I've seen them go out of their way to fix third party programs not working correctly by adapting their platform, it was a very efficient process. I guess that doesn't work as well at their current scale, or they care less because they're not building up market share.
replies(2): >>17517534 #>>17517999 #
39. currysausage ◴[] No.17517457{3}[source]
Since 2010, it seems: https://web.archive.org/web/*/endosquid.com

Guess they went out of business before they could typecast all these nasty empty strings.

40. eithe ◴[] No.17517497{3}[source]
I used to have similar experience with most of the free source (that, or silence when project got abandoned), until Laravel, where I was yelled at because somebody apparently needed an ego boost that day. I still love the framework, but I don't think I'll be trying to reason there anymore. Still - maintaining projects most of the time is unappreciated job, so kudos if you do it
41. sli ◴[] No.17517500{4}[source]
The best I've gotten are emails asking for permission to fork one of my public Github repos. I was never sure how to respond to those, because... yes? By default?
42. marris ◴[] No.17517534{5}[source]
> go out of their way to fix third party programs not working correctly by adapting their platform, it was a very efficient process

This kind of thing probably doesn't even scale with itself, since there are only so many acrobatics your code can go through before no one can even understand why it's doing something, let alone add new workarounds. So the first K broken programs get special treatment, and the others face a much higher bar to get the same treatment.

43. eithe ◴[] No.17517548{5}[source]
One of my PHP bug submissions is already in high school. The other is in kindergarten. Thankfully both of them won't see light of day in most applications.

But focusing on PHP is rubbish - you can look at any language and find questionable choices. The moment where we need frameworks to make the warts go away - that's worrying. Same thing with JS really

44. Kadin ◴[] No.17517581{3}[source]
Yep. This attitude isn't dead, assuming you approach the developer via the right/preferred venue, and are polite, and they are still actively maintaining the project. And it really helps if you give a thorough bug report!

I recently submitted a bug report to a fairly niche OSS package that I use, and within a few hours the author replied (on GitHub) something like "oh wow, yeah that's an edge case but I definitely want to fix it, can you send me the test data you used..." and once I gave him the test data, he had it fixed in two hours and now anybody who grabs the source won't have to deal with that bug.

It was great, and even though I didn't do anything except write up a bug ticket properly (the same way I'd expect anyone on my team at work to do it), the software is a little better now.

45. munificent ◴[] No.17517666[source]
I have yet to encounter any user so hostile in my open source projects, thankfully. But when the time arises, the line I have prepared is:

    I'm really sorry you ran into this issue. To make things better,
    I've given you a full refund.
replies(1): >>17522935 #
46. Alex3917 ◴[] No.17517678{4}[source]
If you put something out there and no one uses it then fine. But once it has hundreds of commits and issues and over 1,000 stars on GitHub, then I think you have some responsibility to people using the thing you’ve created -- if you’ve been actively promoting it as something everyone should use.
replies(2): >>17517913 #>>17518331 #
47. janoc ◴[] No.17517708{5}[source]
And why isn't the young developer being mentored by someone more senior before introducing a new dependency into a business critical system?

Why is what amounts to a clear project management failure the problem of some open source developer who has published their personal pet project?

If dependencies aren't reviewed before being used, how does such organization handle software license compliance (whether OSS or proprietary), for example?

A clear cut case of trying to shift blame for own failings onto an unpaid volunteer that has helped to save the commercial developer time and money, IMO.

replies(2): >>17517787 #>>17518188 #
48. janoc ◴[] No.17517728{5}[source]
Well, that people don't do such things is not really the fault (nor problem) of the developer of that toy library, IMO.

Nobody else but you alone can ensure that your project is managed and developed properly.

49. crystalPalace ◴[] No.17517751{3}[source]
Reminds me of attending a conference and being in a workshop with a member of TC39, the Ecmascript standards committee. I was sitting next to this individual but didn't know who they were. I made the mistake of complaining about modern JS and version splitting. Fortunately, I didn't say anything too harsh but I definitely would have held my tongue if I knew who they were.
50. jacquesm ◴[] No.17517787{6}[source]
> And why isn't the young developer being mentored by someone more senior before introducing a new dependency into a business critical system?

Some critical assumptions:

- a more senior dev is available

- has time

- understand the system well enough to judge the impact

- is actually a better developer than the junior (in spite of being older / in the game longer)

> Why is what amounts to a clear project management failure the problem of some open source developer who has published their personal pet project?

It isn't, that was the point.

> If dependencies aren't reviewed before being used, how does such organization handle software license compliance (whether OSS or proprietary), for example?

Some critical assumptions:

- organizations keep a close eye on developers incorporating code under various licenses

- the people keeping an eye on that are qualified to make the calls

- the resources to keep an eye on this are available

> A clear cut case of trying to shift blame for own failings onto an unpaid volunteer that has helped to save the commercial developer time and money, IMO.

Sure. But that doesn't mean these things don't happen just about everywhere, many times per day.

It is rare to find a company where all of the assumptions labelled above are true all the time. And that's where the problem lies.

It's a clear case of there being no difference between theory and practice in theory but in practice there is, and rather a lot of it. Everybody knows in theory how software should be developed, but in practice hardly anybody actually does it that way. They're either out of time, options or qualifications (or all three) and they will do the job anyway.

That doesn't excuse it, but it does help you to understand it.

51. luhn ◴[] No.17517807{3}[source]
Ha, hadn't seen that one before. I did enjoy this related post about him hacking someone's Instagram. https://daniel.haxx.se/blog/2016/01/19/subject-urgent-warnin...
52. ◴[] No.17517831{5}[source]
53. jypepin ◴[] No.17517845[source]
After carefully reviewing this bug report with our board of directors on 4chan, we have come to the conclusion that your "rusty C skills" should be enough to fix the issue. I would therefore like to remind you that rasmus@php.net is http://en.wikipedia.org/wiki/Rasmus_lerdorf

ahahaha

54. gaius ◴[] No.17517858{5}[source]
Then explain nodejs and MongoDB existing in production systems?

Or did you forget the /s...

replies(1): >>17517882 #
55. jacquesm ◴[] No.17517882{6}[source]
> Or did you forget the /s...

Yep. It's been a long day after a particularly long week. I will take a break from HN, too much on my mind. Thanks for the reminder.

replies(1): >>17518713 #
56. ◴[] No.17517901{5}[source]
57. titanix2 ◴[] No.17517913{5}[source]
No they aren’t. The code is open source anyway so if the dependency is important enough for your project, fork it. Or pay for support.
58. justinator ◴[] No.17517920{6}[source]
I caught the part about, "we have unitialized variables being passed everywhere which should be numbers" and that code, well, smells.

I think the PHP team changing the return value of a function without putting anything in a changelog is a Very Bad Idea and a dev. should be pretty upset about that. Saying that the main dev. is doing this work as a charitable thing is fairly misleading as well.

Buuuuut, I also think passing an unitialized value like that is already a bug in this context given the type of software being created. I'd rather see, "NULL" found wherever than know that it was magically changed to 0 (like they would prefer). I know the dev. said that this is just a formatting thing, but I'll wager they're using formatted numbers for some sort of calculation (inadvertently or not).

Whatever is going on, I hope there was a huge code review and a massive QA effort ( which I also doubt happened), because this is a textbook example of tech debt and the loan shark has come a-knockin'.

replies(1): >>17518587 #
59. TheDauthi ◴[] No.17517999{5}[source]
They once shipped my company a custom MSVCRT.DLL to fix a crash bug in a third-party application under heavy load. True, it was a bug in the C runtime itself, but they got us a fix for it about a day after we (along with the third party) got in touch with them.

Just a few years later my team had to contact them for a BSOD that kept happening after one of their patches. We were put off for about a week before throwing our hands up on it.

60. dhimes ◴[] No.17518102{3}[source]
I think "consumers" is the better term.
61. rhizome ◴[] No.17518188{6}[source]
And why isn't the young developer being mentored by someone more senior before introducing a new dependency into a business critical system?

Because they're already the senior. CEO said it shouldn't be that hard, and besides, they only wanted to pay $40K/yr.

62. jstarfish ◴[] No.17518331{5}[source]
It's a free product, not a child support obligation. Even if you do walk away, it's open source and can be maintained by anybody interested in stepping up. This is the price of adoption, not guaranteed updates for life from the creator.

But I get where you're coming from. It's even worse on Steam, where developers will actually collect money during the "early access" phase and then walk away once a (closed-source) tech demo is half-complete.

replies(1): >>17518396 #
63. Alex3917 ◴[] No.17518396{6}[source]
> This is the price of adoption, not guaranteed updates for life from the creator.

I’m not saying anyone should be obligated to do free work. This issue is that most people don’t feel comfortable publishing a public fork without the blessing of the creator, or at least knowing the creator no longer intends to work on the project in the near future. So you end up with these situations where there are thousands of people running production systems with unmerged security patches because the creator can’t be bothered to spend 30 seconds to write a one sentence reply to an email.

Short of being in a coma, I consider that toxic behavior.

And just to be clear I’m taking about situations where there are lots of open PRs but no signs of life for months or years on end, not situations where the creator just went on vacation for a few weeks.

replies(1): >>17519628 #
64. ScottBurson ◴[] No.17518587{7}[source]
I agree with this as far as it goes, but I think @zaphar has the better answer: a tax app should never have been written in PHP to begin with.

There's a fundamental quandary in language design: accessibility to novice programmers and suitability for serious work are in opposition. Novices, being novices, are unable to appreciate this problem.

replies(1): >>17518712 #
65. justinator ◴[] No.17518712{8}[source]
Oh dude: absolutely agreed on that.
66. gaius ◴[] No.17518713{7}[source]
Have a great weekend, catch you on the flipside
67. bigger_cheese ◴[] No.17519508{3}[source]
Years ago I purchased a motherboard with a built in Raid controller. There were no drivers for it in mainline Linux kernel but there was code for a kernel module on the chipset vendor (Via's) website. The provided code wouldn't compile because there was a bug.

People from Fedora IRC channel helped me live debug the code over irc and we found the bug and were able to get code to compile and my raid controller working. Was an awesome experience.

68. lstodd ◴[] No.17519628{7}[source]
eww, that's called entitlement.

no one promised you anything. you merged some code into your project. now deal with the consequences. be responsible for your work.

69. jstarfish ◴[] No.17519660{5}[source]
By definition, they aren't though-- for the truly green, that extensive schooling comes from `npm/pip/gem install`ing random packages with implementations they don't understand or can't account for, then having to deal with the fallout in whatever form it chooses to manifest itself. Could be a maintainability nightmare, or it could be losing your job.

My advice to mentees is that if installing a package to achieve x saves (a significant amount of) time/money that outweighs the risks to self/company or has value added by means of product maturity or domain expertise, then by all means do not roll your own crypto, web framework, db connector or machine learning library. But if one is going to introduce dependencies on things as trivial as leftpad or someone's Show HN single-pass weekend hackathon proof-of-concept, they will soon learn why we don't bring toys to work.

70. jmmcd ◴[] No.17521892[source]
I wrote to Ken Thompson when I was an undergrad doing a history of computing essay. And he wrote back with a potted autobiography! It was probably a bit before email became the scourge that it is now.

The sad part is: I lost the email in a transition from one machine/set of floppy disk backups to another.

71. kamyarg ◴[] No.17522935[source]
Ah, now I want to contribute to open source community just because I might be able to say this to some unappreciative prick. :)
72. justin66 ◴[] No.17525407{3}[source]
> Ken, if you ever stumble on this comment, thank you!

His email address takes a very short time to find and he's on Facebook. Just a suggestion: why not send a note and thank him for real? You might make his afternoon a little brighter.

(I'm awful about thank you notes and if you knew me you'd be within your rights to call me a hypocrite, but still!)