Twitter is the new bash
I was slow to come on board with Twitter. In fact, I never used my account until I was approached with the development of a Twitter app. I have a healthy amount of grumpy old man in me, so I have a tendency to thumb my nose at social media in general. Eventually I succumbed and had a Twitter client with me everywhere. This is mostly because Twitter functions differently than other social networks.
Twitter appeals to me because it is a blank slate. Twitter is an infrastructure service. It’s something that is so generic that people fight over what it is and how it is to be used. The emphasis placed on the Twitter API really demonstrates this. People integrate bug trackers with Twitter, replicate their RSS feeds, post to it from other social networking sites, and even use it to get alerts if a server goes down.
To me, Twitter is much like the Linux kernel. It provides a critical piece of core functionality, and you let it worry about the associated problems. Everything else just gets built around it by others. This results in an ecosystem of small applications forming this layer on top of the core service. This is in contrast to an application like Facebook, which has so many different integration points that you would think that they want to become an operating system.
Twitter as command line
I am one of those pedantic developers that insists on doing everything from the command line. I have never once used or set up a GUI frontend for an RDBMS. I don’t use visual merge tools for Git unless things get really hairy. I code exclusively in vim, and whenever another programmer scoffs at this, I wager cash that I can beat them in a speed competition for any text-editing task.
This is only partially hubris, and very little grumpy old man. I truly believe that for the vast majority of what I do on a computer, this approach is more efficient and less cluttered. At almost all times I have only two windows open: Firefox and GNOME Terminal. That’s less desktop to manage. Combined with the simplicity of little bits of ASCII text, it makes my workday and any other time I’m in front of a monitor a little more pleasant.
I’ve been thinking about controlling applications from Twitter in a similar fashion for several months. There are a lot of little tasks that could be accomplished in less than 140 characters. Twitter makes for a great command line — you can access it from anywhere with nothing more than a browser. Threadsafe Labs and our good friends at Design Is Easy decided to take a quick stab at fleshing this idea out more.
One aspect of this was honing the notion of a Twitter command syntax. This sort of thing is happening already with hashtags. The problem with hashtags is that they are, for many people, tags. They are adjectives. Commands need to be verbs. So we decided to throw our weight behind the exclamation point. The big advantage is that you can distinguish between what’s an action and what’s description, like this:
Lorem ipsum dolor amet !post-to-blog #greeking #cicero
Wouldn’t it be great if you could tell what’s a tag and what’s a hint to a Twitter application that is listening for instructions?
Introducing Archivr
What I love about the command line is that I always have one open, and I can access just about any function of my computer from it. I don’t need to go to another window. I want Twitter to be like this. So we chose a simple task that would normally require us to have another window or tab open — web-based bookmarking — and did a quick and dirty implementation of it. Then Design Is Easy added a bunch of sexy.
It works like this:
- Sign in with Twitter at http://archivr.com
- Drop in or retweet links in your Twitter client
- Invoke Archivr with !a, and tag your bookmark with #hashtags
- Retrieve later from http://archivr.com
In a terminal session, knowing the right shell command is going to save you from opening a new window. On the web, this saves you a whole separate account. I’ve tried using delicious, but it’s too far removed from what I’m doing day-to-day to remember to use it, or even remember my credentials. It’s a lot simpler with Archivr: your account is your Twitter account, and your interface is your Twitter client.
Give Archivr a try, and let us know what you think.