Archives for the month of: July, 2010

“I’ve seen the future and I’ve left it behind.” – Black Sabbath.

One of the responses I often get after a talk is that, while I may have offered a critical take on existing and emergent trends in ubiquitous interactivity, I’ve failed to frame an affirmative vision of what I believe such interactivity ought to look like.

To be honest, I’m not sure this is entirely a fair cop. Sometimes the duty of an observer is simply to point out that a given situation is unfortunate, unaesthetic or undesirable, that one or another emperor is prancing around the block all buck-nekkid. This is an especially important thing to do when consensus might otherwise seal around the essential OKness of something that is really, truly Not OK.

But there’s another sense in which the complaint is not without a certain justice. There’s nothing less fair to the working designer than some dilettante, someone without any skin in the game, second-guessing their decisions — especially when the sideline sniper hasn’t had to squander their hope and energy along the nigh-endless gantlet of compromises, arguments, negotiations and endless meetings that constitutes the contemporary corporate development experience. Somewhere inside, I do feel that if I’m going to make a decent chunk of my living taking the efforts of others to pieces, it’s only right and proper that I throw something of my own on the table, to expose my own notions to the rigorous vetting I demand of any other. Some part of me feels like I should be sketching some kind of overarching, affirmative vision.

It was only liminally intentional, at best, but it’s now clear to me that over the last few months, I’ve been setting forth the building blocks of just such a thing here on Speedbird. For a variety of reasons, I’m not so hot on grand Statements of Intent at this point in my life, so it’s nowhere near as coherent as a purpose-built manifesto like this…but if you string the following (mostly rather wordy) posts together, the outlines of my stance ought to become pretty clear.

In 2010, anyway, this is my own personal vision of informatic technology at the service of the full range of human desire and complexity. Not a word of it is intended as a “solution” to what are inevitably and correctly local social or political challenges…but it is intended to give people everywhere better tools with which to join such struggles. I hope you find it useful, and invite you to subject its claims and assumptions to the same skepticism I’ve applied to other visions of ubiquitous technology.

Context

Understanding, first, the complexity of the environment in which any intervention will take place, and what kind of disciplinary tools might be useful in framing sensitive interventions.

- Toward urban system design

Frameworks for citizen responsiveness

Using ubiquitous informatics to reinforce a sense of public life and one’s own agency. Inviting new urban actors to the stage.

- Part I
- Part II: Toward a read/write urbanism

Transmobility

Using the envisioned frameworks instrumentally, to help people manage what is all-but-invariably among the most vexing challenges faced by citydwellers: getting around.

- Part I
- Part II
- Free mobility, social mobility…transmobility: Part III

Every user a developer

Arguing that the true gains will be made not by offering people powerful tools, but the ability to make their own tools of equal power.

- Part I: A brief history, with hopeful branches
- Part II: Momcomp

Respectful interfaces

Arguing that, while entirely new technical possibilities ultimately demand interface metaphors that convey the full measure of their power, they should also be designed in recognition of the environment in which they’ll be deployed.

- What Apple needs to do now
- jnd: An emergent vocabulary of form for urban screens

I wanted to take up a challenge Mike Migurski inadvertently laid down in comments the other day, in his response to my piece on the ongoing democratization of development for interactive systems.

I get where he’s coming from, especially his point about the moving-goalpost definition of “ease of use.” But I’m not convinced that there isn’t a whole lot further we could take tools like App Inventor toward making them painless for ordinary people to use, and I think — if you’ll forgive me, Mike — he’s mistaking my point about alternatives to the app paradigm. (It’s a little inside-baseball, but in brief: I acknowledge that the contemporary thrust of development is about things that happen in the browser, and that many “apps” are essentially specialized browsers. I just happen to believe that, despite the relative accessibility of tools like Apple’s iOS SDK, this whole model is still unnecessarily intimidating, and based on paradigms most users simply won’t get.)

So I thought I’d try a little thought experiment, to see if I couldn’t do a better job of getting my point across. I thought I’d start with a real, non-technically-inclined person, my mom, and a real challenge she used to confront on a several-times-a-month basis. And then I tried to imagine a toolkit which would allow her — as she is, and with little or no additional training — to build a custom module of functionality that would help her address this challenge, that she could use on an ad-hoc or near-realtime basis, and that would effectively lower the net frustration she experienced.

I have to say, right up front, that what I came up with is heavily, heavily dependent on circumstances which might never come to be. It posits a world in which there are widely-shared specifications for the description of networked objects we might encounter, whether those objects are people, places, things, or other kinds of system resources. And, of course, the open, shared, widely-adopted interoperability frameworks and standards that would allow us to bind these resources together and animate their interaction in useful ways. This, to put it mildly, is not the world we live in today. But it’s a world I’d like to see come to life, and if the best way to predict the future is to invent it, well: here’s my shot.

This is the use case. My mom lives in the Princeton, NJ area, a reasonably typical sweep of American suburbia that’s almost entirely predicated on automobility. Somewhere between two and five times a month, though, on a not-always-predictable basis, she has to drive to the nearest New Jersey Transit station, Princeton Junction, and there catch the train into New York City. Between the routine congestion of the area, the vagaries of the NJT timetable, and the hassle of finding parking at the station, she’s generally hugely stressed out by having to predict from among the available options the routing that will get her to the station in time, let her find a place to park, buy a ticket, and catch a given train. Our meetings in New York are generally subject to a back-and-forth flurry of last-minute phone calls: which train is she aiming for? What’s the traffic situation on Route 206? How about Route 1? Which train did she actually make? It’s not much fun, on either end, and yet something like this is how a great many people go about suturing their lives together, even in an age when information about most of the particulars here (time, location, traffic, timetable) exists, and is readily accessible from the device she has in her pocket.

Now my mom is not, in the slightest, a stupid woman. She just doesn’t like “technology.” And although she’s comfortable with (even delighted by) the iPhone UI, like a great many people she’s not the kind of person who’s going to switch back and forth between a Google Maps app and a New Jersey Transit app and whatever else she needs to come up with a relevant answer. So not only do I want to give her a single tool that offers her just the information she needs, and nothing else, but I want to give her the power to build that tool herself, so it speaks to her in something approaching her own voice.

What you see in this PDF, therefore, is a schematic representation of a constellation of plug-and-play objects she’d be choosing from and fusing together to make her ad-hoc service. Each of these objects is represented by a graphic icon and each is characterized under the surface by an arbitrary number of attributes and (inherent, dynamic and relational) attribute values. By selecting high-level, self-describing objects relevant to what she wants to do, and then using an enhanced text editor to compose what is effectively a rebus providing operators for these arguments, someone like my mom — with no technical background, or interest in or inclination toward acquiring one — can make herself a highly useful module of functionality, suited to her immediate and particular needs. She could even bundle it into a wrapper and upload it back to the network, either for someone else in nearly-identical circumstances to use as-is, or for others to deconstruct and rebuild according to their own requirements, given objects more relevant to their own local conditions.

Is it “an app”? No, not really. It’s something more, and less. It’s “just” a natural-language, textual interface layer to some reasonably complicated multivariate calculations running in the background. And in this telling of things, anyway, she built this layer herself, from available modular components fused together in an exceedingly lightweight, “intuitive” development environment. (You, Mike and the baby Jesus will have to forgive me: I’ve represented these components as something resembling Legos.)

Now I’m always a little concerned, when pushing something like this out, that I’m making myself look like that grizzled guy we’ve all encountered, wedged into a booth at All-Nite Donuts, guzzling serial cups of black coffee and scrawling his incoherent Grand Unified Theory of Everything across a stack of sweat-wrinkled legal pads. Nobody is more aware than me that there are holes in this schema you could drive a Northeast Corridor commuter train through. But I think it does a better job than I’ve yet been able to manage on two counts:

- It makes a better case than I was able to previously, regarding how easy the composition of complex functionality can and ought to be;

- And it lays out in black and white just what geomorphic feats of heavy lifting need to be taken care of in the background before any such vision could come to pass.

The things which I’ve painted as trivial here are admittedly anything but. But they are, I sincerely believe, how we’re going to handle — have to handle — the human interface to this so-called Internet of Things we keep talking about. Each of the networked resources in the world, whether location or service or object or human being, is going to have to be characterized in a consistent, natural, interoperable way, and we’re going to have to offer folks equally high-level environments for process composition using these resources. We’re going to have to devise architectures and frameworks that let ordinary people everywhere interact with all the networked power that is everywhere around them, and do so in a way that doesn’t add to their existing burden of hassle and care.

Momcomp, in other words. It’s an idea whose time I believe has come.

***
I hope you enjoy the PDF I ginned up to illustrate my above contentions. You’re free to take and use and rework it in any way you want and for what purpose you will, just so long as the use is noncommercial and you identify me as the source author. You can find the full terms of the Creative Commons license under which it’s provided to you here.

I’m shutting down threaded comments, by the way; regrettably, this otherwise-lovely theme doesn’t handle them particularly well. This has the particularly irritating consequence of rendering existing threaded discussions all but incoherent, for which I apologize. I’ve written to the theme author to see if there may be a solution. In the meantime, please try to make do. Thanks.

I imagine this will have been obvious for quite some time now to most anyone who cares, but as of the end of this month I’ll no longer be working at Nokia.

Despite the brave, concerted efforts of a great many highly talented people, my two years at Nokia House have been very, very difficult — so difficult, indeed, that it’s become hard for me to reconstruct now the bases of the optimism with which I began the adventure.

I haven’t quite decided whether I’m going to write up a comprehensive post-mortem, or just let things be and move on. As the alert might have inferred from yesterday’s piece on App Inventor, I’ve been thinking a good deal lately about Doug Bowman’s farewell to Google, and whether or not anything constructive came in the aftermath of that. It’s hard for me to tell, amidst the sound and fury the piece generated in the relevant circles, whether Google or, indeed, Doug himself learned anything useful from the controversy, and that’s going to be my threshold in deciding whether or not I have anything public to say about my experience.

I do think there are useful things I might say about Nokia, and how it might address the situation in which it now finds itself, but I’m far from convinced that anything I say would make any difference at all. Above all, what I fear is that anything I write would be counterproductive for my friends who remain inside, fighting the good fight. And, to be honest, the perception that my motivations in writing would be self-serving or self-exculpatory.

For now, let me just say that far and away the best part of working at Nokia has been the opportunity to meet and work alongside literally dozens of brilliant, beautiful, funny, super-capable people — so very many that I daren’t start listing names in an attempt to be comprehensive, lest I overlook someone awesome. It’s weak sauce to say so, but you know who you are…and I only hope you know how much I appreciate and admire you all.

Nurri and I have our hands full over the next few months, wrangling an intercontinental move, getting some travel in, and cooking up new Do projects goodness for you. There are also some other things I’m working on that I suspect you’ll be very, very interested to hear about. More about all of that in due season.

The thought I want to leave you with is that for all the disappointment I feel when I consider the missed opportunities of these last two years, I actually have no regrets. I’ve learned some very valuable lessons about my own personal strengths and weaknesses, how and how not to organize efforts so they have a chance of success. And hey: we got to live in Helsinki for two glorious summers, made a ton of amazing friends, and enjoyed some experiences we never would have had we stayed in New York. And there’s not a damn thing wrong with any of that. Now: we throttle up and prepare for Go.

…thanks to Groupe Chronos and Caroline de Francqueville: La transmobilité! (I believe the other two parts are in preparation as we speak.)

And while we’re on the topic of les choses français: happy Bastille Day! I offer you my usual commemoration.

Google’s recent announcement of App Inventor is one of those back-to-the-future moments that simultaneously stirs up all kinds of furtive and long-suppressed hope in my heart…and makes me wonder just what the hell has taken so long, and why what we’re being offered is still so partial and wide of the mark.

I should explain. At its simplest, App Inventor does pretty much what it says on the tin. The reason it’s generating so much buzz is because it offers the non-technically inclined, non-coders among us an environment in which we can use simple visual tools to create reasonably robust mobile applications from scratch — in this case, applications for the Android operating system.

In this, it’s another step toward a demystification and user empowerment that had earlier been gestured at by scripting environments like Apple’s Automator and (to a significantly lesser degree) Yahoo! Pipes. But you used those things to perform relatively trivial manipulations on already-defined processes. I don’t want to overstate its power, especially without an Android device of my own to try the results on, but by contrast you use App Inventor to make real, usable, reusable applications, at a time when we understand our personal devices to be little more than a scrim on which such applications run, and there is a robust market for them.

This is radical thing to want to do, in both senses of that word. In its promise to democratize the creation of interactive functionality, App Inventor speaks to an ambition that has largely lain dormant beneath what are now three or four generations of interactive systems — one, I would argue, that is inscribed in the rhetoric of object-oriented programming itself. If functional units of executable code can be packaged in modular units, those units in turn represented by visual icons, and those icons presented in an environment equipped with drag-and-drop physics and all the other familiar and relatively easy-to-grasp interaction cues provided us by the graphical user interface…then pretty much anybody who can plug one Lego brick into another has what it takes to build a working application. And that application can both be used “at home,” by the developer him- or herself, and released into the wild for others to use, enjoy, deconstruct and learn from.

There’s more to it than that, of course, but that’s the crux of what’s at stake here in schematic. And this is important because, for a very long time now, the corpus of people able to develop functionality, to “program” for a given system, has been dwindling as a percentage of interactive technology’s total userbase. Each successive generation of hardware from the original PC onward has expanded the userbase — sometimes, as with the transition from laptops to network-enabled phones, by an order of magnitude or more.

The result, unseemly to me, is that some five billion people on Earth have by now embraced interactive networked devices as an intimate part of their everyday lives, while the tools and languages necessary to develop software for them have remained arcane, the province of a comparatively tiny community. And the culture that community has in time developed around these tools and languages? Highly arcane — as recondite and unwelcoming, to most of us, as a klatsch of Comp Lit majors mulling phallogocentrism in Derrida and the later works of M.I.A.

A further consequence of this — unlooked-for, perhaps, but no less significant for all of that — is that the community of developers winds up having undue influence over how users conceive of interactive devices, and the kinds of things they might be used for. Alan Kay’s definition of full technical literacy, remember, was the ability to both read and write in a given medium — to create, as well as consume. And by these lights, we’ve been moving further and further away from literacy and the empowerment it so reliably entrains for a very long time now.

So an authoring environment that made creation as easy as consumption — especially one that, like View Source in the first wave of Web browsers, exposed something of how the underlying logical system functioned — would be a tremendous thing. Perhaps naively, I thought we’d get something like this with the original iPhone: a latterday HyperCard, a tool lightweight and graphic and intuitive as the device itself, but sufficiently powerful that you could make real things with it.

Maybe that doesn’t mesh with Apple’s contemporary business model, though, or stance regarding user access to deeper layers of device functionality, or whatever shoddy, paternalistic rationale they’ve cooked up this week to justify their locking iOS against the people who bought and paid for it. And so it’s fallen to Google, of all institutions, to provide us with the radically democratizing thing; the predictable irony, of course, is that in look and feel, the App Inventor composition wizard is so design-hostile, so Google-grade that only the kind of engineer who’s already comfortable with more rigorous development alternatives is likely to find it appealing. The idea is, mostly, right…but the execution is so very wrong.

There’s a deeper issue still, though, which is why I say “mostly right.” Despite applauding any and every measure that democratizes access to development tools, in my heart of hearts I actually think “apps” are a moribund way of looking at things. That the “app economy” is a dead end, and that even offering ordinary people the power to develop real applications is something of a missed opportunity.

Maybe that’s my own wishful thinking: I was infected pretty early on with the late Jef Raskin’s way of thinking about interaction, as explored in his book The Humane Interface and partially instantiated in the Canon Cat. What I took from my reading of Raskin is the notion that chunking up the things we do into hard, modal “applications” — each with a discrete user interface, each (still!) requiring time to load, each presenting us with a new learning curve — is kind of foolish, especially when there are a core set of operations that will be common to virtually everything you want to do with a device. Some of this thinking survives in the form of cross-application commands like Cut, Copy and Paste, but still more of it has seemingly been left by the wayside.

There are ways in which Raskin’s ideas have dated poorly, but in others his principles are as relevant as ever. I personally believe that, if those of us who conceive of and deliver interactive experiences truly want to empower a userbase that is now on the order of billions of people, we need to take a still deeper cut at the problem. We need to climb out of the application paradigm entirely, and figure out a better and more accessible way of representing distributed computational processes and how to get information into and out of them. And we need to do this now, because we can clearly see that those interactive experiences are increasingly taking place across and between devices and platforms — at first for those of us in the developed world, and very soon now, for everyone.

In other words, I believe we need to articulate a way of thinking about interactive functionality and its development that is appropriate to an era in which virtually everyone on the planet spends some portion of their day using networked devices; to a context in which such devices and interfaces are utterly pervasive in the world, and the average person is confronted with a multiplicity of same in the course of a day; and to the cloud architecture that undergirds that context. Given these constraints, neither applications nor “apps” are quite going to cut it.

Accordingly, in my work at Nokia over the last two years, I’ve been arguing (admittedly to no discernible impact) that as a first step toward this we need to tear down the services we offer and recompose them from a kit of common parts, an ecology of free-floating, modular functional components, operators and lightweight user-interface frameworks to bind them together. The next step would then be to offer the entire world access to this kit of parts, so anyone at all might grab a component and reuse it in a context of their own choosing, to develop just the functionality they or their social universe require, recognize and relate to. If done right, then you don’t even need an App Inventor, because the interaction environment itself is the “inventor”: you grab the objects you need, and build what you want from them.

One, two, many Facebooks. Or Photoshops. Or Tripits or SketchUps or Spotifys. All interoperable, all built on a framework of common tools, all producing objects in turn that could be taken up and used by any other process in the weave.

This approach owes something to Ben Cerveny’s seminal talk at the first Design Engaged, though there he was primarily concerned with semantically-tagged data, and how an ecosystem of distributed systems might make use of it. There’s something in it that was first sparked by my appreciation of Jun Rekimoto’s Data Tiles, and it also has some underlying assumptions in common with the rhetoric around “activity streams.” What I ultimately derive from all of these efforts is the thought that we (yes: challenge that “we”) ought to be offering the power of ad-hoc process definition in a way that any one of us can wrap our heads around, which would in turn underwrite the most vibrant, fecund/ating planetary ecosystem of such processes.

In this light, Google’s App Inventor is both a wonderful thing, and a further propping-up of what I’m bound to regard as a stagnating and unhelpful paradigm. I’m both excited to see what people do with it, and more than a little saddened that this is still the conversation we’re having, here in 2010.

There is one further consideration for me here, though, that tends to soften the blow. Not that I’m at all comparing myself to them, in the slightest, but I’m acutely aware of what happens to the Ted Nelsons and Doug Engelbarts of the world. I’ve seen what comes of “visionaries” whose insight into how things ought to be done is just that little bit too far ahead of the curve, how they spend the rest of their careers (or lives) more or less bitterly complaining about how partial and unsatisfactory everything that actually does get built turned out to be. If all that happens is that App Inventor and its eventual, more aesthetically well-crafted progeny do help ordinary people build working tools, firmly within the application paradigm, I’ll be well pleased — well pleased, and no mistake. But in some deeper part of me, I’ll always know that we could have gone deeper still, taken on the greater challenge, and done better by the people who use the things we make.

We still can.

I saw a great Stephen Graham talk yesterday at the 24th AESOP Annual Conference at Aalto University in Espoo, called “Cities, Space, Security: The New Military Urbanism.”

I’ve enjoyed Graham’s thinking for quite awhile now, since picking his Splintering Urbanism off the shelf of late, lamented Micawber Books way, way back in the day. His argument here, in part, is that conceptualizations of urban space developed by the American, British and Israeli militaries, particularly, to support operations from Mogadishu to Gaza have begun to condition the metropolitan-in-both-senses fabric. This is a process he refers to as “Foucault’s boomerang,” and which will be familiar to any student of the intelligence community as “blowback.”

Graham calls out a litany of unhappy developments driven by this neo-Haussmannian thought, including a progressive cordoning by way of which the right of free movement in cities is slowly replaced by a checkpoint mentality, the contours of public space are subtly conditioned by simulations of blast physics, and events like the Olympics or the G20 are used to field-test techniques and strategies of urban control that eventually make their way into everyday policing.

To me, what’s really problematic about all of this is that it inscribes in our putatively urban places the fear of, and hostility to, the ordinary life of cities that completely suffuses the MOUT literature. It’s fine to assert that an infantry squad on patrol has to regard everyday urban space as festooned with “the clutter of concealment,” in which any number of threats might be secreted. But for that overwhelming majority of users of the city who do not happen to be conducting house-to-house sweep-and-clear operations…that’s just Tottenham Court Road. Or East 14th Street, or Mannerheimintie. And those are just newsstands, and parked cars, and bus shelters. That our cities should be designed for the former case over the latter strikes me as the kind of obscene argument that only someone who never loved city life in the first place could even think to propose.

This is why I had to nod in recognition when Graham described the security-industrial complex’s desperate attempt to develop video analytics that would permit algorithmic characterizations of urban “normality,” so as to simultaneously be able to recognize anomalies (“threats”). When you have any familiarity at all with the social and physical terrain of suburban northern Virginia, and the other locales in which these systems predominantly tend to be developed, you can see the punchline coming from miles away: anyone for whom Tysons Corner represents an uncomfortable concentration of human heterogeneity wouldn’t be terribly likely to recognize big-city normality if it bit them in the ass. How much less so, then, the algorithms authored by such a person?

Graham’s whole line of inquiry here is most pointedly relevant to me personally when he takes up the question of networked sensing and actuation, and situates it in the MOUT discourse as a tool to help the warfighter or security agent make sense of the chaotic urban environment. Needless to say, this is a vision that I believe must be strongly and continuously contested by those of us who understand the same sensing, reporting and actuation apparatus instead as a mechanism for citizen engagement and empowerment.

At any rate, if Graham’s still-newish book Cities Under Siege offers anything like as crisp and comprehensive an overview of the domain as this talk did, it will be well-worth picking up. (If you’re not too wrung-out and depressed by considering all of this, I also recommend Eyal Weizman’s essential Hollow Land as a companion. It’s a book-length expansion on the themes first explored in the brilliant “Walking Through Walls.”)

While we’re on the topic of citizen engagement: I’m delighted to be able to pass on to you the word that I’ve joined Code for America‘s Board of Advisors.

I think CfA is doing multiple important things at once: helping city governments and managers understand what emergent interactive technologies can do for them and their constituents; strongly countering the cheap cynicism about who government is, and what it is for, that seems to be so characteristic of our American moment; and maybe at the same time tempering the technical community’s natural enthusiasm for technical solutions with some immersion in the always charged and tangled arena of municipal politics.

This last aspect of the mission is particularly important to me. I’ve seen one or two responses to my recent work suggesting that people understand me to be arguing for the very thing I’m always so horrendified by, which is precisely the idea that social and political fissures can be patched with technology. As it happens, I don’t believe this, or anything like it, as readers with a more holistic familiarity with my output understand, but I thought the point could use some underlining. The more technologists gain a sense of the limits of their tools, and what these tools might actually be good for, the more effectively they can bring their special expertise to bear on the challenges that confront us.

What I see here, in the parallax between the picture Stephen Graham drew for us and CfA’s vision of America, is two entirely different conceptions of the complicated relationship between urban space, networked technology and “security.” Is this notion some grim, shoddy farce of heavy-handed control, sold to us by defense contractors who nurture a deep-seated distrust of city life and lives — a half-trillion-dollar sham that will eviscerate the potential of our public spaces, and even on its own terms never, ever work just right? Or is mutual security something that can only be coaxed to emerge from the difficult interplay of communities, needs and capabilities, much less totalizing in its promises but infinitely better able to deliver on them?

You know I believe it’s (long past) time to reinvigorate a sense of public life in the United States, an awareness of collective challenges, mutual obligations and shared outcomes, and for me, here, the medium is also the message. I’m looking forward to helping Code for America in whatever way I can — in no small part because I do believe that there are threats and bad actors in the world, and that collective security is best underwritten by vibrant, functioning, resilient cities. Vibrant cities…and people who love them.

…for changing circumstances. This is WordPress.com’s lovely Wu Wei theme, by Jeff Ngan, which in name and appearance captures nicely a little something of the way I feel these days: light, unencumbered, effortless. I hope you like it.

Follow

Get every new post delivered to your Inbox.

Join 45 other followers