Professional Frontend Engineering

Nate Koechley
Nate KoechleyFrontend Engineer and Designer at Yahoo!
Professional Frontend
     Engineering
               Nate Koechley
          Senior Frontend Engineer
                   Yahoo!

natek@yahoo-inc.com | developer.yahoo.com/yui
    nate.koechley.com/blog | “natekoechley”
Why this topic?
Professional Frontend Engineering
• Put a stake in the
  ground.
• Reiterate our
  values.
• Advocate the
  discipline.
• Nurture a healthy
  Web.
Professional Frontend Engineering
Professional Frontend Engineering
Historical
Perspective
Historical   Our Beliefs
Perspective   & Principles
Historical    Our Beliefs
Perspective    & Principles


 Knowledge
Areas & Best
  Practices
Historical    Our Beliefs
Perspective    & Principles


 Knowledge
               Why It All
Areas & Best
               Matters
  Practices
Historical
Perspective
Professional Frontend Engineering
Professional Frontend Engineering
Professional Frontend Engineering
Professional Frontend Engineering
Professional Frontend Engineering
Professional Frontend Engineering
Professional Frontend Engineering
Year = 2001
Age = 7 years
Employees = 3000
Frontend
Engineers = 0
So?
2001
First frontend engineering
      specialists hired.
2008
~700 professional frontend
 engineers spread across
  Y! offices worldwide.

     And hiring!!!
2001
Font tags & nested tables.

     Static interface.
2008
Semantic & accessible markup.

Rich DHTML & Ajax behavior.

More content. Same fast speed.
2001
Available and accessible to
         everyone.
2008
Available and accessible to
         everyone.
2001
Plain but predictable.
2008
Highly visual and adaptive, but
       still dependable.
2001
Modest user expectations.
2008
  Sophisticated, broad, and
non-trivial user expectations.
2001
Intersection of design and
 development still vague.
Now
    Professional Frontend
   Engineers focused at the
  intersection of design and
development is a best practice.
—Irene Au, SVP of UED at Yahoo!
“In 2001, with developments in advanced
   JavaScript and DHTML, we knew the web
  experience would evolve beyond the static
pages we were producing. We brought in web
developers to help us pioneer Yahoo’s offerings
     to include a more dynamic, interactive
           experience for our users.”
              —Irene Au, SVP of UED at Yahoo!
—Irene Au, SVP of UED at Yahoo!
“... Another motivation was to bring in a
     disciplined frontend programming
     practice to Yahoo. Before then, the
presentation, behavior, and structure of
our pages were not separate, which led
 to many challenges and inefficiencies in
designing and developing our products.”
           —Irene Au, SVP of UED at Yahoo!
Professional Frontend Engineering
Professional Frontend Engineering
“The Framers of the Web
 saw browser differences
as beneficial and believed
   that visitors should
choose how their browser
   displays the page...”
Professional Frontend Engineering
“...I wanted more control
   so I threw my HTML
  book in the trash and
  started from scratch.”
The Web is
 still sick.
Frontend Engineers are
the Web’s Radiologists
Question:

What is Frontend
Engineering?
Answer:

We write software
in JavaScript, CSS,
and HTML & more...
Answer:

We tell browsers
what to do.
Answer:

We’re responsible
for “view source”
The Yahoo! Stack
      Pages & modules
          95% HTML, 5% PHP


     Display logic & APIs
         50% HTML, 50% PHP


    Specific PHP biz logic
          90% PHP, 10% Text


 Generic PHP functions & libs
             100% PHP


      C/C++ Libraries.
         90% C/C++, 10% PHP
The Yahoo! Stack
     Pages & modules
                               Frontend
         95% HTML, 5% PHP


    Display logic & APIs
        50% HTML, 50% PHP


   Specific PHP biz logic
         90% PHP, 10% Text


Generic PHP functions & libs
            100% PHP           Backend
     C/C++ Libraries.
        90% C/C++, 10% PHP
The Yahoo! Stack
     Pages & modules
                               Frontend
         95% HTML, 5% PHP


    Display logic & APIs
        50% HTML, 50% PHP


   Specific PHP biz logic
         90% PHP, 10% Text


Generic PHP functions & libs
            100% PHP           Backend
     C/C++ Libraries.
        90% C/C++, 10% PHP
SIMPLE?
no.
server
(X)HTML




 server
(X)HTML

          Specification




 server
(X)HTML

           Specification
          Implementation




 server
(X)HTML

           Specification
          Implementation
               Bugs




 server
(X)HTML

              Specification
             Implementation
                  Bugs
          [ Theory / Practice ]




 server
CSS

                          BOM API
(X)HTML    DOM                      JavaScript
                          DOM API

              Specification




                                    Data Transport
                                                     data: custom, xml,


                                                     mixed: new xhtml
             Implementation




                                                              json
                                                     behavior: js
                  Bugs
          [ Theory / Practice ]




 server
Safari    Firefox    Opera   IE5, 6, 7    Firefox   Opera       10,000+ UAs
         Macintosh                       Windows              Linux, Unix, Mobile


                                CSS

                                                    BOM API
     (X)HTML                  DOM                                JavaScript
                                                    DOM API

                                 Specification




                                                                 Data Transport
                                                                                  data: custom, xml,


                                                                                  mixed: new xhtml
                                Implementation




                                                                                           json
                                                                                  behavior: js
                                     Bugs
                             [ Theory / Practice ]




         server
Safari    Firefox    Opera   IE5, 6, 7   Firefox   Opera        10,000+ UAs
         Macintosh                       Windows             Linux, Unix, Mobile


                                CSS

                                                   BOM API
     (X)HTML                   DOM                               JavaScript
                                                   DOM API




                                 Specification




                                                                                   data: custom, xml,


                                                                                   mixed: new xhtml,
                                                                  Data Transport
                                Implementation




                                                                                   behavior: js
                                                                                          json
                                    Defects
                             [ Theory / Practice ]




           server
Safari    Firefox    Opera   IE5, 6, 7   Firefox   Opera        10,000+ UAs
         Macintosh                       Windows             Linux, Unix, Mobile


             knowledge areas: 7
                    CSS


     (X)HTML
                     dimensions: xJavaScript
                    DOM
                                      4            BOM API


                                                   DOM API


                        platforms: x 3
                     Specification




                                                                                   data: custom, xml,


                                                                                   mixed: new xhtml,
     browsers perDefects platform: x 4




                                                                  Data Transport
                   Implementation




                                                                                   behavior: js
                                                                                          json
             rendering modes: x 2
                [ Theory / Practice ]




           server
               =672
Professional Frontend Engineering
usability, internationalization,
    localization, visual design,
  accessibility, information
   architecture, security, build
   processes, performance,
benchmarking, devices, portability
from Lifted
©2007 Pixar Animation Studios
Different from Backend
      because we:

• Can’t compile.
• Can’t trust.
• Can’t predict.
• Can’t install or store.
• Can’t hide anything!
Douglas Crockford on browsers:

       “The most hostile
    software development
   environment imaginable.”
If your business is online...
   your value depends on
   Frontend Engineering.
Elegant algorithms benefit users
   through interfaces built by
      Frontend Engineers.
Every gorgeous design is
brought to life by Frontend
        Engineers.
Frontend engineers give sites
    strength & resilience,
   appearance & form, and
 functionality & interactivity.
...which is why professional
   frontend engineering is
    critical for success.
Historical   Our Beliefs
Perspective   & Principles
Four Guiding Principles
1) Availability
Availability:
Maximize availability, accessibility
and utility of content and services
for all users worldwide.
2) Openness
Openness:
Share. Learn. Support. Advocate.
We benefit from a healthy Internet.
3) Richness
Richness:
Provide, but not too much.
Layer endlessly.
Remember we are not average.
4) Stability
Stability:
The Web is young.
Invest in quality.
Prepare for the future.
Four Guiding Principles

• Availability
• Openness
• Richness
• Stability
Three Core Techniques
1) Graded Browser
     Support
http://developer.yahoo.com/yui/articles/gbs/
“Support” does not
  mean identical.
“Support” is not a
  binary choice.
Three Support Grades
Three Support Grades
C-Grade
  •   Blacklist (of incapable browsers)
  •   Withhold CSS & JavaScript
Three Support Grades
C-Grade
  •   Blacklist (of incapable browsers)
  •   Withhold CSS & JavaScript
A-Grade
  •   Whitelist (of capable browsers tested)
  •   Serve CSS & JavaScript
Three Support Grades
C-Grade
  •   Blacklist (of incapable browsers)
  •   Withhold CSS & JavaScript
A-Grade
  •   Whitelist (of capable browsers tested)
  •   Serve CSS & JavaScript
X-Grade
  •   Everybody else. 
  •   Serve CSS & JavaScript
A-Grade Support
http://developer.yahoo.com/yui/articles/gbs
C-Grade Experience
A-Grade Experience
C-Grade Experience
A-Grade Experience
2) Progressive
Enhancement
Rules of Progressive
   Enhancement
Rules of Progressive
       Enhancement
•   Enrich content with thorough, explicit markup.
Rules of Progressive
       Enhancement
•   Enrich content with thorough, explicit markup.

•   Test core functionality with HTML only.
Rules of Progressive
       Enhancement
•   Enrich content with thorough, explicit markup.

•   Test core functionality with HTML only.

•   Enhance layout via externally linked CSS.
Rules of Progressive
       Enhancement
•   Enrich content with thorough, explicit markup.

•   Test core functionality with HTML only.

•   Enhance layout via externally linked CSS.

•   Enhance behavior via externally linked
    unobtrusive JavaScript.
Rules of Progressive
       Enhancement
•   Enrich content with thorough, explicit markup.

•   Test core functionality with HTML only.

•   Enhance layout via externally linked CSS.

•   Enhance behavior via externally linked
    unobtrusive JavaScript.

•   Respect end-user browser preferences.
Flipped definition of
“graceful degradation”
3) Unobtrusive JavaScript
http://onlinetools.org/articles/unobtrusivejavascript/
Rules of Unobtrusive
      JavaScript
Rules of Unobtrusive
          JavaScript
•   No JavaScript in HTML documents.
Rules of Unobtrusive
          JavaScript
•   No JavaScript in HTML documents.

•   Don’t depend on or trust JavaScript.
Rules of Unobtrusive
          JavaScript
•   No JavaScript in HTML documents.

•   Don’t depend on or trust JavaScript.

•   Poke objects before using them.
Rules of Unobtrusive
          JavaScript
•   No JavaScript in HTML documents.

•   Don’t depend on or trust JavaScript.

•   Poke objects before using them.

•   Write JavaScript, not dialects.
Rules of Unobtrusive
          JavaScript
•   No JavaScript in HTML documents.

•   Don’t depend on or trust JavaScript.

•   Poke objects before using them.

•   Write JavaScript, not dialects.

•   Mind your manners with vars & scope.
Rules of Unobtrusive
          JavaScript
•   No JavaScript in HTML documents.

•   Don’t depend on or trust JavaScript.

•   Poke objects before using them.

•   Write JavaScript, not dialects.

•   Mind your manners with vars & scope.

•   Support multiple event triggers.
Don’t Break the Web!

href=“#”
href=“javascript:foo()”
onclick=“foo()”
Three Core Techniques
• Graded Browser
 Support

• Progressive
 Enhancement

• Unobtrusive
 JavaScript
Making Decisions
Making Decisions (1)
1. Do what is standard.
  if impossible, then:

2. Do what is common.
  if impossible, then:

3. Do what it takes.
Making Decisions (2)
1. Do what is simple.
  ✚
2. Do what is flexible & progressive.
  ✚
3. Do what is open.
Making Decisions (3)

•   Remember you have multiples
    audiences to satisfy:
    •   Users
    •   Developers
    •   Machines
Historical    Our Beliefs
Perspective    & Principles


 Knowledge
Areas & Best
  Practices
8 Areas of Focus
1. HTML                   6. Performance

2. CSS                    7. Infrastructure &
                             Process
3. JavaScript
                          8. Tooling
4. Accessibility

5. Internationalization
oc us
F
  #1



         HTML
Focus: Be thorough.
<label>
<fieldset>
<cite>
<caption>
<thead>
<th scope=”row” abbr=”ManU”>
<ins datetime=”2008-05-30”>
Aim for permanence.
Switching costs
  are rising.
oc us
F
  #2



         CSS
Focus on the left side.
selector: declaration;
selector: declaration;
Focus: Specificity
   great selectors are an
expression of professionalism
h1: declaration;
#mod h1: declaration;
div#mod h1: declaration;
body.cart #mod h1.class a:
       declaration;
#mod ul li li: declaration;
Focus: Maintenance
  think about how sites age
oc us
F
  #3



         JavaScript
JavaScript


• Quality
• Security
1) Quality
Linting

• Use programs like JSLint (jslint.org) to
  confirm the quality of your code.
• Adopt the idioms it promotes to improve
  your code quality.
Unit Testing w/ YUI Test
•   Rapid creation of test cases via simple syntax.

•   Advanced failure detection for methods that
    throw errors.

•   Grouping of related test cases using test suites.

•   Asynchronous tests for testing events and Ajax
    communication.

•   DOM Event simulation in all A-grade browsers.
Profiling

• Learn where to improve your code.
• Programmatically retrieve profiling
  information as the application is running.
• Determine unit-testing success based on
  profiling results.
JavaScript Pollution

• Do not mutate JavaScript itself.
• Do protect yourself from browsers.
• Minimize touchpoints between authors and
  vendors so vendors can iterate faster.
2) Security
JavaScript Security

• Beware of XSS
• Never Trust Data from the Client
• Monitor AdSafe/Caja Developments
oc us
F
  #4



         Accessibility
ARIA
Decoupled Events
oc us
F
  #5



   Internationalization
Begin serving all .css
  and .js at UTF-8
@charset quot;
oc us
F
  #6



         Performance
14 then. 8 more today.
<link> not @import


•   Because @import
    overrides the browsers’
    native performance
    sequencing.
Avoid Redirects

• 3xx status codes – mostly 301 and 302
  HTTP/1.1 301 Moved Permanently
  Location: http://yahoo.com/newuri

• Cache redirects via Expires headers
• Redirects are worst
  form of blocking
Use Cookie-Free
 Domains For Assets.
• Serving static cacheable assets from a
  distinct domains keeps cookies from riding
  along with all requests.
  yimg.com
  images-amazon.com
  fbcdn.net
Preload Assets
Preload Assets

1. Unconditional preload - always w/ onload
  Example: google.com’s sprite
Preload Assets

1. Unconditional preload - always w/ onload
  Example: google.com’s sprite

2. Conditional preload - based on user action
  Ex: search.yahoo.com’s Search Assist
Preload Assets

1. Unconditional preload - always w/ onload
  Example: google.com’s sprite

2. Conditional preload - based on user action
  Ex: search.yahoo.com’s Search Assist

3. Anticipated preload - give redesigns a boost
Optimize CSS Sprites
Optimize CSS Sprites
1. Horizontal alignment is usually smaller than
   vertical.
Optimize CSS Sprites
1. Horizontal alignment is usually smaller than
   vertical.
2. Combine similar colors in a sprite to
   minimize color count.
  Only 256 colors can fit in a PNG8.
Optimize CSS Sprites
1. Horizontal alignment is usually smaller than
   vertical.
2. Combine similar colors in a sprite to
   minimize color count.
  Only 256 colors can fit in a PNG8.

3. Avoid unnecessarily large gaps between
   parts of the sprite.
GET for Ajax Requests

• POST is a two-step process.
• GET can send in one packet.
• Use if possible, but max payload is 2K in IE.
Keep Focusing on Events

1. Event Delegation to reduce total number
2. Don’t always wait for onLoad
 • YUI Event has onAvailable,
    onContentReady, & onDomReady
iPhone Tip

• iPhone will not cache assets larger than 25K
  • That’s 25K uncompressed.
  • Only 19 total items in cache.
• http://yuiblog.com/blog/2008/02/06/iphone-
  cacheability/
oc us
F
  #7


         Infrastructure &
              Process
Build Process
Documentation
three versions of each member
*.js
*-debug.js
*-min.js
What Is YUI?
oc us
F
  #8



         Tooling
Need More Progress.
But there’s been some:

• JSLint, JScript Debugger, Firebug, Debug Bar,
  Fiddler, Charles, HTTP Live Headers,
  DragonFly, Visual Studio 2008
• YUI Logger, YUI Test, and YUI Profiler
Historical    Our Beliefs
Perspective    & Principles


 Knowledge
               Why It All
Areas & Best
               Matters
  Practices
There’s a lot of
work to be done.
We need more
people doing it.
The health of the
internet depends on it.
The health of our
businesses and passions
     depends on it.
We must stay vigilant.
We must defend users.
Go forth with this in
       mind:
Be Tireless
Trendsetters of Quality
                   Be active.
             Find the way forward.
                    Educate.
Be Belligerent
Gatekeepers of Quality
             Do not accept less.
             Do not cut corners.
Exhibit Stubborn
Empathy for Users
          We’re the last line of
               defense!
Let’s keep talking...
       nate@koechley.com
http://nate.koechley.com/blog
      “natekoechley”
CC Images Used
•   http://www.flickr.com/photos/dideo/407360526/sizes/l/

•   http://www.flickr.com/photos/jenniferbuehrer/113554568/sizes/l/

•   http://www.flickr.com/photos/peteashton/290691658/sizes/l/

•   http://www.flickr.com/photos/pedjap/101230548/sizes/o/

•   http://www.flickr.com/photos/songtuyuri/2200100451/sizes/o/

•   http://www.flickr.com/photos/dominik99/1403329318/sizes/o/

•   http://www.flickr.com/photos/cuellar/482993472/sizes/o/
nate@koechley.com
http://nate.koechley.com/blog

          natekoechley         = twitter,
delicious, flickr, tripit, last.fm, linkedin,
fireeagle, friendfeed, ... everywhere.
1 of 201

Recommended

Why we chose mongodb for guardian.co.uk by
Why we chose mongodb for guardian.co.ukWhy we chose mongodb for guardian.co.uk
Why we chose mongodb for guardian.co.ukGraham Tackley
35.3K views49 slides
Web Apps atop a Content Repository by
Web Apps atop a Content RepositoryWeb Apps atop a Content Repository
Web Apps atop a Content RepositoryGabriel Walt
1.1K views13 slides
Crx 2.2 Deep-Dive by
Crx 2.2 Deep-DiveCrx 2.2 Deep-Dive
Crx 2.2 Deep-DiveGabriel Walt
2.4K views17 slides
Apache Etch Introduction @ FOSDEM 2011 by
Apache Etch Introduction @ FOSDEM 2011Apache Etch Introduction @ FOSDEM 2011
Apache Etch Introduction @ FOSDEM 2011grandyho
16.4K views10 slides
CQ 5.4 Deep-Dive by
CQ 5.4 Deep-DiveCQ 5.4 Deep-Dive
CQ 5.4 Deep-DiveGabriel Walt
4.1K views27 slides
Optimizing HTML5 Sites with CQ5/WEM by
Optimizing HTML5 Sites with CQ5/WEMOptimizing HTML5 Sites with CQ5/WEM
Optimizing HTML5 Sites with CQ5/WEMGabriel Walt
5.1K views26 slides

More Related Content

What's hot

Three WEM Dev Tricks by
Three WEM Dev TricksThree WEM Dev Tricks
Three WEM Dev TricksGabriel Walt
2.4K views27 slides
JAX 2012: Moderne Architektur mit Spring und JavaScript by
JAX 2012: Moderne Architektur mit Spring und JavaScriptJAX 2012: Moderne Architektur mit Spring und JavaScript
JAX 2012: Moderne Architektur mit Spring und JavaScriptmartinlippert
2.2K views30 slides
facebook architecture for 600M users by
facebook architecture for 600M usersfacebook architecture for 600M users
facebook architecture for 600M usersJongyoon Choi
72K views60 slides
HTML5 Refresher by
HTML5 RefresherHTML5 Refresher
HTML5 RefresherIvano Malavolta
1.4K views66 slides
Web servicesoverview by
Web servicesoverviewWeb servicesoverview
Web servicesoverviewPrabhat gangwar
357 views64 slides
HTML5 and the dawn of rich mobile web applications pt 1 by
HTML5 and the dawn of rich mobile web applications pt 1HTML5 and the dawn of rich mobile web applications pt 1
HTML5 and the dawn of rich mobile web applications pt 1James Pearce
7.4K views91 slides

What's hot(20)

Three WEM Dev Tricks by Gabriel Walt
Three WEM Dev TricksThree WEM Dev Tricks
Three WEM Dev Tricks
Gabriel Walt2.4K views
JAX 2012: Moderne Architektur mit Spring und JavaScript by martinlippert
JAX 2012: Moderne Architektur mit Spring und JavaScriptJAX 2012: Moderne Architektur mit Spring und JavaScript
JAX 2012: Moderne Architektur mit Spring und JavaScript
martinlippert2.2K views
facebook architecture for 600M users by Jongyoon Choi
facebook architecture for 600M usersfacebook architecture for 600M users
facebook architecture for 600M users
Jongyoon Choi72K views
HTML5 and the dawn of rich mobile web applications pt 1 by James Pearce
HTML5 and the dawn of rich mobile web applications pt 1HTML5 and the dawn of rich mobile web applications pt 1
HTML5 and the dawn of rich mobile web applications pt 1
James Pearce7.4K views
MVC Demystified: Essence of Ruby on Rails by codeinmotion
MVC Demystified: Essence of Ruby on RailsMVC Demystified: Essence of Ruby on Rails
MVC Demystified: Essence of Ruby on Rails
codeinmotion21.4K views
Software architectures for the cloud by Georgios Gousios
Software architectures for the cloudSoftware architectures for the cloud
Software architectures for the cloud
Georgios Gousios516 views
Technology stack behind Airbnb by Rohan Khude
Technology stack behind Airbnb Technology stack behind Airbnb
Technology stack behind Airbnb
Rohan Khude17.8K views
Responsive Websites and Grid-Based Layouts by Gabriel Walt by AEM HUB
Responsive Websites and Grid-Based Layouts by Gabriel Walt Responsive Websites and Grid-Based Layouts by Gabriel Walt
Responsive Websites and Grid-Based Layouts by Gabriel Walt
AEM HUB653 views
Engineering the New LinkedIn Profile by Josh Clemm
Engineering the New LinkedIn ProfileEngineering the New LinkedIn Profile
Engineering the New LinkedIn Profile
Josh Clemm18.6K views
Ajax In Enterprise Portals Wesley Hales by rajivmordani
Ajax In Enterprise Portals Wesley HalesAjax In Enterprise Portals Wesley Hales
Ajax In Enterprise Portals Wesley Hales
rajivmordani637 views
Project Fedena and Why Ruby on Rails - ArvindArvind G S by ThoughtWorks
Project Fedena and Why Ruby on Rails - ArvindArvind G SProject Fedena and Why Ruby on Rails - ArvindArvind G S
Project Fedena and Why Ruby on Rails - ArvindArvind G S
ThoughtWorks3.1K views
Servletarchitecture,lifecycle,get,post by vamsi krishna
Servletarchitecture,lifecycle,get,postServletarchitecture,lifecycle,get,post
Servletarchitecture,lifecycle,get,post
vamsi krishna2.6K views
Social Photos - My presentation at Microsoft Tech Day by TechMaster Vietnam
Social Photos - My presentation at Microsoft Tech DaySocial Photos - My presentation at Microsoft Tech Day
Social Photos - My presentation at Microsoft Tech Day
TechMaster Vietnam1.3K views
전문가토크릴레이 1탄 html5 전망 (전종홍 박사) by Saltlux zinyus
전문가토크릴레이 1탄 html5 전망 (전종홍 박사)전문가토크릴레이 1탄 html5 전망 (전종홍 박사)
전문가토크릴레이 1탄 html5 전망 (전종홍 박사)
Saltlux zinyus2.2K views

Viewers also liked

Go-To-Market Strategy - Entrepreneurship 101 (2012/2013) by
Go-To-Market Strategy - Entrepreneurship 101 (2012/2013)Go-To-Market Strategy - Entrepreneurship 101 (2012/2013)
Go-To-Market Strategy - Entrepreneurship 101 (2012/2013)MaRS Discovery District
83.4K views26 slides
Environmental Impact Assessment (EIA) report on Rampal 1320MW coal-based powe... by
Environmental Impact Assessment (EIA) report on Rampal 1320MW coal-based powe...Environmental Impact Assessment (EIA) report on Rampal 1320MW coal-based powe...
Environmental Impact Assessment (EIA) report on Rampal 1320MW coal-based powe...Probir Bidhan
42.9K views676 slides
Web Trends to Watch in 2014 by
Web Trends to Watch in 2014Web Trends to Watch in 2014
Web Trends to Watch in 2014David King
162.1K views74 slides
Schedule Review by
Schedule ReviewSchedule Review
Schedule ReviewChris Carson
17.7K views61 slides
BUSINESS QUIZ -Round 1 by
 BUSINESS QUIZ -Round 1 BUSINESS QUIZ -Round 1
BUSINESS QUIZ -Round 1pradeep acharya
137.1K views65 slides
10 Digital Hacks Every Marketer Should Know by
10 Digital Hacks Every Marketer Should Know10 Digital Hacks Every Marketer Should Know
10 Digital Hacks Every Marketer Should KnowMark Fidelman
79.4K views90 slides

Viewers also liked(20)

Environmental Impact Assessment (EIA) report on Rampal 1320MW coal-based powe... by Probir Bidhan
Environmental Impact Assessment (EIA) report on Rampal 1320MW coal-based powe...Environmental Impact Assessment (EIA) report on Rampal 1320MW coal-based powe...
Environmental Impact Assessment (EIA) report on Rampal 1320MW coal-based powe...
Probir Bidhan42.9K views
Web Trends to Watch in 2014 by David King
Web Trends to Watch in 2014Web Trends to Watch in 2014
Web Trends to Watch in 2014
David King162.1K views
Schedule Review by Chris Carson
Schedule ReviewSchedule Review
Schedule Review
Chris Carson17.7K views
BUSINESS QUIZ -Round 1 by pradeep acharya
 BUSINESS QUIZ -Round 1 BUSINESS QUIZ -Round 1
BUSINESS QUIZ -Round 1
pradeep acharya137.1K views
10 Digital Hacks Every Marketer Should Know by Mark Fidelman
10 Digital Hacks Every Marketer Should Know10 Digital Hacks Every Marketer Should Know
10 Digital Hacks Every Marketer Should Know
Mark Fidelman79.4K views
Understanding text-structure-powerpoint by aelowans
Understanding text-structure-powerpointUnderstanding text-structure-powerpoint
Understanding text-structure-powerpoint
aelowans105.7K views
Size exclusion chromatography by Mandvi Shandilya
Size exclusion chromatographySize exclusion chromatography
Size exclusion chromatography
Mandvi Shandilya152.9K views
4. heredity and evolution by Abhay Goyal
4. heredity and evolution4. heredity and evolution
4. heredity and evolution
Abhay Goyal69.8K views
Listing presentation Dawn Bahr by Dawn Bahr
Listing presentation Dawn BahrListing presentation Dawn Bahr
Listing presentation Dawn Bahr
Dawn Bahr153.9K views
Fintech and Transformation of the Financial Services Industry by Robin Teigland
Fintech and Transformation of the Financial Services IndustryFintech and Transformation of the Financial Services Industry
Fintech and Transformation of the Financial Services Industry
Robin Teigland104.1K views
Deep Learning through Examples by Sri Ambati
Deep Learning through ExamplesDeep Learning through Examples
Deep Learning through Examples
Sri Ambati150.6K views
Stress At Work (Tips to Reduce and Manage Job and Workplace Stress) by Jodie Harper
Stress At Work (Tips to Reduce and Manage Job and Workplace Stress)Stress At Work (Tips to Reduce and Manage Job and Workplace Stress)
Stress At Work (Tips to Reduce and Manage Job and Workplace Stress)
Jodie Harper37.1K views
Introduction to Building Wireframes (with OmniGraffle) by Erin 'Folletto' Casali
Introduction to Building Wireframes (with OmniGraffle)Introduction to Building Wireframes (with OmniGraffle)
Introduction to Building Wireframes (with OmniGraffle)
OpenDaylight app development tutorial by SDN Hub
OpenDaylight app development tutorialOpenDaylight app development tutorial
OpenDaylight app development tutorial
SDN Hub34.9K views
Correlation and regression by Khalid Aziz
Correlation and regressionCorrelation and regression
Correlation and regression
Khalid Aziz59K views
DepEd Order No. 47 s. 2014: CONSTITUTION AND BY - LAWS OF THE SUPREME PUPIL G... by Jared Ram Juezan
DepEd Order No. 47 s. 2014: CONSTITUTION AND BY - LAWS OF THE SUPREME PUPIL G...DepEd Order No. 47 s. 2014: CONSTITUTION AND BY - LAWS OF THE SUPREME PUPIL G...
DepEd Order No. 47 s. 2014: CONSTITUTION AND BY - LAWS OF THE SUPREME PUPIL G...
Jared Ram Juezan82.6K views
Digital Brief 003 - Market Report Q2 2015 by LUMA Partners
Digital Brief 003 - Market Report Q2 2015Digital Brief 003 - Market Report Q2 2015
Digital Brief 003 - Market Report Q2 2015
LUMA Partners27.8K views

Similar to Professional Frontend Engineering

Professional Frontend Engineering by
Professional Frontend EngineeringProfessional Frontend Engineering
Professional Frontend EngineeringCheton Wu
505 views201 slides
YUI by
YUIYUI
YUIJoseph Chiang
1.8K views259 slides
Front end engineering, YUI Gallery, and your future by
Front end engineering, YUI Gallery, and your futureFront end engineering, YUI Gallery, and your future
Front end engineering, YUI Gallery, and your futureLuke Smith
1.8K views46 slides
Yui3 by
Yui3Yui3
Yui3Luke Smith
1.7K views94 slides
YUI Introduction @ NCTU by
YUI Introduction @ NCTUYUI Introduction @ NCTU
YUI Introduction @ NCTUJoseph Chiang
2.2K views249 slides
The YUI Library (Yahoo! Course @NCU) by
The YUI Library (Yahoo! Course @NCU)The YUI Library (Yahoo! Course @NCU)
The YUI Library (Yahoo! Course @NCU)Joseph Chiang
1.2K views98 slides

Similar to Professional Frontend Engineering(20)

Professional Frontend Engineering by Cheton Wu
Professional Frontend EngineeringProfessional Frontend Engineering
Professional Frontend Engineering
Cheton Wu505 views
Front end engineering, YUI Gallery, and your future by Luke Smith
Front end engineering, YUI Gallery, and your futureFront end engineering, YUI Gallery, and your future
Front end engineering, YUI Gallery, and your future
Luke Smith1.8K views
YUI Introduction @ NCTU by Joseph Chiang
YUI Introduction @ NCTUYUI Introduction @ NCTU
YUI Introduction @ NCTU
Joseph Chiang2.2K views
The YUI Library (Yahoo! Course @NCU) by Joseph Chiang
The YUI Library (Yahoo! Course @NCU)The YUI Library (Yahoo! Course @NCU)
The YUI Library (Yahoo! Course @NCU)
Joseph Chiang1.2K views
Extending XForms with Server-Side Functionality by Markku Laine
Extending XForms with Server-Side FunctionalityExtending XForms with Server-Side Functionality
Extending XForms with Server-Side Functionality
Markku Laine1.3K views
Building Cross Platform Mobile Web Apps by James Pearce
Building Cross Platform Mobile Web AppsBuilding Cross Platform Mobile Web Apps
Building Cross Platform Mobile Web Apps
James Pearce3K views
Polysource It Profile by elenarys
Polysource It ProfilePolysource It Profile
Polysource It Profile
elenarys277 views
Poly Source It Profile by moseskhedi
Poly Source It ProfilePoly Source It Profile
Poly Source It Profile
moseskhedi317 views
Polysource-IT Profile by Helen
Polysource-IT ProfilePolysource-IT Profile
Polysource-IT Profile
Helen211 views
Polysource-IT Profile by Helen
Polysource-IT ProfilePolysource-IT Profile
Polysource-IT Profile
Helen371 views
Beyond HTML: Tools for Building Web 2.0 Apps by Marcos Caceres
Beyond HTML: Tools for Building Web 2.0 AppsBeyond HTML: Tools for Building Web 2.0 Apps
Beyond HTML: Tools for Building Web 2.0 Apps
Marcos Caceres1.4K views
Building cross platform mobile web apps by James Pearce
Building cross platform mobile web appsBuilding cross platform mobile web apps
Building cross platform mobile web apps
James Pearce1.3K views
Mozilla In Malaysia by Gen Kanai
Mozilla In MalaysiaMozilla In Malaysia
Mozilla In Malaysia
Gen Kanai1.2K views
Cross platform mobile web apps by James Pearce
Cross platform mobile web appsCross platform mobile web apps
Cross platform mobile web apps
James Pearce14K views
Java Framework for Database-Centric Web Engineering by Beat Signer
Java Framework for Database-Centric Web EngineeringJava Framework for Database-Centric Web Engineering
Java Framework for Database-Centric Web Engineering
Beat Signer1.5K views
CharlesSweetResume06155122015 by Charlie Sweet
CharlesSweetResume06155122015CharlesSweetResume06155122015
CharlesSweetResume06155122015
Charlie Sweet244 views

Recently uploaded

Five Things You SHOULD Know About Postman by
Five Things You SHOULD Know About PostmanFive Things You SHOULD Know About Postman
Five Things You SHOULD Know About PostmanPostman
38 views43 slides
Automating a World-Class Technology Conference; Behind the Scenes of CiscoLive by
Automating a World-Class Technology Conference; Behind the Scenes of CiscoLiveAutomating a World-Class Technology Conference; Behind the Scenes of CiscoLive
Automating a World-Class Technology Conference; Behind the Scenes of CiscoLiveNetwork Automation Forum
43 views35 slides
ESPC 2023 - Protect and Govern your Sensitive Data with Microsoft Purview in ... by
ESPC 2023 - Protect and Govern your Sensitive Data with Microsoft Purview in ...ESPC 2023 - Protect and Govern your Sensitive Data with Microsoft Purview in ...
ESPC 2023 - Protect and Govern your Sensitive Data with Microsoft Purview in ...Jasper Oosterveld
27 views49 slides
PRODUCT PRESENTATION.pptx by
PRODUCT PRESENTATION.pptxPRODUCT PRESENTATION.pptx
PRODUCT PRESENTATION.pptxangelicacueva6
18 views1 slide
STPI OctaNE CoE Brochure.pdf by
STPI OctaNE CoE Brochure.pdfSTPI OctaNE CoE Brochure.pdf
STPI OctaNE CoE Brochure.pdfmadhurjyapb
14 views1 slide
Evolving the Network Automation Journey from Python to Platforms by
Evolving the Network Automation Journey from Python to PlatformsEvolving the Network Automation Journey from Python to Platforms
Evolving the Network Automation Journey from Python to PlatformsNetwork Automation Forum
17 views21 slides

Recently uploaded(20)

Five Things You SHOULD Know About Postman by Postman
Five Things You SHOULD Know About PostmanFive Things You SHOULD Know About Postman
Five Things You SHOULD Know About Postman
Postman38 views
Automating a World-Class Technology Conference; Behind the Scenes of CiscoLive by Network Automation Forum
Automating a World-Class Technology Conference; Behind the Scenes of CiscoLiveAutomating a World-Class Technology Conference; Behind the Scenes of CiscoLive
Automating a World-Class Technology Conference; Behind the Scenes of CiscoLive
ESPC 2023 - Protect and Govern your Sensitive Data with Microsoft Purview in ... by Jasper Oosterveld
ESPC 2023 - Protect and Govern your Sensitive Data with Microsoft Purview in ...ESPC 2023 - Protect and Govern your Sensitive Data with Microsoft Purview in ...
ESPC 2023 - Protect and Govern your Sensitive Data with Microsoft Purview in ...
STPI OctaNE CoE Brochure.pdf by madhurjyapb
STPI OctaNE CoE Brochure.pdfSTPI OctaNE CoE Brochure.pdf
STPI OctaNE CoE Brochure.pdf
madhurjyapb14 views
Webinar : Desperately Seeking Transformation - Part 2: Insights from leading... by The Digital Insurer
Webinar : Desperately Seeking Transformation - Part 2:  Insights from leading...Webinar : Desperately Seeking Transformation - Part 2:  Insights from leading...
Webinar : Desperately Seeking Transformation - Part 2: Insights from leading...
【USB韌體設計課程】精選講義節錄-USB的列舉過程_艾鍗學院 by IttrainingIttraining
【USB韌體設計課程】精選講義節錄-USB的列舉過程_艾鍗學院【USB韌體設計課程】精選講義節錄-USB的列舉過程_艾鍗學院
【USB韌體設計課程】精選講義節錄-USB的列舉過程_艾鍗學院
"Node.js Development in 2024: trends and tools", Nikita Galkin by Fwdays
"Node.js Development in 2024: trends and tools", Nikita Galkin "Node.js Development in 2024: trends and tools", Nikita Galkin
"Node.js Development in 2024: trends and tools", Nikita Galkin
Fwdays17 views
STKI Israeli Market Study 2023 corrected forecast 2023_24 v3.pdf by Dr. Jimmy Schwarzkopf
STKI Israeli Market Study 2023   corrected forecast 2023_24 v3.pdfSTKI Israeli Market Study 2023   corrected forecast 2023_24 v3.pdf
STKI Israeli Market Study 2023 corrected forecast 2023_24 v3.pdf
Case Study Copenhagen Energy and Business Central.pdf by Aitana
Case Study Copenhagen Energy and Business Central.pdfCase Study Copenhagen Energy and Business Central.pdf
Case Study Copenhagen Energy and Business Central.pdf
Aitana17 views
TrustArc Webinar - Managing Online Tracking Technology Vendors_ A Checklist f... by TrustArc
TrustArc Webinar - Managing Online Tracking Technology Vendors_ A Checklist f...TrustArc Webinar - Managing Online Tracking Technology Vendors_ A Checklist f...
TrustArc Webinar - Managing Online Tracking Technology Vendors_ A Checklist f...
TrustArc72 views
Unit 1_Lecture 2_Physical Design of IoT.pdf by StephenTec
Unit 1_Lecture 2_Physical Design of IoT.pdfUnit 1_Lecture 2_Physical Design of IoT.pdf
Unit 1_Lecture 2_Physical Design of IoT.pdf
StephenTec15 views
Igniting Next Level Productivity with AI-Infused Data Integration Workflows by Safe Software
Igniting Next Level Productivity with AI-Infused Data Integration Workflows Igniting Next Level Productivity with AI-Infused Data Integration Workflows
Igniting Next Level Productivity with AI-Infused Data Integration Workflows
Safe Software317 views
Business Analyst Series 2023 - Week 3 Session 5 by DianaGray10
Business Analyst Series 2023 -  Week 3 Session 5Business Analyst Series 2023 -  Week 3 Session 5
Business Analyst Series 2023 - Week 3 Session 5
DianaGray10345 views

Professional Frontend Engineering