Refresh 2006 Conference: Garrett Dimon, Improving Front-End Architecture

November 16 , 2006

Speaker

Garrett Dimon

Pre-order
Purchase
Button metaphor: Saving ads and at the end of the day that look like the same thing

Time and Money:

remember software entropy and total cost of ownership
maintenance, morale, updates and etc.

We spent X to make this…

the architectural investment to make this you need to recognize..
your long term might be high if you invest a little
Over the lifetime your costs go up and up
Just something to get it out the door

User-Agents (not just browsers)

Watch your user-agent baseline
Supporting the fringe is costly. Make sure it’s worth it.
Accept browser limitations (avoid browser hacks)
Don’t lose hope: Netscape 4, IE 5, IE 6, Firefox & IE 7

Content: the red-headed step child
all the widgets

Let content drive: design, structure, usability
two different audiences
Plan for content dominoes
content will change. Learn to love it.
Markup the technical foundation and structure
Everything effects everything else

Lose the tables

Their time has passed
Treat markup as a craft
CSS, javascript, and accessibility are built on it

Keep it clean (the markup that is)

one place that hasn’t done this is myspace, its bad.
Mike Davidson did something to make it work
He didn’t do that he did it to show the process of what he had to do to maintain it.

Use Microformats:Expose your content with standards
CSS the presentation layer:Be bulletproof, it’s accessible and flexible
Get intimate with specificity:Specificity, inheritance, the cascade
Plan your CSS:use comments, and organize those files
Dom Scripting (aka JavaScript):From a user experience its gotten a bad name from the dark ages/browser wars
Turn it off… its come along way since then

The Renaissance: Progressive enhancement and standards

Be Careful with libraries and frameworks. Its’ a double-edged sword
Dom Scripting Libraries and Frameworks

Separate style from script
No style in your markup. Don’t put it in your scripts.
Show your ID

Be progressive (as in progressive enhancement)
Start with a solid foundation, make it wonderful, exciting
Cameron adams created a progressive page with javascript and larger width
Don’t abuse DOM Scripting
With great power comes great responsibility

AJAX is going to change
your scientists were so preoccupied with whether or not they could….
Respect the traditional model
full page loads…

Use hijax model
Request interception
Plan for Ajax from the beginning. Implement AJAX at the end”–Jeremy Keith
Know yoru response format options.
XML, HTML or JSON?

Accessibility: its essentially free, if we really understand
Be empathetic.
Press 1 if you’d like to….
Press 2 if you’d like to…

That’s what someone is using a screen reader’s experience is like
Some extra knowledge at the right time and right place

Understand accessible markup. Semantics, source order, alt tags, etc.
Semantics, source order, alt tags, etc.
Understanding the problem, a lot more subtle than that, another form of interaction.
Don’t ignore dexterity. Drag and drop, keyboard navigation , etc.
Be “legally” socially repsonsible
UK, Govt, EU? Target lawsuit?

Completely ignored multiple letters and how they are being sued.
It is very easy to do. Bigger audience to do it.
It’s free.
Remember all disabilities.
Low vision, no vision, decreased mobility, decreased dexterity, color-blindness, and more.

Think about content.
Is the content machine-accessible?
We redesigned Plazes, login and uses the combination of location and ip.
Show your friends. How do you communicate this to someone who can’t see?
Our solution is listing/meta data in the markup describes the location. Joe is 4.0miles east.  You wouldn’t see it but javascript loads the information. Progressive, clean markup. Exposing the data in the page with some presentational data.

Be careful AJAX

Think Hijax & Progressive Enhancement
Sitepoint.. really interesting insight
Design:not to be confused with decoration
Design is not ornamentation. Design should clarify not distract.
Design with real content. Don’t full yourself. Real content is always different.

Value typography and the grid
Much of design is what you don’t’ see
Value typography and the grid
Much design is what you don’t see
Use the power of typography

Remember print
Design does not end at the screen

Use the right tool for the job
You can drive a car with your feet if you want to…”
just because you can do something doesn’t mean its the best thing
Myspace.. the power of undesign

Redesigned washington mutual.. appropriateness of design
he made a page look like craigslist
there is a trust
Sometimes it is appropriate to not have everything organized

Flash
Use Flash sparingly. Like images or AJAX.
Design, sIFR, DOM Scripting, Accessibility, Flash, Markup

Understanding behavior, not data.
User testing validates. It doesn’t create.

Trust your instincts: OMFG! People can read left to right and top to bottom!
Understanding why they do it

Control your vocabularies.
One word with two meanings?!?!
If i told you that I was interested in Hammer? pic of a hammer/tool. Or MC Hammer?


Know your contest
Bug tracker. Folksonomy or taxonomy?
Subject, Details, tags

Understand the database: trickle down development
Human experience
Be careful when selecting tools.
.Net, Java, PHP, Rails, Packages, etc.

Clean code makes engineers happy.
Save time and money on integration.
Get into deep thought.
Deep into the technology that is.

How is this decision going to rip through.. when it is live?
With Ajax it isn’t the easiest to manipulate.
Reuse the web services. AJAX likes web services too.
Avoid specialization blindness.
Ruthlessly pursue loose coupling: think about relationships and ripples
Don’t reinvent the wheel. Look for simple solutions.
Simplify. Simplify. Simplify.
Refactor. Refactor. Refactor.
The less code you have the less problems that can arise.

Look at MySpace and do the exact opposite.

Commenting is not available in this section entry.

About

Constantly, trying to learn new things, and on the way I get to meet some amazing people with my camera by my side. XOXO!

on Flickr