gargoyle, noun - Member of CIC intelligence who doesn't use a laptop but wears his computer on his body.
"Gargoyles represent the embarrassing side of the Central Intelligence Corporation." - Snow Crash
Wearing a computer is an old idea and often a bad one. Clunky, underpowered hardware has rarely provided enough utility to justify the embarrassment. I want to change that.
Over the next few months I will be making a home for myself here at Gadget Lab to discuss and develop what I'm tentatively calling "gargoyle," an open-source wearable computing platform designed to be used by anyone to stream video, images, and text updates live to the web. Wired has been kind enough to let me fly their banner over this project.
After the jump, I'll make my first big braindump, discussing the impetus behind my desire for a gargoyle platform, the first wave of practical goals, as well as some of the thinking I've done about the first steps towards building a practical platform and interface.
Why I want this platform
To a large extent, I think it would be cool, which is justification enough for my time, although probably not enough to ask for help from others.
A bit of history—I'll try to keep it short: I went to Houston and New Orleans after Hurrcane Katrina to file some stories for Wired News. Together with Jake Applebaum, I spent several weeks taking pictures, blogging my experiences, organizing a free computer lab in Algiers, and filing a few stories for Wired. Even with hundreds of news teams on the ground, online readers seemed eager to hear about what I was seeing personally. I tried to oblige them with plenty of images and blog posts.
But I couldn't help but think that there had to be a better way than how Jake and I operated, going out into the city to talk to affected residents, collecting our notes and pictures, then spend hours back at our temporary home compiling our findings and uploading them to the web. I'm a firm believer in the usefulness of editing, but also believe there is a place for unabridged, publicly accessible content. Putting the entirety of my pictures, notes, and videos online certainly doesn't preclude me from later publishing selections of my own. (This "transparency" is not a new trend, although one large news-gathering organizations like Wired are still learning to integrate.)
I also make my living writing about consumer electronics and games, which means I am often at trade shows. When I ran Gizmodo.com, a gadgets weblog, I learned to rush around, say, the CES showfloor, snapping pictures as fast as I could, dashing out a few lines of commentary, and uploading the quick blips as posts for novelty-hungry gadget nerds. It's assembly-line work. Why not take out the extraneous button presses and user-interface repetition?
What this platform should do
Nothing about this idea is new at all. It's just that technology has finally reached a point to make off-the-shelf implementation feasible. There are thousands of ways to put content onto the web, but surprisingly few of them and designed for the "fire and forget" reporter. (That's changing all the time, naturally. See: Twitter; Justin.tv)
In the first stage, I want to keep things as simple as possible. That's why I want to focus on one task at a time, albeit with a ready plan for adding new features and capability.
The first "mode" I would like to develop would be annotated pictures. Using just a laptop and a camera, I want to be able to snap a picture, type a short title and description, and automatically upload both to the web. (Probably Flickr, a blog, or both.)
I actually built something similar myself a few months ago using OS X's Automator, a Digital Rebel XT DSLR, and some software from Canon. I was able to automatically snap a picture with a camera, have it save via USB to my Macbook Pro, and automatically upload to Flickr. It was fairly trivial, which is good, because I can't code my way out of a paper bag.
It worked very well, although I never really field tested it due to the fact that at the time there were no easy EV-DO (mobile, cellular internet) solutions that worked with my laptop. It also lacked a key aspect: annotation. While interested persons could plug into my Flickr stream and see the images in real time, they would not have any context until I later walked through the images and added captions.
To rectify this, there needs to be an interface with a couple of fields that will allow text input for a few seconds after each picture is snapped before uploading.
How would we input that text? With the laptop keyboard.
The initial hardware
Although I hope that the gargoyle system will one day be modular enough to support a variety of off-the-wall input solutions like chording keyboards, augmented reality wands, and Nintendo Power Gloves, it's really important to make the platform as cheap and low-fuss as possible. That's why I propose to use a laptop as the center of the wearable platform.
Rather than stashing it to hum in a backpack, though, why not try to mount it on the user's chest?
(We have officially crossed the "dorky" threshold. Get used to it. It's only going to get worse!)
Hear me out. By placing the laptop on the chest, we gain all the benefits of a keyboard and screen with only social detriments and a ding to comfort.
Put your hands on your chest and pantomime typing. Not bad, right? Move it down to the belly and it gets a little better. My gut is slightly inclined, making typing almost ergonomic. (Finally, a use for our beer bellies!) By mounting a laptop on our fronts—preferably a sub-notebook, although any will do for initial testing—we've done away with both the question of primary user interface and primary display.
Presuming this works, I would like to address the bloggers of late 2007: Yes, we know we look like tools. No, we do not care. Yes, I am putting a picture of you on the internet right now.
So we'll need a harness of some sort. Because every laptop will have its own dimensions, every gargoyle user will have to manufacturer their own at first. That's fine. A little sewing never hurt anybody.
And of course we'll need a camera. It would be a fair criticism to look at this whole idea and ask, "Does this jerk know about cameraphones?" That is one reason why I would like to start by using the DSLR. The quality of pictures that you can take with a proper camera add at least one extra layer of value, although I'll be the first to admit it doesn't justify the trouble alone. But we have to start the project somewhere.
A dissent: If we were to use a generic USB webcam, that would bring two benefits at the expense of image quality: a camera cheap enough that almost everyone could afford; one less step between "still image annotation" and "video."
Next step
Because I will probably be working on this on my own for the immediate future and I've already done some work with my DSLR and Automator, I'll probably keep doing that, even though it limits the platform to OS X and is a dead end code-wise, which is certainly a long-term mistake in my mind. (We can have the "which OS" pissing match soon enough, I promise!)
I'll be posting at least once a week here on Gadget Lab with my progress and ideas. There's plenty of ground to cover before I run against the limit of my technical ability, and I'm excited to do it. But I want to get some practical results soon, too, even if I have to do them on my own. Please share your comments here. I'll be setting up a wiki this week to hold my own progress, once I, you know, make some.
I intend to act as a moderator for the project as well as a primary test platform, but at the end of the day I'm just a tech writer with an idea. I hope that you will be excited by the concept enough to participate and add your expertise, whatever it may be.
Brain dump without complete sentences
Streaming video
hard disk archiving when no IP connection
fail-over to fastest available IP (ethernet > wi-fi > evdo)
open web destination (flickr, blogs, youtube etc.)
xml-rpc compat
channel bonded EVDO? (rumored for justin.tv future)
open streaming video sites? (i've found a few)
single application (probably Windows)
full-screen interface option
high-contrast, large-type interface for sunlight use
support for aux displays (yes, goggles, but also phones, etc.)
head vs shoulder mount camera testing
solar power (not at all necessary)
dead simple almost passive interface
option: image preview before upload
option: image crop
on-the-fly transcoding for smaller video upload?
save RAW, upload JPEG
buy duct tape
justin.tv promo for commercial streaming platform?
set up wiki at some point
addressing the dork factor
weight issues, balancing front to back
text annotations on audio streams, video streams
voice control?
OCR option (snap picture, hit "OCR" hotkey, upload image with text pulled from shot)
light enough for true mobility
small enough to close laptop, zip up jacket
hacked mouse for small wearable input, buttons only
trackball on glove?
qwerty on arm
some sort of laser because they are awesome
GPS integration, automatic geotagging
everything plug-and-play if possible
does XP/OSX/Linux have generic USB camera addressing?
fast release harness, pin and socket?
text only mode
interface should have "i have a connection" notification
battery life tests
history of reporting suits in sci-fi (snow crash, transmet)
history of reporting suits in gadgetdom/academia
what happened to that "soul" project that was to record everything?
on-the-fly battery swap would be nice or failing that boot to application from start
linux livecd implementation? wouldn't even need hardware, just carry a dvd and credit card (and sewing kit)
time lapse mode, pull frames from video stored