A new year can bring hopes and aspirations to find love, lose weight, or stop smoking. Well I have love, I don't smoke, and I could lose some more weight but the real resolutions I would like to make deal with web development.
2009 brought a lot of changes to my coding workflow. I switched from
PHP to
Python, from
Zend Framework to
Django, and from
YUI to
jQuery. All of these changes occurred because I tired of writing a lot of code over and over again. Python, Django, and jQuery have allowed me to spend less time hacking code to solve simple problems. Now I can spend more time thinking about how to implement features and enhancements that will make my websites easier to use.
So as 2010 begins here are two things that I want to focus on:
No More "Create an Account" on Websites
NYTimes.com - An example of a lengthy process to create an account.
Problem: I'm tired of creating new accounts on websites that require me to have a unique username and password in order to log into the site. As a web developer, I understand the need for a website to store a user's credentials so that the site can track activity. As a user, it's a pain to do this for each site. I have a pretty good password system that enables me to create a unique and secure password for each website, but I still have to remember it. Maybe it's my old age but I find myself using the "Forget Your Password" option a lot on sites that I view once a month.
Solution: There are 3 websites that I visit everyday: Google(Gmail), Facebook, and Twitter. I use the same username for each site but I also have a unique password for each. I have already gone through the process of creating an account on each of them.
When I go to a new website and I am asked to create an account, I want to be able to click a Google, Twitter, or Facebook button and enter my password for that site. The new website should use that as the authentication instead of asking me to create another password. The new website can still create an account for me but this should be done behind the scenes.
I shouldn't have to enter my first name, last name, zip code, or have to verify my email address for each website that I want to access. I've already done those things on Google, Twitter, and Facebook and there are ways for websites to interface with them.
We should be able to assume that almost everyone online has an account on either Google, Twitter, Facebook, MySpace, Yahoo, or AOL. Each of these sites use authentication methods like
APIs or
OpenID to verify the username and password and then pass the verification over to the site that the user is trying to log in to. It's the web developer's responsibility to learn these shared authentication methods in order to make the web more usable by reducing the amount of times users have to create new accounts
.
Mobile UI (iPhone and Android) for All Websites
Problem: I have had an iPhone for about a year now and it has totally changed my view of the mobile web. Before the iPhone, I used a Blackberry and Windows Mobile phones but the web browsing experience was dismal. If you tried really hard you could search for a phone number of a local restaurant on Google but that was about it. The mobile web on these phones was painful to use and avoided if possible. The iPhone is a completely different experience. I don't always have to make time to go to the office desktop or open up the laptop to look up something on the web. Instead, I can pull the iPhone out of my pocket and open up
Safari.
While the mobile web is a lot better on the iPhone, the experience can be amazing if the website is configured for the iPhone's resolution. You can pinch, zoom, and move around any page in Safari, but this still can take a little bit of time to do. When I open up mobile Safari, I usually want to search for something quick on Google or open a bookmarked site where I can quickly scan for some information. This can be easier and faster on a site that has a mobile version which is formated for the iPhone.
Solution: Is a mobile version of a website really necessary? On newer phones like the iPhone and
Android maybe no, but if we want the web to be more usable then yes. The mobile web is the future and web developers should embrace it by developing an alternate version of their sites that offer the same content but is formatted for the smaller screen. In the future, everyone will probably carry an iPhone or something similar that will be their primary internet browsing device. This has already happened around the world.
However, two of the top tech websites,
Engadget and
TechCrunch don't have mobile versions. They acknowledge that iPhone users are a large portion of their audience but either they don't have the resources to create a mobile version or they don't see the need.
Mashable, a competitor to TechCrunch, does have a mobile version and it's the one that I have bookmarked and view daily.
Conclusion
I'm guilty like many other web developers of taking the easy route of using "create an account" pages and not developing mobile versions of the sites I've worked on. Even this blog on
posterous.com does not have a mobile version. Hopefully, posterous will release this feature in the next year and if not I may have to move to another blog platform.
My new year's resolution as a web developer is to make the websites that I work o more usable by reducing the "create an account" pages and making them easier to access on mobile web browsers. It will take more time but the end result will be a better experience for the web users.