Archive for the 'software' Category

Will the Wave answer the promise of the cloud?

One of the funnest things about working in interactive is the tea-leaf reading that happens when screenshots of upcoming apps are released. Windows Longhorn, the annual Macworld run-up, console releases, game beta screens are fodder for endless speculation, geek-talk, and fantasies of what the new app might be.

Twitter is all a-twitter about Wave today, and normally I would be skeptical, but something in Google’s ability to help me get excited about something in a single page with less than 500 words and a couple unremarkable, unpretty, completely un-Apple-shined screenshots makes me hopeful.

From the site:

What is a wave?

A wave is equal parts conversation and document. People can communicate and work together with richly formatted text, photos, videos, maps, and more.

A wave is shared. Any participant can reply anywhere in the message, edit the content and add participants at any point in the process. Then playback lets anyone rewind the wave to see who said what and when.

A wave is live. With live transmission as you type, participants on a wave can have faster conversations, see edits and interact with extensions in real-time.

Frankly the screenshots add almost nothing to the page. The words somehow reflect not only the promise of what they’re offering, but an understanding of the problems that needed to be solved for this to work and the open source ethos of “pick one thing and do it well . . . then do another” which usually result in elegant solutions.

I’ve experimented with a fair number of “collaboration tools” — 37Signals stuff, MSFT Windows Live, Google sites — and am currently struggling with a whole bunch of file sharing/cloud concurrency issues. I’m dying to have a place where I can share pictures and documents with coworkers with easy commenting, versioning, and non-networked-but-secured accesss. The beauty of Google sites was that it allowed people to write HTML in pages that were open to self-organization without the constraints of content management/versioning controls and it was in the cloud. But, you still had trouble with versioning when people got lazy.

If Google gets the rewind action right (presumably that’s what’s Wave-y about it), you’ve got version control built in, along with conversation tracking and a dynamic de-archiving process that doesn’t depend on search (which sucks even on Google apps). The beauty and the hope is that playback and rewind and wave implies a product based on a concept firmly adhered to rather than a laundry list of features that people would like to string together. (Something 37Signals did nicely with Basecamp.)

The real-time collaboration piece is also intriguing, surprisingly so, since we’ve heard that phrase 100 times — “see the changes as they’re made in real time!” (Wonder: how many people understand the phrase ‘real time’ . . . do they actually know what un-real-time is?) Google, however, may have the potential to beat the WebEx client in performance and simplicity if they nail the browser code (I’m starting to pendulum back to a notion that software needs to get back to the browser (even chromeless browsers) for speed, interoperability, and true cloudness).

Weird. I’m not sure I was even this excited about a software launch when Wrath of the Lich King betaed.

Brit Geek Class: Stephen Fry on GNU

Stephen Fry is an amazingly erudite, charming, and just fun writer about technology. This is one of the best, or at least freshest, looks at what open source means. It avoids the stridency of some open source advocates, dodges the now nearly-dead “not free like beer”, and has an interesting comparison of operating systems to plumbing.

The credits are fun too, almost all of the images are sourced at flickr.

He’s also got a fun column about the Wii.

Windows 7 Preview — cover flow, XO wheel

Crunchgear has some screenshots of a working version of Windows 7 — about three years out from its projected release date. Looks like they’re going with cover flow:

win7-pics.jpg

Though I’m totally digging the more robust system tray area. Nice idea to take advantage of better bigger monitors with some widget-y stuff.

There are also a bunch of screenshots with some wheel interfaces:

win7-whell.jpg

I don’t know exactly how it works, but I like the idea of a wheel that reflects resource usage and other statuses. Not sure I’m buying the search in middle bottom — there’s a lot of user inertia to reach up and to the right for a search box.

There’s also an intriguing, dense screenshot:

win7-dense.jpg

There were no higher res images available of this one, so I couldn’t get a closer look at what’s happening at the bottom . . . but it looked potentially cool. It’s always alarming to see the faux 3D wheels which obscure significant amounts of information (my main gripe with the cover flow mode: cool but thin on data), but I think I’ve seen these kind of pre-release experiments before and they get nixed before release.

Finally, a tight design argument against Agile

Talking to Agile advocates, has been, in my experience almost like talking to Ron Paul supporters:  they never let go, can turn anything into an argument for Agile, will play any cheap rhetorical trick available to turn honest concerns into small-minded opposition, and point with fervor to companies you’ve never heard of as shining beacons of the self-apparent rightness of it all.  That might just be me, but I do often feel like the crazy person in the room when I say “agile’s not good for everything, and it might short-circuit good design thinking.”

I just started reading “Effective Prototyping for Software Makers” and they’ve got a nice little line:

An overachieving prototype artificially wows an audience by showing inppropriate high fidelity too early in the software creation process.  An artificial high fidelity, while it may impress, will often cause many design decisions to be made prematurely — a leading cause for finding yourself designed into a corner.

Coded prototypes have a dangerous effect akin to the picture superiority effect.  They imply that many things have been solved which aren’t, that the time-consuming back-end issues are worked out.  Worst of all, coded, agile prototypes are an implicit argument that time-to-market is more important than doing things right.

It’s nice to hear software people show some respect for design-time.

Nothing New: My Top 5 Interactive Experiences

It seems like everything I read or think about interactive eventually, but quickly, zooms into next steps: how can we use this for marketing? how will this help us talk to our customers better?

I’ve almost forgotten the fun stuff that made me think this was an amazing medium, so I put together a list of the top 5 interactive things I’ve experienced over the years. These were more like interactive epiphanies, things that made me think this was a new medium with power. There are millions of little moments I can get all Chris Farley “that was cool” about, but these are ones that showed new possibilities.
Beethoven’s 9th

An educational CD-ROM made in hypercard by Robert Winter. It presents the 9th as the fulcrum to the romantic era musically, culturally, philosophically, and within Beethoven’s career. Using clickable pieces of music, often synched with scores, as well as photos, sketches, and active maps, the CD-ROM explains sonata form, the classical style, and development of themes. It also has an interactive score which allows you to listen to the symphony, while watching the score, all the while displaying comments and which section (development, false cadence, recapitulation, etc.) of the symphony you’re in. (Interesting article about the title and its place in the history of books.)

beethoven9screenshot.jpg

sonataform.gif

Final Fantasy 7

I can’t say it’s the best FF (I have only played a few), but it is the best game I have ever played. The story was one I actually followed, I was genuinely sad when Aerith died (I mean, it’s f*’ed up how bummed I was, I think I gasped), the combat system was clever and required tactics and strategy which I was proud of, and I still remember the characters.

aerith.jpg

Journeyman Project Turbo

This is a strange choice since the game was kind of crap — from that era when interactive stories were getting full of themselves. It was a time travel game, where you have to go and retrieve things from different eras to prevent oh, I don’t know, an exponentially growing rift in the time-space continuum that would destroy this universe and maybe others as well. What was cool, and truly memorable about it, was that one of the time settings was Leonardo’s workshop. You could wander around it at night and it was absolutely gorgeous. It was one of the first games to do sound design with stereo headphones in mind, so the ambient sounds and the music added to the immersion.

Fantasy Baseball Draft

Real-time fantasy baseball drafts are amazing fun. (Real-time as opposed to the turn-based email drafts, which I’m doing this year). Sitting around waiting for the draft to begin and talking to people, watching bots pick players for people who haven’t shown up yet, scrambling to figure out your next pick (or next two picks if you’re at the end of the snake), back-channel chatter. The funnest thing I’ve done on the web. I stayed in a league for three years too many just to experience the fun of that draft.

I actually had to stop at 4, cuz I already had two games and all I could think of were other games. It also highlighted that I haven’t had any mind-blowing experiences in the last three years, which was kind of sad. Flickr comes close, but I was looking for things that I still talked about years later and remembered the epiphanous flash that said, “things are different.”

MSFT sparking dreams with free dev tools

Interesting Microsoft move pre-reported by TechCrunch this morning:  Bill Gates will announce (or has announced) that (verified) students will have access to MSFT development tools for free.  In a program called Dreamspark, students can get the entire Visual Studio line, Expression, Windows Server, and Game Studio.  It’s a smart way to compete with open source, build the community of developers who work with and prefer Windows, and build brand loyalty at a formative phase of someone’s career.

Channel 8 did an interview with Bill Gates about this initiative which turned into talking about software.  Despite outsourcing and the commoditization of certain development skills, Gates is still quite bullish on the importance of programming:

[People can use MSFT dev tools to] build a career around or build fun software for themselves.

The skill of design, skill of knowing what good code looks like … will be around for the next couple decades.
There’s nothing more fun than thinking about software . . . software for the poor (there’s a lot more work that needs to be done), software to make jobs more interesting, software to help peofle design things in new ways … if you think about the sciences today they’re really driven by software … biology has so much information that it’s really software people who are gong to help find patterns and organize that information.

XO 1/3: Design Challenges

home-laptop_v2.jpgI’m a fan of the XO — the project, the goal, the educational ideas behind it. More than that, I’m fascinated by it.

I have a hard time thinking of what mass-market product has been launched since the PC that is more complex. And I don’t think there’s ever been a product launch as transparent as the XO’s. What a case study: a revolutionary piece of hardware, innovative open source software, designed for a market that may or may not welcome it and an incredibly broad audience.

I’ve got a Flickr photostream, with a bunch of screenshots, but wanted to capture some thoughts on the blog.

First, the project is enormous:

- $100 laptop (it’s now $200, and OLPC hopes to get it to $150)

- for children aged 6 - 12. I think this is the biggest challenge. This age range covers pre-literate kids up through pre-teens, playing simple games through programming.

- Integrated into school curriculum, appealing to government agencies

- be a substitute for textbooks (the swivel screen and glare-proof monitor support its use as a Kindle-like device. Textbooks are scarce in the US, and almost completely non-existent or out-of-date to the point of useless in many of the XO’s target markets.)

- EXPRESSIVE - stimulate the imagination (art, computation, narrative)

- APPROPRIATE - sturdy, stable, long battery life, outdoor use, theft-deterrence

- OPEN - the OS and software must be easy to develop, easy to adapt/upgrade, NOT dependent on another company’s development cycle or staff

Designing something for kids aged 6 - 12 is a massive challenge in and of itself. This challenge manifests itself immediately and viscerally in the keyboard:

keyboard.jpg

(Click for larger image and comments on flickr.)

A snap, but fair, judgement to make is that boy, there sure are a lot of keys: quick keys, amplifier keys (CTRL, FN, etc.), the keyboard itself. To make matters trickier, some of the keys have three values assigned to them. Finally, there’s an inactive slider bar on the top and two types of input devices at the bottom (the middle is capacitive, the outer two resistive). So did they get it wrong? Is it, to quote one designer “a shining testament to the disastrous effects of theory-driven- and designer-driven-design”? Let’s look at what the keyboard needs to do:

- be useful to a 12 year old, who will word process, browse the web, play games, draw, and hopefullly program

- support languages with complex character systems and constructions (more than the US qwerty)

- provide quick key, shortcut usage that power-users expect (unless we think 3W kids can’t be power users)

So is the keyboard poorly designed? If so, is it cuz it’s theory-driven or because it strives to do too much? It still comes back to the age range 6 - 12 year olds. In the states, we can buy our kids different electronic devices at different ages, and the market is awash with chip-driven educational/entertainment devices. But this one has to do it all.

The second big design moment that peole confront in the first minutes with the device is the home screen.

homeClean.jpg

This takes a few minutes to figure out … at least for all my interactive friends. The black border area is hidden from the user’s view, until the cursor is move to any of the four corners — it’s like Expose on OSX. The top black band contains quick links to system things like the network, or the home page, the bottom band contains links to all the applications on the machine. The left and right bands, and I like this, is a clipboard area. Anything the user adds to the clipboard is available here. That’s means a user can collect text, sounds, drawings, photos (from the camera) and have them available in eToyz, an authoring program on XO that has a lot of resemblance to HyperCard of old.

homeBusy.jpg

This is a busy home page, after the user has opened several applications. (Notice that the black border is missing, when the cursor is moved out of the corners the full screen is restored.) The ring contains all of the open applications in the form of graphic links, and right clicking allows the user to close the app without having to switch to it. What I love about this part of the interface is the way in which it graphically represents a machine whose RAM is full. Rather than a system resources message, the young user can see that things are pretty crowded and that they might need to balance/fix the situation.

There have been some questions around whether the XO should have a cheap version of Windows. As noted above, there was an early decision to go open-source. Part of the reason for open source is cost — there’s a lot of software and talent that can be leveraged with a Linux system. The other reason is that, with Linux, it’s possible to create a light-weight, clean interface like the one above.

Candidate Software Analogy 2: Obama is 1.0, Clinton 3.x.y

The New York Times did a what now seems inevitable article comparing Clinton to a PC and Obama to a Mac. (Not sure a summary of the comparison is even needed, or even the article. It’s pretty obvious where it goes.)

clintonObama.jpg

I think the better analogy is that Obama is a 1.0 software release and Clinton a 3.x.y.

Obama 1.0 is full of promise, free of legacy, naive about marketing, and, being untested in the market, quite possibly everything it promises to be (and even what you hope for). While operating Obama 1.0, it has a clean feel, offers ‘ooh’ and ‘ah’ moments of fresh surprise, and whatever isn’t working isn’t so bad: it’s 1.0 after all.

Clinton, on the other hand, is 3.x.y: all cruft and spaghetti code and in need of patches and special drivers. There are very features (positions) that you arrive at through a clear path, and when you do get there, they’re so laden with marketing ideas and embellishments that you’re never quite certain it’s what you asked for, want, or need. When you trace the history of any feature, the path is so circuitous and constrained by legacy issues, that you wonder how it all hangs together, or if it hangs together at all.

That’s not as loaded as it sounds - in many ways, it’s a rehash of the generational issue. Obama’s inexperience, like JFK’s, is free of cruft and spaghetti code, while having the added virtue of allowing people to project hopes and dreams onto the candidacy. Clinton’s experience, while showing market strength and durability, has the drawback of grounding a person in reality.