How are these sorted? Not by author name, package name, or version number AFAICT. By popularity (and if so, calculated how)? Randomly?
How do folks typically tackle the process of choosing which package best suits their needs? Picking amongst a half-dozen choices isnāt too daunting, I admit, but I worry that there is a nascent scalability problem here.
I note that two of these packages are clearly labeled as clones of rtfeldman/elm-iso8601-date-strings in order to make certain fixes available. I hadnāt encountered this before. Is this the way folks typically get around the problem of unmerged PRs? Again, I worry there is a nascent scalability problem here.
Interested to hear everyoneās thoughts ā thanks!
1: I remember reading in an earlier discussion that they are sorted alphabetically, but that there are some exceptions who are special-cased to appear first.
There is definitely more to it than pure ānr of talks at conferenceā. I assume the first few packages are hand-picked (as they are the most used packages), thatās why when searching for ācssā, elm-ui comes up before rtfeldman, even though mdgriffith has less conference appearances. As far as your example goes, this seams to pay of, as rtfeldman/elm-iso8601-date-strings would be the way to go.
I would first exclude all clones of existing packages (as they are often not maintained for long). Then I typically use the one with the better documentation, as that most often coaligns with a well thought through implementation.
Elm packages have a tendency to take their time till bugs are fixed. Itās often recommended cloning the package into the repository of your project and implement the fix yourself, until the original package releases the next update.
It would appear that only the GitHub username of the conference presenter is used, which seems rather odd. In the case of elm-vega and elm-vegalite, Alex Kachkaev presented the work at Elm Europe, but we publish the packages under the group name gicentre, so there is no āboostā.
For us, itās not a big issue as there are (currently) no forks of our package published, but there may be others who donāt use their personal GitHub names to publish.
It seems like PageRank would be a good option for sorting the search results (although ideally we would also include application codebases in addition to library codebases as nodes, and I donāt think thereās a way to do that).
I second that - for reference Dartās package manager has a pretty great setup for ranking/choosing package. Elmās package mgmt could take a lot of ideas from that.
I have not updated the ranking since 6 months ago, but it should still be quite relevant for mature packages. I will likely update it again in the coming months.
Edit: the ranking is an experiment and an evolution of the one described here.
1225 packages have been evaluated from their use in 5724 Elm applications on GitHub and in the packages themselves.
1013 packages have been ranked.
Because packages unused in other applications or packages are still evaluated from the ranking of their author other packages, unranked packages are those unused in packages, applications and without other ranked package from the same author.
Feedback is very welcome.
Edit: I removed broken packages from the ranking (they are still listed at the end for now as I donāt filter them yet from the official server package list which is used)