Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Uncommon Javascript Libraries
Search
ramiabraham
October 18, 2014
Programming
610
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Uncommon Javascript Libraries
Talk given at WordCamp Baltimore 2014
ramiabraham
October 18, 2014
More Decks by ramiabraham
See All by ramiabraham
JavaScript in WordPress: A Crash Course
ramiabraham
0
92
WordPress: the Next Generation
ramiabraham
0
360
Creating Private Networks with BuddyPress
ramiabraham
0
100
Avoiding Dangerous Plugins and Themes
ramiabraham
1
490
Maintaining sites with Preventive Development
ramiabraham
0
520
Maintaining Sites with Preventive Development
ramiabraham
0
900
Other Decks in Programming
See All in Programming
今さら聞けない .NET CLI
htkym
0
180
アルゴリズムは何を圧縮しているのか ─ Haskell から育った「圧縮代数」というメンタルモデル
naoya
16
3.8k
AIが無かった頃の素敵な出会いの話
codmoninc
1
380
使いながら育てる Claude Code — 開発フローの1コマンド化 × 繰り返し指摘の自動仕組み化
shiki_kakaku
0
1.7k
VibeCodingからAgenticWorkflowへ
starfish719
0
230
プロポーザルを書いてもらう
pvcresin
0
160
Claude CodeとAgentCore Gatewayを繋ぐ際の認証認可 / Authentication and authorization when connecting Claude Code with AgentCore Gateway
har1101
1
200
『コードを書く以外の』エンジニアリング〜課金基盤移行プロジェクト推進のためのTips4選
yuriko1211
0
570
FDEが実現するAI駆動経営の現在地
gonta
2
260
使用 Meilisearch 建立新聞搜尋工具
johnroyer
0
220
Laravel Boostに学ぶ、AIにPHPを書かせる技術 〜OSSの実装から蒸留するエージェント制御の王道〜
kentaroutakeda
3
660
ITヒヤリハットを整理してみた ~ライフサイクルと原因から考える再発防止策~
koukimiura
1
140
Featured
See All Featured
Impact Scores and Hybrid Strategies: The future of link building
tamaranovitovic
0
360
The Cult of Friendly URLs
andyhume
79
7k
The Art of Programming - Codeland 2020
erikaheidi
57
14k
brightonSEO & MeasureFest 2025 - Christian Goodrich - Winning strategies for Black Friday CRO & PPC
cargoodrich
3
760
The B2B funnel & how to create a winning content strategy
katarinadahlin
PRO
1
460
Highjacked: Video Game Concept Design
rkendrick25
PRO
1
430
Groundhog Day: Seeking Process in Gaming for Health
codingconduct
0
270
Utilizing Notion as your number one productivity tool
mfonobong
4
500
The Invisible Side of Design
smashingmag
301
52k
The Spectacular Lies of Maps
axbom
PRO
1
890
Bash Introduction
62gerente
615
220k
Navigating the Design Leadership Dip - Product Design Week Design Leaders+ Conference 2024
apolaine
1
390
Transcript
hi
Uncommon JavaScript Libraries in WordPress @RamiAbraham rami.nu/WCBalt2014
Libraries not used in ‘typical’ development. What do you mean
“uncommon”?
Ok, but what is “typical development”?
I don’t know.
Parse data from objects Add/remove attributes of nodes Add/remove nodes
Populate nodes Animate nodes Validate data Make something wiggle a little on :hover Time Travel Some common JavaScript tasks:
None
But I try to live by these wise words... JavaScript
can do anything.
“Never do with JavaScript what you can with... not JavaScript.”
- Abraham Lincoln
A few libraries we’re all familiar with: jQuery Grunt and
Gulp MooTools Chosen Backbone Angular Ember Scriptaculous ...yadda yadda who cares
There are two primary reasons ...to use an unfamiliar JavaScript
library...
1. Use a different approach to solve a recurring problem.
Why? Learn something new. - Consider a fresh approach to
an old problem - Learn new skills - Have fun - Learning - Learn - Learn stuff - Learn things about stuff
2. The new library is required by the project.
Ok, but what’s included in core?
Let’s take a look...
jQuery (core, multiple sub-libraries) jQuery UI (core, multiple sub-libraries) Thickbox
Iris MediaElement TinyMCE Underscore Backbone ..and some others, as well as core js, such as media-upload, admin-gallery, wp-ajax-response
There are many. Check out the wp_scripts global.
Whenever possible, use core. Don’t leave the house for milk
if there’s already perfectly good milk in your refrigerator.
However, core might not be what the project needs.
Here are some fancy use-cases. One possible solution will follow,
in the form of a cool JavaScript library.
Use Case: “I need this data to be represented as
an infinite landscape of constantly- scrolling waffles”
Sure, I’ll use Three.js. also I’ll need a deposit of
twenty-thousand dollars
Use Case: “I need a detailed, scrolling timeline of events”
Timeline.js
Use Case: “I need to make a complex, multi-thread timeline-based
animation”
Greensock Animation Platform
Use Case: “I need safe, reliable form validation”
Use Gravity Forms, what’s wrong with you
j/k, sometimes it needs to be custom Parsley is a
popular option for form validation.
Use Case: “I need a library that generates a fart
sound when a user scrolls up or down a page”
Wow. Maybe talk with your client.
But yes, there’s a library for that.
Ok, no more examples.
What are some risks? How weird can this get?
Risks: Things to ask when adding a library Does core
have a version of this library already?
Risks: Things to ask when adding a library Does core
have a version of this library already? Yes?
Risks: Things to ask when adding a library Does core
have a version of this library already? Yes? Yes?
Risks: Things to ask when adding a library Does core
have a version of this library already? Yes? Yes? It does?
Then what are you doing?
Then what are you doing? .......is it jQuery?
Is it jQuery?
Is it jQuery? IS IT????!
ARE YOU ENQUEUEING YOUR OWN JQUERY?!?
(Please don’t do that)
“Search through core before adding more.” - Burt Reynolds
Risks: Things to ask when adding a library How will
this affect DOM scope?
Risks: Things to ask when adding a library How late
can I defer loading?
Risks: Things to ask when adding a library Should I
consider a no-js fallback?
developer ...and Director of Snarky Comments about Slider Plugins @RamiAbraham
rami.nu/WCBalt2014
Thank you. k bye @RamiAbraham