The state of the status of "we"

I've been having some random problems with my RSS reader, Liferea. I think it was a permission problem on the settings folder, but it was enough of an annoyance that I started to set up the Google Reader for my feeds. But I almost immediately bailed. I didn't like how the application felt at all. I'm so used Liferea after years of using it that it was hard to switch my mental model over to "this is a Web site." It wasn't just the buttons and the GUI, it was also how the application worked. In Liferea I know when I'm caught up because the stories stop coming. The data is downloaded to my machine and I can read it and then it's read. But in Google Reader the data keeps coming. It reaches further and further into the history of the Web site to pull more and more stories and it feels as though you will never catch up on the news feed. (Being able to search for a feed instead of having to know the URL for the feed was, however, brilliant.)

As I neared the end of my ten minute foray into using Google Reader I started to think about why I want my desktop experience to be different from my Web experience. Do I want my desktop experience to be a Web experience? Have you seen the new gOS (links to YouTube demo), Cloud (links to site)? (More about gOS here and here. It's based on Ubuntu.) Your computer as a thin client to the cloud of applications out there. Brilliant, but also really scary to think that realistically my data IS actually all out there. (I like to pretend I'm in control at least once a week.) So although I have switched back to my desktop application, Liferea to keep track of news, I've started thinking a little bit more about applications and data and access and status. (Have you watched the Van Jacobson talk yet? He talks about accessing data too.)

So let's look at the "state" of my computer. A while ago Mark blogged about the new user switching status applet thingy. Now that I'm using 8.10, I'm also using this little widget. Was it Matthew who was talking about wanting a system that just knew when he was on a plane and therefore turn off the wireless when booting? (I think so...I think it was part of the power management talk and how things just ought to know without you having to tell them.) Regardless of who said it first, "states" are definitely of interest. I am almost finished writing Front End Drupal (and will begin the editing process this weekend) but for the last month (or three) I have been almost always set to "away" in Pidgin (I don't like the red icon for "do not disturb", so I use "away" instead). Not because want others to leave me alone, but because the little clock icon reminds me that I ought to be working. Years ago I had very interesting conversations with sociologist Gale Moore about interruption and instant messaging. And now here I am thinking about how I do, or do not, want to be interrupted. "State" isn't just the status of me or my computer, it is the status of "we"...that's me, me and my computer and you and me.

There are currently four states in the status switching applet:

  • Online
  • Away
  • Busy
  • Offline

But what if I could define my states? I think my list would look like this (yours would probably be different, we should be able to define these states):

  • Social (all on)
  • Working (please try not to distract me too much)
  • On the phone (you will not get my full attention)
  • Away (AFK)
  • Unplugged (gOS-cloud-esque to optimize for battery power)
  • Offline (no internets)

And when I switch to different states my whole computer ought to shift with me. Social, for example, should have Pidgin set to "online", Liferea open and checking for new stories, IRC open and sending alerts, and why not have Skype open too because I use that for specific contacts. Working should set Pidgin to "Trying to get the mortgage paid", Liferea should be disabled. etc. So a state is not just a status, but a whole suite of how I want to be interrupted and interact with people and my computer.

What are your states?

The First of the Month

Ahh glorious mailing list reminder day... it's the first of the month again! And it's also high time everyone took a deep breath heading into the holiday season and read through the Code of Conduct.

Here it is in shortest form for your reading pleasure:

  • Be considerate.
  • Be respectful.
  • Be collaborative.
  • When you disagree, consult others.
  • When you are unsure, ask for help.
  • Step down considerately.

And as a special treat this month I'm also throwing in the Flickr community guidelines.

What to do

  • Do play nice.
  • Do upload content that you have created.
  • Do moderate your content.
  • Do link back to Flickr when you post your Flickr content elsewhere.
  • Do enjoy Flickr!

What not to do

  • Don’t upload anything that isn't yours.
  • Don’t forget the children.
  • Don’t show nudity in your buddy icon.
  • Don’t upload content that is illegal or prohibited.
  • Don’t vent your frustrations, rant, or bore the brains out of other members.
  • Don’t be creepy. You know the guy. Don't be that guy.
  • Don’t use your account to host web graphics like logos and banners.
  • Don’t use Flickr for commercial purposes.

And there we have it kids. Please remember to click through and read the full Code of Conduct. It takes less than a few minutes. I think you'll find it applies to a lot of things in life beyond the world of Ubuntu.  

I want my data, not a conversation

At the Ontario Linux Fest I had the wonderful opportunity of having lunch with Jeremy. It was after his keynote talk. I had lots of questions, which he very generously tolerated as we ate our beet sandwiches. We chatted about the future of data and ownership and various things and he recommended Van Jacobson's Google Tech Talk: The Future of the Internet. The video is just over an hour long and I haven't taken the chance to watch until today. (I've been recovering from the flu this weekend and decided this video was like watching Q in his lab coming up with the gadgets. There were fewer explosions, but I probably learned more.)

Here are a few of my favourite points (hopefully they're enough to entice you to spend an hour watching, or at least listening to, this talk)... The talk starts out with a great history of communications (including why we started with four-digit phone numbers)... and then it got more interesting...

  • People don't want to have conversations. They just want their Web pages. They hand in a URL and they want to get something back. That's not a conversation. It's the computer equivalent of, "does anybody have the time?" 
  • Our current model doesn't stop the spam. The content is garbage, but it came from my mail server, so it must be a good conversation. Things are currently blind to the data.
  • Change your point of view to focus on the data. Not where the data lives, because it doesn't have to live anywhere. Data is named. When you want a chunk of data, you present its name to the network, and it doesn't matter what kind of networking technology you've got, use them all, it's asking does anybody know where we are? Pass this data out to the network and hope that somebody can give you a reply.
  • And then he read my mind because what he was describing sounds like caching... but it's not. The effect is very much the same. In caching you say, oh the data lives there, but I've got a copy of it here. In my model the data doesn't live anywhere. Whereever it is, that's great. I can authenticate it and I know whether or not I can trust it.... I'm not moving it from it's one true location to somewhere else...it doesn't have one true location.
  • Integrity and trust are properties of the data, not of the way that you obtain it.
  • So this is, by contrast to the Microsoft Authenticode model, where you download this update from Microsoft, then there's a little window that comes up and says, "Do you trust Microsoft?" And the answer is "NO!" and I kept clicking "no" and my machine never got updated. [The audience and I both laughed at this.] I don't! Their model is "Do you trust their delivery mechanism?" They're basically asserting loading this update won't cause financial harm to Microsoft. Great, but that's not what I want. I want my machine to work. I want to know what you're going to do to my machine. I want to know something about the data and the operations you're going to take, but they can't tell me that. So I want properties of the data where I don't have to trust remote agents, that the data itself lets me figure out what it means and who sent it and how it's connected to the world.

This last point reminds me of Laura's recent request to have system updates a little bit more system-aware. (It also reminds me of the first time a friend of mine told me to download some form of BSD from the Intarwebs and I clicked "sure" because it had blowfish and then promptly FREAKEDOUT because the download screen seemed to be taking over my computer and further more I was supposed to just trust a whole operating system that just existed somewhere on the internet?! That's CRAZYTALK.) So go watch the video and then go read Laura's blog post. Do I have any solutions to entice you back here? Um, nope! Just some brain fodder. So away you go! It's not as exciting as the new Bond movie, but it is something you can enjoy from the comfort of your own home.

Git for Teams

Git For Teams

Best selling title from O'Reilly media. Covers essential skills needed to use Git in a team environment.

Available from O'Reilly media, and better bookstores worldwide.

Collaborating with Git

Collaborating with Git

Practical how-to videos to get you, and your team, up and running with Git. A complementary video series for the book, Git for Teams.

Available from O'Reilly media.

Drupal User's Guide

Drupal User's Guide

Site building for Drupal 7. Includes in-depth information on Drupal's most popular site building modules, SEO and accessibility. Two complete case studies are included in the book along with the tools you'll need to build (almost) any Web site with Drupal.

Available from Amazon.com.

Front End Drupal

Front End Drupal

The industry go-to for learning theming in Drupal 6. A great companion to Lullabot's book, Using Drupal.

Available from Amazon.com.