Benjamin Hysell – Software, Projects, and People Rotating Header Image

Are You an Athlete?

Lord Stanley’s Cup

I grew up playing hockey.  My parents had me on the ice when I was two, and I have been playing ever since.  Growing up, winters were spent traveling every weekend throughout upstate New York, and weeknights were spent at practices in rinks that only had three solid walls, the forth being a tarp.

Grippen ice rink, the rink I grew up playing on that only had three solid walls. Sadly, it is now closed forever after the flood of 2006. Picture credit NOAA.gov

Summers were spent traveling from hockey camp to hockey camp, picking up new techniques, and learning edge control from a figure skating coach who emigrated from the USSR.  Once we were home in the summer my brother and I would break out the street hockey nets and start pickup games in front of our house.

Dr. Smushkin's springboards used to teach coordination and muscle control . Photo credit http://www.hockeyagility.com

It is safe to say hockey dominated my childhood.

The Transition

After high school I stopped playing competitively.  Now, twice a week I break out the equipment.  Pickup hockey is on Sunday night, and Tuesday is league night.  My league team won the championship last fall, yes I am a member of a championship team, a championship beer league team.

Transitioning from competitive hockey to a beer league can be jarring at first.  For one, no more contact.  The game completely changes when you know you are not going to be hit.  Secondly, the amount of ice I see in any given season is drastically less; there are no practices in a beer league.

There are a couple of upsides to playing in a beer league.  Since I know I’m not going to be hit anymore I participate in a lot more risky plays than I did in the past.  Fancy passes, dekes between the legs, having a little “fun” on the ice talking to the players on the other team, most of these things would have been a “no no” in competitive hockey.  Now, however, since nothing is really on the line every game is a fun game where I can go out and really enjoy playing for the sake of playing.

Plus, let’s not forget about the beer in the locker room after the game.  One really couldn’t call it a beer league if there wasn’t beer in the locker room after the game.

I’m not longer striving to be an athlete in hockey, but I am still out there enjoying the game I grew up playing.

The Athlete’s Mentality

Athlete’s practice day in day out, hit the gym, run on their off days, and are constantly preparing for their next game.  Beer league players pick up the equipment once or twice a week, enjoy a relaxing game, and get up the next morning and head into work.  For most of us we can no longer be athletes on the field, but we can each take our athletic mentality and apply it now where it counts the most, in the office.

Do you train and compete like an athlete in the office, or are you merely showing up, collecting a paycheck, and putting in a beer league performance?

To see if you are a beer leaguer or still working on making it to the pros ask yourself a few questions:

Do you read about your industry?

I feel reading is key to staying a head in software development, a topic I have touched on before in My Digital Reading List, http://benjaminhysell.com/archive/2009/01/my-digital-reading-list/.

  • Athletes read about their industry in their spare time.
  • Beer leaguers enjoy not knowing about what is happening outside of their cubical.

Do you try new techniques, software packages, and play with new hardware?

Our industry moves fast, staying on top of what others are doing, researching, and implementing is key to staying ahead of the curve.

  • Athletes are always playing with the latest and greatest, they know when to stay with what works, or jump to newer technologies.
  • Beer leaguers wait to be told what hardware and software they should use.

Do you try to learn about tools and techniques outside of your core field of competence?

There are a lot of other industries out there besides software development,

::I know I was shocked too when I heard this news, but there really is!::

…what can we learn from those industries and bring back to our own?  The restaurant industry has been working with and managing teams of people for decades, do they have tools or techniques we could then apply to software development?

  • Athletes learn about other industries outside of their own to learn from them, and see how they would fit in with their primary fields.
  • Beer leaguers have already found their set of tools and don’t want to know what others are doing.

One might not be able to “go pro” in their job, but who are you likely to want to hire, work with, start a startup with, given the chance?

Share With Your Friends:
  • Twitter
  • Facebook
  • HackerNews
  • Google Bookmarks
  • del.icio.us
  • Digg
  • Slashdot
  • Reddit
  • LinkedIn
  • email

Breaking Down the Game Film – Voting with Your Dollars

“Breaking Down the Game Film” is a term commonly used to analyze tape from an already played sports game to dissect what went right and what went wrong.  In this series I’ll be taking published articles from around the web and break them down.

Topic: Voting with Your Dollars

Article: “Will Anyone Pay for Anything”

Author: Guy Kawasaki

Links: https://www.openforum.com/idea-hub/topics/the-world/article/will-anyone-pay-for-anything-guy-kawasaki and video http://www.building43.com/videos/2009/07/24/will-anyone-pay-for-anything/.

Guy’s article sums up the video nicely, but I highly suggest watching the video just so you can hear what the panelist say with your own ears.

In the event you are short on time, I’ll save you the click through to the article and the video and sum them both up here:

Guess what teenagers and twenty-somethings are willing to pay for online?

NOTHING!

There were only two services any of the panelists were willing to pay for:

  • Gmail
  • Xbox Live

Facebook, Twitter, YouTube…they won’t pay for any of them.  This panel never clicks on banner ads, and if any of the services started charging them money to use them they would move on to find a new service to meet their needs.

Millions of users, and Facebook might loose them all if they ever wanted to charge money.

That is scary.

It turns out developers of all ages are not too different, well, it appears we don’t click on ads at least, as Jeff Atwood laments, http://blog.stackoverflow.com/2009/11/our-amazon-advertising-experiment/,

If Stack Overflow, a site that does a million pageviews a day, can’t make enough from AdSense to pay even one person half time — and let me tell you, that’s being overly generous based on the actual income it generated — how does anyone make a decent living with AdSense?

Thus, teenagers, twenty-somethings, and developers don’t click on ads on the Internet.

I then asked myself two questions:

  1. How does anyone stay in business online?
  2. What would I pay for online if it wasn’t free?

Question one has a myriad of answers that I won’t dive into in this post.  With question two I spent a few minutes and came up with this list:

  • Gmail – Nope, I would put up my own email server if push came to shove.  I already have one on standby just in case.  Better safe than sorry, :-) .
  • Xbox Live – This I do pay for, mainly because there is no alternative to play the Xbox online.
  • Facebook – Gone.
  • Twitter – Gone.
  • Flickr – I have already moved to Facebook.  See above for how I feel about paying for Facebook.
  • Stackoverflow – Tougher decision, however there are too many free alternatives out there to fill the void.  Right now when I Google a programming question I’m still finding plenty of links to non-Stackoverflow sites with very good answers.  Someday, but right now, it is a no.
  • Google Reader – Plenty of alternative RSS readers.
  • All of the feeds in my Google Reader – There isn’t a feed/website in my reader that I couldn’t live without.
  • Google – Would I pay for Google?  Again, there are too many free alternatives.

It would be painful to move, change, or lose any of these services/websites, but not painful enough to pay any amount to continue to use them.

Scary thought.

Or…

What happens in a world where no one pays for anything and you are the one person who will pay for something?

You might just get everything you ever wanted.

Look at the cartoon Family Guy, from our friends at Wikipedia:

Shortly after the third season of Family Guy aired in 2001, Fox canceled the series.  However, favorable DVD sales and high ratings for syndicated reruns convinced the network to renew the show in 2004.

http://en.wikipedia.org/wiki/Family_guy

Family Guy was dead in the water, with no hope to ever see the light of day again.  Then, something crazy happened.  People voted with their dollars, bought the DVDs like crazy, and watched all of the reruns over and over and over again.  Fox woke up, picked the series back up, and Family Guy is entering it’s 8th season.

I’ve decided to start “voting with my dollars” online by monetarily contributing to the following projects that create the plug-ins I use on my blog:

I also purchased an iPhone game I normally wouldn’t have, but I bought it based on the author’s excellent blog posts.  Check out Monkeys in Space from Streaming Colour: http://www.streamingcolour.com/blog/2009/09/22/monkeys-in-space-escape-to-banana-base-alpha/ and check out Owen Goss great iPhone development blog at http://www.streamingcolour.com/blog/.

It is my hope to continue to support developers and their projects by contributing to them on a regular basis to further their development.

Next time you find a project, blog, or application you really enjoy I urge you to support it.  By voting with your dollars we have a lot more power online than we realize to influence what survives and what withers.

It is time we all start voting with our dollars!

Share With Your Friends:
  • Twitter
  • Facebook
  • HackerNews
  • Google Bookmarks
  • del.icio.us
  • Digg
  • Slashdot
  • Reddit
  • LinkedIn
  • email

Whose Brand are You Building?

Towards the end of 2009 there were two great articles published by two of my favorite bloggers, Joel Spolsky from Fog Creek Software and David Heinemeier from 37signals.

Joel’s post wonders if growing your company too slowly means your company is bound to die:

http://www.inc.com/magazine/20091101/does-slow-growth-equal-slow-death.html?partner=fogcreek

David responds to Joel in his own post on his blog:

http://37signals.com/svn/posts/2002-bug-tracking-isnt-a-network-effect-business

Normally, I would save each one of these links and break them down in my series “Breaking Down the Game Film,” however, there was something else here in these two posts that I thought was more interesting than their primary messages.

Scroll to the bottom of each of the posts and look at the number of comments attached to each one.  I would venture to say there is more written in the comments than in the original posts.  I’ve seen this before, but there was something that really struck me oddly as I compared and contrasted these two articles.

The idea of commenting on an article on the Internet seems to be one of the founding principals of the Internet.  Take http://www.slashdot.org, for example, Slashdot is built around people commenting on articles posted all around the Internet.  I have never found this phenomenon of people wanting to comment on other people’s work too interesting before.  In fact I would spend a considerable amount of time reading each one of the comments, never posting mind you, but normally reading the majority of the opinions listed below the articles.

Then something happened, I completely stopped reading comments on other websites.

When I first stopped reading the comments I attributed it to a lack of time-who has the time to scroll through 120 comments for just one article?  After that personal revelation I haven’t given it too much thought, however, lately, after a year of maintaining a technical blog, I realized what my real issue is with comments, and it boils down to this, whose brand are you building?

::We have a blog title, J::

David Heinemeier could have just as easily added his comments below Joel’s article, but he didn’t, he brought the conversation to his own blog.  On 37signals David controls the content, and most importantly of all, he will be able to find his comments again if he ever wants to.  He has a collection of all of his content and thoughts in one location, building his own brand, and his company’s brand on his servers and under his logo.

His thoughts won’t disappear if the server Joel posted his article on ever crashes or that company goes out of business.  His brand is being built in a location he has ultimate control over, and he can assure it never goes away if he chooses to.

Jeff Atwood has covered this topic on his own blog, referring to people who provide content to websites as “digital sharecroppers”.  Jeff doesn’t call out people who comment on blog posts directly, but rather cites the larger trend of people supplying content to the Facebooks and YouTubes of the world: http://www.codinghorror.com/blog/archives/001295.html.

Ironically, below his post the comments are full with the people doing just what he suggests they shouldn’t.

I agree with Jeff that one should focus on building their own brand.  I’m not suggesting you don’t comment on what you read on the Internet, but rather, if you feel passionately about something you have read take that thought or idea and turn it into a post on your own website, expand upon the points made by the author, and strive to control your own brand.

Share With Your Friends:
  • Twitter
  • Facebook
  • HackerNews
  • Google Bookmarks
  • del.icio.us
  • Digg
  • Slashdot
  • Reddit
  • LinkedIn
  • email

Doing More With Less

Did you know Dr. Seuss’ Green Eggs and Ham was written on a bet?  Neither did I, until I came across a collection of bronze statues of his characters at the Hotel del Coronado in San Diego, California.  I snapped this picture of a plaque next to the statue for Green Eggs and Ham.

Dr. Suess Plaque at the Hotel del Coronado in San Diego, California

A full tour of all of the statues can be found at http://www.drseussart.com/hotelgallery.html, sadly most of the plaques are not included in the picture tour.

If you can’t read the plaque in the picture, Wikipedia has you covered…

Bennett Cerf, Dr. Seuss’s publisher, wagered $50 that Seuss could not write a book using only fifty different words.[2][3] The bet came after Seuss completed The Cat in the Hat, which used 225 words.

http://en.wikipedia.org/wiki/Green_eggs_and_ham

Dr. Seuss created an American children’s classic on a bet where he was resource limited.  Dr. Seuss, in this instance, embodied the mantra of “doing more with less.”

This concept of “doing more with less” isn’t new in the field of computers, and is one of the mantras of 37signals.  A quick Google of 37signals more with less kicks up two great articles:

I’ll save you the trouble of a click through: “Less is More” implies that more is better. It’s not.  Less is less.  Less is just right.  Less is better.

I’ve tried this technique of “doing more with less” in how I manage my time and the tasks I would like to accomplish at home.  For example, before I would come home from work and have all the time in the world and a long list of things I would like to accomplish.  I would keep thinking to myself, “I’ll get to writing that blog post, or playing that new Xbox game, I have hours before I need to be in bed.”

The rub was since I thought I had hours upon hours of time on my hands I would wind up not focusing on any one particular task, get sucked into something on TV, and never accomplish anything.

Every morning I would wake up and ask myself, “Where did all of the time go?”

Thus, in an attempt to live the “less is more” mantra I have restricted the amount of time I allow myself to spend on any one given task at night.  I have restricted the amount of time I have to write, program, and play Xbox.  By restrict the amount of time I give myself to complete a task I actually spend my time more wisely, accomplishing more than if I just gave myself all of the time in the world.

::Well, I’ve been productive writing and programming, I’m not sure you can call my Xbox time “productive”.  However, now I actually finding myself playing my Xbox instead of it collecting dust under my TV.  Productive?  Microsoft might think so, my wife and dog are not so sure.::

The only thing keeping me from creating the next Green Eggs and Ham is to make a crazy bet with my publisher, which will happen, once I get a publisher.

Share With Your Friends:
  • Twitter
  • Facebook
  • HackerNews
  • Google Bookmarks
  • del.icio.us
  • Digg
  • Slashdot
  • Reddit
  • LinkedIn
  • email

Linchpin

My name is Benjamin Hysell, and I’m proud to say I’m an artist.

I’m not sure I could have made that statement before reading Seth Godin’s new book Linchpin, but I am now proud to stand up and count myself as one of the many artist in the world.

Background

This past December Seth Godin put out a call on his website, http://sethgodin.typepad.com/seths_blog/2009/12/preview-copy-of-my-new-book.html, offering his readers the opportunity to obtain a review copy of his latest book, Linchpin, at his expense.  These books were not review copies that the publisher would have sent free to the press.  Seth mailed out the books on his dime to interested readers on one condition; Seth asked everyone who was interested in a book to make at least a $30 donation to the Acumen fund.  I went and checked the Acumen fund out and found something I liked:

Acumen Fund is a non-profit global venture fund that uses entrepreneurial approaches to solve the problems of global poverty. We seek to prove that small amounts of philanthropic capital, combined with large doses of business acumen, can build thriving enterprises that serve vast numbers of the poor. Our investments focus on delivering affordable, critical goods and services – like health, water, housing and energy – through innovative, market-oriented approaches.

http://www.acumenfund.org/about-us.html

I signed up, donated, and received my book just a few weeks ago.

::Seth posted on his blog a few days later…he raised over $108,000 for the Acumen Fund through this offer in less than 49 hours.  I’m not sure how many books he actually ended up sending out; as he states, some people gave more than $30, but needless to say, a lot of books were sent out into the world and I happen to have one of them.::

I have since read the book twice now, and on the second read through I was having trouble separating my progress bookmark from all of the other pages I bookmarked that I wanted to come back to for this review.

My Post-It Notes in Linchpin

My Verdict

In the vein of many great artists I’m going to tell you how this review ends right at the beginning.  The last thing I want you, the reader, to do is to stress out and have to read a couple hundred words to figure out if I liked the book or not.

  • Go buy this book.
  • Read it twice.
  • Tell your friends.

I enjoy Seth’s blog on a daily basis, his posts are short and to the point, allowing me to digest his daily message quickly over my morning cup of coffee.

Seth’s precision as a writer is his greatest gift, and he has brought this gift to Linchpin by assembling themed chapters out of smaller, self-contained, individual thoughts.  These smaller individual thoughts, or “thought-lets”, within the chapters can completely stand on their own, giving one ample opportunity to bookmark them, and come back to them on a regular basis.  As you can see in the picture above, I bookmarked quite a few of his thought-lets.

Reading Linchpin was like consuming a shotgun blast of Seth’s blog posts, printed out, and bound for my reading pleasure.

The Wakeup Call

We have all seen the manufacturing jobs disappear and move overseas.  Seth argues manufacturing jobs were the easiest jobs to move because factory work is easy to describe, manuals can be easily created, and cheaper overseas labor is very easy to train.

Linchpin is a wakeup call to all of us doing white-collar work.  We may think our jobs can’t be replaced with cheaper labor, but it is already happening all around us.  Call centers are mostly overseas, programming jobs have been going to India, even lawyers are having their jobs shipped overseas.  Each one of these jobs have become commoditized, figured out, and moved overseas in the search for cheaper labor, and higher corporate profits.

The trend isn’t likely to stop.

Seth spends considerable time laying the groundwork for Linchpin by telling us how the world is, how we got to where we are, and where the world is likely going.  Seth then throws down the gauntlet by challenging us to become indispensable at our jobs by becoming artists.

The Artist Within

Seth argues the common thread between white and blue-collar jobs that have been moved overseas is they are all explainable, they can all be broken down into a “script” anyone could follow to complete the job.  Once a map is made on how to do a job, almost anyone can do it.

In Seth’s words, artist don’t follow a map, they create the map.

Artists can’t explain what they do.  Sure, artists write books on how to paint, but not what to paint.  Artist can’t be replaced, or if they can be replaced, it is very painful to the organization doing the replacing.  How can you replace something that you can’t explain, can’t follow, and can’t write a manual to describe what they do?

Seth asks, “What if we all were artists?  What if our workplaces were full of artists?”

He passionately argues that we can all be artists, that we have the choice to either follow a map and work ourselves out of a job, or we can choose to become very difficult to replace by becoming invaluable, by being artists.

I’m choosing in this review to focus on Seth’s idea that we should all choose to be artists, I will leave it to the reader to read Seth’s book to understand why we struggle as a species to make it happen.

What Does it Mean to be an Artist?

Several of the common artist themes Seth lays out in Linchpin are:

  • Art doesn’t mean you work with paint and canvas, artist create, regardless of medium.
  • Artist give gifts.
  • Artist produce output.

Paints, Pencils, and Watercolors

Seth argues art doesn’t have to be paint and canvas.  Seth points to several examples of famous artists who worked in the conventional “art” mediums and asks aloud what would they be doing today?  If the Internet was available to Shakespeare would he have still written his plays?  Would Picasso still have painted?  Would Shakespeare and Picasso team up for the next great Xbox game?

When asking yourself if you can become an artist, Seth challenges us to not confine ourselves to the classic definition of artist.  Seth points out excellent customer service is an art, an amazing chef is an artist, a business owner who can make a million dollars a year is an artist.

I can’t draw for beans, but I can organize a team of freshly minted developers to create a data management system that organizes 50 plus gigabytes of data a month.

I can’t mix primary colors to create just the right shade of orange to paint a sunset, but I know how to architect a bare bones iPhone alarm application.

I can’t play an instrument to save my life, but I write a pretty darn good blog about software, project management, and managing people.

I can’t do anything a classical artist can, but at Seth’s urging I consider myself an artist.

The Act of the Gift

It used to be people who gave the most gifts actually had the most power, not the people receiving the gifts.  Seth spends quite a bit of energy convincing us about the power of gifts.  He does this by exploring a few lengthy examples of the power of gifts in culture, and the bond the act of gift giving creates between people.

Seth states that giving away your art is a key step in becoming an artist.  Speaking up and sharing with the community, providing something without an expectation of compensation, the act of giving a true gift to others can not only enriches those who receive the gift, but giving can feed an inner human need that could never be bought with a paycheck.

I feed my inner desire to gift by writing this blog.  I write because I want to change how our industry operates.  When I publish an article I am not paid or compensated.  My payment is the thought that when others read this blog they think about the topics I choose to write about, and further interact with me in my comments.

“Real Artist Ship!”

Seth uses this famous Steve Jobs quote it to make a point, if you can “create art”, but not publish, you are not an artist.

I have been working on this book review for six hours, I have restarted it four different times, and if I don’t publish it what was all of this effort for?  Sure, I might have created something special and unique, but no one would ever know about it if I don’t hit the “publish” button on WordPress.

I can refactor and clean up this posting for the next two days, but if I don’t ship it out the door for the world to enjoy I have not created art.  The art only lives once it has left my MacBook Pro, otherwise all I have done is given my fingers a great keyboard workout.

The Choice is Yours and Yours Alone…Good luck.

Seth provides a very compelling argument in Linchpin hopefully causing us to step back, think about what we do on a daily basis, and hopefully decide to change from being cogs in the factory of white-collar work and transition to being artists.

Seth states we are all not artist all the time, but it is his hope in this book that we will all be inspired to try to up our artistry in our jobs and in our everyday lives.

Share With Your Friends:
  • Twitter
  • Facebook
  • HackerNews
  • Google Bookmarks
  • del.icio.us
  • Digg
  • Slashdot
  • Reddit
  • LinkedIn
  • email

November Reading List

Just last night I finished reading Zen and the Art of Motorcycle Maintenance, and decided it was high time to update My Bookshelf with what I’ve been reading lately.

Zen and the Art of Motorcycle Maintenance is not a breezy read, nor, sadly, does it have much to do with motorcycles or Zen.  I should have paid more attention to the authors note, which I’ve included here:

What follows is based on actual occurrences.  Although much has been changed for rhetorical purposes, it must be regarded in its essence as fact.  However, it should in no way be associated with that great body of factual information relating to orthodox Zen Buddhist practice.  It’s not very factual on motorcycles either.

That being said you will not be disappointed if you pick this book up.

Zen and the Art of Motorcycle Maintenance: An Inquiry into Values by Robert M. Pirsig

I’ve tried to summarize this book for a couple of people, and have come up woefully short in every attempt. A few of the key points that I did extract from Zen are:

  • Where do ideas come from?
  • What is Quality? Is it subjective, objective, or something else?
  • Does our system of education really teach people anything, or are people rewarded for actually not learning and regurgitating?

However, the one idea that I’ve run into a few different times, in a few different texts can best be summed up by a webcomic from xkcd:

Dad, where is Grandpa now?

Deadeye Dick: A Novel by Kurt Connegut

I have thoroughly enjoyed every Vonnegut book I have picked up thus far, and Deadeye Dick did not disappoint. I enjoy Vonnegut’s pacing, sense of humor, and overall style. In true Vonnegut style, around 50 pages in he tells you how the book is going to end…I always may know the destination, but I never know how he is going to take me there.

If you are also working your way through Vonnegut’s collective works do not skip past Deadeye Dick.

Rigged: The True Story of an Ivy League Kid Who Changed the World of Oil, from Wall Street to Dubai by Ben Mezrich

I have a thing with people named ‘Ben’…I’m sure its mostly me and not them, but I have a thing.

I have yet to met another person named ‘Ben’ that I liked.

It begs to be asked, if I ran into myself would I like me?

Think about the recursive loop that little meeting could spin into…

Or, or pickup Rigged by Ben Mezrich. This Ben might be one of the few I might enjoy if I were to ever meet him in real life.

You may or may not know Mezrich from his more widely known book 21: Bringing Down the House – Movie Tie-In: The Inside Story of Six M.I.T. Students Who Took Vegas for Millions.

::…if you haven’t had the chance to enjoy Bringing Down the House, Mezrich’s first widely known outing, skip the movie they based off his book and grab yourself an excellent Vegas thriller.::

Mezrich brings his signature storytelling style to his latest outing. Mezrich starts with an Ivy league grad seeking direction in his life and places him in the middle of dark underground world full of colorful people and larger than life events.

When I pickup a Mezrich book by this point I know the formula, I just don’t know what he will plug in for characters, locations, and main ‘event’. In Rigged we start with a recent Harvard Business School graduate, graduating into one of the worst job market for MBAs, the fall 2002. Take said graduate and introduce him to a powerful person, head of the NYMEX, inject a little oil trading, and let the fun commence!

Its not a bad formula…I’ve grown to enjoy it.

Share With Your Friends:
  • Twitter
  • Facebook
  • HackerNews
  • Google Bookmarks
  • del.icio.us
  • Digg
  • Slashdot
  • Reddit
  • LinkedIn
  • email

Auto Fail

Lately I’ve been pondering, “Why is it that most people design the user interface last?”

It would seem, to me at least, if one were to design a product for the mass market, one would focus a lot of time and energy on how that product would be seen by that market.  What will it look like, how will it function in peoples’ hands, how will people interact with it.

Seems logical, if you want people to like your product they need to enjoy using it.  Spend a lot of time making that product enjoyable to use and people will love you.  If on the other hand, you make using your product painful, awkward, and hard people will tend to shy away from using your wares, and you can bet they will tell their friends about their horrible experience.

I was inspired for this posting on a recent trip to San Diego where we rented a nice economy car for the trip.  I snapped a few pictures of the car’s “user interface,” or inside, to share with you some of the pain I experienced on our trip.

I give you, auto fail.

Figure 1, the steering wheel from our rental car.

Steering Wheel

Figure 1. Steering Wheel on Our Rental Car

Seems to hold the function of most steering wheels, its round, it was fairly comfortable, as so much it wasn’t wrapped in barbed wire, and when I turned the steering wheel the car also turned…so far so good.

Let’s take a closer look at the two controls they deemed necessary to include on the left hand side of the steering wheel.

IMG_0297

Figure 2. Up-close and Personal With the Steering Wheel

Two buttons are included in Figure 2, they must be important, right?  I mean someone took the time to make a mold of the steering wheel and cut out those two buttons, then run wire all the way up the steering column to connect to these two very important buttons.

These two buttons control:

  • The information that is displayed on the dash, mpg, average speed, distance to empty.
  • A return button.  Honestly, I’m not sure what it actually returned from.

In most every car I have ever driven these buttons are replaced by a stalk that comes out of the dashboard, or they are on the end of the turn signal.  They are never given prominence of being placed on the steering wheel where so many more important buttons could go, like radio controls, cruise control, anything that could actually help me while I was driving!

And what type of great information did these two buttons deliver?

IMG_0299

Figure 3. Information Display on the Dash

You get the coolant temperature…

What am I going to do with the coolant temperature?  Is it going to change the way I am driving?  Should I shut off the AC?  Should I change a tire?  I have no idea what this piece of information on my dash serves me as I drive.

So far I have two buttons on this car that take up some prominent car real-estate, strike one.  On top of that these buttons show me information I can’t even do anything with, strike two.

Strike three comes in the form of the emergency brake.

Emergency Brake Usable

Figure 4.  The Emergency Brake

At first blush the emergency brake looks perfectly functional.  Figure 4 was taken with the armrest up.  Figure 5 is how the emergency brake is normally in the car.

IMG_0306

Figure 5.  Normal View of the Emergency Brake.

The emergency brake is completely covered by the armrest.  Every time I park I need to lift the arm rest to use the emergency brake.  Every time I want to start driving again I have to lower the arm rest to make it functional.  A fairly simple task, parking and then driving, complicated by constantly having to raise and then lower the arm rest to get to the piece of equipment I want to use.

If I owned this car it would drive me insane, (no pun intended), every time I went to use the car.

Needless to say I had a horrible experience driving this car and I’ve now told all my friends about it.

Share With Your Friends:
  • Twitter
  • Facebook
  • HackerNews
  • Google Bookmarks
  • del.icio.us
  • Digg
  • Slashdot
  • Reddit
  • LinkedIn
  • email

Breaking Down the Game Film – Micro Code Reviews

“Breaking Down the Game Film” is a term commonly used to analyze tape from an already played sports game to dissect what went right and what went wrong.  In this series I’ll be taking published articles from around the web and break them down.

Topic: Micro Code Reviews

Article: “The Joy of Code Reviews”

Author: Tom Hollander

Link: http://blogs.msdn.com/tomholl/archive/2009/01/06/the-joy-of-code-reviews.aspx

Short Summary:  Full code reviews are done too infrequently, and take too much time to complete to be done with any real regularity.  Micro code reviews, performed before every check-in, provide you and your project all the benefits of a full fledged code review, but also facilitate knowledge transfer between team members, an avenue to provide mentoring, and a chance for your team to “show off” to one another that cool new algorithm they have been working on.  All in 15 minutes or less!

Analysis:

When was the last time you reviewed the whole codebase for your project?  Stem to stern?  I know, I know, who has the time.  Everyday the codebase gets larger and larger, and each one of your team members becomes more and more specialized in whatever it is they are working on day in and day out.  What happens if one day George walks in and goes, “I’m off to Alaska to follow my one true calling.  Being a software developer is nice and all but I wanted to be… a lumberjack!”

::Deep down you know he’s a lumberjack, and he’s ok.  He likely will sleep all night and work all day, but I digress…::

George is gone.  When was the last time anyone was looking at his code?  Who on your team knows how his really cool, yet very complex, algorithm runs?  Sure it all works, but who last put eyes on his code to try to and understand it?

If I know your team, and I likely don’t, but I’ll assume I know them, no one has looked at his work in a while.  Why would they?  George’s code worked, all of his tests passed, who has the time to review working code?

Your project has just suffered a major brain drain, and you don’t have a plan on how to recover quickly.

Tom’s article, “The Joy of Code Reviews”, provides some great reasons for you and your team to adopt what I’ll call micro code reviews.  A micro code review works like this:

  • Before every check-in to source control George grabs a fellow team member, Stan, and they review all the changes that are about to be committed to source control.
  • In Tom’s article he states these reviews often last 15 minutes, some much shorter, some a little longer.  Fifteen minutes seems just about right for a couple of programmers to review a bug fix or feature enhancement and has been the typical amount of time my team and I have taken for our own micro code reviews.
  • After George and Stan have reviewed the code, ensured the unit tests pass, and then check the code into source control.

Pretty simple and straight forward; spend 15 minutes before every check-in, or 30 minutes billed to your whole project, to get a second set of eyes on the code that is getting into your source tree.  On top of that:

  • In his article Tom calls out one of the great benefits in doing these reviews is the mentoring that can take place between two developers.  George has a chance to show Stan the new functionality he has implemented and possibly a new way to write code, debug, or write tests.  As Stan is exposed to George’s style he may pick up a tip or trick just watching him work.
  • I’ve personally seen George improve his ability to explain complex thoughts and algorithms to Stan.  Oftentimes we work in isolation, only explaining things to ourselves.  By sharing with Stan and forcing himself to verbally explain things George has a chance to work on his presentation skills as he breaks down a complex problem to Stan.
  • Micro code reviews provide a chance for a team to feel more like a team as they work directly with one another.  I feel my team has gelled together a little more with these mini interactions that take place during these micro code reviews.
  • One might think developers would be resistant to these micro code reviews, however I found when I argued one could “show off” that cool new thing they did everyone seemed to get on board after doing a few code reviews.  Software developers love to have the admiration of their peers, give them a stage and most of them will step up and gladly perform.

I’ve adopted micro code reviews for my team and have had some excellent results.  Team members are grabbing one another when before new code is committed to the system.  Spirited debate takes place between the developers while reviewing the code, and learning is going on as each one learns from one another.  For us it has been a huge win win.

So when George answers his primal calling to be a lumberjack…

:: He cuts down trees.

He eats his lunch.

He goes to the lavatory.

On Wednesdays he goes shopping

And has buttered scones for tea.

I’m done, I’m done, I swear.  No more Monty Python for this post…::

You and your project will be prepared.

Share With Your Friends:
  • Twitter
  • Facebook
  • HackerNews
  • Google Bookmarks
  • del.icio.us
  • Digg
  • Slashdot
  • Reddit
  • LinkedIn
  • email

Tools in the Toolbox – Personas

“Tools in the Toolbox” is a series of posts on development and design tools I use on a daily basis.

I am a huge fan of Alan Cooper and personas…huge fan.  I have written at length about him and his techniques here, http://benjaminhysell.com/archive/2009/02/alan-cooper/.  My goal in this article is not to cover the basics; other blogs and books cover the basics of personas.  Rather, I hope to cover why I use personas, and why I have embraced them.

So, why do I love talking about personas and using them for quoting, specifications, and development work?

Fear.

::No wait, I’ve used ‘Fear’ already as a motivator for using Test Driven Development here: http://benjaminhysell.com/archive/2009/08/tools-in-the-toolbox-test-driven-development/.   I can’t just keep throwing around the same emotions…I had better come up with something different…::

Take two.

One reason.

I hate designing software for the person named “user”.

Think back to the last meeting you were in with your developers.

I have a great new idea for your blog website!  I think some of the users who use your website get lost in the technical jargon you use.  Let’s add a whole section that explains all of the technical terms that appear in your blog entries on the right hand side of each page.  That way when people come up against a new word they don’t know they can just glance to the right side and see a definition!

This actually isn’t a bad idea on the surface.  When my non-technical friends read my blog they may walk away with something more than just saying, “Wow, you write a lot of words!”

Then another developer chimes in…

Let’s build an iPhone app that links back to this blog!  Every time you publish a new article it’s automatically sent to the user’s iPhone, they get a notification that a new article is up and their phone will “ding” with a new article notification!

Again, not a bad idea…technically possible, would be kind of fun to implement, figure out the whole push notification framework.  Yes, that is a project I could lose myself in for a while, and in the end it would be sort of neat to have figured out all of that technology and to get something working.

Here is the rub, although each idea is fun, interesting, and very technically possible, neither one does anything for the core function of my blog.  Neither idea helps me write about managing people, software, and projects.  Nor is either idea squarely aimed at my core audience, other developers, project leads, and managers.

By using personas I can quickly and easily figure out if either idea is worth while exploring and implementing.

How you may ask?  Simple, I can quickly take every idea I have for my blog and ask myself,

If I had an iPhone app that notified John that I had published a new article would he use it?  Would it be worth the effort to publish such an app, and would John tell his friends about it?  Would John pay for an app like this?

Who is this John?  Good question…

Before going any further let me introduce you to John.

Name

  • John

Age

  • early 30s

Personality

  • Enjoys going out with his friends for weekly “Man Night” where many wings and beers are consumed
  • Plays sports year round, golf in the summer, hockey in the winter
  • Stays up to date on the latest technologies by reading whatever he can get his hands on

Skills

  • He is his families IT go to guy.
  • Loves learning new programming languages for the challenge of it
  • Enjoys manual labor after a long hard day of pushing pixels all over the computer screen.

Goals

  • Desire to own his own company some day
  • Realizes there is more to staying competitive in the market place than just knowing the latest software frameworks and architectures, hence he is reading outside of his field to learn how to do marketing and sales.
  • Aspires to have his own technical blog

Attitudes

  • Loves all forms of technology
  • Willing to be the first one to try new operating systems, development techniques, and be on the bleeding edge of all new technology.
  • Has a hard time stepping back from the computer at night since there is so much to continually learn.

John seems like a pretty good guy.  The sad part is he doesn’t exist except for me to test my blog topics, design decisions, and possible iPhone apps against to see if he would like them.

John is my sounding board.  John replaces all instances where I might go, “Would the user like this?”  Now all I ask is “Would John find this useful?  If I spend time on this would John tell his friends to check this out?”

Designing my blog towards a someone, a real defined someone, helps me figure out what I should do and keeps me focused on my core audience.  Remember that iPhone app?  John wouldn’t need it, John would be using RSS to keep up to date with my blog.

What about the jargon pane on the right hand side of the site?  John probably knows the jargon already, and if he doesn’t, i.e. its something new to him, he is going to be motivated enough to go look it up himself using Google.

I love writing for my wife,

::Thanks for proofing this for me!::

but if she comes across a term she doesn’t know she will likely use the surrounding paragraphs to figure it out or skip it all together.  I don’t care if she doesn’t get the whole article because she isn’t my core audience.

John just saved me hours of time implementing ideas for a “user” who isn’t going to read my blog.

For every project I sit down and define who my end users are for that project before I start.  Each one gets a name, age, personality, skills, goals, and attitudes creating a vivid image of the person I hope will be using my software.  Every decision I make, be it user interface or back end operation I ask,

Will John like this new feature?  Can he even use this new feature given his skills?  With his attitudes would he want to use this new feature?

I instantly know which features I should implement and which ones should go back to the drawing board.  Personas have become my strongest tool for designing software that people actually want to use.

Next time you get in an argument about an implementation detail or presentation issue ask out loud, “will our main user Steve actually like what I am creating for him?”

When a developer asks to implement this crazy new login procedure ask them, “Will Sally, our 75 year old grandmother who is our main user be able to figure this out?”

Bring real people into your development and you won’t be disappointed with what they tell you about your software or new idea.

Share With Your Friends:
  • Twitter
  • Facebook
  • HackerNews
  • Google Bookmarks
  • del.icio.us
  • Digg
  • Slashdot
  • Reddit
  • LinkedIn
  • email

Breaking Down the Game Film – Mission Statements

“Breaking Down the Game Film” is a term commonly used to analyze tape from an already played sports game to dissect what went right and what went wrong.  In this series I’ll be taking published articles from around the web and break them down.

Topic: Mission Statements

Article: “How to Write a Mission Statement that Isn’t Dumb”

Link: http://www.fastcompany.com/magazine/140/do-something-wordplay.html

Short Summary:  The time used to generate most mission statements would be better spent burning $20s in the alley behind your office building.  Identify your company’s quantifiable goals and write a statement that will inspire people to rally behind those goals.

Analysis:

Quick!  What is your company’s mission statement?

Can you find it on your internal website?

Can you find it on their external customer facing website?

Ok, now that you have found it how do you feel?  Quick, one word!

I’ll spot you the word, let’s go with underwhelmed.

Now, compound that feeling with the thought of how many man-hours it took to produce that mission statement.

It’s ok if you are now openly weeping…let it out.  I know your company couldn’t buy you that brand new computer chair last year, they had to write a very bland statement that serves no purpose to you or your daily life.  Sure, the new computer chair would have been nice, but they really needed that sentence on their website.

Before reading this article I wouldn’t have given a company mission statement a second thought.  One of the tools I use, Microsoft Team Foundation Server, a task tracking and source control system, starts every project with a few pre-populated tasks.  One of those tasks is to write the project’s mission statement.  I normally skipped this step; I never saw any value to burning any calories on attempting to define the mission statement for an individual project.

However, after reading this article something clicked for me, making me reconsider the value of the mission statement.

Do you want to add a feature to the project?  Will that feature further project development?  Does it mesh with your mission statement?

Yes: Continue investigating the idea.

No: Drop it and move on with your life.

Quick and simple.

Caution.

Like any tool in your toolbox overuse the mission statement and your co-workers will become numb to its effects.  Engineers smell b.s. from a mile away, if you show up Monday morning chanting your company’s mission statement, wearing a shirt with the statement on it, and hand out pictures of you posing with the mission statement you will lose them.   “Sure boss, great idea, I’ll put on my hat with the mission statement tomorrow…today it would clash with my outfit.”

If you are going to take the time to do so, write the mission statement with care, capture that goal, write it in such a way as to inspire people to work towards that goal, but be sure to not over use it.

Share With Your Friends:
  • Twitter
  • Facebook
  • HackerNews
  • Google Bookmarks
  • del.icio.us
  • Digg
  • Slashdot
  • Reddit
  • LinkedIn
  • email