I am a beginner in this space but I have some interest in trying to find solutions to the pain of package usage.
* A new programming language and ecosystem could try to solve package management from day 0. ScrapScript is an example of this. I've heard good things about Go and Rust.
* You can make package management fun by thinking of it as a data flow factory and like Factorio (which I've not played but I do get the feeling of that game) As it stands it's just lots of tedious boring busy work.
* If only dependency usage was as enjoyable and straightforward as shopping and arranging bought things in a room.
* I am investigating the modelling of packages as bundles of types foremost and state machines that can be traversed by the package manager to determine state interactions and compatibility automatically.
* Changes to packages break everything. You could diff ASTs to see what's different.
* I don't enjoy breaking changes. I have some old projects where I never pinned versions that cannot be built because I don't know what versions they work against.
Simply having a sane standard library (as packages) goes a long way to making package management nice. Because then most packages are level 2 depending only on core libraries whose API rarely changes.
Even JS/NPM, if it has this, would be a lot nicer to use. I find Python nicer than NPM just for this reason even though people grumble. And .NET even better. Elm is perhaps the best package manager because of the focus on developer experience there.
Another good tip: have just one package manager for your ecosystem!
> You can make package management fun by thinking of it as a data flow factory and like Factorio (which I've not played but I do get the feeling of that game)
having played the game, Factorio is way more fun than package management
* A new programming language and ecosystem could try to solve package management from day 0. ScrapScript is an example of this. I've heard good things about Go and Rust.
* You can make package management fun by thinking of it as a data flow factory and like Factorio (which I've not played but I do get the feeling of that game) As it stands it's just lots of tedious boring busy work.
* If only dependency usage was as enjoyable and straightforward as shopping and arranging bought things in a room.
* I am investigating the modelling of packages as bundles of types foremost and state machines that can be traversed by the package manager to determine state interactions and compatibility automatically.
* Changes to packages break everything. You could diff ASTs to see what's different.
* I don't enjoy breaking changes. I have some old projects where I never pinned versions that cannot be built because I don't know what versions they work against.