Reason #1: Maintainability
Sure. They may make web sites that look great on the surface, but
can a js ninja script kiddie really write
an enterprise-worthy application?
I am a Front-end Architect: I build web apps that are maintainable. Client-side MVC is not a contradiction of terms, and any non-trivial web app requires a layered front-end architecture, separating presentation from both workflow and communication layers. (No, ninja, you never, ever put an RPC call into a button's click handler!)
Concerning business logic:
Display and validation logic belong in the views.
Workflow logic belongs in the controllers.
Data logic belongs in the model.
Proprietary business logic (Intellectual Property) has no place in the browser at all!
Reason #2: Usability
You: "Wow! I love how that slides and fades! But how will users know to click that?"
Ninja: "Huh? I dunno. Put it in the help file?"
I am a Usability Experience Engineer: I build usable web apps — and not just for tech-savvy teenagers. Novice users must be led by the hand, while savvier users don't want to be hindered. Web apps should cater to both while promoting discoverability. Animations and transitions are an important part of usability; they provide continuity in complex interactions, draw attention to important data, and lessen the perceived delay of an RPC call.
Concerning accessibility (a11y, ARIA, and Section 508):
I am not an a11y guru, but I know the basics for
accommodating low-vision or physically-challenged individuals.
I'll get you to 90% compliance just by using my
own best practices and tools.
Stay Tuned!
This site is a work-in-progress.
I add to the content as I find bits of time here and there. (Usually between 1 AM and 3 AM.)
Reason #3: Flexibility
You: "So how much effort will it take to localize this to French and Japanese?"
Ninja: "Don't look at me! I don't speak either of those langauges!"
Concerning localization:
Reason #4: Beauty
also: performance, browser compatibility
add "Next" link to cycled panels for a11y (and give focus to them)
Concerning beauty: