SlideShare une entreprise Scribd logo
1  sur  102
Télécharger pour lire hors ligne
Conquering the Server Side with Node.JS

      StartTechConf 2011         Caridy Patiño
                                 Search Direct Team
                                 YUI Evangelist
                                 YUI Contributor

                                 caridy@yahoo-inc.com
                                 @caridy




Saturday, November 5, 2011
Saturday, November 5, 2011
La industria esta cambiando
                                muy rápido




Saturday, November 5, 2011
Chrome + V8




Saturday, November 5, 2011
Internet de alta velocidad




Saturday, November 5, 2011
Coulds / Nubes




Saturday, November 5, 2011
WebApps & Apps




Saturday, November 5, 2011
Almazenamiento Másivo




Saturday, November 5, 2011
La web en tiempo real




Saturday, November 5, 2011
Y esto se traduce en...




Saturday, November 5, 2011
Peaks / Picos




Saturday, November 5, 2011
Concurrencia




Saturday, November 5, 2011
Concurrencia




Saturday, November 5, 2011
Saturday, November 5, 2011
ut
                                  O
                              old
                             S


   Microsoft VBScript compilation error ‘800a03e9′
   Out of memory
   /LM/W3SVC/600510919/Root/dStore/http://global.asa, line 0



Saturday, November 5, 2011
Desempeño




Saturday, November 5, 2011
Soluciones...




Saturday, November 5, 2011
Más servidores




Saturday, November 5, 2011
Más servidores




                                 $$$$$

Saturday, November 5, 2011
Nubes Elásticas




Saturday, November 5, 2011
Wow Amazon EC2 Is Expensive For Start Ups

                 “With EC2, I would pay 30 days * 24 hours * $0.1 * 1.19 (tax) = $85.
                        And that does not take into account backup space (S3),
                              traffic and true persistent storage (EBS) yet.”




Saturday, November 5, 2011
Delegar procesos hacia el cliente




Saturday, November 5, 2011
Saturday, November 5, 2011
Node.JS




Saturday, November 5, 2011
Server Side JavaScript
                                     (SSJS)




Saturday, November 5, 2011
NarwhalJS           RingoJS




                       Wakanda
                                  Rhino   Akshell




Saturday, November 5, 2011
Nuestros sistemas operativos y lenguajes derivan de los
               sistemas diseñados para teletipos.




Saturday, November 5, 2011
Las plataformas modernas de software siguen imitando
                     estas interfaces antiguas.




Saturday, November 5, 2011
“Blocking system call” is a call into the kernel which waits for
          some I/O to complete before before returning. Blocking syscalls
               introduce unbounded latency into the current thread.




Saturday, November 5, 2011
Los procesos son buenos para mantener unidades
           aisladas. Sin embargo, son demasiado pesados como
                  para dedicarle una conexión completa.




Saturday, November 5, 2011
Uno de los objetivos principales de Node es hacer
          accesible la programación sin bloqueo para aquellos
                      usuario que no son expertos.
Saturday, November 5, 2011
Node ha tenido éxito en poner
                             servidor de alto desempeño al
                             alcance de los programadores
                             utilizando una API sin bloqueos




Saturday, November 5, 2011
Un solo stack por cada proceso




Saturday, November 5, 2011
Node.JS solo tiene 2.5
                             años de edad.

                             La version 0.6 es la 3ra
                             iteración estable.




Saturday, November 5, 2011
Saturday, November 5, 2011
HTTP benchmark con 100 clientes concurrentes
                             en OSX 10.6



             - v0.2.6 5330 req/sec
             - v0.4.12 5552 req/sec
             - v0.5.10 5803 req/se




Saturday, November 5, 2011
Por qué Javascript?




Saturday, November 5, 2011
Javascript es el lenguaje
                                  del navegador




Saturday, November 5, 2011
Javascript es un lenguaje
                                     dinámico




Saturday, November 5, 2011
Closures y programación asincrónica
                    por naturaleza




Saturday, November 5, 2011
Comunidad creciente, activa y diversa




Saturday, November 5, 2011
http://github.com/languages

Saturday, November 5, 2011
No existe otro lenguaje que pueda
               destronar a javascript en un
                      future cercano




Saturday, November 5, 2011
Node Event Loop




Saturday, November 5, 2011
var result = db.query("select * from T");
   // use result




Saturday, November 5, 2011
var result = db.query("select * from T");
   // use result

                             Qué esta haciendo el software
                             mientras se ejecuta la query?




Saturday, November 5, 2011
db.query("select * from T", function (result) {
       // use result
   });




Saturday, November 5, 2011
db.query("select * from T", function (result) {
       // use result
   });
                             Este código le permite al programa
                                    retornar al event loop
                                       inmediatamente




Saturday, November 5, 2011
Node maneja todas los IO de la misma manera




Saturday, November 5, 2011
Saturday, November 5, 2011
Menos memoria necesita ser usada, y un mayor
         rendimiento debido al menor número de cambios de
                             contexto.




Saturday, November 5, 2011
El uso de los closures para capturar el estado entre
                            diferentes eventos




Saturday, November 5, 2011
function adicionar(callback) {
      http.get(url1, function(respuesta1) {
          var parte1 = respuesta1.data;
          http.get(url2, function(respuesta2) {
              var parte2 = respuesta2.data;
              callback(parte1 + parte2);
          });
      });
  }




Saturday, November 5, 2011
Node Stack




Saturday, November 5, 2011
Como usar Node




Saturday, November 5, 2011
Download, configure, compile, and
                       make install it:

                             http://nodejs.org/



Saturday, November 5, 2011
Windows Build (Node v0.6.0):

        http://nodejs.org/dist/v0.6.0/node.exe




Saturday, November 5, 2011
NPM



                             http://npm.org/

Saturday, November 5, 2011
curl http://npmjs.org/install.sh | sh




Saturday, November 5, 2011
NPM 101

                              $ npm help

                              $ npm install <pkgName>
                              $ npm uninstall <pkgName>
                              $ npm publish
                              $ npm list
                              $ npm update


                       http://howtonode.org/introduction-to-npm
Saturday, November 5, 2011
$	
  npm	
  list
                             app@0.1.0	
  /Users/caridy/node/app
                                          	
  connect@1.7.1	
  
                               	
         	
  mime@1.2.4	
  
                               	
         	
  qs@0.3.1	
  
                                      	
  express@2.4.7	
  
                               	
         	
  mime@1.2.4	
  
                               	
         	
  mkdirp@0.0.7	
  
                               	
         	
  qs@0.3.1	
  
                                      	
  micro<me@0.1.3-­‐1	
  
                                      	
  mime@1.2.4	
  
                                      	
  yui3@0.7.4
                               	
         	
  htmlparser@1.7.3	
  
                               	
         	
  yui3-­‐core@3.4.0	
  
                               	
         	
  yuitest@0.6.9	
  
                                      	
  yui3-­‐core@3.4.0

Saturday, November 5, 2011
Express




                             http://expressjs.com/
Saturday, November 5, 2011
$ cd my/node/app/
                             $ npm install express




Saturday, November 5, 2011
Requiriendo Express NPM Module



                       var app = require('express').createServer();

                       app.get('/usuario/:id', function(req, res){
                         res.send('Bienvenido ' + req.params.id);
                       });

                       app.listen(3000);




Saturday, November 5, 2011
$ node app.js




Saturday, November 5, 2011
http://localhost:3000/usuario/caridy




Saturday, November 5, 2011
Express Boilerplate

                             $ npm install -g express
                             $ cd my/node/app/
                             $ express ./
                             $ npm install -d
                             $ node app.js




Saturday, November 5, 2011
YUI




Saturday, November 5, 2011
Saturday, November 5, 2011
$ npm install yui3




Saturday, November 5, 2011
var YUI = require("yui3").YUI;               Requiriendo YUI NPM Module


       YUI().use('json', 'io', function(Y) {

             Y.io('http://yuilibrary.com/gallery/api/user/caridy', {
                 on: {
                    success: function(id, o) {
                       Y.log(Y.JSON.parse(o.responseText), 'info', 'demo');
                    }
                 }
             });

       });




Saturday, November 5, 2011
var YUI = require("yui3").YUI;                           Requiriendo YUI NPM Module


            YUI().use('yql', function(Y) {

                var query = ' select * from geo.states where place="Chile" and lang="es-CL" ';

                 Y.YQL(query, function(result) {
                    // =result= now contains the result of the YQL Query
                    // use the YQL Developer console to learn
                    // what data is coming back in this object
                    // and how that data is structured.
                       Y.log(result, 'info', 'demo');
                 });

           });


                        http://developer.yahoo.com/yql/console/#h=select%20*%20from%20geo.states%20where
                                     %20place%3D%22Chile%22%20and%20lang%3D%22es-CL%22

Saturday, November 5, 2011
{
                              "query": {
                               "count": 15,
                               "created": "2011-10-31T15:38:44Z",
                               "results": {
                                "place": [
                                 {
                                  "lang": "es-CL",
                                  "uri": "http://where.yahooapis.com/v1/place/2345028",
                                  "woeid": "2345028",
                                  "placeTypeName": { "code": "8", "content": "Región" },
                                  "name": "Maule"
                                 },
                                 {
                                  "lang": "es-CL",
                                  "uri": "http://where.yahooapis.com/v1/place/2345025",
                                  "woeid": "2345025",
                                  "placeTypeName": { "code": "8", "content": "Región" },
                                  "name": "Libertador General Bernardo O'Higgins"
                                 },
                                 {
                                  "lang": "es-CL",
                                  "uri": "http://where.yahooapis.com/v1/place/2345029",
                                  "woeid": "2345029",
                                  "placeTypeName": { "code": "8", "content": "Región" },
                                  "name": "Santiago"
                                 }
                                ]
                               }
                              }
                             }

Saturday, November 5, 2011
YUI Library          Who contributes?
                               Everyone, with committer review.




                 YUI Gallery         Who contributes?
                                 Everyone, with little review.




                 YUI Test         Comprehensive unit testing
                                   solution for any JS code




                 YETI            YUI Easy Testing Interface: run
                               browser JS unit tests from console



Saturday, November 5, 2011
Yahoo! Cocktails



Saturday, November 5, 2011
Saturday, November 5, 2011
Cocktails: Mojito




Saturday, November 5, 2011
Mojito es un
                             Web Application Framework




Saturday, November 5, 2011
Mojits MVC


                                      Controller




                       Model
                                            View




Saturday, November 5, 2011
Tres tipos de scripts:

                             - foo.server.js
                             - foo.common.js
                             - foo.client.js


Saturday, November 5, 2011
Multiples Runtimes


             Javascript on the   Native Bridges   Javascript on the
                 browser         iOS   Android         server




Saturday, November 5, 2011
Mojito Command 101

                               $ mojito help

                               $ mojito create app ./myApp
                               $ mojito create mojit Foo
                               $ mojito test
                               $ mojito compile
                               $ mojito start




Saturday, November 5, 2011
Mojito Application Folder

                              ./myApp
                              - application.json
                              - assets
                              - autoload
                              - index.js
                              - mojits
                                - Foo
                                - Bar
                              - package.json
                              - server.js

Saturday, November 5, 2011
Open Source a inicios del 2012




Saturday, November 5, 2011
Cocktails: Manhattan




Saturday, November 5, 2011
Yahoo! Manhattan es un ambiente de hosting para
            aplicaciones basadas en Mojito que utiliza la nube de
                    Yahoo! para correr esas aplicaciones.




Saturday, November 5, 2011
Server Side: Technology Stack


                                                                Mojito App




                                                                  Mojito




                             YUI                      Express       Mustache         Connect




                                                                                                 Cocktails Abstractions
                                                 Node.JS                       V8




                                                                Manhattan




                                   Security Filters              Tracking           Monitoring




Saturday, November 5, 2011
Yahoo! Manhattan extiende Node.JS para proveer fault-
      isolation & fault-tolerance, escalabilidad, disponibilidad,
                      seguridad y desempeño.




Saturday, November 5, 2011
Saturday, November 5, 2011
Manhattan provides a simple interface for developers to
        deploy, un-deploy and manage their Mojito-based
      applications, leveraging the scale and performance of
               Yahoo!’s technology infrastructure.




Saturday, November 5, 2011
Desempeño




Saturday, November 5, 2011
Saturday, November 5, 2011
Saturday, November 5, 2011
node.js 0.4 + express + yui + mustache




Saturday, November 5, 2011
Apache + PHP




                             Node + Express + YUI + Mustache




Saturday, November 5, 2011
Saturday, November 5, 2011
Apache + PHP no crece




Saturday, November 5, 2011
Saturday, November 5, 2011
Thank you
                             caridy@yahoo-inc.com
                             @caridy




Saturday, November 5, 2011
Links

            • nodejs.org
            • npm.org
            • expressjs.com
            • yuilibrary.com/projects/nodejs-yui3/

Saturday, November 5, 2011
Más sobre Yahoo! Mojito:

                             http://www.slideshare.net/rhyolight/mojito-sl-2011




Saturday, November 5, 2011
Más sobre Yahoo! Manhattan:

                  http://video.yahoo.com/yahoonet-24189541/yodel-24697328/
                  cocktails-in-action-27127763.html

                 http://video.yahoo.com/yahoonet-24189541/yodel-24697328/
                 introducing-cocktails-from-yahoo-27127762.html




Saturday, November 5, 2011

Contenu connexe

Tendances

Deploying large payloads at scale
Deploying large payloads at scaleDeploying large payloads at scale
Deploying large payloads at scaleramonvanalteren
 
Modern Perl for the Unfrozen Paleolithic Perl Programmer
Modern Perl for the Unfrozen Paleolithic Perl ProgrammerModern Perl for the Unfrozen Paleolithic Perl Programmer
Modern Perl for the Unfrozen Paleolithic Perl ProgrammerJohn Anderson
 
Plone in the Cloud - an on-demand CMS hosted on Amazon EC2
Plone in the Cloud - an on-demand CMS hosted on Amazon EC2Plone in the Cloud - an on-demand CMS hosted on Amazon EC2
Plone in the Cloud - an on-demand CMS hosted on Amazon EC2Jazkarta, Inc.
 
Apache TomEE, Java EE 6 Web Profile {and more} on Tomcat
Apache TomEE, Java EE 6 Web Profile {and more} on TomcatApache TomEE, Java EE 6 Web Profile {and more} on Tomcat
Apache TomEE, Java EE 6 Web Profile {and more} on TomcatTomitribe
 
Puppet camp europe 2011 hackability
Puppet camp europe 2011   hackabilityPuppet camp europe 2011   hackability
Puppet camp europe 2011 hackabilityPuppet
 
HootSuite Dev 2
HootSuite Dev 2HootSuite Dev 2
HootSuite Dev 2ujihisa
 
Building MapAttack
Building MapAttackBuilding MapAttack
Building MapAttackKyle Drake
 
CakePHP 2.0 - PHP Matsuri 2011
CakePHP 2.0 - PHP Matsuri 2011CakePHP 2.0 - PHP Matsuri 2011
CakePHP 2.0 - PHP Matsuri 2011Graham Weldon
 
Web performances : Is It not the right time to (re)consider CMS ?
Web performances : Is It not the right time to (re)consider CMS ?Web performances : Is It not the right time to (re)consider CMS ?
Web performances : Is It not the right time to (re)consider CMS ?Kaliop-slide
 
eZ Publish & Deployment of a multi-site platform
eZ Publish & Deployment of a multi-site platformeZ Publish & Deployment of a multi-site platform
eZ Publish & Deployment of a multi-site platformKaliop-slide
 
Modern Perl for the Unfrozen Paleolithic Perl Programmer
Modern Perl for the Unfrozen Paleolithic  Perl ProgrammerModern Perl for the Unfrozen Paleolithic  Perl Programmer
Modern Perl for the Unfrozen Paleolithic Perl ProgrammerJohn Anderson
 
CakePHP - The Path to 2.0
CakePHP - The Path to 2.0CakePHP - The Path to 2.0
CakePHP - The Path to 2.0Graham Weldon
 
Fast, concurrent ruby web applications with EventMachine and EM::Synchrony
Fast, concurrent ruby web applications with EventMachine and EM::SynchronyFast, concurrent ruby web applications with EventMachine and EM::Synchrony
Fast, concurrent ruby web applications with EventMachine and EM::SynchronyKyle Drake
 
A Brief History of OWIN
A Brief History of OWINA Brief History of OWIN
A Brief History of OWINRyan Riley
 

Tendances (17)

Symfony and eZ Publish
Symfony and eZ PublishSymfony and eZ Publish
Symfony and eZ Publish
 
Deploying large payloads at scale
Deploying large payloads at scaleDeploying large payloads at scale
Deploying large payloads at scale
 
Modern Perl for the Unfrozen Paleolithic Perl Programmer
Modern Perl for the Unfrozen Paleolithic Perl ProgrammerModern Perl for the Unfrozen Paleolithic Perl Programmer
Modern Perl for the Unfrozen Paleolithic Perl Programmer
 
Plone in the Cloud - an on-demand CMS hosted on Amazon EC2
Plone in the Cloud - an on-demand CMS hosted on Amazon EC2Plone in the Cloud - an on-demand CMS hosted on Amazon EC2
Plone in the Cloud - an on-demand CMS hosted on Amazon EC2
 
Apache TomEE, Java EE 6 Web Profile {and more} on Tomcat
Apache TomEE, Java EE 6 Web Profile {and more} on TomcatApache TomEE, Java EE 6 Web Profile {and more} on Tomcat
Apache TomEE, Java EE 6 Web Profile {and more} on Tomcat
 
Plone on Amazon EC2
Plone on Amazon EC2Plone on Amazon EC2
Plone on Amazon EC2
 
Puppet camp europe 2011 hackability
Puppet camp europe 2011   hackabilityPuppet camp europe 2011   hackability
Puppet camp europe 2011 hackability
 
HootSuite Dev 2
HootSuite Dev 2HootSuite Dev 2
HootSuite Dev 2
 
Building MapAttack
Building MapAttackBuilding MapAttack
Building MapAttack
 
CakePHP 2.0 - PHP Matsuri 2011
CakePHP 2.0 - PHP Matsuri 2011CakePHP 2.0 - PHP Matsuri 2011
CakePHP 2.0 - PHP Matsuri 2011
 
Exceptable
ExceptableExceptable
Exceptable
 
Web performances : Is It not the right time to (re)consider CMS ?
Web performances : Is It not the right time to (re)consider CMS ?Web performances : Is It not the right time to (re)consider CMS ?
Web performances : Is It not the right time to (re)consider CMS ?
 
eZ Publish & Deployment of a multi-site platform
eZ Publish & Deployment of a multi-site platformeZ Publish & Deployment of a multi-site platform
eZ Publish & Deployment of a multi-site platform
 
Modern Perl for the Unfrozen Paleolithic Perl Programmer
Modern Perl for the Unfrozen Paleolithic  Perl ProgrammerModern Perl for the Unfrozen Paleolithic  Perl Programmer
Modern Perl for the Unfrozen Paleolithic Perl Programmer
 
CakePHP - The Path to 2.0
CakePHP - The Path to 2.0CakePHP - The Path to 2.0
CakePHP - The Path to 2.0
 
Fast, concurrent ruby web applications with EventMachine and EM::Synchrony
Fast, concurrent ruby web applications with EventMachine and EM::SynchronyFast, concurrent ruby web applications with EventMachine and EM::Synchrony
Fast, concurrent ruby web applications with EventMachine and EM::Synchrony
 
A Brief History of OWIN
A Brief History of OWINA Brief History of OWIN
A Brief History of OWIN
 

En vedette

Scott Chacon - Cuento de tres árboles
Scott Chacon - Cuento de tres árbolesScott Chacon - Cuento de tres árboles
Scott Chacon - Cuento de tres árbolesStarTech Conference
 
Ravi Mynampaty - developing findability standards
Ravi Mynampaty - developing findability standardsRavi Mynampaty - developing findability standards
Ravi Mynampaty - developing findability standardsStarTech Conference
 
Tom Preston Werner - Optimize for happiness
Tom Preston Werner -  Optimize for happinessTom Preston Werner -  Optimize for happiness
Tom Preston Werner - Optimize for happinessStarTech Conference
 
Rey Bango - HTML5: polyfills and shims
Rey Bango -  HTML5: polyfills and shimsRey Bango -  HTML5: polyfills and shims
Rey Bango - HTML5: polyfills and shimsStarTech Conference
 
Abraham Barrera - dev-cross-mobile
Abraham Barrera - dev-cross-mobileAbraham Barrera - dev-cross-mobile
Abraham Barrera - dev-cross-mobileStarTech Conference
 

En vedette (7)

Jonathan snook - fake-it
Jonathan snook - fake-itJonathan snook - fake-it
Jonathan snook - fake-it
 
Scott Chacon - Cuento de tres árboles
Scott Chacon - Cuento de tres árbolesScott Chacon - Cuento de tres árboles
Scott Chacon - Cuento de tres árboles
 
Ravi Mynampaty - developing findability standards
Ravi Mynampaty - developing findability standardsRavi Mynampaty - developing findability standards
Ravi Mynampaty - developing findability standards
 
Tom Preston Werner - Optimize for happiness
Tom Preston Werner -  Optimize for happinessTom Preston Werner -  Optimize for happiness
Tom Preston Werner - Optimize for happiness
 
T.Pollak y C.Yaconi - Prey
T.Pollak y C.Yaconi - PreyT.Pollak y C.Yaconi - Prey
T.Pollak y C.Yaconi - Prey
 
Rey Bango - HTML5: polyfills and shims
Rey Bango -  HTML5: polyfills and shimsRey Bango -  HTML5: polyfills and shims
Rey Bango - HTML5: polyfills and shims
 
Abraham Barrera - dev-cross-mobile
Abraham Barrera - dev-cross-mobileAbraham Barrera - dev-cross-mobile
Abraham Barrera - dev-cross-mobile
 

Similaire à Caridy patino - node-js

Javascript - How to avoid the bad parts
Javascript - How to avoid the bad partsJavascript - How to avoid the bad parts
Javascript - How to avoid the bad partsMikko Ohtamaa
 
node.js for front-end developers
node.js for front-end developersnode.js for front-end developers
node.js for front-end developersGarann Means
 
international PHP2011_ilia alshanetsky_Hidden Features of PHP
international PHP2011_ilia alshanetsky_Hidden Features of PHPinternational PHP2011_ilia alshanetsky_Hidden Features of PHP
international PHP2011_ilia alshanetsky_Hidden Features of PHPsmueller_sandsmedia
 
잘 알려지지 않은 Php 코드 활용하기
잘 알려지지 않은 Php 코드 활용하기잘 알려지지 않은 Php 코드 활용하기
잘 알려지지 않은 Php 코드 활용하기형우 안
 
Performance Optimization for Ext GWT 3.0
Performance Optimization for Ext GWT 3.0Performance Optimization for Ext GWT 3.0
Performance Optimization for Ext GWT 3.0Sencha
 
TorqueBox - Ultrapassando a fronteira entre Java e Ruby
TorqueBox - Ultrapassando a fronteira entre Java e RubyTorqueBox - Ultrapassando a fronteira entre Java e Ruby
TorqueBox - Ultrapassando a fronteira entre Java e RubyBruno Oliveira
 
Deploying on the cutting edge
Deploying on the cutting edgeDeploying on the cutting edge
Deploying on the cutting edgeericholscher
 
3D in the Browser via WebGL: It's Go Time
3D in the Browser via WebGL: It's Go Time 3D in the Browser via WebGL: It's Go Time
3D in the Browser via WebGL: It's Go Time Pascal Rettig
 
Community Code: Xero
Community Code: XeroCommunity Code: Xero
Community Code: XeroSencha
 
Clouds against the Floods (RubyConfBR2011)
Clouds against the Floods (RubyConfBR2011) Clouds against the Floods (RubyConfBR2011)
Clouds against the Floods (RubyConfBR2011) Leonardo Borges
 
Practical Cloud Security
Practical Cloud SecurityPractical Cloud Security
Practical Cloud SecurityJason Chan
 
JavaSE - The road forward
JavaSE - The road forwardJavaSE - The road forward
JavaSE - The road forwardeug3n_cojocaru
 
Community Code: The TouchForums App
Community Code: The TouchForums AppCommunity Code: The TouchForums App
Community Code: The TouchForums AppSencha
 
WebGL Fundamentals
WebGL FundamentalsWebGL Fundamentals
WebGL FundamentalsSencha
 

Similaire à Caridy patino - node-js (20)

Javascript - How to avoid the bad parts
Javascript - How to avoid the bad partsJavascript - How to avoid the bad parts
Javascript - How to avoid the bad parts
 
node.js for front-end developers
node.js for front-end developersnode.js for front-end developers
node.js for front-end developers
 
international PHP2011_ilia alshanetsky_Hidden Features of PHP
international PHP2011_ilia alshanetsky_Hidden Features of PHPinternational PHP2011_ilia alshanetsky_Hidden Features of PHP
international PHP2011_ilia alshanetsky_Hidden Features of PHP
 
잘 알려지지 않은 Php 코드 활용하기
잘 알려지지 않은 Php 코드 활용하기잘 알려지지 않은 Php 코드 활용하기
잘 알려지지 않은 Php 코드 활용하기
 
Performance Optimization for Ext GWT 3.0
Performance Optimization for Ext GWT 3.0Performance Optimization for Ext GWT 3.0
Performance Optimization for Ext GWT 3.0
 
TorqueBox - Ultrapassando a fronteira entre Java e Ruby
TorqueBox - Ultrapassando a fronteira entre Java e RubyTorqueBox - Ultrapassando a fronteira entre Java e Ruby
TorqueBox - Ultrapassando a fronteira entre Java e Ruby
 
Deploying on the cutting edge
Deploying on the cutting edgeDeploying on the cutting edge
Deploying on the cutting edge
 
3D in the Browser via WebGL: It's Go Time
3D in the Browser via WebGL: It's Go Time 3D in the Browser via WebGL: It's Go Time
3D in the Browser via WebGL: It's Go Time
 
Community Code: Xero
Community Code: XeroCommunity Code: Xero
Community Code: Xero
 
CSS Power Tools
CSS Power ToolsCSS Power Tools
CSS Power Tools
 
Clouds against the Floods (RubyConfBR2011)
Clouds against the Floods (RubyConfBR2011) Clouds against the Floods (RubyConfBR2011)
Clouds against the Floods (RubyConfBR2011)
 
CommonJS Frameworks
CommonJS FrameworksCommonJS Frameworks
CommonJS Frameworks
 
Practical Cloud Security
Practical Cloud SecurityPractical Cloud Security
Practical Cloud Security
 
Groke
GrokeGroke
Groke
 
RunDeck
RunDeckRunDeck
RunDeck
 
JavaSE - The road forward
JavaSE - The road forwardJavaSE - The road forward
JavaSE - The road forward
 
Extending rails
Extending railsExtending rails
Extending rails
 
Node at artsy
Node at artsyNode at artsy
Node at artsy
 
Community Code: The TouchForums App
Community Code: The TouchForums AppCommunity Code: The TouchForums App
Community Code: The TouchForums App
 
WebGL Fundamentals
WebGL FundamentalsWebGL Fundamentals
WebGL Fundamentals
 

Plus de StarTech Conference

Mike hostetler - jQuery knowledge append to you
Mike hostetler - jQuery knowledge append to youMike hostetler - jQuery knowledge append to you
Mike hostetler - jQuery knowledge append to youStarTech Conference
 
Stephen Anderson - Como construimos e hicimos crecer una empresa de consultor...
Stephen Anderson - Como construimos e hicimos crecer una empresa de consultor...Stephen Anderson - Como construimos e hicimos crecer una empresa de consultor...
Stephen Anderson - Como construimos e hicimos crecer una empresa de consultor...StarTech Conference
 
Robert Nyman - HTML5 apis where no man has gone before startechconf
Robert Nyman - HTML5 apis where no man has gone before startechconfRobert Nyman - HTML5 apis where no man has gone before startechconf
Robert Nyman - HTML5 apis where no man has gone before startechconfStarTech Conference
 
Markos calderon lecciones aprendidas del desarrollo de un sistema de web co...
Markos calderon   lecciones aprendidas del desarrollo de un sistema de web co...Markos calderon   lecciones aprendidas del desarrollo de un sistema de web co...
Markos calderon lecciones aprendidas del desarrollo de un sistema de web co...StarTech Conference
 
Charles nutter star techconf 2011 - jvm languages
Charles nutter   star techconf 2011 - jvm languagesCharles nutter   star techconf 2011 - jvm languages
Charles nutter star techconf 2011 - jvm languagesStarTech Conference
 
Eduardo Silva - monkey http-server everywhere
Eduardo Silva - monkey http-server everywhereEduardo Silva - monkey http-server everywhere
Eduardo Silva - monkey http-server everywhereStarTech Conference
 
Mark ramm To relate or not to relate
Mark ramm   To relate or not to relateMark ramm   To relate or not to relate
Mark ramm To relate or not to relateStarTech Conference
 

Plus de StarTech Conference (12)

Mike hostetler - jQuery knowledge append to you
Mike hostetler - jQuery knowledge append to youMike hostetler - jQuery knowledge append to you
Mike hostetler - jQuery knowledge append to you
 
Luis Meijueiro - Open Data
Luis Meijueiro - Open DataLuis Meijueiro - Open Data
Luis Meijueiro - Open Data
 
Stephen Anderson - Como construimos e hicimos crecer una empresa de consultor...
Stephen Anderson - Como construimos e hicimos crecer una empresa de consultor...Stephen Anderson - Como construimos e hicimos crecer una empresa de consultor...
Stephen Anderson - Como construimos e hicimos crecer una empresa de consultor...
 
Jano Gonzalez - jruby
Jano Gonzalez - jrubyJano Gonzalez - jruby
Jano Gonzalez - jruby
 
Pedro Fuentes - star techconf
Pedro Fuentes - star techconfPedro Fuentes - star techconf
Pedro Fuentes - star techconf
 
Robert Nyman - HTML5 apis where no man has gone before startechconf
Robert Nyman - HTML5 apis where no man has gone before startechconfRobert Nyman - HTML5 apis where no man has gone before startechconf
Robert Nyman - HTML5 apis where no man has gone before startechconf
 
Markos calderon lecciones aprendidas del desarrollo de un sistema de web co...
Markos calderon   lecciones aprendidas del desarrollo de un sistema de web co...Markos calderon   lecciones aprendidas del desarrollo de un sistema de web co...
Markos calderon lecciones aprendidas del desarrollo de un sistema de web co...
 
Charles nutter star techconf 2011 - jvm languages
Charles nutter   star techconf 2011 - jvm languagesCharles nutter   star techconf 2011 - jvm languages
Charles nutter star techconf 2011 - jvm languages
 
Eduardo Silva - monkey http-server everywhere
Eduardo Silva - monkey http-server everywhereEduardo Silva - monkey http-server everywhere
Eduardo Silva - monkey http-server everywhere
 
Stephanie Rewis - css-startech
Stephanie Rewis -  css-startechStephanie Rewis -  css-startech
Stephanie Rewis - css-startech
 
Mark ramm To relate or not to relate
Mark ramm   To relate or not to relateMark ramm   To relate or not to relate
Mark ramm To relate or not to relate
 
Greg rewis move-itsession
Greg rewis move-itsessionGreg rewis move-itsession
Greg rewis move-itsession
 

Dernier

A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxLoriGlavin3
 
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...AliaaTarek5
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxLoriGlavin3
 
A Framework for Development in the AI Age
A Framework for Development in the AI AgeA Framework for Development in the AI Age
A Framework for Development in the AI AgeCprime
 
Sample pptx for embedding into website for demo
Sample pptx for embedding into website for demoSample pptx for embedding into website for demo
Sample pptx for embedding into website for demoHarshalMandlekar2
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfSo einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfpanagenda
 
Generative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfGenerative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfIngrid Airi González
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfMounikaPolabathina
 
2024 April Patch Tuesday
2024 April Patch Tuesday2024 April Patch Tuesday
2024 April Patch TuesdayIvanti
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfLoriGlavin3
 
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxThe Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxLoriGlavin3
 
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxLoriGlavin3
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .Alan Dix
 
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...Wes McKinney
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.Curtis Poe
 
Generative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersGenerative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersRaghuram Pandurangan
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity PlanDatabarracks
 
UiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to HeroUiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to HeroUiPathCommunity
 

Dernier (20)

A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
 
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
 
A Framework for Development in the AI Age
A Framework for Development in the AI AgeA Framework for Development in the AI Age
A Framework for Development in the AI Age
 
Sample pptx for embedding into website for demo
Sample pptx for embedding into website for demoSample pptx for embedding into website for demo
Sample pptx for embedding into website for demo
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfSo einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
 
Generative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfGenerative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdf
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdf
 
2024 April Patch Tuesday
2024 April Patch Tuesday2024 April Patch Tuesday
2024 April Patch Tuesday
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdf
 
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxThe Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
 
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .
 
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.
 
Generative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersGenerative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information Developers
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity Plan
 
UiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to HeroUiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to Hero
 

Caridy patino - node-js