SlideShare uma empresa Scribd logo
1 de 43
Baixar para ler offline
Open Source Success:
      jQuery
                  John Resig
 http://ejohn.org/ ! http://twitter.com/jeresig
jQuery
!   A JavaScript library designed to hide
    painful cross!browser compatibility issues
    while presenting a solid, usable, API.
Simple API
!   "#$div > span%&.addClass#$foo%&;
    ! $Find some elements%
    ! $Do something with them%

!   Makes complex manipulation of web pages
    simple
Points of Concern
!   Primary issues:
    ! Quality of API
    ! Quality of browser!issue!hiding

!   Other issues:
    ! Speed, community, licensing,
      development team, openness, test
      coverage, API documentation, tutorials,
      books, demos
Space
!   Highly competitive space
!   Released Jan. 2006 ! already a dominant
    player: Prototype JavaScript Library
!   #Bundled with Ruby on Rails, had some
    nice coattail growth.&
!   Other libraries: Dojo, Yahoo UI,
    MooTools
Success?
!   Personal Success vs. External Success
!   Personal Success #for me&
    ! Someone else uses the project and 'nds
      it useful
!   Some Numbers:
    ! Downloads
      ! jQuery 1.2.6: 40+ million downloads
      ! #People probably include it directly in
        their pages&
      ! Total: Over 180+ million downloads
Personal Success
!   Google Analytics
    ! 1.5 million+ unique monthly visitors
    ! 125,000+ per day


March ’09 to Dec ‘08: 50% Growth


March ’09 to Feb ‘09: 8% Growth
External Success
!   No solid numbers for JS Libraries
    ! Scripts not indexed by Google
    ! Sites behind intranets

!   A couple tools:
    ! Google Trends #Google searches for a
      term&
External Success
!   MAMA Opera
    ! An HTML search engine built by Opera
    ! Can search through script 'les
Things That Are Important
!   Technical
    ! API Design
      #Usability, documentation&
    ! Code Quality
      #Licensing, openness, test coverage&
!   Non!technical
    ! Community
      #Resources, responsiveness&
    ! Learning Aides
      #Tutorials, books, demos&
What it all boils down to...
!   How quickly can you get your user hooked
    ! and are you giving them room, and the
    resources, to grow?


!   Put yourself in your user(s shoes.
Se                                                In                                                        H
                           co                                                te                                                          om
                              n     dA                                            gr
                                                                                    at                                                        ep
                                                                                       io                                                         ag
                                         pp                                                 n                                                        e


                         Ex                                                                                                         Vi
                              pl                                           AP                                                         ew
                                or                                              ID                                                          Tu
                                  eA                                                   oc                                                     to
                                          PI                                              s                                                          ria
                                                                                                                                                           l
                                                                           Co                                                        D
                                                                                m                                                        ow
                         Ex                                                       m                                                           nl
                              te                                                   un                                                            o
                                   nd                                                 i     ty                                                     ad
                                        AP
                                           I

                                                                                                                                    Tr
                         Re
                                                                            Tu
                                                                              to                                                       y   Tu
                           ad                                                       ria                                                       tor
                                   So                                                    ls                                                          ial
                                        ur
                                          ce

The First Year: Growth
                                               The First Month: Learning
                                                                                                 The First Day: Can this help me?




                         Co
                               nt                                          Ex                                                       Ex
                                   rib                                       pe                                                       pe
                                        ut                                      r   im                                                      rim
                                          e                                              en                                                        en
                                                                                           t                                                           t
                                                                                                                                                               Watch the full process
Attrition
Failure at any step costs your project another user.

      Your project is your own worst enemy.
The First Day
 $After spending less than 3 hours reading blog posts
  and perusing the documentation I was able to do a
lot more in a lot less time then ever before. The huge
   community and neatly organized jQuery plugins
 make me feel like a sucker for not having jQuery for
                    my pet!project.%

  http://aleembawany.com/2009/01/16/switching!from!prototype!to!jquery/
Homepage
!   Set a good 'rst impression
!   Answer the questions:
    ! What is this?
    ! What can it do for me?
    ! Where can I go to learn more?
Getting Started Tutorial
!   Clear, focused
!   Assume no background knowledge
Download
!   Make it super!easy, remove any barriers
!   #We link straight to the source, no .zip&
Licensing
!   Not a concern for some of people
!   A huge concern for a lot of corporate users
!   Use the most!open license possible
    ! Fewest number of restrictions gives you
      the largest possible market
!   We use the MIT license for jQuery
    ! $Leave my name on the source 'le%
Try the Tutorial
!   ...and subsequent Experimentation
!   All about code quality
    ! For JavaScript libraries: Make sure your
      code is seamless across browsers
    ! For desktop apps: Is it truly cross!
      platform? Are there dependencies?
!   The user should never be forced to ask for
    help in order to get started
    ! Asking for help $getting started% is a
      failure case on your end
Simplicity
!   Simple APIs are king
!   Users understand quicker
!   Get started faster
!   Become advanced quicker
The First Month
$Alright I am now really really into jQuery. I used to
hate javascript. WHAT HAS HAPPENED HERE?
           Javascript people, speak to me.%

            http://twitter.com/_ralph/status/1123503553
Community Resources
!   Provide places for users to ask questions
!   jQuery:
    ! Mailing list
    ! IRC Channel

!   External:
    ! jQueryHelp.com Forum
    ! StackOver)ow.com
    ! Twitter
    ! Blogs
Monitor Your Community
!   Make sure that everyone is getting the
    help that they need
!   Evangelism Team, run by Rey Bango
!   Track all of the services they use
    ! Mailing List ! Subscribe to the mailing
      list
    ! IRC ! Sit in the IRC channel
    ! Blogs ! Use Technorati and Google Blog
      Search
    ! Twitter ! Use Twitter Search
Service
Treat every user as a potential, future, contributor.
Service




!   Today Mike Alsup and Michael Geary are
    part of the jQuery team
Twitter Tracking
!   Track people talking about the code:
    ! http://search.twitter.com/

!   Look for people having trouble, asking
    questions
Answer Questions
!   It takes a lot of time, but sometimes it(s
    really worth it
!   You never know who could be having
    trouble
Follow!up With Large Users
!   Maintain a list of contacts with your large
    users
!   Ping them every once in a while
!   Make sure that they(re having a good
    experience
!   They frequently forget to 'le bugs ! make
    sure that happens
API Documentation
!   jQuery had API docs from the start #2006&
!   Two other major libraries: Dojo, Prototype
    didn(t have any until 2007+
!   Clarity and usability of documentation is
    huge
API Example
Alternative Views
Learn More
!   Tutorials and Books
!   Tutorials are short and drive home a point
    or single topic
!   $Books% are more holistic and lead the
    reader from start to 'nish
Tutorials
The First Year
API Buy!in
!   Once users start using an API for an
    application they generally stick with it
!   Every new application is an opportunity to
    snag, or lose, a user
!   All boils down to attrition: Did your user
    have a good experience building the 'rst
    application?
Growth
You need to give users some place to grow to.
Open Process
!   Open Source is easy
    #just release the code
    and be done with it&
!   Open Process is hard
    #open source control,
    easy bug tracking&
!   A good process helps
    users learn
Extensibility
!   Your API isn(t perfect !
    it can(t include everything
    for everyone
!   Give users the ability to
    add their own functionality
!   jQuery has a healthy plugin
    community with hundreds
    of plugins.
!   Gives jQuery a huge leg up
    on other libraries.
Complex Applications
!   Users will attempt to build increasingly
    complex applications
!   Need to be there to help, otherwise they(ll
    leave for something else
!   jQuery UI ! A set of complex User
    Interface components.
jQuery UI
Contributions
!   How does a user become a contributor?
!   Encouragement is the biggest factor
    ! Encourage users to submit bug reports
    ! Encourage them to build test cases
    ! Encourage them to submit patches

!   Praise them when something good is done.
!   Communication is a huge factor here,
    $dead% bugs or mailing list threads cripple
    participation.
Overview
!   Help your users at every step of the way
!   Track them and help the stragglers
!   Help them grow and )ourish




!   Questions?
    ! jeresig@gmail.com
    ! http://ejohn.org/
    ! http://twitter.com/jeresig

Mais conteúdo relacionado

Mais procurados

Mais procurados (10)

Ipsos ASI: Once Upon a Brand
Ipsos ASI: Once Upon a BrandIpsos ASI: Once Upon a Brand
Ipsos ASI: Once Upon a Brand
 
2010 Honda Insight Hybrid
2010 Honda Insight Hybrid2010 Honda Insight Hybrid
2010 Honda Insight Hybrid
 
Open Source Success: jQuery
Open Source Success: jQueryOpen Source Success: jQuery
Open Source Success: jQuery
 
Water Related Expertise In Toronto Region July09 Final
Water Related Expertise In Toronto Region   July09 FinalWater Related Expertise In Toronto Region   July09 Final
Water Related Expertise In Toronto Region July09 Final
 
Resume Draft
Resume DraftResume Draft
Resume Draft
 
Austin Honda Insight Brochure 2010
Austin Honda Insight Brochure 2010Austin Honda Insight Brochure 2010
Austin Honda Insight Brochure 2010
 
Summer in the Hub
Summer in the HubSummer in the Hub
Summer in the Hub
 
Applied Physical Oceanography And Modeling
Applied Physical Oceanography And ModelingApplied Physical Oceanography And Modeling
Applied Physical Oceanography And Modeling
 
JESS3 Deck Jan10
JESS3 Deck Jan10JESS3 Deck Jan10
JESS3 Deck Jan10
 
세바시 15분 조재형 가톨릭의과대학 서울성모병원 내분비내과 조교수 - 우리 의학교과서의 세계진출, 그 15년의 기록
세바시 15분 조재형 가톨릭의과대학 서울성모병원 내분비내과 조교수 - 우리 의학교과서의 세계진출, 그 15년의 기록세바시 15분 조재형 가톨릭의과대학 서울성모병원 내분비내과 조교수 - 우리 의학교과서의 세계진출, 그 15년의 기록
세바시 15분 조재형 가톨릭의과대학 서울성모병원 내분비내과 조교수 - 우리 의학교과서의 세계진출, 그 15년의 기록
 

Destaque

Eugenio Quaini Eugenio - Stato di avanzamento dei progetti di ricerca di ab m...
Eugenio Quaini Eugenio - Stato di avanzamento dei progetti di ricerca di ab m...Eugenio Quaini Eugenio - Stato di avanzamento dei progetti di ricerca di ab m...
Eugenio Quaini Eugenio - Stato di avanzamento dei progetti di ricerca di ab m...
ab medica
 
NAMSA Presentation Slides
NAMSA Presentation SlidesNAMSA Presentation Slides
NAMSA Presentation Slides
Wen Hui Ho
 
Presentación1
Presentación1Presentación1
Presentación1
jh gjhh
 
cover letter_Paphitis Y.
cover letter_Paphitis Y.cover letter_Paphitis Y.
cover letter_Paphitis Y.
Yiannis Pafitis
 
Reed_HR_2015_Salary_Guide
Reed_HR_2015_Salary_GuideReed_HR_2015_Salary_Guide
Reed_HR_2015_Salary_Guide
Maddie Dakin
 
Paolo Ferrazzi - Il problema delle infezioni ospedaliere
Paolo Ferrazzi - Il problema delle infezioni ospedalierePaolo Ferrazzi - Il problema delle infezioni ospedaliere
Paolo Ferrazzi - Il problema delle infezioni ospedaliere
ab medica
 

Destaque (17)

Eugenio Quaini Eugenio - Stato di avanzamento dei progetti di ricerca di ab m...
Eugenio Quaini Eugenio - Stato di avanzamento dei progetti di ricerca di ab m...Eugenio Quaini Eugenio - Stato di avanzamento dei progetti di ricerca di ab m...
Eugenio Quaini Eugenio - Stato di avanzamento dei progetti di ricerca di ab m...
 
Ancillart task magazine
Ancillart task magazineAncillart task magazine
Ancillart task magazine
 
NAMSA Presentation Slides
NAMSA Presentation SlidesNAMSA Presentation Slides
NAMSA Presentation Slides
 
Presentación1
Presentación1Presentación1
Presentación1
 
Porfolio Page
Porfolio PagePorfolio Page
Porfolio Page
 
ROV Andy1
ROV Andy1ROV Andy1
ROV Andy1
 
AV Customs
AV CustomsAV Customs
AV Customs
 
Presentation1
Presentation1Presentation1
Presentation1
 
Minimanualrcomander
MinimanualrcomanderMinimanualrcomander
Minimanualrcomander
 
cover letter_Paphitis Y.
cover letter_Paphitis Y.cover letter_Paphitis Y.
cover letter_Paphitis Y.
 
Reed_HR_2015_Salary_Guide
Reed_HR_2015_Salary_GuideReed_HR_2015_Salary_Guide
Reed_HR_2015_Salary_Guide
 
L1 invención del ratón
L1 invención del ratónL1 invención del ratón
L1 invención del ratón
 
Comercio electrónico
Comercio electrónicoComercio electrónico
Comercio electrónico
 
Proyecto 46969
Proyecto 46969Proyecto 46969
Proyecto 46969
 
Symantec Solutions
Symantec SolutionsSymantec Solutions
Symantec Solutions
 
Paolo Ferrazzi - Il problema delle infezioni ospedaliere
Paolo Ferrazzi - Il problema delle infezioni ospedalierePaolo Ferrazzi - Il problema delle infezioni ospedaliere
Paolo Ferrazzi - Il problema delle infezioni ospedaliere
 
How to build a tech hiring ecosystem at scale | Talent Connect 2016
How to build a tech hiring ecosystem at scale | Talent Connect 2016How to build a tech hiring ecosystem at scale | Talent Connect 2016
How to build a tech hiring ecosystem at scale | Talent Connect 2016
 

Semelhante a ete2009-jquery-success-ete-1

jQuery Open Source Process (Knight Foundation 2011)
jQuery Open Source Process (Knight Foundation 2011)jQuery Open Source Process (Knight Foundation 2011)
jQuery Open Source Process (Knight Foundation 2011)
jeresig
 
Collec+Ive Master
Collec+Ive MasterCollec+Ive Master
Collec+Ive Master
producer
 
Designing learning spaces to meet the changing needs and expectations of stud...
Designing learning spaces to meet the changing needs and expectations of stud...Designing learning spaces to meet the changing needs and expectations of stud...
Designing learning spaces to meet the changing needs and expectations of stud...
Dan Munnerley
 
A Curious Course on Coroutines and Concurrency
A Curious Course on Coroutines and ConcurrencyA Curious Course on Coroutines and Concurrency
A Curious Course on Coroutines and Concurrency
Hiroshi Ono
 
Intalio Corporate Presentation (BPMS)
Intalio Corporate Presentation (BPMS)Intalio Corporate Presentation (BPMS)
Intalio Corporate Presentation (BPMS)
Fernando Gummà
 
2010 insight-hybrid-brochure
2010 insight-hybrid-brochure2010 insight-hybrid-brochure
2010 insight-hybrid-brochure
Burbank Honda
 

Semelhante a ete2009-jquery-success-ete-1 (20)

jQuery Open Source Process (Knight Foundation 2011)
jQuery Open Source Process (Knight Foundation 2011)jQuery Open Source Process (Knight Foundation 2011)
jQuery Open Source Process (Knight Foundation 2011)
 
Collec+Ive Master
Collec+Ive MasterCollec+Ive Master
Collec+Ive Master
 
Soffer CollectIve Master
Soffer CollectIve MasterSoffer CollectIve Master
Soffer CollectIve Master
 
Hit a Grand Slam with Legal Research
Hit a Grand Slam with Legal ResearchHit a Grand Slam with Legal Research
Hit a Grand Slam with Legal Research
 
Enterprise Collaboration: Can You Connect Social Learning and Business Perfor...
Enterprise Collaboration: Can You Connect Social Learning and Business Perfor...Enterprise Collaboration: Can You Connect Social Learning and Business Perfor...
Enterprise Collaboration: Can You Connect Social Learning and Business Perfor...
 
2010 Honda Insight Hybrid Virginia Beach
2010 Honda Insight Hybrid Virginia Beach2010 Honda Insight Hybrid Virginia Beach
2010 Honda Insight Hybrid Virginia Beach
 
Intalio Corporate Presentation
Intalio Corporate PresentationIntalio Corporate Presentation
Intalio Corporate Presentation
 
2010 Honda Insight Hybrid Los Angeles
2010 Honda Insight Hybrid Los Angeles2010 Honda Insight Hybrid Los Angeles
2010 Honda Insight Hybrid Los Angeles
 
Designing learning spaces to meet the changing needs and expectations of stud...
Designing learning spaces to meet the changing needs and expectations of stud...Designing learning spaces to meet the changing needs and expectations of stud...
Designing learning spaces to meet the changing needs and expectations of stud...
 
1
11
1
 
2010 Honda Insight Hybrid Los Angeles
2010 Honda Insight Hybrid Los Angeles2010 Honda Insight Hybrid Los Angeles
2010 Honda Insight Hybrid Los Angeles
 
A Curious Course on Coroutines and Concurrency
A Curious Course on Coroutines and ConcurrencyA Curious Course on Coroutines and Concurrency
A Curious Course on Coroutines and Concurrency
 
Intalio Corporate Presentation (BPMS)
Intalio Corporate Presentation (BPMS)Intalio Corporate Presentation (BPMS)
Intalio Corporate Presentation (BPMS)
 
Ras
RasRas
Ras
 
2010 Honda Insight Boston
2010 Honda Insight Boston2010 Honda Insight Boston
2010 Honda Insight Boston
 
2010 Honda Insight Hybrid San Leandro
2010 Honda Insight Hybrid San Leandro2010 Honda Insight Hybrid San Leandro
2010 Honda Insight Hybrid San Leandro
 
2010 Honda Insight Hybrid Omaha Nebraska
2010 Honda Insight Hybrid Omaha Nebraska2010 Honda Insight Hybrid Omaha Nebraska
2010 Honda Insight Hybrid Omaha Nebraska
 
2010 insight-hybrid-brochure-honda-katy-houston-tx
2010 insight-hybrid-brochure-honda-katy-houston-tx2010 insight-hybrid-brochure-honda-katy-houston-tx
2010 insight-hybrid-brochure-honda-katy-houston-tx
 
2010 Honda Insight Hybrid Sedan Brochure | DCH Honda of Temecula
 2010 Honda Insight Hybrid Sedan Brochure | DCH Honda of Temecula 2010 Honda Insight Hybrid Sedan Brochure | DCH Honda of Temecula
2010 Honda Insight Hybrid Sedan Brochure | DCH Honda of Temecula
 
2010 insight-hybrid-brochure
2010 insight-hybrid-brochure2010 insight-hybrid-brochure
2010 insight-hybrid-brochure
 

Mais de tutorialsruby

<img src="../i/r_14.png" />
<img src="../i/r_14.png" /><img src="../i/r_14.png" />
<img src="../i/r_14.png" />
tutorialsruby
 
TopStyle Help & <b>Tutorial</b>
TopStyle Help & <b>Tutorial</b>TopStyle Help & <b>Tutorial</b>
TopStyle Help & <b>Tutorial</b>
tutorialsruby
 
The Art Institute of Atlanta IMD 210 Fundamentals of Scripting <b>...</b>
The Art Institute of Atlanta IMD 210 Fundamentals of Scripting <b>...</b>The Art Institute of Atlanta IMD 210 Fundamentals of Scripting <b>...</b>
The Art Institute of Atlanta IMD 210 Fundamentals of Scripting <b>...</b>
tutorialsruby
 
<img src="../i/r_14.png" />
<img src="../i/r_14.png" /><img src="../i/r_14.png" />
<img src="../i/r_14.png" />
tutorialsruby
 
<img src="../i/r_14.png" />
<img src="../i/r_14.png" /><img src="../i/r_14.png" />
<img src="../i/r_14.png" />
tutorialsruby
 
Standardization and Knowledge Transfer – INS0
Standardization and Knowledge Transfer – INS0Standardization and Knowledge Transfer – INS0
Standardization and Knowledge Transfer – INS0
tutorialsruby
 
0047ecaa6ea3e9ac0a13a2fe96f4de3bfd515c88f5d90c1fae79b956363d7f02c7fa060269
0047ecaa6ea3e9ac0a13a2fe96f4de3bfd515c88f5d90c1fae79b956363d7f02c7fa0602690047ecaa6ea3e9ac0a13a2fe96f4de3bfd515c88f5d90c1fae79b956363d7f02c7fa060269
0047ecaa6ea3e9ac0a13a2fe96f4de3bfd515c88f5d90c1fae79b956363d7f02c7fa060269
tutorialsruby
 
0047ecaa6ea3e9ac0a13a2fe96f4de3bfd515c88f5d90c1fae79b956363d7f02c7fa060269
0047ecaa6ea3e9ac0a13a2fe96f4de3bfd515c88f5d90c1fae79b956363d7f02c7fa0602690047ecaa6ea3e9ac0a13a2fe96f4de3bfd515c88f5d90c1fae79b956363d7f02c7fa060269
0047ecaa6ea3e9ac0a13a2fe96f4de3bfd515c88f5d90c1fae79b956363d7f02c7fa060269
tutorialsruby
 
BloggingWithStyle_2008
BloggingWithStyle_2008BloggingWithStyle_2008
BloggingWithStyle_2008
tutorialsruby
 
BloggingWithStyle_2008
BloggingWithStyle_2008BloggingWithStyle_2008
BloggingWithStyle_2008
tutorialsruby
 
cascadingstylesheets
cascadingstylesheetscascadingstylesheets
cascadingstylesheets
tutorialsruby
 
cascadingstylesheets
cascadingstylesheetscascadingstylesheets
cascadingstylesheets
tutorialsruby
 

Mais de tutorialsruby (20)

<img src="../i/r_14.png" />
<img src="../i/r_14.png" /><img src="../i/r_14.png" />
<img src="../i/r_14.png" />
 
TopStyle Help & <b>Tutorial</b>
TopStyle Help & <b>Tutorial</b>TopStyle Help & <b>Tutorial</b>
TopStyle Help & <b>Tutorial</b>
 
The Art Institute of Atlanta IMD 210 Fundamentals of Scripting <b>...</b>
The Art Institute of Atlanta IMD 210 Fundamentals of Scripting <b>...</b>The Art Institute of Atlanta IMD 210 Fundamentals of Scripting <b>...</b>
The Art Institute of Atlanta IMD 210 Fundamentals of Scripting <b>...</b>
 
<img src="../i/r_14.png" />
<img src="../i/r_14.png" /><img src="../i/r_14.png" />
<img src="../i/r_14.png" />
 
<img src="../i/r_14.png" />
<img src="../i/r_14.png" /><img src="../i/r_14.png" />
<img src="../i/r_14.png" />
 
Standardization and Knowledge Transfer – INS0
Standardization and Knowledge Transfer – INS0Standardization and Knowledge Transfer – INS0
Standardization and Knowledge Transfer – INS0
 
xhtml_basics
xhtml_basicsxhtml_basics
xhtml_basics
 
xhtml_basics
xhtml_basicsxhtml_basics
xhtml_basics
 
xhtml-documentation
xhtml-documentationxhtml-documentation
xhtml-documentation
 
xhtml-documentation
xhtml-documentationxhtml-documentation
xhtml-documentation
 
CSS
CSSCSS
CSS
 
CSS
CSSCSS
CSS
 
0047ecaa6ea3e9ac0a13a2fe96f4de3bfd515c88f5d90c1fae79b956363d7f02c7fa060269
0047ecaa6ea3e9ac0a13a2fe96f4de3bfd515c88f5d90c1fae79b956363d7f02c7fa0602690047ecaa6ea3e9ac0a13a2fe96f4de3bfd515c88f5d90c1fae79b956363d7f02c7fa060269
0047ecaa6ea3e9ac0a13a2fe96f4de3bfd515c88f5d90c1fae79b956363d7f02c7fa060269
 
0047ecaa6ea3e9ac0a13a2fe96f4de3bfd515c88f5d90c1fae79b956363d7f02c7fa060269
0047ecaa6ea3e9ac0a13a2fe96f4de3bfd515c88f5d90c1fae79b956363d7f02c7fa0602690047ecaa6ea3e9ac0a13a2fe96f4de3bfd515c88f5d90c1fae79b956363d7f02c7fa060269
0047ecaa6ea3e9ac0a13a2fe96f4de3bfd515c88f5d90c1fae79b956363d7f02c7fa060269
 
HowTo_CSS
HowTo_CSSHowTo_CSS
HowTo_CSS
 
HowTo_CSS
HowTo_CSSHowTo_CSS
HowTo_CSS
 
BloggingWithStyle_2008
BloggingWithStyle_2008BloggingWithStyle_2008
BloggingWithStyle_2008
 
BloggingWithStyle_2008
BloggingWithStyle_2008BloggingWithStyle_2008
BloggingWithStyle_2008
 
cascadingstylesheets
cascadingstylesheetscascadingstylesheets
cascadingstylesheets
 
cascadingstylesheets
cascadingstylesheetscascadingstylesheets
cascadingstylesheets
 

Último

Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 

Último (20)

Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...
 
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu SubbuApidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectors
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptx
 

ete2009-jquery-success-ete-1

  • 1. Open Source Success: jQuery John Resig http://ejohn.org/ ! http://twitter.com/jeresig
  • 2. jQuery ! A JavaScript library designed to hide painful cross!browser compatibility issues while presenting a solid, usable, API.
  • 3. Simple API ! "#$div > span%&.addClass#$foo%&; ! $Find some elements% ! $Do something with them% ! Makes complex manipulation of web pages simple
  • 4. Points of Concern ! Primary issues: ! Quality of API ! Quality of browser!issue!hiding ! Other issues: ! Speed, community, licensing, development team, openness, test coverage, API documentation, tutorials, books, demos
  • 5. Space ! Highly competitive space ! Released Jan. 2006 ! already a dominant player: Prototype JavaScript Library ! #Bundled with Ruby on Rails, had some nice coattail growth.& ! Other libraries: Dojo, Yahoo UI, MooTools
  • 6. Success? ! Personal Success vs. External Success ! Personal Success #for me& ! Someone else uses the project and 'nds it useful ! Some Numbers: ! Downloads ! jQuery 1.2.6: 40+ million downloads ! #People probably include it directly in their pages& ! Total: Over 180+ million downloads
  • 7. Personal Success ! Google Analytics ! 1.5 million+ unique monthly visitors ! 125,000+ per day March ’09 to Dec ‘08: 50% Growth March ’09 to Feb ‘09: 8% Growth
  • 8. External Success ! No solid numbers for JS Libraries ! Scripts not indexed by Google ! Sites behind intranets ! A couple tools: ! Google Trends #Google searches for a term&
  • 9. External Success ! MAMA Opera ! An HTML search engine built by Opera ! Can search through script 'les
  • 10. Things That Are Important ! Technical ! API Design #Usability, documentation& ! Code Quality #Licensing, openness, test coverage& ! Non!technical ! Community #Resources, responsiveness& ! Learning Aides #Tutorials, books, demos&
  • 11. What it all boils down to... ! How quickly can you get your user hooked ! and are you giving them room, and the resources, to grow? ! Put yourself in your user(s shoes.
  • 12. Se In H co te om n dA gr at ep io ag pp n e Ex Vi pl AP ew or ID Tu eA oc to PI s ria l Co D m ow Ex m nl te un o nd i ty ad AP I Tr Re Tu to y Tu ad ria tor So ls ial ur ce The First Year: Growth The First Month: Learning The First Day: Can this help me? Co nt Ex Ex rib pe pe ut r im rim e en en t t Watch the full process
  • 13. Attrition Failure at any step costs your project another user. Your project is your own worst enemy.
  • 14. The First Day $After spending less than 3 hours reading blog posts and perusing the documentation I was able to do a lot more in a lot less time then ever before. The huge community and neatly organized jQuery plugins make me feel like a sucker for not having jQuery for my pet!project.% http://aleembawany.com/2009/01/16/switching!from!prototype!to!jquery/
  • 15. Homepage ! Set a good 'rst impression ! Answer the questions: ! What is this? ! What can it do for me? ! Where can I go to learn more?
  • 16.
  • 17. Getting Started Tutorial ! Clear, focused ! Assume no background knowledge
  • 18. Download ! Make it super!easy, remove any barriers ! #We link straight to the source, no .zip&
  • 19. Licensing ! Not a concern for some of people ! A huge concern for a lot of corporate users ! Use the most!open license possible ! Fewest number of restrictions gives you the largest possible market ! We use the MIT license for jQuery ! $Leave my name on the source 'le%
  • 20. Try the Tutorial ! ...and subsequent Experimentation ! All about code quality ! For JavaScript libraries: Make sure your code is seamless across browsers ! For desktop apps: Is it truly cross! platform? Are there dependencies? ! The user should never be forced to ask for help in order to get started ! Asking for help $getting started% is a failure case on your end
  • 21. Simplicity ! Simple APIs are king ! Users understand quicker ! Get started faster ! Become advanced quicker
  • 22. The First Month $Alright I am now really really into jQuery. I used to hate javascript. WHAT HAS HAPPENED HERE? Javascript people, speak to me.% http://twitter.com/_ralph/status/1123503553
  • 23. Community Resources ! Provide places for users to ask questions ! jQuery: ! Mailing list ! IRC Channel ! External: ! jQueryHelp.com Forum ! StackOver)ow.com ! Twitter ! Blogs
  • 24. Monitor Your Community ! Make sure that everyone is getting the help that they need ! Evangelism Team, run by Rey Bango ! Track all of the services they use ! Mailing List ! Subscribe to the mailing list ! IRC ! Sit in the IRC channel ! Blogs ! Use Technorati and Google Blog Search ! Twitter ! Use Twitter Search
  • 25. Service Treat every user as a potential, future, contributor.
  • 26. Service ! Today Mike Alsup and Michael Geary are part of the jQuery team
  • 27. Twitter Tracking ! Track people talking about the code: ! http://search.twitter.com/ ! Look for people having trouble, asking questions
  • 28. Answer Questions ! It takes a lot of time, but sometimes it(s really worth it ! You never know who could be having trouble
  • 29. Follow!up With Large Users ! Maintain a list of contacts with your large users ! Ping them every once in a while ! Make sure that they(re having a good experience ! They frequently forget to 'le bugs ! make sure that happens
  • 30. API Documentation ! jQuery had API docs from the start #2006& ! Two other major libraries: Dojo, Prototype didn(t have any until 2007+ ! Clarity and usability of documentation is huge
  • 33. Learn More ! Tutorials and Books ! Tutorials are short and drive home a point or single topic ! $Books% are more holistic and lead the reader from start to 'nish
  • 36. API Buy!in ! Once users start using an API for an application they generally stick with it ! Every new application is an opportunity to snag, or lose, a user ! All boils down to attrition: Did your user have a good experience building the 'rst application?
  • 37. Growth You need to give users some place to grow to.
  • 38. Open Process ! Open Source is easy #just release the code and be done with it& ! Open Process is hard #open source control, easy bug tracking& ! A good process helps users learn
  • 39. Extensibility ! Your API isn(t perfect ! it can(t include everything for everyone ! Give users the ability to add their own functionality ! jQuery has a healthy plugin community with hundreds of plugins. ! Gives jQuery a huge leg up on other libraries.
  • 40. Complex Applications ! Users will attempt to build increasingly complex applications ! Need to be there to help, otherwise they(ll leave for something else ! jQuery UI ! A set of complex User Interface components.
  • 42. Contributions ! How does a user become a contributor? ! Encouragement is the biggest factor ! Encourage users to submit bug reports ! Encourage them to build test cases ! Encourage them to submit patches ! Praise them when something good is done. ! Communication is a huge factor here, $dead% bugs or mailing list threads cripple participation.
  • 43. Overview ! Help your users at every step of the way ! Track them and help the stragglers ! Help them grow and )ourish ! Questions? ! jeresig@gmail.com ! http://ejohn.org/ ! http://twitter.com/jeresig