Tuesday, 2 December 2008

Blogging: content generation made easy

Blogging has made content publishing a much easier process. The technical challenge has been reduced to a sign up process and typing out a document. Just as importantly blogging provides a conceptual framework for thinking about publishing.

The technical changes are obvious: no need to worry about html and css, or creating DNS entries or webserving (or any other mix and match combinations of hosting). The signup process for blogging is now more or less: what would you like to call this blog and what sort of colour scheme would you like?

Less obvious is how much the conceptual process has been simplified. My Space and Facebook have been very succesful in part because they have provided a framework for what to say as well as how to say it. They have lowered the barriers to entry by constraining the up front choices required to get started. Blogging is slightly less socially constrained but still provides some of the simplifying assumptions: I'm here to write about this topic- which could be me, or it might be about sewing or Belgian politics. But I don't have to think much about the site design, or access permissions, or social networking until I want to- I can start by posting and think about the rest later.

Wednesday, 12 November 2008

Mediasaurs

I've not really read any Michael Crichton (RIP 4 November 2008) so I can't say whether I am a fan or not but I was fairly impressed by just how prescient his article Mediasaurus was (via Techdirt). Most of what he said is now pretty much established fact (outside the media industry)- the only exception being his suggestion that people will become more prepared to pay for information:

More and more, people understand that they pay for information. Online databases
charge by the minute. As the link between payment and information becomes more
explicit, consumers will naturally want better information. They'll demand it,
and they'll be willing to pay for it. There is going to be - I would argue there
already is - a market for extremely high-quality information, what quality experts
would call "six-sigma information."

Actually, more or less the reverse has happened. Information is an infinitely reproducible good which means the price of information tends to zero (as the cost of distribution goes down). That doesn't mean the cost of assembling the information goes down. This is as true of high quality information as it is of low quality information.

The tricky part of getting good information is finding it.

The short answer here is that Google and wikipedia have made whole classes of information readily discoverable- the cost of discovery is cheap. So if the information is free somewhere that becomes the price of the information everywhere. Without a price fixing mechanism and collusion competition forces the price of information to zero.

Aside from that relatively minor quibble he's got a pretty impressive hit rate given that he wrote the article in 1993. The funny part is the media companies still don't seem to have got it.

Tuesday, 14 October 2008

In defense of blogging

"Blogs are full of crap."

I've heard this quite a few times over the last few weeks. This is especially ironic since I'm about to start working on Blogger- so I guess I'm partisan- I've generally managed to argue the complainants around to a different perspective: they aren't crap, they just weren't written for you.

Actually I tend to start the argument by saying there are two classes of blogs. The first group is made up of the utterly fabulous well published blogs that you read even though you might not realize they are blogs. Things like engadget or "I Can Has Cheezburger?" or digg (really, they are blogs). Or for something topical have a look at Paul Krugman's Blog (this year's Nobel prize winner in economics) or the NPR Plant Money Blog. Have a look through Wikipedia's List of Blogs and be amazed by how well written these blogs are. This kind of blog can be characterized by being a bit specialised. They have particular focus, they are generally written by experts or interested amatuers and the quality or writing and/or editing is a cut above the general mass of blogs. (Even I Can Has Cheezburger? is very consistent even if you don't like lolspeak- if nothing else the editing is effective.)

On the other hand the rest of the blogs seem to be made up of all sorts of dross: endless pokes and superpokes, mindless conversational noise and the dull minutae of boring lives. Its not the kind of blog you'd read, although maybe, its the kind of blog you'd write.

These sorts of blogs aren't written for you. They are written for friends of the poster and they are sort 'weakly' informational- intended to say "Hi, I'm alive, I'm doing some stuff." They are a way of maintaining community.

Community is about the people you communicate with in all the subtle ways we communicate. Not just explicit conversation but the observation of who is coming and who is going, the frilly underwear on a washing line or the car in the garage. Humans are naturally social animals and we automatically collect these observations into a model of the people with whom we interact. But our modern population is very mobile (we move to a different city for work, our parents retire to the sea side, our next door neighbour goes to University) and we lose these simple observational signals when someone is out of eyeshot. They are being replaced by more deliberate but equally insignificant communications- things like blog posts.

Piecing together the individual blog posts, pokes and chats gives us a shape of someone's life- in all its everydayness. And they largely hold no interest to someone who doesn't want to know the person. But if they are a friend who you'd like to keep in your extended community then the everyday minutiae are simple signal that they are alive and breathing.

The Google blog recently posted on this topic (Social Web: All about the small stuff) in what is a much more elegant discussion of this sort of idea.

Ultimately the complaint about blogs comes back to a more general point that Clay Shirky has so nicely made: its not a problem of content, its a problem of filtering. Or more crudely: if you don't like it don't read it- it wasn't meant for you anyway.

Sunday, 13 July 2008

Mythtv and DVDs

Mythtv supports the playback and ripping of DVDs. Under ubuntu the mythdvd package supports playback of dvd, ripping and transcoding. (There used to be a separate myth transcoding package which mythdvd supersedes.)

Mythdvd assumes the dvd device is /dev/dvd, however the udev rules in Ubuntu don't necessarily generate a /dev/dvd link to the cdrom which has lead to a number of questions on Ubuntu forums about being unable to playback dvds.

Under ubuntu the /dev devices (nodes and symlinks) are automatically generated under udev, so even if a link is made by a user it will be lost on reboot. Instead, what you'd like to do is make sure udev generates its own symlink from /dev/dvd to the real device.

Udev (in Ubuntu) uses rules in /etc/udev/rules.d. The two pertinent rules sets are:

/etc/
/etc/udev/rules.d/70-persistent-cd.rules
/etc/udev/rules.d/75-cd-aliases-generator.rules


The cd-aliases-generator rules file automatically generates the persistent-cd rules file which is executed to create cd link aliases.

The short solution to this for me was to edit the persistent cd rules file and duplicate one of the entries which created symlinks

# This file maintains persistent names for CD/DVD reader and writer devices.
# See udev(7) for syntax.
#
# Entries are automatically added by the 75-persistent-cd-generator.rules
# file; however you are also free to add your own entries provided you
# add the ENV{GENERATED}=1 flag to your own rules as well.
# TSSTcorpCD-RWDVD-ROM_TSL462C (pci-0000:00:1f.1-ide-0:0)
ENV{ID_CDROM}=="?*", ENV{ID_PATH}=="pci-0000:00:1f.1-ide-0:0", SYMLINK+="cdrom", ENV{GENERATED}="1"
ENV{ID_CDROM}=="?*", ENV{ID_PATH}=="pci-0000:00:1f.1-ide-0:0", SYMLINK+="cdrw", ENV{GENERATED}="1"
ENV{ID_CDROM}=="?*", ENV{ID_PATH}=="pci-0000:00:1f.1-ide-0:0", SYMLINK+="dvd", ENV{GENERATED}="1"
# CDRWDVD_TSL462C (pci-0000:00:1f.1-scsi-0:0:0:0)
ENV{ID_CDROM}=="?*", ENV{ID_PATH}=="pci-0000:00:1f.1-scsi-0:0:0:0", SYMLINK+="cdrom1", ENV{GENERATED}="1"
ENV{ID_CDROM}=="?*", ENV{ID_PATH}=="pci-0000:00:1f.1-scsi-0:0:0:0", SYMLINK+="cdrw1", ENV{GENERATED}="1"
ENV{ID_CDROM}=="?*", ENV{ID_PATH}=="pci-0000:00:1f.1-scsi-0:0:0:0", SYMLINK+="dvd1", ENV{GENERATED}="1"
ENV{ID_CDROM}=="?*", ENV{ID_PATH}=="pci-0000:00:1f.1-scsi-0:0:0:0", SYMLINK+="dvd", ENV{GENERATED}="1"


Note that the last line was one I created by copying the previous line and editing the 'dvd1' down to 'dvd'. This exact file isn't going to work on your machine since the path identifier ("pci-0000:00:1f.1-scsi-0:0:0:0") is hardware dependent so likely to be different on different machines, but the principle is the same.

As far as I can tell the 'ENV{GENERATED}="1"' tag at the end of the line prevents the entry from being deleted.

For a better understanding of udev rules you might try this link.

Saturday, 12 July 2008

Ubuntu Removable Drives and Media

I have had a photo importing script that worked very well- automatically executed when plugging in the SD card from my camera, importing photos, rotating, filing in date folders and copying to a network drive. The automatic behaviour was kicked off by changing the default application in the Preferences control panel 'Removable drives and media' in Ubuntu.

This worked very well- until it didn't. I just worked out what went wrong and this post is basically Google fodder for any other poor unfortunates who may have been struck by the same problem.

Basically in Ubuntu Hardy (8.04) Nautilus was changed over to use GVFS (the gnome virtual filesystem) and GIO (Gnome I/O abstraction layer) it also took over the functionality of handling certain media types- including removable media like photo CDs, digital cameras and so on. You can find this from the menus in any Nautilus window: Edit > Preferences > Media. Sadly this functionality is significantly less functional for my purposes. Where before I could simply substitute the path to my import script to get similar functionality I had to:

  1. As root create a new 'my-import.desktop' file in /usr/share/applications (example contents see below)
  2. Open nautilus media preferences (from the menus in any Nautilus window: Edit > Preferences > Media) and select 'Ask What To Do'
  3. Plug in the memory card and select the 'Open My Import Script' option and click the 'always use this option' checkbox

[Desktop Entry]
Version=1.0
Encoding=UTF-8
Name=My Import Script
GenericName=Import Script
Comment=Run my import script
NoDisplay=true
Exec=import_script %u
Icon=f-spot
MimeType=x-content/image-dcf;x-content/image-picturecd
StartupNotify=true
Terminal=false
Type=Application
Categories=Graphics;Photography;GNOME;GTK;



These bug reports led me to the solution. There is some discussion about a fix for this backward step in functionality- hopefully their feedback will lead to an upstream fix in Gnome or a standing patch in Ubuntu to return something like the old behaviour.