Articles / fm3's fresh features: T...

fm3's fresh features: Tagging Revisited

We'd like to highlight some of the aspects of the latest incarnation of freshmeat.net in a few short articles. We hope to point out features you may have missed and share some of the reasoning behind our design decisions with our long-time users. We hope you enjoy the new site, and look forward to your thoughtfully-considered and kindly-worded comments and suggestions. In this installment: Changes to our plans for categorizing projects.

Where have we been?!

If you've kept an eye on our progress with the development of the new version of freshmeat.net, you may well be wondering what happened to us. We were rolling along toward launch at a steady clip, everything falling into place, then suddenly fell silent a couple of weeks ago. What happened behind the scenes? Here's the "scoop":

Conversations with our beta testers produced some terrific, well-reasoned criticism and suggestions regarding our plan to replace the Trove categorization system with freeform tagging. The most urgent concern was that important information about projects could be lost by flattening the multi-level Trove hierarchy to a single collection of tags.

Trove's toplevel categories

fm3's original single tag entry field

What does it mean when a project is tagged "Linux"? It means one thing for a project made to run on Linux-based systems. It means something quite different for software for MS Windows which reads Linux filesystems. The Trove system allows these distinctions. Our original proposal for tagging in fm3 did not, making it impossible for users to reliably filter the projects in this example.

We held a staff meeting and hashed out our ideas on how to handle this. After brief detours through the flu, dog walking, and banana consumption, we have an implementation for you to try.

When we looked at how Trove has actually been used by fm2's contributors, we decided that just five of the top-level categories contained most of the useful information:

  • Topic
  • License
  • Programming Languages
  • Operating Systems
  • Translations

We decided to split the tagging system into five namespaces, one for each of these general areas. We hope this will allow project authors to expand categorizations as needed while keeping some definition to their filing and making the distinction between software written in Java (programming languages tag "Java") and a C++ IDE with special handling for Java code (topic tag "Java").

Entry of tags in multiple categories

(As a personal aside, I lobbied to have the "Translations" category transferred to fm3. scoop pointed out how few projects use it on fm2, but I reminded him how many of you have complained that you can't add as many languages as you need for your projects on fm2. With fm3, you can add as many language tags as you want. Get out there and use it, and don't make me look silly! :)

To present this new information, we've created a series of tag clouds on project pages. When you first load the page, you're given the project's topic tags (if any). If you need to know more (and further information is available in the other tag namespaces), clicking the tab for each broad category will bring up the appropriate tags.

Tag clouds

On the frontpage, we don't need all of this information. The frontpage is for speedy browsing (and clicking through to learn more). Here, we show just three tags associated with the specific release announcement, three of the project's topic tags, and one of its license tags. For each of these groups, we include those tags which are most popular globally (across all projects). Hopefully, this will put the most general information in the taglines, letting readers quickly tell what they're seeing.

Taglines

We think this new system will let us import the most meaningful categorization data from fm2 and maintain a healthy and growing way of organizing projects in the future. Please give it a try and let us know how it works for you.

Articles in this series:

(Haven't seen freshmeat3 yet? Sign up!)

RSS Recent comments

05 Mar 2009 13:29 gregsharp

Peer review for tags?
Will there be any peer review (or other quality control) for the tags? Currently, some projects have dozens of tags, of which most are only tangentially relevant.

As an example, if I browse for games/entertainment in current freshmeat, the first four entries are Wine, Knoppix, SDL, and Blender, none of which are games.

05 Mar 2009 14:46 jeffcovey

Re: Peer review for tags?
Tag changes will be reviewed by the freshmeat staff, with special
notification to the staff member when a tag has not been used on
freshmeat before. This is a change from fm2, on which we don't review
Trove category changes.

Thanks,

Jeff

05 Mar 2009 18:10 ed_avis

Make category names unambiguous
This is a good move, but the 'Programming languages' category should be renamed to 'Implemented using languages: ' or something unambiguous.

Similarly, 'Operating systems' should be 'Runs under operating systems: '.

05 Mar 2009 19:41 jeffcovey

Re: Make category names unambiguous
Thanks for the suggestion, Ed, but that would be rather verbose, and I think most people will understand what we mean.

Sincerely,

Jeff

15 Mar 2009 17:02 perper

Ignoring project was my only way overview the rest. Is it gone forever?

Per

20 Mar 2009 21:17 Tikker

Actually, I like tags - if they are used as just that. However, they have a huge disadvantage compared with categories: tags are flat, categories are nested. Therefore, I can narrow down a category search in several steps, whereas with the new tag system, I have to read a good part of the tag cloud to find what I'm looking for. Even worse: The tags in the tag cloud are scattered arbitrarily, so reading and finding what I look for is harder than in a simple sorted list.

Please, keep the tags, but consider bringing back the good old category system. The site is much less usable than it used to be. :-(

13 Apr 2009 15:29 Avatar karmaflux

Please consider bringing back the 'environment' category, even if you won't bring back the whole trove. I can't find anything.

13 Apr 2009 22:37 toflat

I second (third, fourth?) bringing back the environment category. I find the sight pretty much unusable without it. I used this feature several times a week for the past couple of years. Like Tikker above I also like tags - not however as a replacement for the category system. They don't have the same browsing muscle.

I found this:
help.freshmeat.net/dis...
and don't understand why it was classified as "Resolved"

14 Apr 2009 20:58 Avatar karmaflux

toflat: I'm pretty sure it was classified as "resolved" with an implied status of "wontfix." Their decisions seems to have been that nobody asked about environment tagging during the six-week beta, so they didn't feel retaining that data was necessary.

15 May 2009 18:12 johnjake

I think you hit the nail on the head when you said:
"important information about projects could be lost by flattening the multi-level Trove hierarchy to a single collection of tags."

If we are going to lose important information why are we changing to it? And who decided which categories were most important? Platform is much more important to me than OS or Language. We are all geeks here, we understand how the trove worked, we like the specific. Tags work poorly as filters, you even had to pre-fill the license options because some people type "GPL" and others "GNU Public License"

"It is very hard to make something simple" You had it, why change it?

21 May 2009 12:06 TiggsPanther

As johnjake said, "Tags work poorly as filters"

I've found this to be near-universally true, albeit not always for the same reasons. In more social-based sites, people cross-tag things that are tangentially (if that) relevant. So if you want a specific version of something, someone's always tagged it as the generic or related verion as well.

In sites like this, tag-spamming is probably a lot less prevalent. But, as johnjake noted, people classify the same things in differnt ways. Unless there's a fixed list of categories, people will label the same license or OS in several different ways. It makes it a lot harder to capture or exclude everything of one type is there's more than one way of stating it.
This is why tagging, although good for clarification on top of fixed categories or heirarchies, can rarely (if ever) be a good *primary* classification system.

21 Oct 2010 12:52 jchaven Thumbs up

I love tags! Unfortunately, most sites that implement tags only allow you to click on a single tag. I think this is why alot of people are bashing the move to tags. I think how the new tagging system on fm3 works is better than nested categories (btw: categories is just another term for tags now, so is GMail's labels) or nested tags.

I don't supposed fm3's developers could post a tutorial on how they created the tagging system along with the code used to navigate it could they?

In any event this site is MUCH improved with the new tagging.

Thanks,
Charles

Screenshot

Project Spotlight

launch4j

A cross-platform Java application wrapper for creating Windows native executables.

Screenshot

Project Spotlight

The Eventual PlayFramework-AngularJS-Bootstrap-MongoDB Seed Project

A seed project that combines Play Framework, AngularJS, Bootstrap, and MongoDB.