ALL ART BURNS

It does, you know. You just have to get it hot enough.

Tuesday, May 16, 2006

The Human Proto-Spime

[More thinking out loud about what I could do with an SRM. I haven’t started Everyware yet and might edit this after I’m finished. –jet]

So what happens if I drag around a slightly tweaked spime retrofit module and intentionally pre-load it with data and a set of data redistribution rules? As it collects and redistributes data about me over time based on rules I create, how does my life change for the better or for the worse?

More generally, “What happens when I have detailed control about a relatively large amount of my personal information and fine-tuned granularity about how I share that information with the world around me?” Humans in every cultural and temporal collection have had control of simple sets of personal information and how it is distributed via clothing, hairstyles, makeup, tattoos, &tc. These primitive coding systems change over time and require some amount of interpretation and authentication on the part of the receiver. Some subcultures have specific coding mechanisms that are highly-specialized and that don’t translate well outside the community and may not even be recognized as a code by outsiders. Flagging via the hankie code is subtle and probably not recognized (much less decoded) by anyone not familiar with the schema and symbols it uses. These subculture-specific encoding mechanisms require a shared set of interpretations between the sender and receiver and the mechanisms can easily be misinterpreted or not interpreted at all when in the incorrect context. Flagging means something in the Castro neighborhood of San Francisco, but does it mean anything in Tokyo? If I’m visiting friends in New York City or London, are there clothing colors, styles or brands I should avoid if I don’t wish to be thought a gang-banger or a chav?

So let’s say I take a SRM and tinker on it a bit to give it a few additional capabilities:

  • broadcast selected information on a routine basis
  • respond to broadcast queries (a request to any SRM within listening range) from individuals or entities with specific information
  • respond to directed queries (a request to my specific SRM) from unknown but potentially trustworthy entities
  • respond to directed queries from specific authenticated individuals or entities
  • receive and translate schemas and protocols used by other entities, SRMs and spimes to local, internal schemas and protocols

With these changes I can broadcast data and and any needed translation mechanisms or schemas to other individuals or my surrounding environment in order to correctly identify (or obscure) my identity, likes, dislikes, and needs. I can warn emergency services personnel about existing medical conditions, tell a building I enter about my preferred working environment, or broadcast a authenticated message from a local holder of power that I am under their protection. I can make my availability and orientation known in a singles bar without identifying myself and the bar can collect that information in order to allow in more of the appropriate mates and fewer of the inappropriate ones.

I don’t want everyone to automatically know everything about me or even to know my identity — I want select individuals, businesses, chartered organizations or the public to each know something specific about my patterns, personal tastes and status within the local reputation hierarchies.

My SRM has become something new — a Personal Data Broadcast Device (or PDBD, as I’m feeling a bit acronym happy) that distributes data about me of my choosing to the world around me. Design and implementation of the PDBD is probably more important in the world of The Participatory Panopticon than it is in the spime-full world, but it is built on technology and infrastructure similar to that required to develop proto-spimes.

When I turn on my PDBD, I become a proto-spime. I am now interacting with my environment in a more active and controlled fashion than a typical passive proto-spime or spime, but I still collect, process and redistribute information. In addition, I can dynamically define classes of information and who gets that information in reaction to my environment or new circumstances. (To be a proper spime I would have to have been designed (genetically engineered) from the start with the expectation I would exhibit spime-like behavior. Perhaps I would be able to provide power from my nervous system and collect and store data using my existing senses, but that’s a topic for a future entry.)

When I go to Deathguild, I want the DJs to know what songs I like and I want the bartender to know how often order drinks for groups of people and that I have a history of tipping generously. Neither the DJs nor the bartenders need to know who I am, merely that I am physically present and what my likes, dislikes and buying habits are. Knowing who I am can increase their level of trust or lead to further personalization of my experience, but it is not required for a basic level of interaction. I can make my identity known to entities that I trust or already know, but the general environment won’t have access to that information.

The data I — a proto-spime — distribute isn’t always originated by me but it is data I want to distributed. Not only will I broadcast information of my own selection, but I will also make available data about me generated by others. If you’re a bartender you shouldn’t trust me when I say I’m a great tipper, but you will probably trust other bartenders in the neighborhood. You’ll be able to verify that I didn’t generate a fake message from them about myself using a authentication and nonrepudiation mechanism.

Cryptography 101: authentication and nonrepudiation, the ability to prove that a message was created by a specific entity and prevent them from denying they created it, is an important security concept in both the physical and digital realms. In the physical realm, these tasks might involve a signature, seal or watermark on a document that is both difficult to forge and known to the recipient. In the digital realm, the electronic copy of a document is “signed” using a “signing key” and a cryptographic algorithm like ElGamal or RSA. The “signature” is then attached to the document similar to a footnote or cover-sheet being attached to a physical document. Anyone receiving the document and signature can verify that the document was created by the owner of the signing key and that the message has not been altered since its creation. See Schneier’s Applied Cryptography for more on this subject.

So while I have enough control over my PDBD to delete information I don’t like or don’t want, it is near-impossible for me to fake favorable information about me purporting to be from a known third party. An entity deciding whether or not to act upon data I provide would validate that data thru one or more trust networks that would range from ad-hoc, neighborhood level associations to government or international bodies running trust hierarchies. (Verisign and other companies currently operate trust hierarchies that use SSL certificates to authenticate web sites and web browsers.) Trust networks used by entities to validate my information would be independent of one another and each would likely operate by its own levels of trust mechanisms and standards. A trust network might be a collection of neighborhood bars that share information on good tippers, local power structures (law enforcement or street gangs) that provide identification or reputation references, a government organization or corporate body providing authentication services, or even mutual data sharing programs operated by airlines, hotels and other travel services. (More fodder for future entries: What happens when a trust mechanism requires that I allow negative data to be included in my digital reference if I want to use their service? Do I become a “blank” rather than let Trans Global Airlines note that while I’m a million-mile member I also tend to drink to excess and make trouble with the flight attendants? If I’m a blank for other reasons, will people assume I’m trying to hide negative information?)

When it comes to non-authenticated data, there’s little reason for third parties to automatically trust the data I send out about myself. The Deathguild DJs could compare my “favorite songs list” I broadcast to what I actually bother dancing to or reject the list entirely because it is too divergent from what other club members are reporting as their favorite songs.

“Broadcast” vs. “Transmit”: I’ve intentionally used the word “broadcast” instead of “transmit” in this entry for a very specific reason — the technology described here relies on radio frequency (RF) communications, and RF is by nature a “broadcast” technology. Unlike a switched TCP/IP network that can easily route data directly between two systems never to be seen by any other system, broadcast RF can be seen by any system within a given distance. This distance is determined by transmitter power, antenna size and design, and the environment in which the communication takes place. The 802.11 protocol operates in the 2.4Ghz range and can easily penetrate walls, vehicles, and other line-of-site obstacles that we humans perceive as limits on communication. Given that anyone can listen in on broadcast packets, proper encryption of communication channels is a must for Everywhere or the spime-full world.

I won’t broadcast most information without a specific, authenticated request, and I certainly don’t want to reveal sensitive personal information to untrusted sources. I don’t want a random person on the street to know my shopping preferences or how much I’m willing to spend on an item; my age, ethnicity, religion or sexual orientation; or my medical history or any physical disabilities. Who I decide to trust, what data I will share, how much certainty I require that they are who they claim to be, and the ramifications of a failure in the trust mechanism are questions we will need to answer.

entity making request type of data to be shared amount of certainty required to share costs of authentication failure
family, close friends, personal physician or legal counsel sensitive, private information about me or my family: medical records, real-time data relaying physical or emotional information possibly more than can be implemented in this mechanism; at a minimum prior personal contact massive legal, financial, or emotional damage, public humiliation or embarrassment
businesses with existing legal relationships sensitive personal buying preferences or information: size, medications taken, account number or related information prior personal contact minor to major legal, financial, or emotional damage, public humiliation or embarrassment
businesses with no existing legal relationships or prior contact personal contact information and general buying preferences: preferred colors, brands, flavors, items I’m interested in buying verification by trusted third party varies: a failure results in disclosure of data I would have given to a potential business contact but not necessarily made available to the general public.
non-commercial, chartered organizations: churches, political groups, social organizations semi-personal data related to volunteer availability, meeting schedules, religious or social affiliations or preferences prior personal contact; in some cases verification by trusted third party disclosure of religion, political or social preferences, cost depends on context in which the information is disclosed and to whom
government agencies collecting demographic or aggregate data anonymous demographic information verification by trusted third party limited, this is information someone could determine by visual inspection or other external measurement systems
emergency services, first responders medical information (if injured), useful skills (if available as a volunteer) verification by trusted third party exposure of personal medical conditions or personal information
individuals with an existing “relationship index”; friend, coworker or neighbor ranked %0-%100 depends on my personal preferences prior personal contact, no third-parties involved depends on the information shared
untrusted / unknown depends on my personal preferences depends on the information shared and who I’m sharing it with depends on the information shared

PDBDs, Spimes, and Their Security

The request, authentication and data broadcast interactions discussed so far are automatic and happen without my explicit knowledge or approval. A spime doesn’t check with an owner to verify each request, it operates under a set of rules that define how to validate a request and how to respond to valid and invalid requests. This request mechanism is the only acceptable way to move data off of a spime. Any spime (not just a PDBD) carrying truly sensitive data cannot be designed or implemented in a way that allows for direct reads under any circumstances. If my PDBD is lost, stolen, or simply not under my immediate physical control, another entity should not be able to access the information stored within unless I have previously approved of that access. That is to say, there is no “root” or “administrator” level of access that will reveal sensitive data stored on a PDBD or spime, only a query from an authorized third party (as predetermined by me) will cause information to be revealed. (I’m handwaving over the question, “How do I install rulesets that prohibit access but prevent an attacker from replacing those with rulesets that allow access?” More material for a later entry.)

The requirement that a spime be completely “locked down” requires a great amount of trust in the algorithms and implementations used, as a vulnerability would be easily exploitable without the knowledge of the owner. It is critical that every component of a spime fail safely, not operate on bad data, not have backdoors and do or not do all the things we require out of our most secure computing environments. I would suggest that only open source code and public algorithms be used to implement SRMs and spimes and that significant effort needs to be put into developing authentication mechanisms for executables and how they are installed. The OpenSSL, OpenSSH and OpenBSD projects are a fine example of how secure software for communication channels and operating systems can be developed and distributed for use by third parties.

What I, the Human Proto-Spime, Cannot Do

Based on our earlier distinction between passive collection and dissemination of data vs. active decision making, I as a human proto-spime will be limited in what actions I can perform with my PDBD. Many of the actions one assumes I’d do with a PDBD would likely be performed using a different, more personal object I carry with me or access remotely. For example, I cannot use my PDBD to:

  • vet a third party by generating a signed statement about them
  • engage in business transactions involving money or goods stored on the PDBD
  • collect, relay or transmit audio or visual streams for rebroadcast
  • view media, access the InterWeb, or perform other communication tasks

This “separation of powers” pays off in a number of ways. The simple SRM used as the basis of my PDBD will be cheaper to manufacture and will not create a security risk if lost, stolen or otherwise compromised. Anyone who finds a lost PDBD might not be able to determine the owner, even with the help of a third party or possibly the owner themselves. Rather than try and identify the owner, it would be more efficient for the finder to wipe the device and use it themselves or return it to the manufacturer to be wiped and reused.

It is quite possible that a PDBD would be embedded in some other host device I own, but unless it could be easily removed I might not be as likely to carry it around. My wristwatch or a piece of jewelry I wear every day is a more secure and dependable place than a part of my mobile phone, laptop or PDA that I have to carry in a pocket or bag; that I can lose; or that I might replace or send in for repair.

Technorati Tags: , , ,

posted by jet at 19:00  

Saturday, April 29, 2006

On the Path to a Spime-full Future: Proto-spimes

(I’m writing these as an exercise in thinking out loud and starting some dialog. I make no claims of breaking new ground here and welcome criticism. –jet)

The concept of a spime is simple to understand, the path to a world of spimes is not as obvious. Instead of attempting to invent spimes out of whole cloth we can extrapolate from existing capabilities and look to what we can do now or in the immediate future. Between the spime-less now and the spime-full future we will go through a brief period of working with what I’ll call “proto-spimes”.

Proto-spime: an existing object retrofitted for spime-like behavior by tacking on some number of sensors, computing resources and communication mechanisms. A proto-spime exhibits spime-like behavior but is no more a spime than a person who speaks another culture’s language is a member of that culture.

The arbitrary line I draw between a proto-spime and a spime is that of design intent. A proto-spime was not intended to have spimelike behavior when it was initially conceived and designed; a real spime has intent in the initial conception and design. Compare this to early portable personal computers and modern laptops: Early portable computers were PC-ATs smushed into portable cases while modern laptops are not only designed and built on the plan of portability but often contain features unique to portable devices or lack those found in non-portable devices.

The process and benefits of retrofitting items with simple magnetic or radio resonant tracking tags is well understood across a number of industries. Inventory management systems can easily track items that have a small barcode on the surface or a resonant tag embedded inside; these range from books leaving a library to a rental car being returned. This model of items being managed by users is one starting point for thinking about proto-spimes. The requirements and processes are well understood, we’re simply extending and enhancing an existing model with smarter tags.

Making a proto-spime

The resources needed for spimelike behavior — basic data collection, storage and retransmission– can currently be packaged in a small space and had for a relatively low cost in volume. Maxim’s iButtons are a current example of this sort of device. About the size of a few stacked dimes, iButtons can collect or store data and can draw their operational power from their communication channel. (The 1-Wire protocol is also used by personal weather stations and other devices needing minimal operational power for data collection and communication.)

Spime Retrofit Module (SRM): a device capable of data collection and transmission that does not communicate with or control its host. A SRM possibly has limited decision-making capability in the domain of what data is collected and who it is shared with.

Let’s assume for the sake of design that our basic spime retrofit module is larger than an iButton, about the size of a 9v battery. Let’s also assume that a fancier version with limited computing power and the ability to initiate communication with other spimes is the size of a two or more D cell batteries. The basic SRM can log limited amounts of data and transmit it on demand from a powered reader; a fancy SRM can collect data, make simple decisions, initiate contact with other spimes, or decide when to broadcast data to passive sensors.

Batteries are good models for our SRM for a few reasons: the size and weight are understood across most cultures, they are easily fitted into a variety of existing items, and most importantly, there are plenty of CAD models already in existence.

So what do we do with these spime retrofit modules?

Initially, SRM’s can be easily attached to or installed in existing items that their humans want to know more about (or will soon discover they want to know more about). Some of these items might not be worth redesigning as proper spimes while others might be more than useful with an embedded SRM.

Once we’ve learned a few lessons with proto-spimes we’ll be able to include the other side of spimes — data collection and management — in the iterative development process of spimes and SRMs. For now we’ll just stick to uses of the first generation of SRMs. (With the addition of the ability to directly manipulate its physical environment, a SRM becomes an autonomous, data collecting robot. I think these are interesting but because they can manipulate their environment they don’t match my definition of a proto-spime as a passive data collection device.)

Early Adopters of Proto-Spimes

The obvious adopters of proto-spimes are organizations that manage, move and maintain inventory and items. There are other early adopters in areas where individuals or groups have an interest in data and metrics collection to use as feedback for performance or entertainment purposes.

People responsible for equipment used by others

IT departments will be able to track the physical history of laptops, portable projectors, or other high-value and easily-damaged items. How often does the new high-end projector actually get used and in what conference rooms? Why does it always spend the weekends at the same person’s house? How and where do laptops get broken? Where does the tool cart spend its time during the day and what sort of equipment is it used to move?

Tool and equipment rental firms can verify that their rental items weren’t subjected to environments that violate rental terms or safety restrictions. In addition, they’ll be able to know how long a tool was used and in what ways, information critical for both routine maintenance and product marketing.

Auto rental companies and other transportation firms are already using proto-spimes in the form of black boxes that collect driving data and track the location of rental cars.

Athletes and Coaches

Data and metrics collection are a key component of most sports and many athletes and coaches are already moving into proto-spime territory to gain a competitive edge. This is already common in motor-sports, vehicles are heavily instrumented and the data is relayed in real-time to team managers and engineers. Other types of sporting activity has yet to directly benefit from this sort of real-time data collection and analysis.

Cyclists currently use integrated computers that collect information on things like heart rate, pedaling cadence, altitude, and speed. These are displayed in realtime for feedback to the cyclist while riding and saved for later post-ride analysis. With some simple (and hopefully lightweight) additions, these proto-proto-spimes will not only collect data from their bike but share data with nearby cyclists or even spectators. Teammates will be able to use shared data to optimize their pack performance while riding and more easily anticipate needed changes in ride order or speed based on one another’s physical performance. (All I know from bicycle racing is listening to my friends talk about it. Feel free to fill me in on the reality.)

Sports that use objects — hockey, football, basketball, golf — will be able to collect information from the objects themselves during and after an event. How hard a ball was kicked, how damp the green was, the precise amount of time between events and information on the playing surface and environment will all be immediately available to interested parties. Players of team sports that use objects can collect data on the performance of other players by monitoring objects to look for patterns of weakness, strength, or exhaustion that are not normally perceptible during game play.

Environmentalists, Anthropologists, and Other Observers

SRMs are drop-in replacements for many of the tracking devices used by people who monitor objects in the environment. Instead of simply relaying position, they will be able to collect information on their environment, save that information and exchange it with other SRMs in the wild. SRMs will be able to feed information to one another on additional data that needs to be collected, back up data carried by other SRMs in order to ensure that data gets back to the SRM’s owner.

I think this might be the most important area for design and development of proto-spimes and spimes. The ability to collect and dynamically manage data from the field and ensure a high return rate of that data to the collector is useful for everything from weather forecasting to studying the remote corners of the planet.

An entire pod of dolphins could be instrumented for data collection and return not only information about their world, but information about the dolphins who did not return and why they did not return.

An SRM that is small enough and sturdy enough to survive the digestive process might go from an organism low on the food chain to a higher organism. While it may never be retrieved, if it senses a friendly/compatible SRM nearby it could relay its history and increase the chances of its data getting back to the owner

What’s next?

The handful of examples here has me thinking about a number of engineering, legal and ethical questions:

  • Who owns data collectd by a spime?
  • What are the rules of engagement for spimes in the wild?
  • What data can I legally collect and store?
  • How do I protect my data?
  • How do I protect my spimes from being spimejacked? (And am I the first perso to use the work “spimejacked”?)
  • Are self-transporting spimes useful? How are they different from “software agents”? Is it time to dust off my Telescript developer’s kit?
  • How do we prevent ill-effects from all the RF fields used by spimes, both physical damage to the environment and harmful interference to other users of the airways?
  • How do we make SRMs that are low-impact on the environment should they become lost or damaged?

Technorati Tags: , , , ,

posted by jet at 15:46  

Friday, April 14, 2006

dorkbot pittsburgh for April, 2006

April’s dorkbot meeting will be at 7pm on Wednesday, 19 April 2006 at Brillobox.

Speakers:

Tina “Bean” Blaine uses science and technology to explore new interface designs for gaming, collective music-making and interactive media. She has recorded with Brian Eno, and written music for purposes as diverse as NPR broadcasts and video games and is currently a faculty member at Carnegie Mellon University’s Entertainment Technology Center.

Dave Mansueto is a Pittsburgh hacktivist and founding member of Libsyn, a communications facilitator that produces podcasts for individuals, collectives and nonprofits world wide.

Full details and directions at http://dorkbot.org/dorkbotpgh/

Technorati Tags: , , , ,

posted by jet at 15:49  

Friday, April 7, 2006

Thoughts on Shaping Things

I’ve been trying to categorize Bruce Sterling’s Shaping Things. Is it a design manifesto? A well-informed rant? A bit of SF prognostication based on a basic understanding of technology and comprehensive knowledge of how the world works?

Or does its effect on the reader matter more than which Dewey decimal digits get taped to the spine? Shaping Things gave me a well-needed kick in the head and got me thinking about some realities of ubiquitous computing in the near future.

When I think about past predictions for life in the age of omnipresent computing power — wearable PCs, portable VR, “smart”-whatevers — I’m reminded of why so much science fiction is utter drek. Instead of reaching out and thinking about how the future of technology will change our current life, too many authors take our current (or past) culture and spackle on future techno doodads without thinking about how that tech would actually change everyday life. (You know what I’m talking about: “It’s WWII, but with hover-tanks and grav-guns” or “It’s urban gang warfare in the gritty streets of the astroid belt.”)

The high tech business world suffers from the same sort of limited creativity, but I think it’s even more fundamentally ingrained in the culture and, unfortunately, rewarded more often than it is punished.

There’s a extended metaphor about a business cutting a path through a dense jungle. The workers cut down trees; the managers make sure the workers have sharp machetes and enough food and water and are cutting where they are supposed to be cutting; the leader is out climbing trees and telling the managers which way to go.

The problem is that I first heard that in a project management seminar for software development. When’s the last time anyone cleared a road through a forest with hand-tools and people climbing up trees? Why on earth is this being used as a metaphor for project management in a software development environment? How can one prognosticate about the effects of near-future technology on our life while still mired in 19th century management theory?

This is where I think Sterling’s experience in writing science fiction pays off in the design world. He’s able to leap ahead from what we have now based on what could be and not gussy up the present (or the recent past) in skiffy doodads and present it as THE WORLD OF THE FUTURE!.

Pat Cadigan has this to say:

“One of my favorite examples is people could have probably predicted a road system from the invention of the automobile and you might have been able to predict parking lots and difficulty in finding parking spaces, but you probably would not have necessarily predicted drive-in movie theaters, or making out in the back seat and people becoming parents in the back seat. “

This is the sort of thing Sterling is up to in Shaping Things: given the automobile and the motion picture, predict the drive-in. If not the drive-in, then at least driving school safety films, using cars as mount points for movie cameras, or at least POV movies like “Rendezvous”.

(Note: I’m going to handwave over a fair amount of the book and focus on the bit that kicked me in the head: the formal definition of the “spime”. There’s a lot of words about how we get to spimes, who handles spimes, what they do in the context of a future culture and what comes after, but I’ll leave that for some other time.)

A spime is an object capable of collecting information about its interaction with the world, track its own metahistory, and make that information available in a form useful to others. Sterling uses a familiar, ancient and decided non-technological object as the basis for his future spime: a wine bottle. He also spends a lot of time telling us how we got to spimes, what might follow, and how culture will change to adapt to these new inventions but that’s part of the stuff I’m handwaving over.

Whether or not we call these new objects “spimes”, “blobjects” or some other self-consciously coined word, the base concept is the same: a smart object that can observe its surroundings; collect, filter and store environmental data; report that data and even make decisions. This is a huge step forward in how we perceive the world and how it operates. Yes, it’s a huge step forward in the ability of conglomcos to refine their marketing messages but it’s also a huge step forward in tracking where garbage actually comes from and goes, finding inefficiencies in transportation (“my package sat how long on a loading dock in the rain?”), and learning the secret lives of everyday objects that most of us ignore.

Again we have the problem of “predict the drive-in”, but using the what-if tactics of science fiction in an iterative method might get us a bit further than the history-based product planning and market prediction routines from the past century used by the corporate world. We have a little experience of how simple information flow and collection can change the political, business and media landscapes and we can iterate on that for the next level of granularity with objects helping us manage those data flows.

For my part, this kick in the head has lead to my documenting “proto-spimes” in an effort to get my head around what a real spime might actually look like some day. Once I’ve got a few of those written up I’ll be able to go back and see what was wrong with the first and what they all have in common, re-read Shaping Things, then let it sink in again.

So be it manifesto, rant or design document, Shaping Things achieves the goal of kicking people (or at least me) in the head and getting them to think about the immediate future.

I only have one complaint about Shaping Things and it is a minor one: I do not like the layout nor the color selections used in the book. I’m not color blind but I did read most of it in low light on airplanes, conditions for which the book was apparently not designed. The combination of glossy paper and low-contrast colors made it more difficult to read than it should have been.

Technorati Tags: , , , ,

posted by jet at 23:16  

Saturday, March 11, 2006

dorkbot pittsburgh, 7pm, 23 Mar 06 at brillobox

Scheduled speakers are:

All the details and directions you could want.

Technorati Tags: , , ,

posted by jet at 19:53  
« Previous PageNext Page »

Powered by WordPress