Wednesday, December 31, 2014

What Software Tells You About the Company Who Created It

"Through the object that I was sat in front of, I had a very clear sense of the people that made it. I had a sense of their values, their preoccupations, the things they cared about, the reasons they made it. It was this sort of vicarious communication. I had a really clear sense of this company that I didn't know anything about. And that had never happened to me before." - Jonathan Ive, De Zeen Magazine.

This statement by Apple's chief designer Jonathan Ive really got me thinking about the many instance that I have seen poor software or system design and what it made me think about the company itself.    Many times the simple lack of communication within an organization jumps off the screen.  Of course this happens more in large organizations than small; it is simply the nature of a large bureaucracy.  This lack of communication results in software that is at best inconsistent, and is often contradictory.  Either way, it is the user who ultimately suffers.    

Recently I spent a few days at Walt Disney World for a company retreat.  Disney is known for customer service and innovation, but several items caught my attention and presented a little peek behind the curtain. First, prior to the trip I downloaded the Disney Experience app for my phone and created a profile on the MyDisney Experience site for my trip.  I ordered my Magic Band and entered my personal information.

 Right away I noticed a simply issue that created a problem where one did not need to be.  On the web page I could create an Itinerary (also it defaulted to the current date instead of the date of my arrival, but that is more of an annoyance), but the mobile app did not use an Itinerary, in fact there is no concept of an Itinerary on the app.   While this is bothersome, the real disconnect came when we purchased tickets to the Magic Kingdom.  

As I mentioned, I was mailed a Magic band which I could use throughout the resort as a key or form of payment.  Whether you like this idea or not at least it was used throughout, well at least until we purchased tickets.  

For some unknown reason the band could not be used for entrance to the park and we were issued a disposable card instead as our pass.   I know it is possible to use the bands, but no one could explain why we had to use the cards.   In fact normally the bands are used for park access and we were able to use them for making purchases inside.  This is clearly not a limit of the technology, but points to a much larger communication problem.  The card issue (and to a lesser extent the lack of an Itinerary on the Disney Mobile app) demonstrate that silos still exist behind the scenes at Disney. Silos are a common byproduct from a large bureaucracy and in this situation people tend to focus more on the success of their organization instead of the success of the entire company.  

It is important to note that this example is not an indictment of Disney or my experience at the park.  On the contrary they do an excellent job across the board in making their guest's time on site as enjoyable as possible. The issues I mentioned are common in most companies.  My reason for posting is to point out that companies need to understand how right Jonathan Ive is; you can learn a great deal about your IT department by looking closely at the software you produce.  

I am not naive to the nature of businesses; processes, mandates, reorganizations, etc. will not resolve the kind of issues described here.  The best way to solve it is to make one team responsible or as the old saying goes assign "One head to chop".  This team should be small, but have authority to dictate changes.  They really operate as a voice for your end-user.  The team should look at the software from the perspective of different user types.  The idea of using personas representing these different users is a fairly common practice in the UX community.  Using the Disney example, a business traveler has a different perspective from a parent planning vacation who has a different objective than a 10 year old looking to play games. It will be the responsibility of the team to constantly monitor changes and it would not be uncommon for the corrections being made to code after it has been in production for some time. This will prevent the team from becoming a deployment bottleneck, otherwise ways around will be discovered.   

It is important that your users have a voice as part of your organization's the software development process.  They are the ones who ultimately suffer from poor design.  It is not practical to expect real users to see your software from holistic view, so it is important to create that voice internally.  Without this voice, your software will more often reflect your company’s internal issues than the needs of your uses.  


Tuesday, December 2, 2014

Progress on my Wear APP

I have made a little progress, but only on getting the Eclipse environment setup - UGH!  Thanks to Dhrumil Shah on his blog for providing the information I needed.  Eclipse / Google really needs to step it up on the documentation. So I finally have the environment up, time start coding.  Updates soon.

Sunday, November 23, 2014

Starting android wear development

Started my first android wear project yesterday. Finally got the eclipse environment working with my phone. Now I have to get a small program actually up and running on the emulator. I hope to have this in the play store by eoy. I will keep posting my progress. All for now. 

Tuesday, November 11, 2014

I am just feeling this out. If you are reading this, you stumbled across my blog before I really had anything posted.  So that your visit here was not a complete waste of time, here is an entertaining video to watch regarding Net Neutrality.