SlideShare a Scribd company logo
1 of 33
Download to read offline
User-centric Development in the
Early Days of jQuery
John Resig
Early JS Libraries
• in 2004-2009 the market was very saturated
• Dojo Toolkit, Prototype, MochiKit, YUI, MooTools, jQuery
• All scratched similar itches (simplifying DOM manipulation)
Assume All Code is Equal…
• Given that all the code is “good enough”
• How do you differentiate a library?
• You focus on all the things that “aren’t code”
• Most of these are user-centric and require intimate knowledge of
how the user will use your framework
You are your own worst enemy
• Virtually every time someone stops using your library it’s your own
fault
• Something was not communicated clearly enough
• You had bugs that the user couldn’t overcome
• There were issues that the user didn’t understand and couldn’t find a
good answer to
What it all boils down to…
• Can you help your users overcome the initial hurdles they overcome
- and are you giving them room, and the resources, to grow?
• Put yourself in your user’s shoes — empathize with them!
The First Day: Can this help me?H
om
epage
View
Tutorial
D
ow
nload
TryTutorial
Experim
ent
The First Month: Learning
Integration
APID
ocs
Tutorials
Experim
ent
Com
m
unityThe FirstYear: Growth
SecondApp
ExploreAPI
ExtendAPI
Read
Source
Contribute
The First Day: Can this help me?H
om
epage
View
Tutorial
D
ow
nload
TryTutorial
Experim
ent
The First Month: Learning
Integration
APID
ocs
Tutorials
Experim
ent
Com
m
unityThe FirstYear: Growth
SecondApp
ExploreAPI
ExtendAPI
Read
Source
Contribute
Lack of Empathy -> 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 first impression
• Answer the questions:
• What is this?
• What can it do for me?
• Where can I go to learn more?
Download
• Make it super-easy, remove any barriers
• (We link straight to the source, no .zip)
Licensing
• Not a concern for more 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 us the MIT license for jQuery
• “Leave my name on the source file”
Getting Started Tutorial
• Clear, focused
• Assume no background knowledge
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 in API Design
• 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
• Provides places for users to ask
questions
• jQuery:
• Mailing list -> Forum
• IRC Channel
• External:
• Stack Overflow
• Twitter
• Blogs
Monitor Your Community
• Make sure that everyone is getting the help that they need
• Evangelism Team, was run by Rey Bango
• Track all of the services they use
• Mailing lists, IRC, Blogs, Twitter
Service
Treat every user as a potential, future, contributor.
Service
• Mike Alsup and Michael Geary both became long-time contributors!
Tracking Twitter
• Track people talking about the code
• Look for people having trouble, asking questions
Answer Questions
• It takes a lot of time but sometimes it’s not worth it
• You never know you 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 file a 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 official
docs 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 finish
Tutorials
Other “Secondary” Concerns
When Coding
Responsive Design
Internationalization
Accessibility
Performance/Bandwidth
Release Timing
Overview
• Help your users at every step of the way
• Track them and help the stragglers
• Help them grow and flourish
• Questions?
• jeresig@gmail.com
• http://ejohn.org/
• http://twitter.com/jeresig

More Related Content

More from jeresig

Does Coding Every Day Matter?
Does Coding Every Day Matter?Does Coding Every Day Matter?
Does Coding Every Day Matter?jeresig
 
Accidentally Becoming a Digital Librarian
Accidentally Becoming a Digital LibrarianAccidentally Becoming a Digital Librarian
Accidentally Becoming a Digital Librarianjeresig
 
2014: John's Favorite Thing (Neo4j)
2014: John's Favorite Thing (Neo4j)2014: John's Favorite Thing (Neo4j)
2014: John's Favorite Thing (Neo4j)jeresig
 
Computer Vision as Art Historical Investigation
Computer Vision as Art Historical InvestigationComputer Vision as Art Historical Investigation
Computer Vision as Art Historical Investigationjeresig
 
Hacking Art History
Hacking Art HistoryHacking Art History
Hacking Art Historyjeresig
 
Using JS to teach JS at Khan Academy
Using JS to teach JS at Khan AcademyUsing JS to teach JS at Khan Academy
Using JS to teach JS at Khan Academyjeresig
 
Applying Computer Vision to Art History
Applying Computer Vision to Art HistoryApplying Computer Vision to Art History
Applying Computer Vision to Art Historyjeresig
 
NYARC 2014: Frick/Zeri Results
NYARC 2014: Frick/Zeri ResultsNYARC 2014: Frick/Zeri Results
NYARC 2014: Frick/Zeri Resultsjeresig
 
EmpireJS: Hacking Art with Node js and Image Analysis
EmpireJS: Hacking Art with Node js and Image AnalysisEmpireJS: Hacking Art with Node js and Image Analysis
EmpireJS: Hacking Art with Node js and Image Analysisjeresig
 
Applying Computer Vision to Art History
Applying Computer Vision to Art HistoryApplying Computer Vision to Art History
Applying Computer Vision to Art Historyjeresig
 
Introduction to jQuery (Ajax Exp 2006)
Introduction to jQuery (Ajax Exp 2006)Introduction to jQuery (Ajax Exp 2006)
Introduction to jQuery (Ajax Exp 2006)jeresig
 
jQuery Recommendations to the W3C (2011)
jQuery Recommendations to the W3C (2011)jQuery Recommendations to the W3C (2011)
jQuery Recommendations to the W3C (2011)jeresig
 
jQuery Open Source Process (RIT 2011)
jQuery Open Source Process (RIT 2011)jQuery Open Source Process (RIT 2011)
jQuery Open Source Process (RIT 2011)jeresig
 
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
 
jQuery Mobile
jQuery MobilejQuery Mobile
jQuery Mobilejeresig
 
jQuery Open Source (Fronteer 2011)
jQuery Open Source (Fronteer 2011)jQuery Open Source (Fronteer 2011)
jQuery Open Source (Fronteer 2011)jeresig
 
Holistic JavaScript Performance
Holistic JavaScript PerformanceHolistic JavaScript Performance
Holistic JavaScript Performancejeresig
 
New Features Coming in Browsers (RIT '09)
New Features Coming in Browsers (RIT '09)New Features Coming in Browsers (RIT '09)
New Features Coming in Browsers (RIT '09)jeresig
 
Introduction to jQuery (Ajax Exp 2007)
Introduction to jQuery (Ajax Exp 2007)Introduction to jQuery (Ajax Exp 2007)
Introduction to jQuery (Ajax Exp 2007)jeresig
 
Advanced jQuery (Ajax Exp 2007)
Advanced jQuery (Ajax Exp 2007)Advanced jQuery (Ajax Exp 2007)
Advanced jQuery (Ajax Exp 2007)jeresig
 

More from jeresig (20)

Does Coding Every Day Matter?
Does Coding Every Day Matter?Does Coding Every Day Matter?
Does Coding Every Day Matter?
 
Accidentally Becoming a Digital Librarian
Accidentally Becoming a Digital LibrarianAccidentally Becoming a Digital Librarian
Accidentally Becoming a Digital Librarian
 
2014: John's Favorite Thing (Neo4j)
2014: John's Favorite Thing (Neo4j)2014: John's Favorite Thing (Neo4j)
2014: John's Favorite Thing (Neo4j)
 
Computer Vision as Art Historical Investigation
Computer Vision as Art Historical InvestigationComputer Vision as Art Historical Investigation
Computer Vision as Art Historical Investigation
 
Hacking Art History
Hacking Art HistoryHacking Art History
Hacking Art History
 
Using JS to teach JS at Khan Academy
Using JS to teach JS at Khan AcademyUsing JS to teach JS at Khan Academy
Using JS to teach JS at Khan Academy
 
Applying Computer Vision to Art History
Applying Computer Vision to Art HistoryApplying Computer Vision to Art History
Applying Computer Vision to Art History
 
NYARC 2014: Frick/Zeri Results
NYARC 2014: Frick/Zeri ResultsNYARC 2014: Frick/Zeri Results
NYARC 2014: Frick/Zeri Results
 
EmpireJS: Hacking Art with Node js and Image Analysis
EmpireJS: Hacking Art with Node js and Image AnalysisEmpireJS: Hacking Art with Node js and Image Analysis
EmpireJS: Hacking Art with Node js and Image Analysis
 
Applying Computer Vision to Art History
Applying Computer Vision to Art HistoryApplying Computer Vision to Art History
Applying Computer Vision to Art History
 
Introduction to jQuery (Ajax Exp 2006)
Introduction to jQuery (Ajax Exp 2006)Introduction to jQuery (Ajax Exp 2006)
Introduction to jQuery (Ajax Exp 2006)
 
jQuery Recommendations to the W3C (2011)
jQuery Recommendations to the W3C (2011)jQuery Recommendations to the W3C (2011)
jQuery Recommendations to the W3C (2011)
 
jQuery Open Source Process (RIT 2011)
jQuery Open Source Process (RIT 2011)jQuery Open Source Process (RIT 2011)
jQuery Open Source Process (RIT 2011)
 
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)
 
jQuery Mobile
jQuery MobilejQuery Mobile
jQuery Mobile
 
jQuery Open Source (Fronteer 2011)
jQuery Open Source (Fronteer 2011)jQuery Open Source (Fronteer 2011)
jQuery Open Source (Fronteer 2011)
 
Holistic JavaScript Performance
Holistic JavaScript PerformanceHolistic JavaScript Performance
Holistic JavaScript Performance
 
New Features Coming in Browsers (RIT '09)
New Features Coming in Browsers (RIT '09)New Features Coming in Browsers (RIT '09)
New Features Coming in Browsers (RIT '09)
 
Introduction to jQuery (Ajax Exp 2007)
Introduction to jQuery (Ajax Exp 2007)Introduction to jQuery (Ajax Exp 2007)
Introduction to jQuery (Ajax Exp 2007)
 
Advanced jQuery (Ajax Exp 2007)
Advanced jQuery (Ajax Exp 2007)Advanced jQuery (Ajax Exp 2007)
Advanced jQuery (Ajax Exp 2007)
 

Recently uploaded

The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfEnterprise Knowledge
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEarley Information Science
 
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?Igalia
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Igalia
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxKatpro Technologies
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?Antenna Manufacturer Coco
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...Neo4j
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 
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...Martijn de Jong
 
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...apidays
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfsudhanshuwaghmare1
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUK Journal
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc
 

Recently uploaded (20)

The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
 
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?
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
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...
 
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...
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 

User-centric Development in the Early Days of jQuery

  • 1. User-centric Development in the Early Days of jQuery John Resig
  • 2. Early JS Libraries • in 2004-2009 the market was very saturated • Dojo Toolkit, Prototype, MochiKit, YUI, MooTools, jQuery • All scratched similar itches (simplifying DOM manipulation)
  • 3. Assume All Code is Equal… • Given that all the code is “good enough” • How do you differentiate a library? • You focus on all the things that “aren’t code” • Most of these are user-centric and require intimate knowledge of how the user will use your framework
  • 4. You are your own worst enemy • Virtually every time someone stops using your library it’s your own fault • Something was not communicated clearly enough • You had bugs that the user couldn’t overcome • There were issues that the user didn’t understand and couldn’t find a good answer to
  • 5. What it all boils down to… • Can you help your users overcome the initial hurdles they overcome - and are you giving them room, and the resources, to grow? • Put yourself in your user’s shoes — empathize with them!
  • 6. The First Day: Can this help me?H om epage View Tutorial D ow nload TryTutorial Experim ent The First Month: Learning Integration APID ocs Tutorials Experim ent Com m unityThe FirstYear: Growth SecondApp ExploreAPI ExtendAPI Read Source Contribute
  • 7. The First Day: Can this help me?H om epage View Tutorial D ow nload TryTutorial Experim ent The First Month: Learning Integration APID ocs Tutorials Experim ent Com m unityThe FirstYear: Growth SecondApp ExploreAPI ExtendAPI Read Source Contribute
  • 8. Lack of Empathy -> Attrition Failure at any step costs your project another user. Your project is your own worst enemy.
  • 9. 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/
  • 10. Homepage • Set a good first impression • Answer the questions: • What is this? • What can it do for me? • Where can I go to learn more?
  • 11.
  • 12.
  • 13. Download • Make it super-easy, remove any barriers • (We link straight to the source, no .zip)
  • 14. Licensing • Not a concern for more 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 us the MIT license for jQuery • “Leave my name on the source file”
  • 15. Getting Started Tutorial • Clear, focused • Assume no background knowledge
  • 16. 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
  • 17. Simplicity in API Design • Simple APIs are king • Users understand quicker • Get started faster • Become advanced quicker
  • 18. 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
  • 19. Community Resources • Provides places for users to ask questions • jQuery: • Mailing list -> Forum • IRC Channel • External: • Stack Overflow • Twitter • Blogs
  • 20. Monitor Your Community • Make sure that everyone is getting the help that they need • Evangelism Team, was run by Rey Bango • Track all of the services they use • Mailing lists, IRC, Blogs, Twitter
  • 21. Service Treat every user as a potential, future, contributor.
  • 22. Service • Mike Alsup and Michael Geary both became long-time contributors!
  • 23. Tracking Twitter • Track people talking about the code • Look for people having trouble, asking questions
  • 24. Answer Questions • It takes a lot of time but sometimes it’s not worth it • You never know you could be having trouble
  • 25. 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 file a bugs - make sure that happens
  • 26. API Documentation • jQuery had API docs from the start (2006) • Two other major libraries: Dojo, Prototype didn’t have any official docs until 2007 • Clarity and usability of documentation is huge
  • 29. 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 finish
  • 31. Other “Secondary” Concerns When Coding Responsive Design Internationalization Accessibility Performance/Bandwidth
  • 33. Overview • Help your users at every step of the way • Track them and help the stragglers • Help them grow and flourish • Questions? • jeresig@gmail.com • http://ejohn.org/ • http://twitter.com/jeresig