<!-- Content Here -->

Where content meets technology

May 21, 2012

30 CMS Signatures on CM Field Guide

Last Friday Jeroen Reijn from Hippo submitted the 30th CMS signature for the CM Field Guide project. If this is your first time hearing of CM Field Guide, it is a community project to share clues for telling what CMS a website is running. For more background, here is my CM Field Guide announcement blog post. Here is the list so far:

  1. Adobe CQ

  2. Concrete5

  3. DemandWare

  4. dotCMS

  5. DotNetNuke

  6. Drupal

  7. Ektron

  8. Elcom CMS

  9. EPiServer

  10. ExpressionEngine

  11. eZ Publish

  12. Hannon Hill Cascade Server

  13. Hippo CMS

  14. iApps

  15. Ingeniux

  16. Joomla!

  17. Kentico

  18. Liferay

  19. Magnolia

  20. ModX

  21. Octopress

  22. OpenText (RedDot)

  23. Plone

  24. SharePoint

  25. SilverStripe

  26. Sitecore

  27. Tridion

  28. Umbraco

  29. Websphere Commerce

  30. Wordpress

Other contributors include Adriaan Bloem (@adriaanbloem), Steven Brent (@stevenbrent), Timothy Davis (@timothydavis), Lee Roberson (@lroberson), Robb Winkle (@robbwinkle), Wes Winham (@weswinham) and of course, the guy who started it all, Deane Barker (@gadgetopia). If you know of any secrets for sniffing a CMS, let me know and I will add it and create you an account so you can use the www.cmfieldguide.com website. If you like to code Python and Django, you can code it yourself and submit a pull request on github.

May 14, 2012

CM Field Guide: Social Coding for CMS Geeks

Evil genius Deane Barker (@gadgetopia, gadgetopia.com) approached me with this idea at a vulnerable time. My fingers were itching to code. I had recently transitioned out of all programming responsibility for a consulting client. I was managing a few development projects on which I forbade myself from coding. I was also feeling a little disconnected from the content management community. With this backdrop, Deane taps into our strange shared hobby of detecting what content management system is running a website. He shows me some working Django code that he wrote (a little smelly but excellent for a first attempt at Python and Django — I love Deane's fearlessness.); and before I can force myself to say no, I am refactoring.

That's how CM Field Guide got started. And it is shaping up to be a really cool project. While there are other applications that do the job of sniffing out what CMS a site is running on, CM Field Guide is unique in that it is a social coding project. We share the "tells" we know to look for and we invite people to submit theirs either as code or as a description that we can code.

The code that examines a website is called a "signature" and they are really easy to write. It's mostly metadata and a line or two of test logic. The foundation application and libraries do most of the work. We use github's social coding model of forking and pull requests. As of this blog post, we have 26 platform signatures. Steven Brent (@stevenbrent) submitted 2 of them as github pull requests. Adriaan Bloem (@adriaanbloem) and Robb Winkle (@robbwinkle) shared their secrets over email and github issues.

While I am already finding the application useful, the most interesting aspect of the project for me is around knowledge management. The discipline of Knowledge Management likes to say that knowledge is distinguished from information because it is actionable. Turning information into executable code seems to take this to a whole new level. There is also a social aspect, it's fun to share this information with people and build relationships on a common interest.

A closed alpha of the application is running at www.cmfieldguide.com. We haven't done any real user interface work yet (volunteers?) and we haven't optimized the application for any kind of load. At the moment, we are only giving out accounts to friends and colleagues. But you can quickly become a friend with your contribution!