SlideShare una empresa de Scribd logo
1 de 64
Descargar para leer sin conexión
Buscador AJAX de imágenes
        en redes sociales
                                                 Sergio Rus Carrasco




http://www.flickr.com/photos/34201712@N02/3948254587
Evolución de la Web




              http://www.flickr.com/photos/leecullivan/122271605/
Antes...




           http://www.flickr.com/photos/visualpanic/253081627/
Antes...


Páginas web
Antes...


         Páginas web
Contenidos estáticos y cerrados
Antes...


         Páginas web
Contenidos estáticos y cerrados

Navegador = visor documentos
Ahora
Ahora
Aplicaciones web
Ahora
      Aplicaciones web
Contenidos dinámicos (AJAX) y
       abiertos (APIs)
Ahora
      Aplicaciones web
Contenidos dinámicos (AJAX) y
       abiertos (APIs)

  Plataformas colaborativas
Ahora
      Aplicaciones web
Contenidos dinámicos (AJAX) y
       abiertos (APIs)

  Plataformas colaborativas

Navegador = sistema operativo
Web 2.0
     Blogs

     Wikis

Aplicaciones web

    Mashups

  Social media
Web 2.0
     Blogs

     Wikis

Aplicaciones web

    Mashups

  Social media
Grafo social
http://goo.gl/z3GDm
http://www.flickr.com/photos/49503165485@N01/3976415352
Grandes generadores
   de contenidos
sobre todo imágenes




               http://www.flickr.com/photos/generated/499403902
http://www.flickriver.com/photos/ansik/4425771596/
750+ millones de usuarios

30000 millones de contenidos

   De media ~130 amigos
32+ millones de usuarios

6000 millones de fotografías
Objetivo

Acceder a esos contenidos
 de una forma eficiente,
       interactiva,
y proporcionando una buena
  experiencia de usuario

                      http://www.flickr.com/photos/visualpanic/404347995/
Proyecto




   http://www.flickr.com/photos/37803129@N00/2436481628
Frontend


APIs + AJAX + HTML5
Backend


Symfony: PHP + MySQL
http://www.extremadura21.es/?p=237
APIs usadas

 Facebook Graph API

      Flickr API

Google AJAX Search API
REST




       http://www.flickr.com/photos/visualpanic/3192855619/
REST

      Recursos

      URL, HTTP

GET, POST, PUT, DELETE

   HTML, XML, JSON

           http://www.flickr.com/photos/visualpanic/3192855619/
REST

      Recursos

      URL, HTTP

GET, POST, PUT, DELETE

   HTML, XML, JSON

           http://www.flickr.com/photos/visualpanic/3192855619/
http://forum.lessthandot.com/viewtopic.php?f=100&t=6905
XML
<person>
  <firstName>John</firstName>
  <lastName>Smith</lastName>
  <age>25</age>
  <address>
    <streetAddress>21 2nd Street</streetAddress>
    <city>New York</city>
    <state>NY</state>
    <postalCode>10021</postalCode>
  </address>
  <phoneNumber type="home">212 555-1234</phoneNumber>
  <phoneNumber type="fax">646 555-4567</phoneNumber>
</person>
JSON
{   "firstName": "John",
    "lastName": "Smith",
    "age": 25,
    "address":
    {   "streetAddress": "21 2nd Street",
        "city": "New York",
        "state": "NY",
        "postalCode": "10021"
    },
    "phoneNumber":
    [ {
           "type": "home",
           "number": "212 555-1234"
        },
        {
           "type": "fax",
           "number": "646 555-4567"
        }
    ]
}
Facebook Graph API

Acceso al grafo social del usuario

    Requiere autentificación

  Requiere permisos de acceso
Oauth

 Protocolo estándar de autorización
  para acceder desde una web a los
recursos privados que un usuario tiene
             en otra web
Oauth
http://www.flickr.com/photos/andivszf/4924031968/
Flickr API

Acceso a imágenes públicas

   Motor de búsqueda
Flickr API

Acceso a imágenes públicas

    Motor de búsqueda

Acceso a imágenes privadas

 Requiere autentificación
Flickr API

Acceso a imágenes públicas

    Motor de búsqueda

Acceso a imágenes privadas

 Requiere autentificación
Google Search API

Acceso a imágenes indexadas por el
  motor de búsqueda de Google
http://www.flickr.com/photos/daveynin/1672745911/
Web Storage API

Session History API
Web Storage

Almacenamiento masivo
Web Storage

    Almacenamiento masivo

Entre 2 y 5 MB, según navegador
Web Storage

    Almacenamiento masivo

Entre 2 y 5 MB, según navegador

      Parejas clave-valor
Web Storage

 Local Storage

Session Storage
Session History

Manipulación del historial
Session History

Manipulación del historial

Nuevo método PushState
Session History

Manipulación del historial

Nuevo método PushState

 Nuevo evento PopState
PushState

    Añade entradas al historial

Asocia estado (objeto) a la entrada
PopState

Disparado al cambiar historial

Devuelve el objeto almacenado
Session History

Permite modificar la URL actual sin
 necesidad de recargar la página
Trabajo futuro
http://www.newmediadecisions.com/services-and-solutions
Contacto

blog.sergiorus.com
twitter.com/sergiorus
linkedin.com/in/sergiorus

Más contenido relacionado

Destacado

Desarrollo de Aplicaciones con Microsoft Ajax 1.0 y Ajax Control Toolkit
Desarrollo de Aplicaciones con Microsoft Ajax 1.0 y Ajax Control ToolkitDesarrollo de Aplicaciones con Microsoft Ajax 1.0 y Ajax Control Toolkit
Desarrollo de Aplicaciones con Microsoft Ajax 1.0 y Ajax Control Toolkitpabloesp
 
Conceptos acerca de Ajax
Conceptos acerca  de AjaxConceptos acerca  de Ajax
Conceptos acerca de AjaxAlvaro Castillo
 
AngularJS 1 - A Superheroic Javascript MVC framework (Spanish)
AngularJS 1 - A Superheroic Javascript MVC framework (Spanish)AngularJS 1 - A Superheroic Javascript MVC framework (Spanish)
AngularJS 1 - A Superheroic Javascript MVC framework (Spanish)Nacho García Fernández
 
Introducción a los lenguajes de programación de la plataforma Web 2.0: Ajax
Introducción a los lenguajes de programación de la plataforma Web 2.0: AjaxIntroducción a los lenguajes de programación de la plataforma Web 2.0: Ajax
Introducción a los lenguajes de programación de la plataforma Web 2.0: AjaxDavid Arango
 
Javascript 1
Javascript 1Javascript 1
Javascript 1Juan C
 
Desarrollo rápido de apps web con laravel - DevAcademy
Desarrollo rápido de apps web con laravel - DevAcademyDesarrollo rápido de apps web con laravel - DevAcademy
Desarrollo rápido de apps web con laravel - DevAcademyJorge Antonio Linares Vera
 
Programación Funcional en JavaScript
Programación Funcional en JavaScriptProgramación Funcional en JavaScript
Programación Funcional en JavaScriptJavier Vélez Reyes
 
Manual Tutorial Javascript Con Ejemplos
Manual Tutorial Javascript Con EjemplosManual Tutorial Javascript Con Ejemplos
Manual Tutorial Javascript Con EjemplosSteven Gomez
 
Taller de Programación Funcional en JavaScript
Taller de Programación Funcional en JavaScriptTaller de Programación Funcional en JavaScript
Taller de Programación Funcional en JavaScriptJavier Vélez Reyes
 
ASP.NET Guia de desarrollo de sitios y aplicaciones web dinamicas
ASP.NET Guia de desarrollo de sitios y aplicaciones web dinamicasASP.NET Guia de desarrollo de sitios y aplicaciones web dinamicas
ASP.NET Guia de desarrollo de sitios y aplicaciones web dinamicasVíctor Acosta Santivañez
 
Aprende JavaScript
Aprende JavaScriptAprende JavaScript
Aprende JavaScriptAlf Chee
 
Introduccion a DOM y AJAX - Javier Oliver Fulguera
Introduccion a DOM y AJAX  -  Javier Oliver FulgueraIntroduccion a DOM y AJAX  -  Javier Oliver Fulguera
Introduccion a DOM y AJAX - Javier Oliver FulgueraJavier Oliver Fulguera
 

Destacado (19)

Desarrollo de Aplicaciones con Microsoft Ajax 1.0 y Ajax Control Toolkit
Desarrollo de Aplicaciones con Microsoft Ajax 1.0 y Ajax Control ToolkitDesarrollo de Aplicaciones con Microsoft Ajax 1.0 y Ajax Control Toolkit
Desarrollo de Aplicaciones con Microsoft Ajax 1.0 y Ajax Control Toolkit
 
Conceptos acerca de Ajax
Conceptos acerca  de AjaxConceptos acerca  de Ajax
Conceptos acerca de Ajax
 
AngularJS 1 - A Superheroic Javascript MVC framework (Spanish)
AngularJS 1 - A Superheroic Javascript MVC framework (Spanish)AngularJS 1 - A Superheroic Javascript MVC framework (Spanish)
AngularJS 1 - A Superheroic Javascript MVC framework (Spanish)
 
AJAX EN CURSO PHP
AJAX EN CURSO PHPAJAX EN CURSO PHP
AJAX EN CURSO PHP
 
Introducción a los lenguajes de programación de la plataforma Web 2.0: Ajax
Introducción a los lenguajes de programación de la plataforma Web 2.0: AjaxIntroducción a los lenguajes de programación de la plataforma Web 2.0: Ajax
Introducción a los lenguajes de programación de la plataforma Web 2.0: Ajax
 
Javascript 1
Javascript 1Javascript 1
Javascript 1
 
Introduccion a AJAX
Introduccion a AJAXIntroduccion a AJAX
Introduccion a AJAX
 
Ajax: introducción
Ajax: introducciónAjax: introducción
Ajax: introducción
 
Ajax
AjaxAjax
Ajax
 
JavaScript Avanzado
JavaScript AvanzadoJavaScript Avanzado
JavaScript Avanzado
 
Desarrollo rápido de apps web con laravel - DevAcademy
Desarrollo rápido de apps web con laravel - DevAcademyDesarrollo rápido de apps web con laravel - DevAcademy
Desarrollo rápido de apps web con laravel - DevAcademy
 
Javascript + Angular Sesion 3
Javascript + Angular Sesion 3Javascript + Angular Sesion 3
Javascript + Angular Sesion 3
 
Programación Funcional en JavaScript
Programación Funcional en JavaScriptProgramación Funcional en JavaScript
Programación Funcional en JavaScript
 
Manual Tutorial Javascript Con Ejemplos
Manual Tutorial Javascript Con EjemplosManual Tutorial Javascript Con Ejemplos
Manual Tutorial Javascript Con Ejemplos
 
Taller de Programación Funcional en JavaScript
Taller de Programación Funcional en JavaScriptTaller de Programación Funcional en JavaScript
Taller de Programación Funcional en JavaScript
 
ASP.NET Guia de desarrollo de sitios y aplicaciones web dinamicas
ASP.NET Guia de desarrollo de sitios y aplicaciones web dinamicasASP.NET Guia de desarrollo de sitios y aplicaciones web dinamicas
ASP.NET Guia de desarrollo de sitios y aplicaciones web dinamicas
 
Aprende JavaScript
Aprende JavaScriptAprende JavaScript
Aprende JavaScript
 
Introduccion a DOM y AJAX - Javier Oliver Fulguera
Introduccion a DOM y AJAX  -  Javier Oliver FulgueraIntroduccion a DOM y AJAX  -  Javier Oliver Fulguera
Introduccion a DOM y AJAX - Javier Oliver Fulguera
 
Slider Share
Slider  ShareSlider  Share
Slider Share
 

Similar a Buscador de imágenes en redes sociales con AJAX y APIs

“Gobierno Electrónico 3.0" Aplicaciones de la Web Semántica a la Administraci...
“Gobierno Electrónico 3.0" Aplicaciones de la Web Semántica a la Administraci...“Gobierno Electrónico 3.0" Aplicaciones de la Web Semántica a la Administraci...
“Gobierno Electrónico 3.0" Aplicaciones de la Web Semántica a la Administraci...Carlos Brys
 
Webs2 0
Webs2 0Webs2 0
Webs2 0Yazkar
 
La difusión estadística en el contexto de la web 2.0. JECAS08
La difusión estadística en el contexto de la web 2.0. JECAS08La difusión estadística en el contexto de la web 2.0. JECAS08
La difusión estadística en el contexto de la web 2.0. JECAS08Xavier Badosa
 
Presentacion diapositivas La WEB
Presentacion diapositivas La WEBPresentacion diapositivas La WEB
Presentacion diapositivas La WEBCarlos
 
Taxonomía de aplicaciones
Taxonomía de aplicacionesTaxonomía de aplicaciones
Taxonomía de aplicacionesJosé Delgado
 
Web 2.0 y redes sociales virtuales - Sindicación Web
Web 2.0 y redes sociales virtuales - Sindicación WebWeb 2.0 y redes sociales virtuales - Sindicación Web
Web 2.0 y redes sociales virtuales - Sindicación WebPablo Garaizar
 
Facebook Connect - Facebook Developer Garage Bilbao
Facebook Connect - Facebook Developer Garage BilbaoFacebook Connect - Facebook Developer Garage Bilbao
Facebook Connect - Facebook Developer Garage BilbaoJavier Reyes
 
Aplicaciones de la web semántica
Aplicaciones de la web semánticaAplicaciones de la web semántica
Aplicaciones de la web semánticaDiego Berrueta
 
Charla Biblioteca Nacional, 24 de julio de 2014
Charla Biblioteca Nacional, 24 de julio de 2014Charla Biblioteca Nacional, 24 de julio de 2014
Charla Biblioteca Nacional, 24 de julio de 2014Christian Sifaqui
 
Web 2.0, Presentación
Web 2.0, PresentaciónWeb 2.0, Presentación
Web 2.0, Presentaciónrhaennyn
 
IT Camps Apps Office 365 Valencia 2014
IT Camps Apps Office 365 Valencia 2014IT Camps Apps Office 365 Valencia 2014
IT Camps Apps Office 365 Valencia 2014Adrian Diaz Cervera
 
Web 2.0 y 3.0 m aizquierdo
Web 2.0 y 3.0   m aizquierdoWeb 2.0 y 3.0   m aizquierdo
Web 2.0 y 3.0 m aizquierdomaizquierdo
 
El mundo de los sitios web
El mundo de los sitios webEl mundo de los sitios web
El mundo de los sitios webrodmazzo
 

Similar a Buscador de imágenes en redes sociales con AJAX y APIs (20)

“Gobierno Electrónico 3.0" Aplicaciones de la Web Semántica a la Administraci...
“Gobierno Electrónico 3.0" Aplicaciones de la Web Semántica a la Administraci...“Gobierno Electrónico 3.0" Aplicaciones de la Web Semántica a la Administraci...
“Gobierno Electrónico 3.0" Aplicaciones de la Web Semántica a la Administraci...
 
Desarrollo De Aplicaciones Web 2
Desarrollo De Aplicaciones Web 2Desarrollo De Aplicaciones Web 2
Desarrollo De Aplicaciones Web 2
 
Experiencias con los datos abiertos y enlazados en el entorno del CCUC
Experiencias con los datos abiertos y enlazados en el entorno del CCUCExperiencias con los datos abiertos y enlazados en el entorno del CCUC
Experiencias con los datos abiertos y enlazados en el entorno del CCUC
 
Web 2.0
Web 2.0Web 2.0
Web 2.0
 
Webs2 0
Webs2 0Webs2 0
Webs2 0
 
La difusión estadística en el contexto de la web 2.0. JECAS08
La difusión estadística en el contexto de la web 2.0. JECAS08La difusión estadística en el contexto de la web 2.0. JECAS08
La difusión estadística en el contexto de la web 2.0. JECAS08
 
Presentacion diapositivas La WEB
Presentacion diapositivas La WEBPresentacion diapositivas La WEB
Presentacion diapositivas La WEB
 
Taxonomía de aplicaciones
Taxonomía de aplicacionesTaxonomía de aplicaciones
Taxonomía de aplicaciones
 
Web 2.0 y redes sociales virtuales - Sindicación Web
Web 2.0 y redes sociales virtuales - Sindicación WebWeb 2.0 y redes sociales virtuales - Sindicación Web
Web 2.0 y redes sociales virtuales - Sindicación Web
 
Web2.0
Web2.0Web2.0
Web2.0
 
Facebook Connect - Facebook Developer Garage Bilbao
Facebook Connect - Facebook Developer Garage BilbaoFacebook Connect - Facebook Developer Garage Bilbao
Facebook Connect - Facebook Developer Garage Bilbao
 
Aplicaciones de la web semántica
Aplicaciones de la web semánticaAplicaciones de la web semántica
Aplicaciones de la web semántica
 
Charla Biblioteca Nacional, 24 de julio de 2014
Charla Biblioteca Nacional, 24 de julio de 2014Charla Biblioteca Nacional, 24 de julio de 2014
Charla Biblioteca Nacional, 24 de julio de 2014
 
Web 2.0, Presentación
Web 2.0, PresentaciónWeb 2.0, Presentación
Web 2.0, Presentación
 
IT Camps Apps Office 365 Valencia 2014
IT Camps Apps Office 365 Valencia 2014IT Camps Apps Office 365 Valencia 2014
IT Camps Apps Office 365 Valencia 2014
 
Web 2.0
Web 2.0Web 2.0
Web 2.0
 
Web 2.0 y 3.0 m aizquierdo
Web 2.0 y 3.0   m aizquierdoWeb 2.0 y 3.0   m aizquierdo
Web 2.0 y 3.0 m aizquierdo
 
El mundo de los sitios web
El mundo de los sitios webEl mundo de los sitios web
El mundo de los sitios web
 
Charla, 25/11/2005
Charla, 25/11/2005Charla, 25/11/2005
Charla, 25/11/2005
 
Web 20 Presentacion
Web 20 Presentacion Web 20 Presentacion
Web 20 Presentacion
 

Buscador de imágenes en redes sociales con AJAX y APIs