
Hi, Yesterday Max complained about documentation for many Haskell modules. But I found another similar problem with Hackage. Before coding some Haskell program I try to find most appropriate libraries, which help me to do task more efficiently. But the problem, that there are to many libraries with similar functionality (for example - networking, web servers etc.). And to find the best solution is not so obvious. My idea is to improve Hackage to help everyone with package selecting. I propose the following: - add download counter for each package, it could show how popular the package is - allow registered users set the quality mark of the package (from 1 to 5) and show the average mark of each packet - add counter which shows how many packages depend on this package (direct/indirect) - create an aggregate package rank (a function on previous three values), similar to Google's PageRank, i. e. rank of the package is proportional to the package mark and weighted rank of dependent packages - allow comments on the package page, so anyone could tell its opinion or other useful info for this package. All messages should be delivered to the maintainer. This is useful, because it could speedup the feedback on the packages, and also could form large knowledge base on each package. Now everyone, who wants to read more about some package should use Google to extract info from HaskellWiki, Haskell-Cafe or hundreds of blog posts from different authors. What do you think ? Best regards, Vasyl Pasternak

Vasyl Pasternak wrote:
Before coding some Haskell program I try to find most appropriate libraries, which help me to do task more efficiently. But the problem, that there are to many libraries with similar functionality (for example - networking, web servers etc.). And to find the best solution is not so obvious.
I agree. (Have you seen how many "binary" packages there are??) Some people seem to think having dozens of libraries for the same task is an "advantage" because it lets the libraries compete against each other and the best one will win. However, I don't think this is the case if it's too difficult to tell the libraries apart.
- allow comments on the package page, so anyone could tell its opinion or other useful info for this package.
What do you think ?
I think this last idea is the best. Adding a ranking is nice, but a comment lets people add highly relevant information like "this package is good, but doesn't work properly with Unicode" and so forth. Stuff somebody about to try using the package would *really* want to know.

On Sat, Nov 14, 2009 at 11:32:33AM +0000, Andrew Coppin wrote:
Adding a ranking is nice, but a comment lets people add highly relevant information like "this package is good, but doesn't work properly with Unicode" and so forth. Stuff somebody about to try using the package would *really* want to know.
Probably adding markers to the comment area every time a new version is added is also a nice idea because a problem in the comment are may be corrected. The marker would serve as a visual aid that the comment may be outdated. -- Felipe.

2009/11/14 Felipe Lessa
Probably adding markers to the comment area every time a new version is added is also a nice idea because a problem in the comment are may be corrected. The marker would serve as a visual aid that the comment may be outdated.
It would be nice if you could see a changelog from a package's 'start' page on the Hackage website. Otherwise, don't Roel van Dijk's reverse dependencies give some of the information - i.e. the 'social proof' that a package is used and useful? http://www.haskell.org/pipermail/haskell-cafe/2009-October/067765.html http://bifunctor.homelinux.net/~roel/hackage/packages/hackage.html As Hackage already has Haddock docs and source-code view, you can easily scan a project to see if you like the code. Plus, the project's Hackage start page tracks versions so you can judge the maintained status of a project (some great packages 'just work' of course and haven't needed updating e.g. wl-pprint). As the Hackage server builds projects, you can tell to some degree that a project works or not (include the usual caveats for Windows and Mac users at this juncture)... Slighty of topic - how does a package author remove or at mark least deprecated their own package? Best wishes Stephen

On Sat, Nov 14, 2009 at 7:21 AM, Stephen Tetley
2009/11/14 Felipe Lessa
: Probably adding markers to the comment area every time a new version is added is also a nice idea because a problem in the comment are may be corrected. The marker would serve as a visual aid that the comment may be outdated.
It would be nice if you could see a changelog from a package's 'start' page on the Hackage website.
http://hackage.haskell.org/trac/hackage/ticket/299 http://hackage.haskell.org/trac/hackage/ticket/244 -- gwern

I completely agree that some way of measuring the potential usefulness of packages would be great. To some extent, you can get a measure of the popularity of various packages in Debian (and probably other Linux distributions have similar systems). E.g. http://qa.debian.org/popcon.php?package=ghc6 Not too many libraries yet, though. -k -- If I haven't seen further, it is by standing in the footprints of giants
participants (6)
-
Andrew Coppin
-
Felipe Lessa
-
Gwern Branwen
-
Ketil Malde
-
Stephen Tetley
-
Vasyl Pasternak