SlideShare une entreprise Scribd logo
1  sur  27
Télécharger pour lire hors ligne
component
                           Ruby Gems for the Browser




Thursday, 13 December 12
Tim Oxley
       •Twitter: @secoif
       •Github: github.com/timoxley
       •secoif@gmail.com




Thursday, 13 December 12
My Problems



Thursday, 13 December 12
Fragmentation



Thursday, 13 December 12
Vendor Lock-In



Thursday, 13 December 12
Useless Knowledge



Thursday, 13 December 12
Only Constant is Change



Thursday, 13 December 12
Leverage, don’t Lean



Thursday, 13 December 12
component
                            Liberate your code.




Thursday, 13 December 12
ruby gems for the browser



Thursday, 13 December 12
328 350 Components
                              As of this morning.




Thursday, 13 December 12
What is a Component?



Thursday, 13 December 12
A Small, Focused Module



Thursday, 13 December 12
component/inherit
                           module.exports = function(a, b){
                             var fn = function(){};
                             fn.prototype = b.prototype;
                             a.prototype = new fn;
                             a.prototype.constructor = a;
                           };



Thursday, 13 December 12
How are Components used?



Thursday, 13 December 12
require()



Thursday, 13 December 12
component/domify
                     var domify = require('domify')
                     domify('<p>Hello</p><p>World</p>')
                     // => [<p>Hello</p><p>World</p>]




Thursday, 13 December 12
ecosystem agnostic



Thursday, 13 December 12
Why not just use jQuery?



Thursday, 13 December 12
jQuery is a monopoly



Thursday, 13 December 12
Diversity leads to innovation



Thursday, 13 December 12
One size does not fit all



Thursday, 13 December 12
A world without jQuery?



Thursday, 13 December 12
More sharing



Thursday, 13 December 12
Open source all the things



Thursday, 13 December 12
errata.io



Thursday, 13 December 12
Questions?

                    https://github.com/component/component



                            My Twitters: @secoif

Thursday, 13 December 12

Contenu connexe

En vedette

Bush Computers Top 10 Free Programs
Bush Computers Top 10 Free ProgramsBush Computers Top 10 Free Programs
Bush Computers Top 10 Free ProgramsAndy Bush
 
Components vs Frameworks
Components vs FrameworksComponents vs Frameworks
Components vs FrameworksTimothy Oxley
 
Client vs Server Templating: Speed up initial load for SPA with Angular as an...
Client vs Server Templating: Speed up initial load for SPA with Angular as an...Client vs Server Templating: Speed up initial load for SPA with Angular as an...
Client vs Server Templating: Speed up initial load for SPA with Angular as an...David Amend
 
ES2015 / ES6: Basics of modern Javascript
ES2015 / ES6: Basics of modern JavascriptES2015 / ES6: Basics of modern Javascript
ES2015 / ES6: Basics of modern JavascriptWojciech Dzikowski
 
Intro to testing Javascript with jasmine
Intro to testing Javascript with jasmineIntro to testing Javascript with jasmine
Intro to testing Javascript with jasmineTimothy Oxley
 

En vedette (8)

Music1
Music1Music1
Music1
 
Bush Computers Top 10 Free Programs
Bush Computers Top 10 Free ProgramsBush Computers Top 10 Free Programs
Bush Computers Top 10 Free Programs
 
BrandSTIK- USB Flash Drives
BrandSTIK- USB Flash DrivesBrandSTIK- USB Flash Drives
BrandSTIK- USB Flash Drives
 
Components vs Frameworks
Components vs FrameworksComponents vs Frameworks
Components vs Frameworks
 
Modular vs Monolith
Modular vs MonolithModular vs Monolith
Modular vs Monolith
 
Client vs Server Templating: Speed up initial load for SPA with Angular as an...
Client vs Server Templating: Speed up initial load for SPA with Angular as an...Client vs Server Templating: Speed up initial load for SPA with Angular as an...
Client vs Server Templating: Speed up initial load for SPA with Angular as an...
 
ES2015 / ES6: Basics of modern Javascript
ES2015 / ES6: Basics of modern JavascriptES2015 / ES6: Basics of modern Javascript
ES2015 / ES6: Basics of modern Javascript
 
Intro to testing Javascript with jasmine
Intro to testing Javascript with jasmineIntro to testing Javascript with jasmine
Intro to testing Javascript with jasmine
 

Similaire à Ruby Gems for the Browser: Liberate Your Code

Augmented Reality with JavaScript and Appcelerator Titanium
Augmented Reality with JavaScript and Appcelerator TitaniumAugmented Reality with JavaScript and Appcelerator Titanium
Augmented Reality with JavaScript and Appcelerator TitaniumJeff Bonnes
 
iPad Apps for teachers
iPad Apps for teachersiPad Apps for teachers
iPad Apps for teachersRod Martin
 
JavaScript DOM Manipulations
JavaScript DOM ManipulationsJavaScript DOM Manipulations
JavaScript DOM ManipulationsYnon Perek
 
Educause - Building a Responsive Website for the Presidential Debate
Educause - Building a Responsive Website for the Presidential DebateEducause - Building a Responsive Website for the Presidential Debate
Educause - Building a Responsive Website for the Presidential DebateJon Liu
 
Cloud Messaging With Cloud Foundry
Cloud Messaging With Cloud FoundryCloud Messaging With Cloud Foundry
Cloud Messaging With Cloud FoundryAlvaro Videla
 
Presentatie Document lifecycle2012
Presentatie Document lifecycle2012Presentatie Document lifecycle2012
Presentatie Document lifecycle2012Vincent Everts
 
Potato02 ViewSticker作りました
Potato02 ViewSticker作りましたPotato02 ViewSticker作りました
Potato02 ViewSticker作りましたToshihiro Yagi
 
SEMLIB Final Conference | Net7 presentation
SEMLIB Final Conference | Net7 presentationSEMLIB Final Conference | Net7 presentation
SEMLIB Final Conference | Net7 presentationSemLib Project
 
GitHub Notable OSS Project
GitHub  Notable OSS ProjectGitHub  Notable OSS Project
GitHub Notable OSS Projectroumia
 
40 Drupal modules you should be using in 2013
40 Drupal modules you should be using in 201340 Drupal modules you should be using in 2013
40 Drupal modules you should be using in 2013Mariano
 
Software Libraries And Numbers
Software Libraries And NumbersSoftware Libraries And Numbers
Software Libraries And NumbersRobert Reiz
 
3 reasons to contribute to drupal florian loretan (eng)
3 reasons to contribute to drupal florian loretan (eng)3 reasons to contribute to drupal florian loretan (eng)
3 reasons to contribute to drupal florian loretan (eng)drupalconf
 
Custom Android Code Templates
Custom Android Code TemplatesCustom Android Code Templates
Custom Android Code Templatesmurphonic
 
OmniOS Motivation and Design ~ LISA 2012
OmniOS Motivation and Design ~ LISA 2012OmniOS Motivation and Design ~ LISA 2012
OmniOS Motivation and Design ~ LISA 2012Theo Schlossnagle
 
Baking Delicious Modularity in Scala
Baking Delicious Modularity in ScalaBaking Delicious Modularity in Scala
Baking Delicious Modularity in ScalaDerek Wyatt
 
iFixit @ Monterey Bay Aquarium
iFixit @ Monterey Bay AquariumiFixit @ Monterey Bay Aquarium
iFixit @ Monterey Bay AquariumKyle Wiens
 
Migrando do App Engine para o Heroku
Migrando do App Engine para o HerokuMigrando do App Engine para o Heroku
Migrando do App Engine para o HerokuFilipe Ximenes
 
Make something real for Firefox OS with Mozilla app templates
Make something real  for Firefox OS with Mozilla app templatesMake something real  for Firefox OS with Mozilla app templates
Make something real for Firefox OS with Mozilla app templatesPiotr Zalewa
 
Survive in iPhone App Store@GDC China 2010
Survive in iPhone App Store@GDC China 2010Survive in iPhone App Store@GDC China 2010
Survive in iPhone App Store@GDC China 2010Coconut Island
 

Similaire à Ruby Gems for the Browser: Liberate Your Code (20)

Augmented Reality with JavaScript and Appcelerator Titanium
Augmented Reality with JavaScript and Appcelerator TitaniumAugmented Reality with JavaScript and Appcelerator Titanium
Augmented Reality with JavaScript and Appcelerator Titanium
 
iPad Apps for teachers
iPad Apps for teachersiPad Apps for teachers
iPad Apps for teachers
 
JavaScript DOM Manipulations
JavaScript DOM ManipulationsJavaScript DOM Manipulations
JavaScript DOM Manipulations
 
Educause - Building a Responsive Website for the Presidential Debate
Educause - Building a Responsive Website for the Presidential DebateEducause - Building a Responsive Website for the Presidential Debate
Educause - Building a Responsive Website for the Presidential Debate
 
Cloud Messaging With Cloud Foundry
Cloud Messaging With Cloud FoundryCloud Messaging With Cloud Foundry
Cloud Messaging With Cloud Foundry
 
Presentatie Document lifecycle2012
Presentatie Document lifecycle2012Presentatie Document lifecycle2012
Presentatie Document lifecycle2012
 
Potato02 ViewSticker作りました
Potato02 ViewSticker作りましたPotato02 ViewSticker作りました
Potato02 ViewSticker作りました
 
SEMLIB Final Conference | Net7 presentation
SEMLIB Final Conference | Net7 presentationSEMLIB Final Conference | Net7 presentation
SEMLIB Final Conference | Net7 presentation
 
GitHub Notable OSS Project
GitHub  Notable OSS ProjectGitHub  Notable OSS Project
GitHub Notable OSS Project
 
40 Drupal modules you should be using in 2013
40 Drupal modules you should be using in 201340 Drupal modules you should be using in 2013
40 Drupal modules you should be using in 2013
 
Software Libraries And Numbers
Software Libraries And NumbersSoftware Libraries And Numbers
Software Libraries And Numbers
 
3 reasons to contribute to drupal florian loretan (eng)
3 reasons to contribute to drupal florian loretan (eng)3 reasons to contribute to drupal florian loretan (eng)
3 reasons to contribute to drupal florian loretan (eng)
 
Custom Android Code Templates
Custom Android Code TemplatesCustom Android Code Templates
Custom Android Code Templates
 
OmniOS Motivation and Design ~ LISA 2012
OmniOS Motivation and Design ~ LISA 2012OmniOS Motivation and Design ~ LISA 2012
OmniOS Motivation and Design ~ LISA 2012
 
Baking Delicious Modularity in Scala
Baking Delicious Modularity in ScalaBaking Delicious Modularity in Scala
Baking Delicious Modularity in Scala
 
Scrum version2
Scrum version2Scrum version2
Scrum version2
 
iFixit @ Monterey Bay Aquarium
iFixit @ Monterey Bay AquariumiFixit @ Monterey Bay Aquarium
iFixit @ Monterey Bay Aquarium
 
Migrando do App Engine para o Heroku
Migrando do App Engine para o HerokuMigrando do App Engine para o Heroku
Migrando do App Engine para o Heroku
 
Make something real for Firefox OS with Mozilla app templates
Make something real  for Firefox OS with Mozilla app templatesMake something real  for Firefox OS with Mozilla app templates
Make something real for Firefox OS with Mozilla app templates
 
Survive in iPhone App Store@GDC China 2010
Survive in iPhone App Store@GDC China 2010Survive in iPhone App Store@GDC China 2010
Survive in iPhone App Store@GDC China 2010
 

Ruby Gems for the Browser: Liberate Your Code