The Productive Programmer (Theory in Practice (O’Reilly))
is a useful book of how to use your computer more efficiently. One of the several tips that I have adopted is to use one text editor (in my case, TextMate) for all text oriented work. The idea behind this is that when you work in one tool, you get to know it really well and can take advantage of all its nifty time saving features. Most software users, however, only use a tiny fraction of the useful features supported by the software.
I had gradually been moving in this direction for a while. At first, I just used a text editor to program in dynamic languages (Javascript, Python, PHP, Perl, SQL), do HTML/XML markup, and edit large data files. About 6 months ago, I got so fed up with Eclipse’s clunkiness that I started to write Java in TextMate. Since reading the chapter in the book, though, I have started to use TextMate as a blogging tool. This was a big step for me because I was quite happy with Red Sweater’s MarsEdit software. Yes I know that MarsEdit gives you the option to edit posts in TextMate but I decided to go all in. I have not yet been able to get TextMate hooked up as my email editor. I always thought programmers that did everything in EMACS were silly. But since making the change, I have found a lot of powerful keyboard shortcuts and macros. My one hold-out is that I still use Oxygen for editing my DocBook documents.
My successful experience caused me to question whether there was any merit to the “One CMS to rule them all” ECM (Enterprise Content Management) vision that I have been battling over the past 7 years (a battle that I won, by the way, but I am not gloating). Would there be any benefit of having a knowledge worker getting to be a true expert in one tool? Then I came to senses and realized two key differences:
- Web Content Management is about managing semi-structured data, Enterprise Content Management is about managing metadata. A WCMS primarily helps a user edit and and assemble reusable, structured content. In a document-oriented ECM system, most of the documents are binary files that are edited using tools like MS Word. These ECM systems are used primarily for creating metadata, organizing, and managing permissions. Furthermore, most people organize their documents on a file system metaphor. Web content organization tends to be much more fluid and rule based. Your website is not a file system. You will fail at web content management if you think that a website is a bunch of MS Word documents saved as HTML. Because there is so little functional overlap, one tool doesn’t make sense.
- CMS users don’t define them selves as CMS users. Programmers, at least the good ones, care about their craft and take pride in how they work. They read books and blogs to continually hone their skills. They love their tools and treasure knowledge of obscure little tricks. Good designers tend to be the same way. Your average content contributor may be similarly inspired about their profession, but if they are, they don’t usually consider using a computer program as part of that quest. For them the computer software is a necessary evil. They are looking for intuitive tools that require no learning. They tend not to invest the time to achieve expertise. If I were to equate using a computer to driving a car, the average computer user drives around in 1st gear or reverse all day long. They discover a way to get the car to move and then leave it at that.
There is a direct relationship between specialization and intuitiveness of software. When the software designer knows exactly what the user will use the software for, he can be very explicit in the user interface. For example, when creating a blogging tool, the software designer can put in a big button that says “CREATE BLOG ENTRY.” A designer of a more generalized, multi-functional tool requires more compromise and negotiation with the user. The user needs to learn how to access lots of basic capabilities and string them together to get the result that he wants. Just look at the UNIX command line and piping together commands. TextMate is a little of both, the designer of TextMate knows that the user is going to want to enter text and save files. That is why the program opens with a big area to type in. But the designer doesn’t know whether the user will be wanting to post this block of text to a blog or compile the text into executable software or hundreds of other options. This is why those functions need to be buried under cryptic key sequences like “control-command-p” (that’s post to blog) or “command-r” (that is compile and run). If a CMS was written for someone that wanted to be a CMS expert, it would probably look something like a command line Sabre terminal. And this is why all purpose tools fail for content managers.
How Many Microblogging Services Does the World Really Need?
Wednesday, March 24th, 2010After hearing all this news about status.net, I took a few moments to connect my Identi.ca account with my Twitter account. I am not at all sure what good that did but I figured it couldn’t hurt. While I was there, I got to thinking what is so special about a microblog? And I came to the conclusion — nothing. You can think of a microblog as a title-only blog (entries with no bodies). What is new there? Subscriptions have already been handled quite well by RSS. What makes Twitter (and Facebook) so important is not the ability to post 140 character messages. It’s not even really the API or mobile integration. What makes Twitter/Facebook important is that they are used by so many of the people that you want to reach. There are plenty of failed status-oriented services that have had the technology but, either through bad timing or other missteps, failed to build an audience.
I wonder how attempts at internal microblogs are working out. I haven’t heard any success stories and I doubt if any survive past the initial novelty phase. If there are urges to microblog within the enterprise, employees could satisfy them with the internal blogging infrastructure that has been idle in most organizations. If there is any internal application for the microblog it is aggregating what employees are tweeting out on Twitter. But, depending on the staff, I don’t know how interesting that would be either.
I think that the microblog is going to fail as a category of software. There just isn’t a big enough market of buyers that can build a sustainable microblogging community. I can’t think of existing sites with large audiences investing to buy or build a microblogging capability. If you were CNN, would you rather have a reader tweet a story link on Twitter (where it could be re-tweeted by millions of users) or on your CNN own microblog community? The only purpose I see for status.net is just in case Twitter kills itself (by running out of money or ruining the service). I seem to remember a lot of people threatening to defect to Identi.ca and FriendFeed when Twitter was going through its problems. But that didn’t happen. How long can the status.net’s and Identi.ca’s of the world sustain the energy and motivation to be an understudy behind a healthy actor?
I know the argument that suggests that distributed communication services will eventually win like how the open, distributed web was destined to eventually beat out then popular online services like AOL, Compuserve, and Prodigy. But I don’t think this is the same. If I am missing the point here, please enlighten me. I would love to see competition in this sector if it makes sense. I just don’t see it.
Posted in Web2.0, commentary | 6 Comments »