programando webapps con apis
DESCRIPTION
Conferencia acerca de programación de aplicaciones web (web apps) con APIs de servicios web.TRANSCRIPT
![Page 1: Programando WebApps con APIs](https://reader034.vdocuments.site/reader034/viewer/2022052523/555cb773d8b42aad358b58ca/html5/thumbnails/1.jpg)
Programación de Web Apps usando APIs
Alejandro Corpeño@corp
![Page 2: Programando WebApps con APIs](https://reader034.vdocuments.site/reader034/viewer/2022052523/555cb773d8b42aad358b58ca/html5/thumbnails/2.jpg)
¿Quién soy?• Ing. en Sistemas, UNITEC (Honduras, 2001)
• MBA, Vanderbilt University (Nashville, 2006)
• twitter.com/corp
• corpeno.com
![Page 3: Programando WebApps con APIs](https://reader034.vdocuments.site/reader034/viewer/2022052523/555cb773d8b42aad358b58ca/html5/thumbnails/3.jpg)
¿Qué hago?• Director de Negocios, Icoms Technologies
• Desarrollo tuBabel.com
• Parte del equipo de Blipea.com, Class.io
• Fundador y Director de WebConfLatino.com
• Fundador de Barcamp en Honduras y GTUG en El Salvador
![Page 4: Programando WebApps con APIs](https://reader034.vdocuments.site/reader034/viewer/2022052523/555cb773d8b42aad358b58ca/html5/thumbnails/4.jpg)
Programación de Web Apps usando APIs
![Page 5: Programando WebApps con APIs](https://reader034.vdocuments.site/reader034/viewer/2022052523/555cb773d8b42aad358b58ca/html5/thumbnails/5.jpg)
ApplicationProgrammingInterface
![Page 6: Programando WebApps con APIs](https://reader034.vdocuments.site/reader034/viewer/2022052523/555cb773d8b42aad358b58ca/html5/thumbnails/6.jpg)
Funciones del API• Comunicación entre diferentes
niveles de abstracción
• Comunicación entre programas / software
![Page 7: Programando WebApps con APIs](https://reader034.vdocuments.site/reader034/viewer/2022052523/555cb773d8b42aad358b58ca/html5/thumbnails/7.jpg)
¿Qué es un Web API?
fuente (cc): http://www.flickr.com/photos/generated/4994039025/
![Page 8: Programando WebApps con APIs](https://reader034.vdocuments.site/reader034/viewer/2022052523/555cb773d8b42aad358b58ca/html5/thumbnails/8.jpg)
Web APIs• Conectividad por medio de HTTP requests
• Lenguajes de intercambio de datos como XML y JSON
• Estructura común en el mundo web 2.0 es REST (Representational State Transfer)
• Las que usan REST son RESTful APIs
![Page 9: Programando WebApps con APIs](https://reader034.vdocuments.site/reader034/viewer/2022052523/555cb773d8b42aad358b58ca/html5/thumbnails/9.jpg)
Para qué usar Web APIs• Extender el contenido de un sitio web
• Procesamiento de datos
• Interconexión entre sitios/servicios web
• Construir un sitio completamente con datos de diferentes sitios (Mashups)
![Page 10: Programando WebApps con APIs](https://reader034.vdocuments.site/reader034/viewer/2022052523/555cb773d8b42aad358b58ca/html5/thumbnails/10.jpg)
Ejemplo de un Mashup: Tugar.net
![Page 11: Programando WebApps con APIs](https://reader034.vdocuments.site/reader034/viewer/2022052523/555cb773d8b42aad358b58ca/html5/thumbnails/11.jpg)
Web APIs disponibles
Sólo en programmableweb.com hay listados más de 2,206 APIs
![Page 12: Programando WebApps con APIs](https://reader034.vdocuments.site/reader034/viewer/2022052523/555cb773d8b42aad358b58ca/html5/thumbnails/12.jpg)
Mashups existentesEn programmableweb.com hay listados más de 5,286 mashups
![Page 13: Programando WebApps con APIs](https://reader034.vdocuments.site/reader034/viewer/2022052523/555cb773d8b42aad358b58ca/html5/thumbnails/13.jpg)
ProgrammableWeb.com
![Page 14: Programando WebApps con APIs](https://reader034.vdocuments.site/reader034/viewer/2022052523/555cb773d8b42aad358b58ca/html5/thumbnails/14.jpg)
http://code.google.com/apis/ajaxlanguage/documentation/reference.html
![Page 15: Programando WebApps con APIs](https://reader034.vdocuments.site/reader034/viewer/2022052523/555cb773d8b42aad358b58ca/html5/thumbnails/15.jpg)
XML y JSON
• XML: Extensible Markup Language
• JSON: JavaScript Object Notation
![Page 16: Programando WebApps con APIs](https://reader034.vdocuments.site/reader034/viewer/2022052523/555cb773d8b42aad358b58ca/html5/thumbnails/16.jpg)
Ejemplo de XML
![Page 17: Programando WebApps con APIs](https://reader034.vdocuments.site/reader034/viewer/2022052523/555cb773d8b42aad358b58ca/html5/thumbnails/17.jpg)
Ejemplo de JSON
![Page 18: Programando WebApps con APIs](https://reader034.vdocuments.site/reader034/viewer/2022052523/555cb773d8b42aad358b58ca/html5/thumbnails/18.jpg)
XML vs. JSON
![Page 19: Programando WebApps con APIs](https://reader034.vdocuments.site/reader034/viewer/2022052523/555cb773d8b42aad358b58ca/html5/thumbnails/19.jpg)
Ejemplo en vivo... twitter
![Page 20: Programando WebApps con APIs](https://reader034.vdocuments.site/reader034/viewer/2022052523/555cb773d8b42aad358b58ca/html5/thumbnails/20.jpg)
Documentación de API Twitter
• Twitts & Timelinehttp://dev.twitter.com/doc/get/statuses
• Trendshttp://dev.twitter.com/doc/get/trends
• Searchhttp://dev.twitter.com/doc/get/search
![Page 21: Programando WebApps con APIs](https://reader034.vdocuments.site/reader034/viewer/2022052523/555cb773d8b42aad358b58ca/html5/thumbnails/21.jpg)
Experiencias reales con Web APIs
![Page 22: Programando WebApps con APIs](https://reader034.vdocuments.site/reader034/viewer/2022052523/555cb773d8b42aad358b58ca/html5/thumbnails/22.jpg)
API de Traducción de Google en tuBabel.com
![Page 23: Programando WebApps con APIs](https://reader034.vdocuments.site/reader034/viewer/2022052523/555cb773d8b42aad358b58ca/html5/thumbnails/23.jpg)
CASO 1: Traducción al Inglés para LocalSpanish
![Page 24: Programando WebApps con APIs](https://reader034.vdocuments.site/reader034/viewer/2022052523/555cb773d8b42aad358b58ca/html5/thumbnails/24.jpg)
CASO 2: Filtrar Spam en Red Social
![Page 25: Programando WebApps con APIs](https://reader034.vdocuments.site/reader034/viewer/2022052523/555cb773d8b42aad358b58ca/html5/thumbnails/25.jpg)
API de Wine.com para CellarTeller.com
![Page 26: Programando WebApps con APIs](https://reader034.vdocuments.site/reader034/viewer/2022052523/555cb773d8b42aad358b58ca/html5/thumbnails/26.jpg)
Funciones de API usadas
• Wine.com: Busqueda de vinos
• Twitter.com: mostrar últimos twitts de los usuarios
![Page 27: Programando WebApps con APIs](https://reader034.vdocuments.site/reader034/viewer/2022052523/555cb773d8b42aad358b58ca/html5/thumbnails/27.jpg)
API de Clima de Google
+ API de Twitter
![Page 28: Programando WebApps con APIs](https://reader034.vdocuments.site/reader034/viewer/2022052523/555cb773d8b42aad358b58ca/html5/thumbnails/28.jpg)
Creado por @dokshor (Fabian Ramirez)
![Page 29: Programando WebApps con APIs](https://reader034.vdocuments.site/reader034/viewer/2022052523/555cb773d8b42aad358b58ca/html5/thumbnails/29.jpg)
Class.ioPlataforma fuertemente
basada en APIs
![Page 30: Programando WebApps con APIs](https://reader034.vdocuments.site/reader034/viewer/2022052523/555cb773d8b42aad358b58ca/html5/thumbnails/30.jpg)
Hackathon!
![Page 31: Programando WebApps con APIs](https://reader034.vdocuments.site/reader034/viewer/2022052523/555cb773d8b42aad358b58ca/html5/thumbnails/31.jpg)
![Page 32: Programando WebApps con APIs](https://reader034.vdocuments.site/reader034/viewer/2022052523/555cb773d8b42aad358b58ca/html5/thumbnails/32.jpg)
Funciones de API usadas
• Autenticación con Google Account
• Sincronización de eventos de class.io (tareas, entregas, etc) con Google Calendar
• Google Docs para visualización y upload de documentos
• Facebook App para notificaciones
![Page 33: Programando WebApps con APIs](https://reader034.vdocuments.site/reader034/viewer/2022052523/555cb773d8b42aad358b58ca/html5/thumbnails/33.jpg)
DEMOClass.io
![Page 34: Programando WebApps con APIs](https://reader034.vdocuments.site/reader034/viewer/2022052523/555cb773d8b42aad358b58ca/html5/thumbnails/34.jpg)
Conclusiones
![Page 35: Programando WebApps con APIs](https://reader034.vdocuments.site/reader034/viewer/2022052523/555cb773d8b42aad358b58ca/html5/thumbnails/35.jpg)
Conclusiones
• La mayoría de websites modernos proveen o consumen APIs
• La documentación de los APIs es fácil de encontrar y entender
• A medida se popularizan los APIs los estándares se están creando... (ejem. REST)
• Experimentos tipo Mashups son rápidos de programar y útiles para explorar el mercado
![Page 36: Programando WebApps con APIs](https://reader034.vdocuments.site/reader034/viewer/2022052523/555cb773d8b42aad358b58ca/html5/thumbnails/36.jpg)
Gracias
Alejandro Corpeñocorpeno.com
twitter: @corp