Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
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
100
WordPress: the Next Generation
ramiabraham
0
370
Creating Private Networks with BuddyPress
ramiabraham
0
110
Avoiding Dangerous Plugins and Themes
ramiabraham
1
490
Maintaining sites with Preventive Development
ramiabraham
0
520
Maintaining Sites with Preventive Development
ramiabraham
0
910
Other Decks in Programming
See All in Programming
FactoryBotをやめればRSpecは速くなるのか?
yuta_onishi_97
0
1.5k
React Native에 현대적인 빌드 도구 더하기: Rollipop 구현기
leegeunhyeok
0
180
あなたの await、OS まで届いてる? strace で覗く JavaScript の非同期
hasutosasaki
1
1.9k
オーケストレーション記述言語 Katari
yukikurage
0
220
高橋メソッドでCVE解説シリーズ 〜CVE-2026-112816〜
hakkadaikon
0
200
Vue.jsで作る空間解析アプリとCapacitorプラグインのData Bridge
hal_spidernight
1
160
Augmenting AI with the Power of Jakarta EE
ivargrimstad
0
560
複数ドメインを一つのアプリに統合するFlutterの設計と運用_FlutterKaigi2026登壇資料(須永高弘)
takahirosunaga
0
140
Inertia Rails: The One-Person Framework with React & Friends
skryukov
0
210
Zero-Tap Sign-In対応、結局何をすればいいの?
mitohato14
0
1.5k
Kotlinの15年とServer-Side Kotlin
n_takehata
1
190
TS 7.0 で baseUrl が使えなくなった今、パスエイリアスをどうするか
bicstone
2
470
Featured
See All Featured
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
So, you think you're a good person
axbom
PRO
2
2.2k
4 Signs Your Business is Dying
shpigford
187
23k
Ethics towards AI in product and experience design
skipperchong
2
460
Into the Great Unknown - MozCon
thekraken
41
2.8k
RailsConf 2023
tenderlove
30
1.6k
Design in an AI World
tapps
1
380
Writing Fast Ruby
sferik
630
63k
Crafting Experiences
bethany
1
420
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
50
10k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
10
1.4k
How to Talk to Developers About Accessibility
jct
2
610
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