Displaying posts tagged "critique" (Clear Search)
Tuesday, August 4th, 2009
As you know, one reason that I really like web applications is because they can be updated without the end user's involvement.  Even though desktop apps are inherently disadvantaged in this regard, that doesn't mean that the developers should just give up and accept a negative user experience when updates are required.

Mozilla Firefox is the second most popular web browser out there.  There are a lot of great things about Firefox, but a few really poor decisions make using it seem like a chore.  I hate to say it, but I sometimes find myself using Internet Explorer instead of Firefox if I'm in a hurry.  The worst decision they made has to do with installing updates.

If you had to pick the worst time imaginable to download and/or install updates, what would that be?  It seems obvious to me that it's when the user first launches a program.  If I don't have a program open, and then I open it, I think it goes without saying that I want to use it for something.  This is the only moment in the entire user experience where you're guaranteed that I want to actually use the software.  This is the wrong time to bug me about updates.

So why is this the time that Firefox installs all the updates?  Why not when I close the program? Why not have a helper program like many newer apps (like chrome) that installs updates behind the scenes?  I am almost afraid of starting Firefox because I know there will be an update waiting for me which will require me to install the update and restart the browser before I can do whatever it is that I actually want to do.

This problem is made even worse by the extensions.  I realize that I chose to install all of my Firefox plugins, but can't they let me start my browser without prompting me about a foxmarks update every single time?  I just want to go to a website.  That's what web browsers are for.

And then the cherry on top of all that is how Firefox takes me to a different home page after every update to tell me about the update.  Why in the world would I care?  I opened Firefox to go to a website, not to spend 5 minutes installing updates and then feeling proud about my accomplishment with a special confirmation page.

So here's a new design principle for you.  If you need to make a decision, think about the worst possible solution, and make sure you do something other than that.  Firefox might still be my browser of choice if they followed that basic advice with the timing of their updates.


Posted by Tyler King

Tuesday, July 7th, 2009

I don't normally read Mark Cuban's blog, but a friend suggested I check out a specfic post of his.  Here it is.

 

Sorry if I come across as a hater, but his point really bugged me.  First of all, the whole premise of his argument is that companies that provide free services (like Google and Facebook) will inevitably fail because of their free offerings.  That's an interesting idea and I was ready to read how he backed up his argument, but he never once addressed why offering things for free is a problem.

 

His real point is that every company will eventually have to deal with competition and there's no way for an established company to survive very long.  He's basically saying that as soon as a company is successful, they should face their inevitable downfall and make short-sighted decisions because there's no way to succeed long-term anyway.

 

So here are the obvious problems with this argument:

 

  • There are a ton of companies that have managed to be around for the past 100 years.  Cuban is suggesting that this advice only applies to "freemium" companies, but he doesn't to anything to explain why they're any different.
  • He suggests that because big companies don't stand a chance, they should sell off when they start to fade.  You'd think that if a company is doomed to fail, no one would buy it.
  • Free web applications have only been around for about 10 years.  Really, they've only been around five years in their current form.  It's way too early for anyone to act like they know how these companies will age.
  • Mark Cuban sold some website I've never even heard of to Yahoo for six billion dollars and now Yahoo isn't doing so hot.  It seems like he's taking this experience (selling before you're too big, then let the big guys fail) and assuming that it will hold true in all cases.  The fact of the matter is that Yahoo made a lot of really bad acquisitions.  It's not an intrinsic problem for big companies.
  • AIG and GM are good examples of companies that got too big and failed.  However, no one can suggest they would have been better off giving up after 10 years of being on top.
  • Some sites that offer free services still have real business models.  Google is a legitimate advertising and media company.  Sure, they need to keep innovating or else they'll be toppled, but my money's on them keeping the throne for at least another decade (and maybe another century.  Who knows?).
  • Here's a snippet that Cuban suggests applies to all large freemium companies: "their ecosystem has bloated to the point where they can no longer create anything for free".  What company has done this?  Facebook, myspace, google, yahoo...they're all free still.  Where is he getting this argument from?

 

There's a lot more not to like, but I'll cut it off there.  The point is, I can't agree with the attitude of giving up just because someone better will probably come along.  It's funny how his basketball team perfectly models this attitude.


 


Posted by Tyler King

Wednesday, June 10th, 2009

Many people don't understand just how scalable software is.  Computers are really good at performing simple tasks over and over.  They don't get bored.  They don't quit.

 

So let's look at some hypothetical software and talk about how difficult it is to do different things.

 

Let's say you're building a site that lets users publish blogs. To publish one blog (such as this one) you need a table to store the posts, and another table to store comments.  I've got more bells and whistles, but those two tables store just about everything.  So I'll assume that this hypothetical software only has those two tables.

 

This means that the software supports exactly one blog.  You can add as many posts as you want but there's no way to differentiate between multiple blogs.  In order to support more blogs, you need to add another table that stores information about each blog which links to the individual posts.  What I'm saying is that there is a fundamental difference between supporting one blog and supporting two.

 

Those of you that have experience programming know that adding the extra table takes about 10 minutes.  It's hardly any work at all, but there is work involved.  The thing is. once you have a table that stores information about the individual blogs, you can add as many entries to that table as you want.  There is no additional development work necessary to go from supporting two blogs to supporting three (or four or 5000).

 

I mention this because sometimes the way software is distributed makes it seem like it's difficult to duplicate certain things.  Maybe you only get to add so many user accounts or you can only perform an action a certain number of times before you have to pay more.  This is almost always an artificial limitation imposed by the software company as a way to get you to pay more.  Don't get me wrong, these companies have every right to use whatever fee structure makes them the most money, but we as consumers need to be more aware of these practices so that we know when to call BS.

 

I first thought of this because the Palm Pre application launching screen only allows for three different pages (or whatever they're called).  You can add links to apps and contacts anywhere you want on these three pages, but you can't make a fourth.  For a device that is generally very well designed, it seems crazy that they would allow more than one page without allowing as many as I want.

 

Notes:  Because at least one of you works at Facebook, I should say that scalability is an issue when you have millions of visitors every day.  Really high traffic websites can't just scale infinitely, but this isn't an issue for 99.9% of software out there. 

 

More Notes:  Sometimes making the jump from one to two doesn't actually require any work (as was the case with a project I recently had to write specs for).  Most of the time there is a little work.


Posted by Tyler King

Sunday, June 7th, 2009

Palm PreI just got a Palm Pre.  It's my first smart phone and I couldn't be happier with it.  I'm going to try to avoid writing about why I like the phone itself and instead focus on why the phone is a big step forward for technology in general.

 

First, a disclaimer:  It's impossible to talk about the Pre without comparing it to the iPhone.  When I favor the Pre in this post, I'm not necessarily saying that you as an individual would like a Pre better than an iPhone. I'm not trying to criticise people that are happy iPhone owners.

 

With that said, something bothers me about how most companies are operating these days.  Everyone seems to try so hard to "synergize" their various revenue channels that they forget about making the best product they can.

 

For example, the iPhone isn't just a great phone.  It's a way for Apple to sell more songs on itunes, make money from the app store, incentivize users to sign up for the ridiculously overpriced MobileMe service, etc.  For the most part, the iPhone seems great and I certainly don't fault Apple for trying to make money, but there are a lot of improvements that haven't happened because it wouldn't fit with Apple's strategic positioning.  Apple generally takes a very closed approach with all of their products for this same reason.

 

Verizon is famous for disabling features on their phones.  Some of their phones don't sync automatically with Macs because they have a deal with Microsoft.  Some of their phones have the GPS or bluetooth disabled for reasons that I can't even understand.

 

And then there's Palm.  Palm is a failing company.  They needed to swing for the fences with this product.  It almost seems like a team of fancy-pants executives were sitting in a room trying to figure out how to leverage Palm's corporate strengths (or some other weird business jargon) and some young upstart suggested something crazy: "Let's just try to make the best phone we can!"

 

I'm sure this suggestion got some laughs originally but when no one had any better ideas, they gave it a shot.  It sounds stupid, but this is the first product I've purchased in a long time where it really seems like they just tried to make what consumers wanted most.  Here are some ways in which the Pre seems to have ignored all the dumb business stuff and instead focused on the user:

  • You can plug the palm into a computer and it looks just like a USB hard drive.  You copy files to the pre and they're available on the phone.  This includes moving any MP3 file into the "Ringtones" folder.  They don't mess around with DRMs or trying to partner with a desktop media app.
  • You can sync with most accounts that people actually use: Gmail, Google Apps, Microsoft Exchange, Facebook, iTunes, Amazon (for downloading music), photobucket, AIM...
  • You can open the phone up.  This may sound unimportant but it means that third parties can make hardware upgrades for the phone which isn't an option on the iPhone from what I understand.
  • GPS, bluetooth, wifi, etc. all seem to be fully enabled with no restrictions.  Sprint normally charges users to use their GPS program but the Pre comes with a pretty solid one for free.
  • There is a normal 1/8" headphone jack.  A lot of phones have some proprietary jack so that they can sell extra hardware.
  • The pre uses an open format for the charging cable (micro-usb).  I've read that you might need a proprietary cable to actually sync data with a computer, but being able to charge is enough for me.  Everything is syncing over the air anyway.
It seems like Palm hired some great product designers and set them loose.  The business side of the company must have stayed pretty far away from this one.

My point here isn't that the Pre is better than the iPhone.  My point is that it seems like Palm really was trying to make the phone that customers want.  Unless I'm missing something, they seem to have ignored all the anti-consumer decisions that help most companies suck more money out of us on accessories, corporate partnerships, and other revenue streams.

I hope the Pre succeeds for this reason.  If it succeeds, maybe it will put more pressure on other companies to stop playing so many games and just trust that people are willing to pay for a great product.

Posted by Tyler King

Thursday, June 4th, 2009

confirm

 

On Tuesday I talked about how I don't like modal dialogs.  Here's one way to avoid using them when designing an application.

 

I learned this one from Gmail, but there are other applications out there doing the same type of thing. Imagine if someone accidentally clicks the "delete" button in your application.  The results could be disastrous.  That's why most websites pop up a window saying "are you sure?"

 

The problem is, most of the time the use wasn't clicking the delete button by accident.  Most of the time the user actually wants to delete something and it's annoying having to deal with the confirm dialog.

 

With most important decisions, gmail just goes ahead and performs the action.  Then they pop up an unobtrusive message at the top of the page allowing the user to undo the action.  This makes sure that accidental clicks don't result in catastrophe but the user isn't inconvenienced in situations where they're doing everything correctly.

 

Sounds simple enough, but it's far from standard practice.  Sometimes it's not necessary to go through the effort of undoing things, but other times it can be a huge time saver.  If you remove enough minor inconveniences, you'll end up with great user interface.

 

I'm trying to incorporate not only this specific strategy at work, but any design ideas that follow the same line of thought.  For example, we will be redesigning one of our sign-up processes soon and I've already figured out one way to make it much easier.  Rather than showing the user every single option they can customize during signup, I think we'll just show the basics and then the advanced users can go in later and make changes that the majority of our users don't want to deal with.

 

Once again, this is an obvious idea which makes it all the more important to implement.


Posted by Tyler King


Receive Email Updates:


About this site
Hi, I'm Tyler King and this is my blog. It's about programming, graphic design, UI design, and anything else related to software development. You can read this post to learn a little bit more about what I'm trying to do here.

If you're interested in learning more about me, check out my Portfolio, Bio or Resume.
Search
Tips
If you have any feedback about the site or you have a topic you'd like me to write about, send an email to tips@TylerKing.net.
Archives
2009 (88)
August (6)
July (17)
June (20)
May (33)
April (12)
Links

More about me:


My friends:


Sites that I really like:


Blog
Portfolio
Resume
Bio
Contact
© 2010 - Tyler King