Brad Choate on Tags for Movable Type
With the newest addition to our collection of Power Tools, we've made some interesting new functionality available for Movable Type users. The Tags plugin lets you easily add tags to your Movable Type entries, by modifying the Keyword entry field to allow you to enter tags, and automatically creating categories for each of the tags you submit. Creating archives for tags or including the tags in your XML feeds then becomes simple.
The Tags plugin also makes use of Movable Type's alternate application template functionality.
Brad Choate is one of our developers on the Movable Type team, and long before that he was a member of the Movable Type development community. Brad created Tags both in response to demand for a better user experience for labeling content and to show off some of the newly-polished features in Movable Type.
We asked Brad a few questions about his plugin and about Movable Type development in general.
Q: What does the Tags plugin do? What do you think of the attention around tagging in general?
A: The Tags plugin provides a straightforward way to assign one or more tags to an entry. It does so by using the "Keywords" field from the MT entry screen. In addition to the tags being stored in the keyword field of the entry, a category is also created for each tag if it didn't already exist.
Today's "Tags" are yesterday's "Keywords". I'm a big fan of metadata and use it extensively both on and off the net. Being able to reference sets of data using a tag or two is extremely powerful. I'm glad to see services like del.icio.us, Flickr and Technorati that are promoting and making use of it as they are.
Q: What new (or existing) features in Movable Type is the Tags plugin taking advantage of?
A: Application and object callbacks mostly. These are hooks within Movable Type where you can attach additional operations to particular events. In this case, I'm using a callback that is fired upon saving an entry within the MT interface. I use an additional object callback for handling other interfaces, such as XMLRPC.
Movable Type's support (in versions 3.16 and higher) of alternate templates allows this plugin to provide a convenient way to view and add and remove tags from the tags field of the entry.
Q: What are you hoping people do when they build on top of your code base?
A: Solve their problems. That has been my primary drive for creating the plugins I've written. I get a lot of satisfaction from reading about someone using one of my plugins to do something unique. It's also rewarding to see totally unrelated plugins that are using bits and pieces of my plugins. I sometimes discover that in the ones I rely on myself.
Q: You've been a plugin developer on Movable Type for a long time, what's changed over the past few years? What are new capabilities that MT has which you always wished you'd had when you started? What's possible now that you hadn't even anticipated?
A: Seeing Movable Type grow from "just a blogging tool" into a usable content management system. I've been using it for general content management for some time, and others are too. Businesses are seeing the potential with MT powering huge sites like About.com and the Gawker Media network. It's also been great to see some of the other MT plugin developers earning a living through consulting and MT application development. I myself would never have never imagined that downloading Movable Type 1 three-plus years ago would have led to all of this.
Q: One thing that plugin developers always ask us is why we can't just do [insert their favorite request here] in Movable Type. Now that you're on the other side and have been working with the internals of Movable Type, what was the biggest surprise or change in your perspective?
A: The biggest change has been going from "external" mode to "internal". Although I was very familiar with the MT application code, adjusting to being a maintainer of that code was not insignificant. Developing an application that has the platform, database, web server and web client diversity that MT has is both challenging and rewarding.
And as one of those plugin developers, I came to work at Six Apart with a laundry list of items that I want to add to Movable Type. It's exciting to be implementing them in the application itself.
Q: What cool things are out there on the web or available as web services that you're keeping an eye on?
A: DHTML (or AJAX if you prefer) is exciting again, now that it's easier to support across browsers. I'm also intrigued by recent developments around support for the canvas element (in Firefox and Safari) and native SVG support (in Firefox). Creating a modern interface in a browser window is getting easier.



13 Comments
Thanks for this very good article ... Can i translate this and insert on my site in Poland? ... Thanks
Creating archives for tags or including the tags in your XML feeds then becomes simple - I agree at all.
I searched a long time for such an great article. Thank you
I also want to thank fot another great article. I can't wait for Your translate in polish Aukcje - thanks for great work! Greetings for polish readers:)
Hello!
This is wery intresting article.
Thanks for this.
Best regards
It's very good article. Great site with very good look and perfect information... Thanks
-------------------------
Apteka internetowa
Can i translate this and insert on my site in Poland? Thanks
Thanks for this very good article. I searched a long time for such an great article. Thank you
Great interview. It’s been some time since it was posted, but I was looking for more information connected to some research I’m doing into Tags in XML and this worked out perfectly. At the University of Georgia, where I’m a graduate student, we’ve created a markup system (familiarly known as EMMA) that utilizes tags in XML to allow first year composition students to mark particular elements in the papers they write. So, for instance, a teacher might have students in his class tag the thesis statement of their papers. Then, next class, the teacher could pull out all the thesis statements at once and put them up on the class computer display for comparison and discussion. I’m trying to work up a paper myself on the origins of these Tags and in particular what led someone to recognize the need for them.
Thank you, you did a great Job interviewing, easy to read and very informative!
Great read. I hope you can have another post about this topic in the light of other application. I’m looking forward to your next post in relation to the last question and answer pair you posted.
Hello!
This is very interesting article.
Thanks for sharing this. Cheers
Thanks for
It's very good article. Great site with very good look and perfect information...