Dissolving our nation’s bootstrap bias

March 10th, 2008

I’m supposed to be writing every week in Grok Systems, but my next post has been particularly harder to write in the context of my busy life. Part of this has been my obligation to write about the GDC, which I’ve only just recently started getting out of the way. But this got me in a writey mood and when inspiration hit, this came out. It’s not in Grok Systems because to me it’s really more patriotic than anything else.

The Unites States is probably one of the largest and most rewarding experiments in human history. There are lots of ways to look at it, being the largest experiment in our history it is a very multidimensional and complicated experiment. The core of it lies in freedom and self-governance (democracy)… what it means, what it implies, the challenges that come with it and ultimately what happens.

What led me to this thought was looking around this coffee shop here in my hometown and feeling like the ethnic minority. I’ve thought this before, but being caffeinated, a bunch of thoughts popped into my head including “it didn’t used to be this way” and also “this is America.” More significantly though, looking around, I was surprised to realize there isn’t really an ethnic majority! I may be in a minority, but so is everybody else. So there is no minority. It’s balanced, and in that way resolved.

Now diversity is common in large cities, and America is not special in that regard. Looking at a lot of other countries, particularly ones in Europe, there is a lot of diversity and integration of other cultures into the culture that is the national culture. However, America was one of the first to really accept this, at least in ideals.

I know that growing up I associated American culture with white people. There were more of them around me, and of course American history is full of white people. Only in high school did I fully realize this country was founded with no ethnic or cultural bias. In fact, it was based on freedom and democracy, allowing and even encouraging the integration of cultures and values of people other than even the founders.

But only when you look around and really see the dynamics of that in motion do you really understand that. People can see things as they are or as they were, but you really miss a lot, especially in your unconscious expectations of the future, when you don’t fully understand the intentions and implications of the founding values encoded into whatever is devised to maintain them… in this case the constitution.

The idea that white people “are immigrants too” is a great reminder of this. Common interpretation sees it referencing the fact the United States was founded on already occupied territory. But I think more importantly it should remind us the way our nation was framed in values and ideal was done in a way that made no implication of entitlement to the early members.

And it wasn’t done by explicitly saying so. It was done by making freedom and democracy the real first-class citizen. The only reason white people had “dominance” for so long was because they were what bootstrapped the system. The rules of the system gave bias to the majority, which just happened to be white people.

Thinking anything else is confusing emergent behavior with the mechanics of the system. I think most white Americans at least subconsciously make this mistake about what I’m talking about, but in general it’s not an uncommon mistake to make. The limited perspective of what you see and experience of especially large and long running systems can bias your understanding of the real nature of the system.

Despite this majority bias from bootstrapping, I think that because of the true mechanics of our country, it will also be the first country to achieve a true cultural balance like I experienced today… someday. Maybe sooner than we think. I think this presidential campaign both symbolizes and catalyzes the tipping point where our legacy bootstrap bias is dissolved and our true national mechanics will become obvious.

And the idealists will have won.

New blog: Grok Systems

February 3rd, 2008

Oh gee, I haven’t written here in a while… tell you what, I started a new blog that’s actually constrained to a topic, particularly one I’m passionate about, which means I’ll be posting there a lot more often. It’s called Grok Systems and the first post is on a systems principle called multidimensionality.

Why read it?

Well the post is actually a story about two young scientists that find themselves creating knowledge out of curiosity when they run into questions experimenting with Carl Jung’s work on introverts and extroverts.

Have you ever taken different versions of the questionnaire and found yourself sometimes an introvert and sometimes an extrovert? Maybe you’re an ambivert? Or maybe you’re something else that Jung never thought of… read to find out!

There are also cute little charts. Wait, how could this one be related to all that?

Education, manifesto, blogs and BarCamp

July 24th, 2007

Over the past few years I’ve had a growing interest in education. Something always seemed weird about the way we’ve been going about education with schools. My experience with school felt like it was going against the grain of education and the more research I do, the more obvious it becomes.

My study in systems theory has led me to completely new perspectives about the world around me and the history of that world. One of the core principles in systems thinking is learning and adaptability, and when you look at how we traditionally approach the learning process it seems almost entirely backwards.

Somewhere between seeing Ken Robinson’s TED Talk and hearing Russ Ackoff’s keynote at the National Summit on School Design I snapped and started digging deeper into the issue. It started by submitting a proposal and being accepted to write a manifesto on ChangeThis called Our Idea of Education is Fundamentally Wrong! and now I’m co-ogranizing a BarCamp event on education called EduCamp taking place at Stanford in September.

Until EduCamp, I’m going to spend the time I have for writing on my manifesto and the EduCamp blog. Once EduCamp happens and things are wrapped up, I’m going to switch my focus and try to channel the momentum into my upcoming blog Grok Systems. As for here on Blogrium, you’ll probably be hearing more of the same from me… not much that is.

However, I’m blogging much more over at the EduCamp blog, so check it out!

All children, all species, for all time.

May 21st, 2007

Super ambitious architect and designer William McDonough gave a talk at TED about designing for all children of all species for all time. He mentioned his book on the subject called Cradle to Cradle, which he points out was not printed on paper. In his deadpan sense of humor he explains,

Imagine this design assignment. Design something that produces oxygen, sequesters carbon, fixes nitrogen, distills water, accrues solar energy as fuel, makes complex sugars in food, creates microclimates, changes colors with the seasons, and self replicates.

Why don’t we knock that down and write on it.

It’s a very inspiring talk, especially with the work he’s doing with the Chinese government. It goes well with Janine Benyus’ even more inspiring biomimicry talk.

A Theory of Modern Generalism

May 21st, 2007

The Information Age is directly responsible for the modern generalist because it makes specialist knowledge so accessible. The main product of the Information Age is most undoubtably the web, which is based on ideas of linking and interconnecting across information. When it’s all there and hyperlinked, you’re just asking for generalists. Those in the tech industry are exposed to it the most, so no doubt that’s where you find the most generalists.

The generalist is commonly made analogous to the Renaissance Man of the 15th, 16th century. But the Age of Enlightment in the 18th century was another period of generalism. And now the 21st century. It seems every 300 years we go into a period of integration. During this time, progress switches from going deep to going wide and we focus on leveraging everything that’s been developed over the past 100 years. That last century represents the latest iteration of ideas that have been developed over those 300 years.

It seems reasonable that you can only go deep for so long before you start hit diminishing returns. At that point you need something major to change, which can only come from integration and reflection on what progress has been made, and then looking at it in a greater context. That’s where breakthroughs happen that change worldviews and major underlying assumptions. This opens the door to progress going deep in that direction for the next 300 years.

So what does that mean for us now? New shouldn’t be valued as much as old. Sure, we should focus on progress, but let’s get that progress by looking at the past and integrating efforts of before. At the time, most of the work was done in silos. Pull them out of the silos, dust them off, shine them up a bit, and just look at them until you see something that wasn’t there before.

Cinco de(v) Meow this Caturday

May 4th, 2007

SuperHappyDevHouse 17 is happening this Caturday on Cinco de Mayo.
I, for one, welcome our new lolcat overlords.

RSVP on upcoming

lolcats!

Web hooks to revolutionize the web

May 3rd, 2007

There once was a command line. It was a powerful thing. Not only could you navigate your filesystem and launch applications, you could program shell scripts to automate tasks and make convenient shortcuts.

One of the major sources of power there was the simple construct of input and output. A program could read from STDIN and could write to STDOUT, and you had a fair amount of control over rerouting them to do what you want. The most popular use of this was chaining commands together, piping output of one to the input of another.

This was infrastructure. Infrastructure that allowed simple, independent programs to be made almost exclusively for the purpose of chaining with other commands. These are commands like grep, uniq, wc, sort, etc… Very simple pieces that when used together with more “useful” programs would give you great power. They were made possible by this simple idea of input and output.

That was 1977. Twenty years later Jon Udell expressed a vision of web sites as data sources that could be reused and remixed, and a new programming paradigm that took the whole Internet as its platform. This lead Tim OReilly to ask in 2000:

What is the equivalent of the pipe in the age of the web?

There seems to be a resounding consensus that the answer is feeds. The name sounds very promising, it sort of make you imagine feeds like in the telecom world. Data coming directly to you. But this is very misleading because feeds aren’t about data coming to you. They’re about you getting that data yourself. A lot.

Polling is just dumb when you don’t have to. Especially when you have to write a polling system anytime you want to work with a feed, which means messing with the crontab or writing a daemon. Then you have to worry about caching and parsing. Client side mashups get by, but it’s a different story if you want it to be asynchronous and persistent. Then it just becomes too much work to do what could be done with these feeds and APIs. And if you want to use feeds for real-time notification, good luck.

There’s also a problem with the command line metaphor. The web is not linear. Web apps aren’t synchronous. A better metaphor would be a daemon process. How do they communicate? IPC? Actually IPC sucks. I learned that from AjaxWar. IPC is usually done with a shared queue. Amazon provides a pretty great, lesser known web service that provides just that for web apps.

Unfortunately, this just defers the polling to another node. It’s basically a fancier RSS. What we need is something more efficient, more direct and more real-time. We need to push.

This is where web hooks come in. A web hook is essentially a user specified callback via HTTP POST. This means to support web hooks, you have to somehow allow the user to specify where your application will post to and on what events. However, your application can then push data out there onto the Internet wherever your users want it, very much like rerouting STDOUT from the command line.

We’re already doing this with pingbacks on blogs. However, the difference with web hooks is that the payload is varied and the targets are obscure user specified web scripts. From there, the users can do whatever they want.

The idea here is to create new infrastructure. New opportunities. I’ve thought a lot about the possibilities if most web applications provided web hooks, and it makes me really excited. But I’m sure the possibilities extend well beyond what I can think of. Especially when they work with existing API’s and feeds.

Web hooks are easy to implement for application vendors. The hardest part is making a UI to let the user specify targets, but even that’s optional if you have an API. Otherwise, the main mechanism is making a standard HTTP POST, which is fairly trivial in most environments.

Being HTTP POST means it’s very accessible to work with for the user. Every web programmer knows how to work with POST variables. PHP hosting is practically free and widely available. I think PHP would become the most popular language for writing hook scripts, similar to commands in YubNub.

Just think about it. Writing all the boilerplate polling and parsing infrastructure just to use a feed? Or writing a little PHP script that has all the incoming data in predefined variables. And it’s real-time. And nicer on the Internet. Which do you think is going to be more likely taken advantage of when somebody gets a bright idea on how to use this data we’ve “opened up” to the user?

The Unix pipe is simple because it’s about input and output in linear order that generally happens quick enough to stare at the screen while it works. The web is very different. I think web hooks would achieve the same simplicity, and when coupled with our existing infrastructure of feeds and API’s, we’ll have even more power than what pipes gave Unix.

It will turn the web into a whole new platform. Remember, this is a simple solution that will have a huge impact. I think web hooks will be the tipping point to what’s really possible with the web.

Personal Utility and Aesthetic

May 2nd, 2007

Tonight I’ve been toying with the idea of personal utility and aesthetic. The way I see it, like most systems, people can be viewed as having both function and form. The idea of usefulness and emotional experience. In a more general sense, these are very interrelated things that generally work together, but like most models, it can be useful to view something as divided into two separate parts.

The problem, which should be obvious, is that people don’t like the idea of “being used” and that’s what personal utility can seem to imply. It seems to imply a sort of mechanistic view of a person, like they’re a tool that can be used to serve a function or purpose for the user. And of course, we know, people are not machines. One of the biggest differences between a person and a machine is that people are purposeful, as in, they have their own purpose.

As long as that’s considered and you act accordingly, it shouldn’t be a problem. However, I believe that people generally and mostly unconsciously place a certain amount of functional value in another person. How useful they are. Their utility.

This is contrasted by emotional experience. This is where character and personality come into play. Sometimes you don’t care how “useful” somebody is because they’re just fun to be around, or you have great chemistry, or they make you feel good. This is emotional experience. You could call it a person’s aesthetic, which of course isn’t necessarily about a person’s visual qualities (though part of it), but about their overall emotional experience.

Now, I think most people don’t like to admit it, but how much you “like” somebody is based on the sum of those two values, aesthetic and utility. Like most general models, the weighting of those two values are probably different from person to person. Some people might really not care about how much somebody can help them out in life, whereas some people will mostly make relationships based on that. In general though, I think it balances out.

Not only does your personal value of aesthetic and utility affect how much you like a person, but also how much utility and aesthetic the other person actually exhibits. For example, maybe you really don’t care much for personal utility and you really appreciate people for their personality. One day you fall in a well and somebody comes along and pulls you out. Okay, lame example, but it demonstrates that you’ll probably really like that person because of their utility to you at the time.

well.png

And you’re sitting there going, “Their utility in that case could have been a result of their personality! Maybe they really like helping people!” Like I said, utility and aesthetic is just a model and in reality they do have a close, interacting relationship. In fact, I’ve considered writing about how the two general ideas are actually the same thing. However, they can still be useful separately.

For example, what if the guy that saved you doesn’t actually like helping people. In fact, once he gets you out he makes a sarcastic joke about how dumb you were to fall in. He makes you feel bad, or frustrated, or sad. The person has low aesthetic, but high utility in this instance.

Again, about generalities, they don’t just extend across different things, but across time. You usually model a person based on the experiences you’ve had with them because that provides the most real and tangible evidence to you. Other people might say things that are different, and depending on how much you trust them, you might factor that into your model. But you generally model people mostly based on your actual experiences.

It can be possible to experience somebody many times under bad circumstances. In fact, that’s been used a lot in movies and entertainment as a running joke. Imagine the guy that’s always there when the main character messes up. My favorite is in Happy Gilmore where professional golfer Lee Trevino is always there shaking his head when Happy does something outlandishly inappropriate.

That sort of thing may have even happened to you! I mean, that’s what “first impressions” are all about. But we know that as we collect more experiences with a person, the more accurate our model of them becomes. So as we get to know that person that saved you from the well, you might decide he doesn’t have such a low aesthetic emotional experience after all.

But the focus of this post is more about the utility bit because I think that’s a bit more controversial. You have to understand that what you think and what you do are separate things. You might want somebody to do something for you, or maybe somebody in particular because they’re the only one that can, and if you’re friends, you have a mutual understanding that if they help you out, you’ll be more likely to help them out when they need it.

It’s more difficult if the person isn’t a friend. Or somebody you’ve never met. In that case, asking them for help might seem like a 0 aesthetic, -1 utility scenario… because they don’t know your personality and their interaction with you would be of negative utility. Instead of doing something for them, you’d be making them do something they might have to go out of their way to do.

This is why you usually say you’ll owe them a favor, in which case, it would balance out to 0 utility. But if you can get them to see helping you as a benefit to them, the utility becomes +1. That’s How to Win Friends and Influence People 101, but described with this interesting aesthetic/utility model.

Remember though that liking somebody, which can lead to friendship and a desire for mutual well-being, is based on the sum of the aesthetic and utility value of particular instances, which then form a general model of aesthetic and utility for that person. If you want somebody to like you, but that person doesn’t like your aesthetic or “experience of you,” one thing you can look into is to improve your utility to them to compensate. And vice versa. Though you have to consider how important aesthetic or utility value are relative to them, their worldview, and general context.

Like I’ve been trying to hint at, this model is applicable to more than people. Form and function is a common tool in the realm of design. Really it seems applicable to any system, but the interesting thing is that most literature on systems I’ve read doesn’t talk much about the aesthetic in relation to utility like this.

The importance of meaning

April 25th, 2007

Semantics! I’m not talking about the semantic web, but semantics in general. I’m sure you know, but the idea of semantics is the concern of meaning. For example, when I use language to communicate, I really want it to convey my meaning because that’s the reason I’m communicating. Hence, the importance of semantics and meaning.

On rare occasion I’ll be accused of “arguing semantics” and I’ve never quite got why that was a bad thing. It turns out in all these cases I was trying to understand what the other person meant because they were talking about something that was either ambiguous or just didn’t make sense to me the way they talked about it. There was a language disconnect and the only way to correct it was to teach them my language.

The thing that I might be doing wrong is thinking that there is a most correct language. Maybe that’s about being as explicit as possible, but this is so terribly verbose it becomes difficult to handle. Aristotle was dense because he wanted to be explicit about what he was saying so that you would be on the same page.

Being as explicit as possible isn’t the answer because depending on how specialized you are, how much of an expert you are in a domain, the more meaning is behind the words you use, and the less other people understand them. The more specialized you become, the more explicit you can become and it just gets worse.

I run into the same problem with explaining the context of something. Whenever I explain something I end up going off on a tangent about the context or history of the thing because I want the listener to understand it as much as I do. I want them to re-experience the same “aha!” as I did.

This usually ends up bad. My whole thing is about inspiration, and this kind of approach can be very boring, which is sort of the opposite of inspiration. Kathy Sierra argues you should skip the formal introductory stuff because often enough it is just boring.

Context is important, but the important context is the one of the listener. When you communicate something, for the greatest impact, you need to know the audience so that you know what level of explicitness to use and what can remain implicit.

The whole “arguing semantics” thing kind of made sense, but not entirely until I read this definition: “The individual meanings of words, as opposed to the overall meaning of a passage.” As in, “You’re arguing semantics and completely ignoring my point.”

Then it made sense. It can be very easy to dissect something looking for meaning, such as in the individual words. But that can be very counter-productive. Why? Duh! Analyses vs synthesis? We’re forgetting about the whole and the context of that whole.

So this relates to systems thinking. The meaning of the parts don’t matter as much as the meaning of the passage as a whole. There’s further meaning to be found in the context of that passage, etc. Standard systemic ideas.

That makes sense. Somebody says something trying to make a point, and you could argue about the meaning of the words that may or may not have been incorrectly used, but that’s not useful for the purpose of communication.

However! For the purpose of spreading knowledge, it’s very useful! Because even if you understand what they said when they used a wrong word, by ignoring it and acknowledging that you know what they mean, you’re reinforcing their incorrect use of the word and they’ll feel good about using it next time.

It’s like when somebody stops you and corrects your spelling or grammar. Completely off the point, sometimes annoying, but very useful! The only way to learn is by making mistakes, but you have to know they’re mistakes.

Now I want to talk about experience design. Like I said, semantics are important to me. Meaning is important to me. When I design anything, I need it to reinforce proper meaning. Of course, at the same time, it has to be compatible with people’s mental models or it breaks the cardinal rule of usability: don’t make me think!

Let me give you an example. I’ll use Apple because they’re a great example of a company that tries to take responsibility as designers. Unlike Microsoft. Who doesn’t know very much about that.

This is a bit related to my Create New rant from a while back. Really the point of that was what I’m talking about now.

So in Windows you have a menu in your applications and to exit it using the menu, the convention is that Exit is under File. Does this make sense? No. File as a top level menu is supposed to relate to the files or documents that the application works with. Its sub menu items are things like Close, New, Open, Print and these are all actions relating to files.

Microsoft will put Exit under this menu. Because that’s where they put it before and that’s where people are used to it being. Are you exiting the file? No. You’re exiting the application.

This is why in OS X there is an Application menu that’s labeled as the title of the application. Quit is under this menu, not under File. People from Windows will complain and become confused, but pretty quickly find it under the application menu.

appmenu.png

What’s wrong with the way Microsoft does it? Does it matter? It gets the point across, but it trains the user to build this dumb relationship with File and Exit. File then becomes much less meaningful. You don’t think of it as a menu for file operations, you begin to think of it as “that first menu item that has most of the operations I need, including Exit.”

In that way, it’s making users dumber.

Just like MySpace’s use of “commenting” which has become a messaging system. It’s close to but not equal to the actual act of “commenting” and MySpace is making their users dumber by reinforcing it instead of adapting the UI to change the language to mean something more accurate.

commentme.png

And you say, but hey, that’s just how language evolves. Kids today still know what comment means, but they also use it to talk about leaving a public message on their MySpace profile.

Sure. But does it have to be that way? I mean… it’s bad. It’s corrosive. It’s corrosive the same way socially accepted acts of downloading music and remixing copyrighted material, something kids today are doing more and more, is deemed illegal. Do you not understand the implications of this in their growing assumptions about laws? Do you really want coming generations to feel comfortable breaking the law on a daily basis? (And in this case the point is the laws should adapt because you can’t prevent cultural evolution)

In a subversive sort of way, it’s good. Sure, questioning “laws” is a great thing. It just seems that in this case, where they’re devaluing a system that was intended to maintain the integrity of our nation, it might be a bad thing.

Okay, so maybe I’m arguing semantics again. Is this really counter-productive? Is it worth designing something with accurate semantics? Am I just like those linguists that would say kids are ruining our language when they had ruined the language of linguists before them?

I still can’t say exactly why it’s important. Why it matters. Why I should even be defending this. Obviously for some reason I’m just driven to and I can’t exactly explain why.

This reminds me of beer. I will now talk about beer.

I think most people don’t like the taste of beer when they first try it. Without wanting whatever results of drinking it (getting a buzz, social acceptance, etc), there’s no incentive to drinking something you don’t like the taste of. The argument of beer drinkers will be that you get used to the taste. And the beer newb says, “Well what if I don’t want to get used to it?”

That makes plenty of sense if the reason they don’t want to get used to it is sort of a moral reason. They don’t want to get into the habit of drinking, they don’t want to conform, whatever. However, it becomes very strange when they don’t want to get used to it because they don’t like the idea of being used to something that tastes bad now. It’s a decision that is based on a current assumption that they know will be obsoleted if they choose to get used to it.

How is a decision in this case better or worse in either direction? Hm…

Back to semantics. Meaning is important because it’s useful. I think the semantic web is the best example of this. It’s the difference between data and information. To be “irresponsible” with semantics, especially when communicating to a mass audience, such as with designing an experience like MySpace or Windows, is to encourage a culture where the usefulness of meaning is devalued.

I’m not sure what the implications of that are, but it sounds bad. Even though it probably isn’t! What do you think?

New blog coming soon

April 11th, 2007

I’m planning and preparing a new blog that will focus on systemics. Hopefully it will make a difference in the world and help us deal with the implications of facts like these…

glumbert.com - Shift Happens

This came to my attention by Creative Generalist, which is a blog that’s about another major theme of my upcoming blog.