Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
An Introduction to Front End Engineering
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Mark Meeker
April 14, 2008
Technology
58
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
An Introduction to Front End Engineering
Benedictine University - April, 2008
Mark Meeker
April 14, 2008
More Decks by Mark Meeker
See All by Mark Meeker
Building a Mobile Device Lab
meeker
0
150
Building a Live Style Guide
meeker
1
99
Front-End Operations
meeker
2
140
Simplifying Massive Changes with a Live Style Guide
meeker
0
75
Modern Browser Support
meeker
0
85
Strategies for Accessibility
meeker
0
60
Real World Web Development
meeker
0
170
Open & Acccessible
meeker
0
98
Coding the UI: Lessons Learned from Orbitz and ebookers
meeker
0
63
Other Decks in Technology
See All in Technology
実践! SRE × AI - ABEMA における AIOps -
tetsuya28
8
3.1k
宣言型部分更新は何を解決しどこへ向かうのか
shuta13
1
450
re:Invent初参加で変わったこと、2回目にやってみたいこと(JAWS-UG彩の国埼玉 #12)
mhrtech
2
220
⾮構造化データを価値に変える AI エージェント基盤とその組織
ivry_presentationmaterials
0
190
ソフトウェア ファクトリー - 再現性のあるソフトウェアの工場づくり / Software factory
iktakahiro
6
4.9k
V8のArray.prototype.flatを最大約20倍速くするまでと、巨大OSSへの大規模コミットの道のり
riyaamemiya
0
290
Getting Started with Google Antigravity
glaforge
0
300
アウトプット初心者、半年間のふりかえり
4o1sobblue
0
430
Refining Active Record
shugo
0
150
Railsで挑む大量データ永続化 〜600億件を永続化するための設計とボトルネックとの戦い〜
occhi
1
580
"優秀な誰か"の下位互換にならないために
yut0naga1_fa
1
1.8k
How to Design Configuration for Rails Applications
willnet
1
770
Featured
See All Featured
KATA
mclloyd
PRO
35
16k
Have SEOs Ruined the Internet? - User Awareness of SEO in 2025
akashhashmi
0
520
Claude Code のすすめ
schroneko
67
230k
How to train your dragon (web standard)
notwaldorf
96
6.9k
sira's awesome portfolio website redesign presentation
elsirapls
0
450
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
203
77k
Exploring anti-patterns in Rails
aemeredith
4
540
Reality Check: Gamification 10 Years Later
codingconduct
0
2.3k
Hiding What from Whom? A Critical Review of the History of Programming languages for Music
tomoyanonymous
3
1.3k
Building a Modern Day E-commerce SEO Strategy
aleyda
45
9.3k
Bioeconomy Workshop: Dr. Julius Ecuru, Opportunities for a Bioeconomy in West Africa
akademiya2063
PRO
1
410
Kristin Tynski - Automating Marketing Tasks With AI
techseoconnect
PRO
0
550
Transcript
BenedicHne*University* April,'2008 Mark*Meeker* AN INTRODUCTION TO FRONT-END ENGINEERING
“As far as the customer is concerned, the interface is
the product.” - Jef Raskin
Just another name for... • Front End Engineering • Front
End Development • UI Engineering • Web Development • Web Production
Engineering
Engineering Design Usability Psychology Performance Art Layout Accessibility Linguistics Security
Localization HTTP
CSS JavaScript HTML Server Side Presentation Code (JSP, PHP, Perl,
Ruby, Python, ASP, et. al. ) the “Back End”
MVC Controller Model View
The Browser
Runs on...
Runs on...
Runs on...
“Browsers are the most hostile software engineering environment possible” -
Douglas Crockford
None
None
None
None
None
Browser “Quirks”
The “Box Model” Content Padding Margin
The “Box Model” Content Padding Margin Height .box { height:
50px; padding: 10px; margin: 5px; }
The “Box Model” Content Padding Margin Height .box { height:
50px; padding: 10px; margin: 5px; }
The “Box Model” Content Padding Margin Height .box { height:
50px; padding: 10px; margin: 5px; border: 2px; } Height
CSS
http://csszengarden.com
None
None
None
None
None
Process
None
None
<img src=”/map/image” /> <ul> <li><a href=”/map/move?dir=n”>North</a></li> <li><a href=”/map/move?dir=e”>East</a></li> <li><a href=”/map/move?dir=s”>South</a></li>
<li><a href=”/map/move?dir=w”>West</a></li> ... </ul> <ul> <li><a href=”/map/zoom?level=1”>Zoom Level 1</a></li> <li><a href=”/map/zoom?level=2”>Zoom Level 2</a></li> <li><a href=”/map/zoom?level=3”>Zoom Level 3</a></li> ... </ul>
None
None
None
Progressive Enhancement HTML Content CSS Presentation JS Behavior “No Frills”
“Dress it Up” “Make it Sing”
JavaScript & Ajax
None
Asynchronous JavaScript And XML
credit: http://www.lukew.com/resources/articles/ajax_design.asp
credit: http://www.lukew.com/resources/articles/ajax_design.asp
None
None
None
None
None
None
None
JavaScript Libraries Dojo http://dojotoolkit.org Prototype.js http://prototypejs.com jQuery http://jquery.org YUI http://developer.yahoo.com/yui
Usability
Fitts’ Law The time to acquire a target is a
function of the distance to and size of the target.
Usability Testing
A/B Testing
Yes No Submit Was this page helpful? Submit Why?
Submit Was this page helpful? Why?
Yes No Submit Was this page helpful? Submit Why? Submit
Was this page helpful? Why?
Accessibility Performance Security
Contact JavaScript Libraries Dojo - http://dojotoolkit.org/ jQuery - http://jquery.com/ YUI
- http://developer.yahoo.com/yui/ Prototype - http://prototypejs.org/
Learning from Others
Contact JavaScript Libraries Dojo - http://dojotoolkit.org/ jQuery - http://jquery.com/ YUI
- http://developer.yahoo.com/yui/ Prototype - http://prototypejs.org/
Tools Firefox http://getfirefox.com Web Developer Toolbar http://chrispederick.com/work/web-developer FireBug http://getfirebug.com YSlow
http://developer.yahoo.com/yslow
Resources The Web Standards Project http://webstandards.org http://streetteam.webstandards.org/goodbooks/ Designing with Web
Standards by Jeffery Zeldman
Resources A List Apart http://alistapart.com Ajaxian http://ajaxian.com QuirksMode http://quirksmode.org Yahoo
User Interface Blog http://yuiblog.com UIE Brainsparks http://www.uie.com/brainsparks
Contact Slides: http://markmeeker.com/events/ben2008 Email:
[email protected]
Blog: http://markmeeker.com