Take Your Manifesto and Shove It.

A Commentary on the Experience Design Manifesto by Andre Pereira

Just for the record, I’ll state right up front that I’m not a nice person. I’m critical and argumentative. I’m also judgmental and opinionated. I believe that these qualities are important and essential for any rational human being. We cannot advance our store of knowledge without ruthlessly winnowing the chaff from any new information or ideas that are presented to our cognitive storehouse. Because of this point of view I’m immediately put on guard against anything couched in what appears to be feel-good rhetoric. I also tend to judge folks based on their ability to effectively communicate.

So Pereira’s Manifesto racked up two strikes in my book just within the first three sentences:

The ultimate aim of all creative activity is to bring happiness to people’s lives.

Happiness is an emotion that comes in result of positive experiences and affects human beings.

Experiences can happen in the past, present or future.

The only way the first statement can be true or valuable is if terms like ‘ultimate’ ‘creative’ and ‘happiness’ are used in so vague a sense as to be practically meaningless. The Victorian Era expressionist painter William Turner’s work would be considered creative by any conceivable standard. However the goal of his Slave Ship had little to do with happiness. It’s violent colors and brush strokes are almost gut wrenchingly visceral. The subject matter is equally upsetting. While it served to cast light on the brutality of the Triangle Trade, and the inhuman conditions imposed on transported slaves, this aim would have to be extrapolated hundreds of years into the future to bring any happiness to the parties involved. The same judgment could be made regarding Picasso’s Guernica, which is about as close as you can get to capturing pure despair on canvas. Is Pereira stating that these masters aren’t creative, or that their madness is an existential form of artistic happiness?

Speaking of happiness, Pereira’s grammatical mess of a second statement provides all the clarity and illustrative power of a cream pie to the face. Happiness: a positive emotion that happens to people. Thanks bunches for clearing that up.

And as for clarity, stating that experiences can happen in the past, present or future as your third premise, doesn’t really narrow things down much. Past experiences are not ‘happening’, they ‘happened’ – past tense. You can recall them in the present, as memories, but once they happen, they’re over buddy. Just live with it. Likewise experiences cannot happen in the future. Nothing happens in the future. I’m going to state this with absolute conviction; the present is the time period in which things happen, period.

The whole Manifesto is just littered with these little gems of illiteracy. I could spend all night just picking the thing apart sentence by sentence, but I’m afraid that experience wouldn’t ‘make’ anyone happy, myself included. So I’ll just point up two more issues that I have with this Huxleyesque piece of dreck and have done.

Firstly, I’m not name dropping old uncle Aldous lightly. Pereira’s bullet pointed list enumerating the requirements of Experiences That Foster Happiness (my own capitalization) engenders the same queasy feeling that I received from the benevolent lab coated eugenists in ‘A Brave New World’. You can no more ‘make people happy’ than you can make them be good, e.g. Alex from ‘A Clockwork Orange’. I’d like to believe that my beef with Pereira is merely semantic or cosmetic, but the entire manifesto is rife with absolutes couched in positive spun catch phrases.

My other issue may seem minor, but it’s a pet peeve that rankles me like a shrimp fork to the eye socket. Pereira starts off the third to last paragraph with the statement that “Artists are not different than scientists”, and then rattles off a quote from Gropius’ Bauhaus Manifesto. The statement is as grammatically egregious as it is qualitatively incorrect. Creativity is a required attribute of any ground breaking scientist, and there is a good deal of science e.g. chemistry, engineering and psychology that can be applied to the pursuit and creation of art. This being said; the artist and the scientist are as different as night and day. The scientist is afforded no leeway for personal preference. No matter how much he may like a given theory, if the evidence does not support that theory than it is wrong; end of story. This is not a matter of aesthetics or personal taste. There are as many different opinions on a work of art as there are art critics. There is only one correct scientific view on any given hypothesis; the right one, as supported by repeatable experimentation and evidence. In this arena, truth is not relative, and any scientist that cannot play by this hard and fast rule has no place in the game. I neither believe, nor desire, that artists should be held to this same rigid law.

In conclusion, if this is the sort of statement that Pereira is setting forth as the guiding principles for the fiend of Experience Design, I want no part of it. Come back and try again after gaining a great deal more exposure to the real world, and the invaluable assistance of a good copy editor.

Week 10 – Python Chess

I’ve been working on cleaning up some of the modularity issues and spreading the work required for castling between the king(moving itself and the rook), the rook (added a function to calculate where it moves when castling) the board (finding which rook to castle), and the legality functions (whether castling is legal).  I decided to integrate the legality functions into the board class because the major functions depend on the matrix which is stored in the board class.  I also added the board labels to the individual players which saves a few lines of code when redrawing them each turn.

Of course now I’ve run into a snag.  The full legality of castling involves checking whether the king is in check, or moving into check, or across check.  Until now I’ve treated the king, for the most part, like just another piece.  In thinking about the intricacies of evaluating check situations I decided to iterate through the opposing pieces to see if the king is located in their path.  However the complication comes in deciding when to evaluate a check situation.  It has to be done before the pieces actually move to a new location but must take into account the new configuration of the pieces.  What this means is that I need a transition matrix for the pieces to run the check scenario.  After determining that the king is not in danger I can collapse the transition matrix back into the real matrix and move the pieces accordingly.  What this means is that the pieces will not actually move themselves. Unfortunately this will probably require a radical rethinking of the way that the game, the players and the pieces interact with each other.

This is definitely a drawback to prototype design, and a really good argument for planning out the dynamics of a major project ahead of time.

So when I do the presentation on Tuesday I can offer a cautionary note in the development process.  I will cover the basics of Object Oriented Programming, and the different development processes, including top-down, bottom-up and spiral (prototype) design.  Demoing the game should be interesting.  It’s at a point now where all of the moves, including en passant capture and castling, are functional.  The higher logistics of legality are the only major hurdle to functional game play.

After I finish the functionality, I still want to design more of the GUI, including adding actual bitmaps of the pieces and showing which pieces are captured.  I also want to add save functionality and a move list annotated in current algebraic notation.  I’m glad I don’t have a real deadline to finishing the game, because I’ve got no idea how long it will take to get it to a point where I consider it ‘finished’.  If nothing else it’s a great programming exercise.

Week 10 – Reading Blog

Chapter 14 – The Education Matrix

Nice to know that I probably waited to long to go back to school.  By the time I finish my Bachelor’s Degree the digital design field will probably require a doctorate to go beyond an entry level position.  Considering how much debt I’m going to accumulate getting this degree, the best I can look forward to is going further in debt to get a graduate degree.  The only consolations are that I pick up new concepts and applications easily, and I enjoy expanding my knowledge and skills base through personal study.  Practically everything I know about Excel was self taught.  Of course the problem there is convincing potential employers that I have the chops without a formal degree.  Maybe  I can go back and rebuild some of my work and create a portfolio of what I have done so far.

Developing the Digital Designer – Interview with Anthony Dunne.

Calling the program Design Interactions rather than Interactive Design really seems pointless.  The terms and limitations of Interactive Design are far from solid, so muddying the waters by playing with terminology seems counterproductive.  I also don’t really like the connotations of calling something a placebo project, since a placebo is a fake medicine that is applied to a test group.  Moving away from the negative bias of ‘problem solving’ which is reactive, rather than proactive, is a good idea, but saddling it with a weighted term like placebo, instead of calling it something like an exploratory project, seems counteractive.  Basically it sounds like ‘designers’ want the freedom to make non-commercial art, but still want to be taken seriously by the business world.  Have fun walking that tightrope people.  Hope you can catch up with the ‘artist’ who has been doing exactly that for so long they are riding a unicycle by now.

Humanities Over All – Eliott Earls

I really think Earls brings the idea of the artist controlling the media and the tools rather than the reverse to a head.  I couldn’t find a copy of Catfish online, but I did find an interview with him.  I’ll try and explore more of his work when I have time.

Week 9 – Reading Blog

Chapter 12 – Illustration

I have found a new favorite illustrator.  Viktor Koen is freaking amazing.  I don’t know how he could be confused with other Photoshopers.  The attention to detail and the pure creativity implicit in his work outshines the rest of the field hands down.  Maybe I just have a thing for his style, but the weird moth baby makes me smile in a tight menacing sort of way.  Squee!

Mirko Ilic has one of the most visually interesting yet incredibly frustrating (from a usability standpoint) sites that I have ever seen.  The navigation dots remind me of stops on an organ.  If it had a site map, search option or some kind of textual ques to help guide the user I believe the site would be more compelling, but would lose some of the clean edge.  Ah the mysterious divide between form and function.

I love his take on the childish style that I’ve been ranting about i.e. “Look Mom, I can’t draw anymore”.

At some point I got sidetracked and spend an hour browsing the Interweb for subliminal messages and advertising.  Gave me an interesting idea for the PVC project I’m working on.  Could inserting subliminal messages in your homework be considered cheating?  Hmmm…

Ray Bartkus comment about art produced through traditional methods (whatever the hell that means) becoming obsolete seems ridiculous.  Every other interview in the book talks about the importance of artistic fundamentals.  And in my experience for every artist that embraces digital creativity, there is one who adamantly refuses to give up working with “traditional” media.  The most interesting artists (to me) are the ones that successfully meld the old and the new to create works that would  have been impossible in either of those worlds separately, like Mr. Koen.

Chapter 13 – Typography and Graphic Design

This was an interesting chapter, but I didn’t glean much new information from it.  I’ve been playing around with fonts and typography for awhile and I love drawing letters.  When I first learned cursive I had a teacher tell me that the purpose of cursive was not to draw curlicues.  As luck would have it I completely failed to take this advice to heart.  That being said I have never had the patience to design an entire font.  I just do the letters that I need for a particular project, usually a custom logo.  Which is why it really annoys me when I see an edgy product or club that can’t be bothered to create their own type face for their logo.  Another pet peeve of mine is gritty fonts where repeated letters look exactly the same.  Kind of ruins the point.  Someone should make a specialized font tool with multiple options for common letters.

Week 9 – Python Chess

Hour 1 – Square Labels

When I decided to redraw the board with each move so that the current player’s pieces would be at the bottom of the window, it necessitated fixing the labels.  At first I just drew the labels at the beginning of the game when I drew the board and forgot about them.  The first idea was to put the labels in a list and move them each turn, but that was actually more complicated and problematic than necessary.  The solution was to create two lists for the labels, then undraw the old labels and draw the correct labels with each turn.  The labels, being objects in a list, are retained and can be turned on and off as needed.

Hour 2 – OOP House Keeping

So what Laurie was saying about the configuation of the Game is starting to click.  Instead of just letting pieces exist within the game matrix, they need to belong to their player.  So instead of individually placing pieces, I append each piece to the players pieces list, then iterate through the list to place the pieces.  The code is cleaner and makes more sense that way.  In turn the players need to belong to the game.  So instead of doing wierd purmutations with variables at the beginning of each turn, I just reverse the games player list so that the current player is player[0].

Now that I have the turns configured like this making sure that a pawn can only be captured enpassant for the first move after the double jump is simple.  Just iterate through the current players pawns at the start of the turn and turn off the EP flag.

Hour 3 – Revamping Legal

So this is the fun part of programming ( insert heavy sarcasm ). I spent about 30 minutes rewriting the obstructed function so that it would be streamlined, and callable from outside of the Legal module.  Then I spent two hours bashing my head against the desk because now ghost pieces are showing up.  Sometimes the new obstructed function is returning a None type which it shouldn’t be doing.  This causes captured pieces to stay in the matrix, and sometimes pieces don’t recognize that they are on the same side.  Oh well, I’ll sort this out later.

Week 8

Chapter 10 – Blogs

I have to admit that I was not looking forward to this chapter. When I think of blogs the first image that comes to mind is a vacant teenager spewing the minutia of their everyday life out into the ether. It’s virtual pollution people. I see blogs doing to serious essay writing what chatting and texting did to the fine and lost art of conversation. However I actually enjoyed this chapter more than the the sections about game design, which still seems like obsessive irrelevance, and especially the section on Digital Entrepreneurs which seemed to tout the invasion of big business mentality into independent shops, while big business attempts to co-opt the versatility and flexibility of the independents. Maybe I felt more of a connection because these folks are professional writers, and writing is my first love. Strange how the value of good clear writing keeps coming up. People are finally realizing that the ability to form a convincing and cohesive line of reasoning is being lost. Hopefully a renaissance in the written word will return with the new appreciation of unique and individually crafted work. Now if we can just get over this obsession with minimalistic and sloppy ‘art’.

Chapter 11 – Beyond the Screen

This chapter was certainly dominated by the usability question. No matter what media or system is designed, from a book to an MP3 player to a digitally enabled building facade, the central purpose seems the same. How can the user be drawn into the experience and how transparent will the interaction be? Whether playing a game or watching a movie I always enjoy the moment when the interface fades away and I’m interacting with the content. The point where you forget that you are using a joystick to control pixels on the screen, or looking at a view of the world through a screen. The interviewee who seemed to grasp the importance of this idea the most was Masamichi Udagawa. He understands that when a user steps up to an interface the only feature that they care about is the one that does what they came to do. If the user can’t figure out how to use the interface within a few seconds they will get bored and frustrated and walk away. All the bells and whistles in the world will not change the frustration level of the average user. This does not mean designing for the lowest common denominator. Udagawa also explained the importance of revealing complexity rather than bombarding the user with complications all at once. The more savvy user will find the important features while the tyro won’t need them. The best designer is one who can appeal to multiple levels of users.

Week 8 – Python Chess

Hour 1 – Debugging and Modularizing

Yes modularizing is a word.  Look it up language Nazis.

Last week I was having an issue with a pesky error after creating the Game class to control aspects of game play and call the other functions.  The error actually resulted from mistyping a variable when I changed the calling line in the StartGame module.  Let this be a lesson to you kiddies, if you can’t figure out why a program that you are writing is being difficult most of the time it turns out to be something really simple that you’ve overlooked.  Before you wrack your brains for an hour looking for something complicated, go back and check over your code with a fine tooth comb.

I decided since the chess module was getting long and unwieldy, to split the legality and the piece definitions off into their own modules.  That is one of the big ideas about OOP: modularity.  In other words there is no good reason to pack everything into one long module if it can logically be split into separate modules.

After readjusting some of the parameters due to shifting operations to the Game class I have game initialization drawing the board, and player initialization placing the pieces.  The white pieces are in the right locations, however interaction is messed up now.  The user can select a piece, but can’t move it.

Hour 2 – Basic User Interaction

Alright, for some reason I had to move the starting positions for the black pieces up one square, but all of the pieces are on the board, and the interaction with the Legal module is working fine.  Hopefully now that some OOP house keeping has been done the turn specifications should go pretty smoothly.

Hour 3 – Defining Turns.

With the Game class running the show defining which side is in play is a snap.  I’ve been wanting to flip the board around with each move to facilitate hot-seat play (both players are using the same computer) so I set up a turnChange() module in the Game class and a flip() module in the Piece class.  The most complex part was figuring out where the pieces should end up on the other side of the board when it flipped.  There is probably some math trick that I could have worked out to transpose the position, but I settled for creating a list (or array for you VB folks) like so: [7,5,3,1,-1,-3,-5,-7].  The current position horizontally or vertically  indicates the slot in the list for how many squares the piece will move.

At first I couldn’t figure out why the game was losing track of pieces after the first move.  It took a minute to remember that I had to save the new coordinates to the .position variable for the piece.

I started working on redrawing the square labels, but it will be a little more complex than I had imagened, so that’s a project for another day.

Week 7 – Personal Discovery

So at this point I’ve decided to continue working on the chess program I’ve been writing in Python as my final project for Interactive Media.  I started the game last semester as a way to get more practice writing Python and work on classes, which was beyond the scope to that class.

I met with my Laurie, my instructor from last semester, to go over my code and give me suggestions on how I can streamline and make improvements.  Her first suggestion involves the way the classes are organized.  Currently I have a Player class, which contains the interactive aspects, a Board class, which contains information about where pieces are located, and a Piece class, with subclasses for the various pieces.  Laurie suggested that I add an over arching Game class which would control interaction between pieces, players and the board, as well as keeping track of turns.

So I started rearranging some of the classes and methods, and got hung up for about an hour fighting with the graphics library that doesn’t want to draw the board now.  Sigh… such is the wonder and glory of OOP.  I remember getting the TypeError: class requires exactly (number of) positional arguements with a self defined class, but I can’t remember how to fix it.

Week 7

Chapter 8 – Game Design

Interesting to see that a fad game designer (Rodney Greenblat) went back to fine art when he felt that his popularity was at a peak.  I can’t stand his style by the way.  It seems iconographic of the current trend toward making childish art.  No I don’t mean child-like, with the connotation of innocence and wonder, I mean childish focusing on bold primary colors that seem garish to anyone over 7 years old, heavy outlines and poor judgment of scale and perspective.  I realize that this is a matter of personal taste, but I really hope this fad dies sooner rather than later.  I have a feeling that it is a counter-technological rebellion.  Creating something that looks less polished, geometrically unbalanced and heavily non-symmetrical has more of a ‘human’ feel to it.

I appreciated the back to basics ideal of Eric Zimmerman’s interview.  Every time there are amazing new advances in CGI and computer animation the public is inundated with a flood of movies and games that are very graphics and effects heavy with little focus on plot, characters and real game play.  The craft of story telling and game design don’t really change at nearly the pace that technology advances.  This is why chess, checkers and the stories of the Brothers Grimm are still enjoyed hundreds, even thousands of years, after they were created.

Chapter 9 – Digital Entrepreneurs

I’m really not sure why an interview with the president of a huge design firm (Robert Greenberg- R/GA) is included in the section on entrepreneurs.  Apparently the company splits their employees down into small somewhat independent teams to try and emulate the flexibility and innovation of small shops, but they still won’t have the do-or-die inspiration that comes from knowing if a job fails and you loose the client it means your whole business might go flush-away-swirly.

Maybe I’m a tad cynical but it seems that the real process of climbing the corporate ladder is about how many buzz words and feel good slogans you can cram into your head, along with how to tell people bad news with a completely impersonal approach.  Maybe the best approach to creating virtual intelligence would be to start with a robotic middle manager.

Global Outreach – Interview with Tarek Atrissi

Well I definitely understand the importance of content management.  If the users can’t figure out how to import new content / data into the system than either they stop using it (no matter how good it looks) or if possible you get stuck with updating the system.  Either way building a working system necessitates building an easy and efficient way to update the system.

I don’t know if I agree with the idea that playing multiple roles will result in bringing out the best in both areas.  It’s a rare bird that has a head for business and a solid design sense.  Usually one wins out and the other suffers.  But I suppose it’s just as rare to find someone with a mind that can embrace both the design and the development side of a project.

I wonder how long ago this guy graduated, since his school was forward thinking enough to eschew teaching any specific software.  I don’t know if going that far is necessarily the best course, but I agree that it’s important not to get too attached to any particular digital tool.  Even the next release of a favorite piece of software might have a completely revamped interface.  Hell, look at Office ’07.

Marshall Clemens reminds me of Paul Laffoley.  I think Marshall is a slightly saner version.

Week 6

Chapter 7 – Motion Design

I’m always fascinated to see who is considered ground breaking in a particular medium.  I doubt that McKay thought he was doing something truly innovative by playing with an animated dinosaur, but once Walt Disney caught on and started interacting with Mickey then the die was cast, for good or ill.

Full of Ideas – Interview with Cary Munion

Maximal! What the hell is maximal.  I’m the first person to agree that minimalism is dull, but can’t we have a better word to describe the opposite view?  But the Honest website rocks.  That’s a (bleep)load of content with minimal lag time.  And the NEXTgencode site is nicely laid out with good interaction, which helps deliver the message.  I really like the idea of using advertising to filter potential customer’s rather than just casting a broad net.

On a side note though some of their video content is in Quicktime (who the hell uses quicktime) and the video channel was just a green screen.  This apparently is a common issue.  So I checked the bulletin boards, and finally the repair option worked.

Pushing the Limits – Interview with Beatriz Helena Ramos

Interesting to hear a designer refer to technology as a tool instead of a media these days.  Hmm.. let technology facilitate the creative process instead of dominating it, what an idea.  Reminds me of when CGI first hit Hollywood and studios packed movies chock full of computer graphics just because it was the new hot thing to do.  The plots were still crap, and the special effects didn’t really help because it was too easy to tell that they were digital.  It isn’t just poor quality that gives the fake away.  Sometimes an effect just looks to clean, or is just too unbelievable, therefore obviously a computer did it.  I think she might be right about only learning new software if you need it for a project, otherwise you can spend all of your time fighting with a flashy interface and no time actually creating something.

So overall the chapter on animation didn’t really grab me.  The most likely reason is that I have no experience in the medium.  I should go back over this after I learn Flash.