{"id":34,"date":"2007-02-24T21:25:21","date_gmt":"2007-02-25T02:25:21","guid":{"rendered":"https:\/\/billhiggins.us\/weblog\/2007\/02\/24\/extreme-ui-design\/"},"modified":"2007-02-24T21:25:21","modified_gmt":"2007-02-25T02:25:21","slug":"extreme-ui-design","status":"publish","type":"post","link":"https:\/\/billhiggins.us\/blog\/2007\/02\/24\/extreme-ui-design\/","title":{"rendered":"eXtreme UI design"},"content":{"rendered":"<p>In the last week of the most recent <a href=\"http:\/\/jazz.net\/\" title=\"Jazz.net\">Jazz<\/a> milestone, I realized that I was running out of time to give one of the web features a UI overhaul.  Jen Hayes, the primary web UI designer, had sent me a spec more than a month before but I hadn&#8217;t implemented it because I was overwhelmed by the many lines, measurements, and notes specifying the changes I was to make.  So I moved on to other stuff and forgot about the UI work until the UI designers brought up my procrastination on a UI design review call with <a href=\"http:\/\/en.wikipedia.org\/wiki\/Erich_Gamma\" title=\"Wikipedia: Erich Gamma\">Erich<\/a>.  Doh!<\/p>\n<p>Jen pointed out the most pressing problem (font style in form elements, if memory serves) and I said &#8220;Oh, I can change that&#8221; and one line of <a href=\"http:\/\/en.wikipedia.org\/wiki\/CSS\" title=\"Wikipedia: Cascading Style Sheets\">CSS<\/a> later, the major problem was fixed.  Hey, this was pretty easy!   Jen mentioned a few other things and I realized that they were easy as well.  Erich and the other folks dropped off the call and we decided to start a NetMeeting and try to knock out as many UI polish items we could.  Two hours later we were completely done &#8211; not only had we fulfilled the spirit of the spec, we&#8217;d rethought a few spec&#8217;d decisions and tweaked a few additional items in the process of our extremely rapid iterations.<\/p>\n<p>A few days later, I reflected on this and wondered why the heck we had the UI designers sending us super-detailed specs in the first place.  If someone were to send me a highly-detailed technical spec on how I should code a particular feature, I&#8217;d ask them if I were being <a href=\"http:\/\/en.wikipedia.org\/wiki\/Punk%27d\" title=\"Wikipedia: Punk'd\">Punk&#8217;d<\/a>.  Yet with regards to UI design, this is standard practice.  Not anymore, at least for me.  The UI designers are welcome to draw up whatever specs they like, but I&#8217;m only going to do major UI work via pair programming with a UI designer.<\/p>\n<p>Pair programming with a UI designer has the same benefits as pair programming something in [fill in your programming language of choice].  You can experiment, discuss, learn, and refine very quickly, and the real-time verbal and visual communication is much higher bandwidth than email and documents.  This is especially true in a web environment, where you can hack CSS literally in real-time via <a href=\"http:\/\/editcss.mozdev.org\/\" title=\"mozdev.org - editcss\">EditCss<\/a> and a screen sharing program.<\/p>\n<p>This experience and another recent email conversation with <a href=\"http:\/\/www.redmonk.com\/jgovernor\/\" title=\"James Governor\">James Governor<\/a> on my reticence to publish a new Ajax article &#8220;before it is completely ready&#8221; has made me decide to reflect on how I can apply the principles of experiment\/discuss\/learn\/refine to everything I do.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>In the last week of the most recent Jazz milestone, I realized that I was running out of time to give one of the web features a UI overhaul. Jen Hayes, the primary web UI designer, had sent me a spec more than a month before but I hadn&#8217;t implemented it because I was overwhelmed [&hellip;]<\/p>\n","protected":false},"author":3,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[5,6,10],"tags":[],"class_list":["post-34","post","type-post","status-publish","format-standard","hentry","category-culture","category-design","category-jazz"],"_links":{"self":[{"href":"https:\/\/billhiggins.us\/blog\/wp-json\/wp\/v2\/posts\/34","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/billhiggins.us\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/billhiggins.us\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/billhiggins.us\/blog\/wp-json\/wp\/v2\/users\/3"}],"replies":[{"embeddable":true,"href":"https:\/\/billhiggins.us\/blog\/wp-json\/wp\/v2\/comments?post=34"}],"version-history":[{"count":0,"href":"https:\/\/billhiggins.us\/blog\/wp-json\/wp\/v2\/posts\/34\/revisions"}],"wp:attachment":[{"href":"https:\/\/billhiggins.us\/blog\/wp-json\/wp\/v2\/media?parent=34"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/billhiggins.us\/blog\/wp-json\/wp\/v2\/categories?post=34"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/billhiggins.us\/blog\/wp-json\/wp\/v2\/tags?post=34"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}