Thursday, November 20, 2008

Update: Designing Web Interfaces Book Available for Pre-Order

In an earlier post I mentioned our upcoming O'Reilly book, Designing Web Interfaces that I coauthored with Theresa Neil. The good news is we are getting very close to publish date -- December 2008 or January 2009. It is now live on Amazon and available for pre-order.


You can read about the contents of the book here and here.

The book is a partial outgrowth of various talks I have given over the last few years: Designing for Ajax, Designing Web Interfaces: Principles and Patterns for Rich Interaction and When Designers Get Too Clever: Anti-Patterns.

(By the way, the bird on the cover is the Guianan Cock-of-the-Rock and the image is from Johnson's Natural History. Yeah, I feel like strutting ;-)



The work on the Yahoo! Design Pattern Library also helped frame of lot of the ideas presented in the book (there are 75+ patterns discussed).

Additionally the work that Theresa & I did at Sabre Airline Solutions in documenting design patterns, performing heuristic evaluations on two dozen complex airline products as well as actively designing new solutions for the suite of products brought a lot of the principles to light while writing this book.

Two other items I am very excited about.

Companion Flickr Site
First, following the example of Luke Wroblewski (who also wrote the Forward to the book) we will be making all of the figures and illustrations (over 500 images) available on the companion Flickr site. In addition since many of the images are keyframes that illustrate steps in an interaction, I will be making the original screencast movie available on the flickr site as well. You can see an example of this for All the Web's Live Search (Yahoo! experiment that is no longer available). Like Luke, we will make all this material available via Creative Commons. You will be free to use it in your presentations, etc. We only require attribution back to our book.

Companion Book Site
Additionally, Theresa & I will be posting and keeping up to date a companion book site, DesigningWebInterfaces. We will be posting new examples, new patterns, new anti-patterns as well as links to other great pattern sites or books. Note, that it is just a "parked" page at the moment. Look for the site to be live around the book publish date. Stay tuned here for the go-live announcement.




Tuesday, October 28, 2008

Sr. Web UI Engineer for Customer Service Engineering

** Update: Position Filled! **

We recently filled the position I posted earlier.

I now have a new position to fill -- Sr. Web UI Engineer for Customer Service Engineering. In this role you will help design and engineer a new suite of web-based customer service applications.

In the previous role it was challenging to find someone with the right mix of semantic markup skills, javascript prowess, css wizardry, and java/jsp experience. In this role the requirement to be a DHTML god is lessened. What I need is someone who:

  • Is passionate about designing and engineering great interfaces
  • Has solid experience designing & building enterprise web applications in a Web 2.0 manner (rich in features, more complex in interaction than our main Netflix site)
  • Has strong proficiency in server-side UI technologies (Java, JSP, Struts, Tiles)
  • Has a solid background in simple software architecture and design as well as can communicate their solutions to the rest of the engineering team
Your job profile will probably include a good deal of experience with building user interfaces for non-consumer oriented sites.

If you have always wanted to work for a site like Netflix, but were unsure you had enough consumer web site experience then this could be a great opportunity. The applications you will design and build are not for the main Netflix member site, but instead for our #1 rated customer service team.

The person in this role will be part of the Customer Services Engineering Team as well as a member of my Netflix Web UI Engineering team. Since much of the work is greenfield you will have the opportunity to help design the user experience as well as build the web applications. In addition, the Netflix UI framework that the site runs on is shared with these applications. As such you will help flesh out this framework as we go forward.

So what technologies would you be using?
  • HTML, CSS
  • JavaScript
  • Java
  • JSP
  • JSP Tags
  • Struts2
  • Tiles2
  • YUI Grid
  • jQuery
For more details, check out the official job posting. Also, feel free to contact me directly at b DOT scott AT yahoo DOT com.

Here is the LinkedIn Posting.

Tuesday, October 21, 2008

Designing Web Interaces Talk (Ajax World)

Slides from Ajax World talk:

Designing Web Interfaces
View SlideShare presentation or Upload your own. (tags: design web)

Update: Yahoo! Account Fixed or "The Awful Face of Customer Service"

As noted before I was having trouble with my Y! id. My alias account (that I give out most frequently) no longer worked.

As I mentioned my experience with emailing Yahoo! was really bad. Canned messages saying the same thing no matter what I wrote -- the only difference was the signature at the end.

Phone calls weren't any more helpful. After searching and finding the phone number, I called to explain the situation. It seemed we had reached the point where she finally got my dilemma. However just at that point of epiphany the phone went dead. Somehow we were disconnected. So I called again. Finally reached that point again and she promised me a response in 3-5 business days. Yea, right. That was 2 weeks ago and nada :-(

Fortunately I used to work at Yahoo! I still know lots of people internally so in parallel I sent them a note about my problem (as well as many emailed me when they saw my blog post). Once I got in contact with one of the leads on Y! Mail they got the ball rolling internally. Somehow my alias account got corrupted. It was now a "child" account (you can create parent/child accounts for minors) and could not be accessed. It took a little over a week but finally it got fixed. Very thankful to the hard work of some of the folks in the Mail/UDB/Member teams that resolved the issue.

This got me thinking though. What if I had not worked at Yahoo! before? Well this account I guess would just be dead and I would have lost that email address. I really don't see any other outcome.

It also got me thinking about the various faces of any company. If my only experience had been email then I would have felt that Yahoo! was uncaring and faceless. If my only experience had been the phone I would have heard a sympathetic voice but no follow through. But I happen to know that once the problem came to the attention of people inside Yahoo! they jumped on it and worked extra hours & the weekend to resolve the problem.

This is always the problem with anytime we have a problem with a company. It does not matter if the engineers inside the company are caring, dedicated people. The customer service organization is the face to our users. Unlike in most cases, I also had the unique perspective to know that the number of user accounts created on a daily basis is staggering. And the level of calls/contacts to customer support is huge.

I guess if I did not have the inside view I might have fallen prey to conspiracy theories -- seems that when people have a problem with a company it becomes personal or the screw up is really a way for the company to squash the little guy.

But it was not. Nor is it hardly ever that way. It was just an odd, rare bug that just happened to clobber my account that was not easy to detect and not simple to fix right away. And if the right people get it brought to their attention they work hard to resolve it.

Tuesday, October 14, 2008

YUI Carousel Component (2.6.0)

On October 1, 2008 Yahoo! announced the release of YUI 2.6.0. This
release contained the official YUI Carousel component.

As you know, the intent of my carousel component was to fill in a gap in the YUI library. In 2006, I created the ycarousel component. Thankfully, many people have found it useful over the last 2 years.

Before I left Yahoo! in 2007, I spent some time with the YUI team,
discussed the ideas behind the way I approached my component, what I
liked about it and more importantly what I did not like about it :-)

The newly released YUI component shares some of the same
properties/api with my component but has been written from the ground
up. So I am excited about their
new carousel and encourage everyone to migrate to it instead of using
the carousel shown at this site.

The fact is you will get better support for their component. I am just
too busy with other projects to really support it the way I would like
and there is just no reason to cloud the space with two components
(even named similarly ;-)

You can find the new YUI Carousel component at the YUI library site.

The latest version of my carousel can be found at my site.

Monday, October 13, 2008

Ajax World Interview: Bringing Excellence to the Field of UI Engineering

Jeremy Geelan over at Sys-Con interviewed me about the field of user interface design & engineering.



I will also be presenting at the Ajax World conference in San Jose, CA on Crafting Rich Web Interfaces

The talk is based on my upcoming O'Reilly book Designing Web Interfaces (co-authored with Theresa Neil). The session happens on Monday, Oct. 20th @ 4:30pm.
 


Wednesday, October 08, 2008

Yahoo! Front End Developer's Summit 2008 - Talk

I had the wonderful privilege of giving a keynote today at Yahoo!'s Frontend Summit. Douglas Crockford gives the one for tomorrow.

I took a stroll down memory lane talking about everything from slide rules to Wang Desktop Programmable Calculators to programming on the Macintosh 128k. In many ways this played off an earlier blog "All I reall need to know I learned from a Mac 128k".

Here are the slides:

Back To The Future
View SlideShare presentation or Upload your own. (tags: yahoo keynote)


A video will be available at the YUI Theatre later this month. I will post a link here when that happens.

Friday, October 03, 2008

Update: 3 year old server error... Yahoo! says is definitely the problem with my account!

Man, I was never on this side of Yahoo!'s customer service before. But it sure does hurt.

After getting the previous response I patiently explained that it was not possible for a server error to be the culprit since the account in question is 3 years old. 

Yet, Yahoo! customer care responded to this sensible explanation with exactly the same answer (only this time from 'Nick')

Hello Bill,

Thank you for writing to Yahoo! Account Services.

We sincerely apologize for any inconvenience this may cause you. It
appears that there may have been a server error at the time you
registered for your Yahoo! account. Unfortunately your information was
not correctly saved, and you will be unable to access this account. You
are welcome to create a new Yahoo! account with a different ID. Again,
we apologize for any inconvenience.

Thank you again for contacting Yahoo! Account Services.

Regards,

Nick

New and Improved Yahoo! Mail - better than ever!

Argh! But hey, I am free to create a new account! Yipee! That sounds like fun. Why didn't I think of that before?