All entries for Wednesday 16 March 2005
March 16, 2005
Writing about web page http://www.basecamphq.com/
This is a talk by Jason from 37 Signals, who make subscription-based web applications. I really enjoyed the session, and I have a sneaking suspicion that that's because these guys are exactly like us; my notes from the session bear a striking resemblance to the sort of philosophy that we try to embrace at Warwick.
- Reduce mass
- Embrace constraints
eg. 37Signals had prior commitments, a 7-hour time difference, a lack of proximity, they were self-funded, they were a small team. So the time difference, for example, means that they get some time when they can communicate but also some time when they can't bother each other. Lack of proximity means they can't have meetings, so they have to communicate via IM and email, and that forces them to be precise, to be specific, efficient.
- Get real
Start with the UI so that you can sit in front of the app for as much of the development time as possible. Functional specs achieve nothing - they're an illusion of agreement (that's a nice sound-bite about specs).
- Manage debt – debts in terms of hacks in your system, code that needs refactoring, features that are overdue.
Especially in small teams, you need people who are positive, well rounded, a quick learner, trustworthy and a good writer. People don't talk as much as they used to; they IM, they email, they publish to the web.
I'll take someone who is happy and average over a guru who is disgruntled and frustrated.
Doing smaller, more focussed and specific software gives you:-
- Lower cost of change
- Less room for error
- Less support required
- A basis to encourage human solutions – encourage people to find their own way to use the product, to be imaginative and flexible (eg. TaDa lists, where people use their own keywords and tagging to support dates or categories or whatever – nothing built in to the software to accomplish this.)
Build half of the software:-
- Say no by default
- Listen to the product
- Ignore details early on because you have scope to change
- Improve what you have
- Decisions are only ever temporary, especially if you are keeping the cost to change small.
Brad Pitt or Ian Somerhalder?
Julia Roberts or Sandra Bullock?
Apple iPod or Creative whatnot?
Figuring out what the number two product is missing versus the number one product is difficult. The #2 product may objectively be better, but still be #2. Three rules:-
- Make people happy
Never underestimate how happy people are when things Just Work™
- Think about emotions
Give people ways to be in control of their environment (eg. Amazon checkout process which lets you supply info or change settings in any order you want)
- Obsess over aesthetics
Aesthetics generate an emotional response and the the principle of misattribution causes people to conflate the response with other attributes of the thing in question. IPods sell more than other MP3 players because they look nicer and the emotional response this causes colours peoples' view of every aspect of the device.
In possibly the most elegant way to end a presentation I've ever seen, Joel, who had liberally peppered his presentation with jokes, sight gags and music, noted that he was obeying exactly the principle which he was enumerating; remember the jokes, get a good feeling, leave with the impression that this was a great presentation.
Ethnographers tell us that people across very wide populations and ethnic groups only routinely carry three things:-
- Money or some other unit of value
- A key or some other security device (keycard, etc.)
- Latterly, a mobile phone
So the mobile phone is the only significant addition to the list since keys were invented thousand of years ago.
Why let a large and uncontrollable group of users participate in categorisation?
- [Wikipedia] How else could we possibly do it?
- [Flickr] It's the users' own data so they should be able to tag/categorise their data as they see fit.
- [delicious] Started with my own personal links collection, then offered it to everybody. Not all tags are relevant to the group (eg. "to read"). But some tags are explicitly for a team.
How should we resolve tensions between the individual and the group?
- [wikipedia] The tension is really between the individual and the goal of the encyclopedia.
- [delicious] Delicious is kind of a reaction to the wiki model where people can fight over the same space; instead everybody has their own space, and the shared space is kind of an emergent property which nobody really owns – so there's nothing to fight over.
- [Flickr] Here's an example: a guy attending ETech went to Tijuana the day before the conference started and tagged his photos "Etech 05". Perfectly proper for him (it's all part of his trip to ETech), but unhelpful for everybody else, who're expecting to see photos of the actual conference itself. In thoise cases, we defer to the individual at the expense of the group, though we'd like to be able to do more to reconcile the difference.
How can we connect tags together between different systems?
- [Delicious] It's tricky. We have 200,000 tags, a lot of which are compound words or foreign words, and the vast majority of them (190,000?) are single use. And tags aren't always functionally equivalent between (say) Delicious and Flickr.
- Maybe an API for tag manipulation?
How can we help/teach/feedback to users to get tagging better?
- [Wikipedia] Becoming a member of the editing community guarantees lots of feedback because it's a small, close-knit community,
- [Flickr] There are no bad tags. If it works for you, the tags are sufficient. It's a happy accident that it works at the global level. It's not a problem that we can't guarantee that searching on the "Tokyo" tag gets you every single photo of Tokyo that's held within Flikr. Why would it matter? If there are 100,000 photos of Tokyo in there, nobody could possibly look at them all anyway.
Chris has been doing a great job of blogging summaries of each session he's been to. It doesn't seem very efficient for two people to record real time summaries in parallel with each other, so for sessions we're both at, I haven't attempted to produce any sort of transcript.
We've also created a common category for ETech, so the combined output of both our writings at ETech can be found on this category page.
Some thoughts arising from Tuesday's sessions:-
- I was really taken with an observation during the Flickr session: "User contributed metadata is incredibly valuable, but only a small percentage of users will actively contribute metadata. So the secret is to make metadata acquisition an automatic by-product of what the user wants to do. A good example of this is the way that Amazon orders its search results list; the default order is "Sort by best-selling". That's really useful for the customer, because it's a useful summary of what the community thinks about the topic you're searching on. But nobody has had to actually supply that data explicitly; the very act of buying a book creates the metadata.
- Danny Hillis showed some stunning video of work his team have been doing designing and building robots, and experimenting with new ways of presenting maps. The video clips for their maps projects were amazing; in the first clip he's demonstrating a big table with a digital display of a map on its surface. The display is also a touch screen, and he shows how gesturing on the surface of the table allows zooming, panning and other mainpulations. It's startling and impressive to watch, but what's even more impressive is that in the video he's demoing this to some cartographers, and their reactions are a sight to see - they are just stunned and rendered almost speechless with joy. As he says, cartographers love maps, but mostly they sit in front of computers like the rest of us because maps are made using computers just like everything else. But really, what they love is a big map laid out on a table that a group of people can stand around and share. This interactive display in a table exposes all the power of a map in a computer, but presents it in a way that matches what cartographers love about maps. It was an astonishing display of how the right interface can transform data.
- His second map demo was even more impressive. It was a table with a digital display of a map on it. But a 2D map doesn't faithfully show all the attributes of the terrain, because it doesn't show height; it's flat. Except that this map wasn't.; right in front of our eyes the table deformed and reshaped itself so that the mountain ranges shown on the digital display were physically rearranged to be higher than the surrounding valleys. It looked so much like a special effect that it was very hard to believe that it wasn't faked up in post-production. But the guy standing next to the table physically ran his hand over the peaks and troughs of the deformed table so we could see that they were really there. Absolutely astonishing.
All complex eco-systems have parasites. Email, for example. We could fix this in various ways – tolls, rigorous identity checking, etc. But you would also break much of the value of email. Hollywood wants to control digital devices that use or even just touch video by requiring permission to release such a device. DVD players work like this today, but CDs don't, which is why you can convert CD data to ringtones, MP3s, remixed CDs, etc, but do nothing with DVDs except watch it in a player. Trusted Computing would extend the DVD model to all aspects of computing. But in practice, someone always leaks the keys or figures out how to crack the system, and that renders the whole system useless. It happened with DVDs and it would happen with any other rights management system.
And the trouble is that DRM doesn't stop infringement; it doesn't even reduce it. It's a 100% failure system. Parasite elimination never works, but the erroneous conclusion drawn by people like Hollywood is that they just haven't tried hard enough and if only the laws were more draconian, the encryption was more rigorous, the problem would be solved. But simplifying the eco-system never works. There will always be parasites.
It's a well understood idea nowadays that porn built the internet; credit card transactions, protected content, video streaming are all web features which surfaced first in the context of porn web sites. But as a separate question, does the search for porn which is locally illegal or socially unacceptable drive consumers, rather than producers, to become early adopters?
- Lots of people want porn
- But it's not always legal or socially acceptable
- However people routinely use technology
- So innovative ways to look without being seen will always be popular
And it turns out that technologies which support privacy and anonymoity can easily be repurposed (not necessarily as the inventors intended) to support porn viewing.
On the internet, porn quality started out poor – ASCII art. But it was still immensely attractive to consumers because anonymity was even better than VHS or magazines since the acquisition could be largely anonymous or at least free from personal interaction. Also, makes it unclear what "contemporary community standards" should be applied. Standards where the consumer is, or where the producer is? If the producer is outside the jurisdiction of the law where the consumer is, what then?
Anonymity is a obviously a big driver for porn consumers, so anonymous web browsing via proxies is a desirable feature, and is predicted to become a feature of future browsers or operating systems. It can be done right now (eg. Tor (tor.eff.org)) but it's not user friendly enough yet. Similarly, we now see OTR (off the record) messaging with unique key exchange and the key discarded afterwards.
- What's good for porn is good for free speech; today's porn tools are tomorrow's human rights protections.
- 90% reach among UK adults
- A billion hours listened to a week
- 76,000 hours of radio per year
- 32.5 million UK adults listen to radio every week
- Resurgence in popularity; now more popular than any time since 1950; heading towards being more popular than TV
Why so popular?
- Suits multi-tasking
- Ubiquitous – DAB, TV, mobile, internet (time shifting)
- Six million hours broadcast via the internet per week
But radio is broadcast (one-to-many) rather than network (many-to-many) – although letters, phone, fax, email, SMS are back channels, and SMS makes feedback nearly instantaneous (are there ways to support this idea of SMS for quick, simple immediate feedback at the University? Too clunky for in-lecture PRS-style voting, but what about more general services like Casey does with votes on Insite sometimes? Would such feedback be valuable? To whom?).
But how do people in the studio handle very large amounts of data coming back to them during a broadcast? Aggregation – polls, votes, charts – or random sampling – pick someone to be on the phone-in or to win the competition. Neither is perfect, because the former discards detail, but the latter shuts out most listeners.
10-hour takeover; nothing but records requested by SMS
- Put copies of messages into a web page so that the community can see what's being requested
- Studio operators had an inbox which listed artist, track and dedication
- This allows studio operators to click on, say "Artist" and see how requested they are and what kind of clustering there is
Principles guiding mechanisms for listeners to participate:
- An individual should get value from their contribution
- Contributions should provide value to other people as well
- The site or organisation should get value too
Phonetags – bookmark a song by texting x to 64046 – add keywords after the x if you want – add a number between 1 and 5 to rate the song – go to the web site later and see your bookmarks, plus see the aggregation of bookmarks – BBC get song metadata. Bubble-up metadata. rnd.historicalfact.com/phonetags This is really interesting; could we get metadata from students for eg. Library resources in a way which mimics this?
- See what your friends are listening to
- Sahred space for listening
- Interacting in ways that support – and don't undermine – the shared experience
- Organise & schedule subsequent events
- Why do we just push content to networked computers?
- What's the social aspect of a networked tivo?