17

In my opinion CTAN misses two important features:

  • version control, automatic uploads, author's identity verification (this would simplify a lot of work for both package authors and CTAN maintainers)
  • rating of package quality

The first issue would need some heavy reorganization at CTAN end and quite some coding to do it right. Martin's ctanhg solves the problem of archiving (it doesn't solve the original problem, but at least points to the right direction).

But I'm writing because of the second issue. It seems to me that TeX.SX reputation scheme could easily be used for tagging and rating TeX packages in the same way as questions are rated. I'm not trying to say that coding it would be trivial, but it would probably be the first useful attempt in history trying to rate packages. I would like to see a new subdomain packages.tex.stackexchange.com, listing all of CTAN packages, with the following functionality:

  • Each user with sufficient rights may vote up or down. Maybe number of stars is more appropriate, but then it is difficult to tell what exactly two stars mean. I would like the number of votes to reflect popularity on one hand. If two people give five stars, this only tells you that the package is not really popular. Maybe 1 point for "useful", 5 points for "excellent", -1 for "bad" and -10 for "very very bad". If package authors have an account on TeX.SX and if the association is made, they should be granted points from their packages to their reputation on SX.

  • Maybe more than a single category for voting is needed. I would like to vote on:

    • Is package maintained? Is it up-to-date? (Does it work with XeLaTeX for example?)
    • How buggy is it? What is the overall code quality and documentation?
    • How important is it? (TikZ or babel are highly important, but babel is not maintaned.)
  • Ability for adding "See Also" with comments/reasons why.
    • For example: even though PSTricks is still an excellent package, one could suggest users to take TikZ instead if starting from scratch.
    • bib package for ConTeXt and biblatex (& friends) for LaTeX: each one serving a different purpose (one is not a replacement for the other), but still tightly related.
  • Space for general comments. (With high reputation users being able to edit, as usual.)
  • Some kind of wiki to enable community-driven descriptions of packages. Some packages on CTAN miss descriptions.

Why all that? TeX Live gains a few hundreds of megabytes of extra packages each year with basically zero feedback about their usefulness and popularity. Packages are taken into distribution with zero quality control and once they are in, everyone is afraid to remove them since somebody might be already using that package. With some honest feedback, this would help us make a clear picture of current package status. It would also make it easier for new users to find the packages they are looking for. CTAN offers catalogue with categories, but doesn't show you feedback: for example why some particular package did or did not solve a particular problem.

If all package descriptions would be hosted on SX, this would also answer the questions of Automatic links to the CTAN catalogue.

(Feel free to edit my post.)

2
  • 1
    I like this general idea a lot, but I have zero knowledge on what is possible or not Oct 27, 2011 at 10:19
  • 1
    I think it should be distinguished between popularity/number of users and usefulness of the package. There are probably packages which on the one hand are quite useful in what they do, but on the other hand useful only for special cases.
    – Stephen
    Oct 27, 2011 at 18:11

3 Answers 3

9

I do not think that the stack exchange model will work for TeX packages. The idea of voting for answers work because the question does not change with time (at least not drastically). But TeX packages can and do change. Imagine that I upload a package that is not compatible with amsmath, and such gets voted down very heavily. A few months later, I figure out how to make the package compatible with amsmath and upload a new version. Now, the old ratings do not reflect the current state of the package. One way around this is that the reputation fades away with time that is, the current rating just depends on the votes received in the last one year (or whatever fixed amount of time) rather than votes received since eternity.

This is less of an issue for the big and well though out packages like hyperref or beamer. But then, users do not need a rating system to know that such packages are useful.

2
  • 3
    Maybe votes should be on a specific version and then this vote count together with some overall count could be shown. Oct 27, 2011 at 17:56
  • 2
    I totally agree that packages change. I didn't think of that when I first asked the question, but this is one of the easiest obstacles. Website could show overall ratings and ratings for latest version separately. Also, if CTAN announcements would point to SX, new versions of packages could get some votes fast enough. Oct 27, 2011 at 23:14
8

while there is definitely merit in the idea of rating packages, what i would prefer to see is more information concerning compatibility with other packages -- or that such compatibility hasn't been tested. as a trouble-shooter for a production shop, information like this is vitally important, more important even than that a particular package is the best of the lot for a particular function. for example, while biblatex provides much more extensive and flexible features than bibtex, it is not, and will not become, compatible with the ams document classes, so it's inadvisable for an author targeting an ams publication to use it.

i'm not at all sure how a repository of such supplementary information might be implemented, but it's probably even less suited to the sx model than the ratings concept.

suggesting modifications to the ctan model/catalogue is all well and good, but the "staffing" level of ctan is minimal, and at least partly depends on the willingness of the host sites to allow "foreigners" to access the machines in question with full update privileges. the present maintainers are all employees of the host institutions, or have long trusted associations there. gaining the necessary privileges to be able to supplement the present maintenance group would be nontrivial, i suspect.

6

I think this is a good idea, but I also think it would would require some specialist support to work, where I guess that the SX team will not want to do. For instance:

  1. A minimum feature that such a site would need is for the tagging system to work with the tags on the Q&A part of the site;
  2. I don't think that the SX can support more semantics for rating that how many people here think a package is good; you would need some further peer review mechanism for that, but maybe CTAN having just a TeX.SX Package Rating with link to the entry, would be enough;
  3. Aditya points out the problem that packages are targets that move rather more than questions;
  4. It sounds as if you want the package pages not to look like or behave like Q&A threads.

I have nothing specific to point to, but my impression of their business plan is that they want to work on a single site model that is good for everything, so that they can debug everywhere and have a very polished product. Having a vocabulary subsite for this German-English site and a script annotation subsite for that OS site would split the efforts of the team.

That said, SX has teamed with other startups, such as imgur (PR) and Canonical (announcement), to provide add-on functionality: there might be a possibility if someone else took the responsibility and initiative and came up with a suitable site. And from what Jim Hefferon says about CTAN goals in the 2005 CTAN progress report, it looks possible that CTAN would be enthusiastic about such a cooperation. And Jeff has said that SX does look for more Canonical-like tie-ups; I guess they make the whole SX network be more authoritative.

A starting point would be a concrete proposal that says what each of SX and CTAN would need to do to make the site possible. Having CTAN volunterres develop and maintain a separate site offline that is integrated with tex.sx through the SX API needs to be considered as a model; maybe SX and/or TUG would be willing to put up some funds to subsidise developers.

4
  • 1
    Ad 4: it could look very similar, but specific enough that it does need adjustments. Jim Hefferon left CTAN if I'm not mistaken. Getting some funding from TUG should not be such a big problem, but TUG alone cannot do anything if SX is not interested enough and if there is not the right person willing to do the job. (I'm interested to help on TUG/CTAN-side, but I'm not good enough and I might be running out of time, so I would be the wrong candidate.) Oct 28, 2011 at 13:23
  • Regarding a "single site model that is good for everything", isn't the problem of rating packages present for almost all programming languages. If there is a feasible solution then other rating sites may exist for other programming languages (regular languages like perl, ruby, python; mathematical programming languages like matlab and r; plugin for editors like vim, emacs, textmate; and so on).
    – Aditya
    Oct 28, 2011 at 17:50
  • 1
    An alternative might to fork off a free SX clone to create the functionality. See meta.stackexchange.com/questions/2267/stack-overflow-clones for clones.
    – N.N.
    Oct 29, 2011 at 9:10
  • Jim has left CTAN and the current CTAN team is overburdened with their work as is; they don't welcome any proposals for added features unless these proposals come with the promise to implement and maintain these features. Jan 7, 2012 at 22:33

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .