This is my personal mainstream where I try to dump my brain. Topics I'm interested in are: agile development, enterprise 2.0, deep dynamics in development teams and architectures.

Tuesday, May 20, 2008

Developer 2.0 - Tagging for developers

Developers are building sophisticated tagging system, clouds and drill down mechanism to explore them that project their service in a 2.0 scenario.

Tagging is implemented because it gives lots of benefit in managing and finding contents. Developers should gain this benefits directly from the technology they implement while developing an application.
For example consider if you're writing an application module that consist of:
  • a web page
  • a javascript file
  • a controller object
Tagging them with a tag like module: bookmarklet a developer can consistently declare a unit of development and group logical information together.
Tagging evolves an architect by letting a user to perceive an application in several form. If two files are tagged with an architectural block like the previous block, an extra information can be derived: those two components have a relationship and this relationship should be preserved.


Evolution of a tag cloud
Tag clouds are an impressive way to show which is the major taxonomy on a given content. In my Developer 2.0 idea, tag cloud could be a starting point to get information about how software is implemented and the ranking of each tag is derived, as in the common way, from the tagged contents (sources, documents, etc.).
Filtering tags on a tag cloud gave having a specific namespace, should catch immediately which is the most complex behavior of the system in terms of number of artifacts in it.
In a tag cloud like this, tag names should be arranged by thinking the idea that a content is a neighbor to another content if they share the same tag. All those two content have different tags on and depending on their neighborhood they are showed near by on the tag cloud.
Imagine if you like to browse a tag cloud filtering for namespace: architecture:
Cloud is composed of:
architecture:payment
architecture:messaging
etc.

If a specified payment component notifies troughs the messaging platform a transaction completion, it is tagged by the developer both as "architecture: payment" and "architecture: messaging." Those two tags are now neighbors and in a tag cloud they will be showed, or better linked with their specific size.

This is a new, modern way to have a diagram of how an architecture evolves and the tag cloud can be computed over time and this is a great opportunity a tagging system in the developer 2.0 environment introduces.

I'll continue in the next posts, about how tagging can help me - as a developer - in doing better.

0 commenti:

Post a Comment