On Tue, Sep 24, 2013 at 2:17 AM, Dejan Pangercic wrote: > Adolfo, > > From a user perspective, I'm mostly interested in these qualities: > > - Good and stable API > API stability can be tracked though proper versioning [1]. The frequency with which the API evolves can be used as an indirect (and imperfect) indicator of API goodness: - A project that frequently increases its major version (hence breaks the API in some way or another) will probably give downstream developers frequent headaches. - A project that OTOH features more minor/patch version increments reflects that effort is being given to adding new features and improving existing ones under the hood. API goodness is just another factor that contributes to the number of dependent downstream projects. [1] http://semver.org/ > > - Well tested > Coverage metrics. Special mention for header-only projects: They should have 100% coverage, otherwise there are no guarantees that the code even builds. It's true that coverage alone does not mean that all covered code paths are bug-free, but it already says a lot about the code and its developers. > > - Well documented > > - Actively maintained. Not necessarily actively developed. > > How do you check for first and second bullet point? > Answered above :) > > For the fourth one, I have seen quite some ROS packages being > "actively" maintained but often that meant just increasing the version > release number while in reality there were very little bug fixes. And > possibly a very small user base. > That's not good or bad in itself. A simple niche application would fall in this category: Few users (niche) and simple problem (with a simple, low-maintenance solution). If a package is of general interest and complies with the above criteria, plus a license welcoming users/developers (thanks Melonee), it's likely that it'll attract users, unless there is another project around with a better outlook, longer history, etc. Open source is pretty much self-regulating in this respect. I'm not expecting to have an absolute quantitative measure of a project's goodness, but rather a few easily available quantitative metrics that can help me make a _qualitative_ assessment of how a prospective project fits a set of requirements. Best, Adolfo. _______________________________________________ > ros-users mailing list > ros-users@code.ros.org > http://lists.ros.org/mailman/listinfo/ros-users > -- Adolfo Rodríguez Tsouroukdissian Senior robotics engineer adolfo.rodriguez@pal-robotics.com http://www.pal-robotics.com PAL ROBOTICS S.L c/ Pujades 77-79, 4º4ª 08005 Barcelona, Spain. Tel. +34.93.414.53.47 Fax.+34.93.209.11.09 Skype: adolfo.pal-robotics Facebook - Twitter- PAL Robotics YouTube Channel AVISO DE CONFIDENCIALIDAD: Este mensaje y sus documentos adjuntos, pueden contener información privilegiada y/o confidencial que está dirigida exclusivamente a su destinatario. Si usted recibe este mensaje y no es el destinatario indicado, o el empleado encargado de su entrega a dicha persona, por favor, notifíquelo inmediatamente y remita el mensaje original a la dirección de correo electrónico indicada. Cualquier copia, uso o distribución no autorizados de esta comunicación queda estrictamente prohibida. CONFIDENTIALITY NOTICE: This e-mail and the accompanying document(s) may contain confidential information which is privileged and intended only for the individual or entity to whom they are addressed. If you are not the intended recipient, you are hereby notified that any disclosure, copying, distribution or use of this e-mail and/or accompanying document(s) is strictly prohibited. If you have received this e-mail in error, please immediately notify the sender at the above e-mail address.