Articles / fm3's fresh features: Taggi…

fm3's fresh features: Tagging Revisited

We'd like to highlight some of the aspects of the latest incarnation of 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, 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.


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!)

Recent comments

21 Oct 2010 12:52 Avatar jchaven

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.


21 May 2009 12:06 Avatar 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.

15 May 2009 18:12 Avatar 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?

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.

13 Apr 2009 22:37 Avatar 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:
and don't understand why it was classified as "Resolved"


Project Spotlight

Kigo Video Converter Ultimate for Mac

A tool for converting and editing videos.


Project Spotlight


An efficient tagger for MP3, Ogg/Vorbis, and FLAC files.