Given that some 80% of developers are now using AI in their regular work, blob-util is almost certainly the kind of thing that most developers would just happily have an LLM generate for them. Sure, you could use blob-util, but then you’d be taking on an extra dependency, with unknown performance, maintenance, and supply-chain risks. Letting LLM write utility code is a sword that cuts both ways. You often create a th…
The fate of "small" open source
191–200 of 238 posts
Re: The fate of "small" open source
#192Re: The fate of "small" open source
#193I see this as an absolute win. The state of micro dependencies of js was a nightmare that only happened because a lot of undereducated developers flooded the market to get that sweet faang money. Now that both have dried up I hope we can close the vault door on js and have people learn how to code again.
Now you got vibe coder
I could fear that rather than keep pushing for a Javascript standard library, which would encompass all these smaller function, we now just get more or less the same defective implementations generated by LLMs, but hidden in thousands of repos, where tools won't find security issues. At least with NPM we can pull in updated versions with NPM tells us that we're running an outdated version. Who is going to traverse your proprietary code base and let you know that the vibe coded left-pad Claude put in three years ago is buggy?
Re: The fate of "small" open source
#194Earlier quoted context omitted.
> If you're the author of a library, you have to cover every possible way in which your code might be used. You don't actually. You write the library for how you use it, and you accept pull requests that extend it if you feel it has merit. If you don't, people are free to fork it and pull in your improvements periodically. Or their fork gets more popular, and you get to swap in a library that is now better-maintained…
It's a rare developer (or human for that matter) who can just shrug and say "fork off" when asked for help with their library.
Maintenance demands (your library X doesn't work with Python Y, please maintain another version for me) I'd shrug off. Wait for me, pay me, or fix it yourself.
Re: The fate of "small" open source
#195Given that some 80% of developers are now using AI in their regular work, blob-util is almost certainly the kind of thing that most developers would just happily have an LLM generate for them. Sure, you could use blob-util, but then you’d be taking on an extra dependency, with unknown performance, maintenance, and supply-chain risks. Letting LLM write utility code is a sword that cuts both ways. You often create a th…
Re: The fate of "small" open source
#196AI offering the solution for a small problem that probably doesn’t deserve yet another dependency suggests to me that there’s a middle ground that we’ve failed to sufficiently cover: how to socialize code snippets that you’re meant to just inline into your project. Stack Overflow is probably the closest we’ve gotten to a generalized solution and it doesn’t exactly feel like a good one. I came across this once before…
GitHub gists are probably the best technical option. They come with versioning (I think), and have comment threads.
I think what’s missing is some amount of organization to make them more discoverable.
Re: The fate of "small" open source
#197I am sure I am not the only one who thinks these micro-dependencies are worthless anyway. You'd be better off just listing the functions in a markdown file for people to copy over than ship an entire package for it. This isn't "small" open source, "small" would be something you put together in a week or weekend. These are like "micro" projects, where more work goes into actually publishing and maintaining the reposit…
You have to manually update for any releases you care about, but that is also an incentive to keep dependency count low.
Re: The fate of "small" open source
#198Earlier quoted context omitted.
Oh god, without tree shaking, lodash is such a blight. I've seen so many tiny packages pull in lodash for some little utility method so many times. 400 bytes of source code becomes 70kb in an instant, all because someone doesn't know how to filter items in an array. And I've also seen plenty of projects which somehow include multiple copies of lodash in their dependency tree. Its such a common junior move. Ugh. Exper…
> 400 bytes of source code becomes 70kb in an instant, This only shows how limited and/or impractical dependency management story is. The whole idea behind semver is that at the public interface level patch version does not matter at all and minor versions can be upped without breaking changes, therefore a release build should be safe to only include major versions referenced (or on the safe side, the highest version…
Part of the problem is that a javascript module is (or at least used to be) just a normal function body that gets executed. In javascript you can write any code you want at the global scope - including code with side effects. This makes dead code elimination in the compiler waay more complicated.
Modules need to opt in to even allowing tree shaking by adding sideEffects: false in package.json - which is something most people don't know to do.
> I don't see much value in having exact members imported listed out at the preamble
The benefit to having exact members explicitly imported is that you don't need to rely on a "sufficiently advanced compiler". As you say, if its done correctly, the result is indistinguishable anyway.
In my mind, anything that helps stop all of lodash being pulled in unnecessarily is a win in my books. A lot of javascript projects need all the help they can get.
Re: The fate of "small" open source
#199Earlier quoted context omitted.
Sounds like a lot of FUD to me — if major projects balk at the emergence of new classes of tools, perhaps the management strategy wasn’t resilient in the first place? Further: sitting down to discuss how your project will adapt to change is never a waste of time, I’m surprised you stated it like that. In such a setting, you’re working within a trusted party — and for a major project, that likely means extremely compe…
> if major projects balk at the emergence of new classes of tools, perhaps the management strategy wasn’t resilient in the first place? It's not the tools, it's the quality. No FOSS dev would care where the code came from if it followed the contributor's guidelines and coding style. This is why it's a spam issue. a bunch of low quality submissions only gum up the time of such developers and slows the entire process d…
Why not just disallow issues without a vetting process?
Many of these things could be explored -- you're right: it's a spam issue. But we have solutions to spam issues ... filters. LLMs have shown that "praying for the best" with permissive repository settings is not sufficient. We can and will improve our filters, no?
Re: The fate of "small" open source
#200Earlier quoted context omitted.
I don't think searching for answers to simple questions was a problem until Google nerfed their own search engine.
Pretty sure Google attempting to curb SEO tactics is what led to whatever nerfing you are talking about.