SlideShare une entreprise Scribd logo
1  sur  33
Télécharger pour lire hors ligne
MercadoLibre
                                         Developers Conference




Mobile Apps
Lo que aprendimos en desarrollo mobile usando la API de MercadoLibre,
consejo de uso para exprimir al mango los bytes



Pablo Matias Di Gregorio
@pmdigregorio


11 de Abril de 2013, Buenos Aires
Agenda

■   Estadísticas sobre apps mobile de ML
■   Casos de éxito sobre API
■   Técnicas para exprimir los bytes
■   Consejos
Agenda

■   Estadísticas sobre apps mobile de ML
■   Casos de éxito sobre API
■   Técnicas para exprimir los bytes
■   Consejos
Estadísticas sobre apps mobile de ML

■ +6MM downloads

■ 13 países

■ 6000 Transacciones diarias

■ 5,85% de las compras del sitio: 2,2% apps
Agenda

■   Estadísticas sobre apps mobile de ML
■   Casos de éxito sobre API
■   Técnicas para exprimir los bytes
■   Consejos
Caso de éxito sobre API




                 MercadoLibre API
Caso de éxito sobre API
Agenda

■   Estadísticas sobre apps mobile de ML
■   Casos de éxito sobre API
■   Técnicas para exprimir los bytes
■   Consejos
Selection


                   GET /sites/MLA/search?q=ipod
                        &attributes=id,title

[{"id":"MLA452547458","title":"Ipod Touch 8gb Apple 4ta Generacion Video Hd Caja
                                    Sellada"},
  {"id":"MLA448735225","title":"Apple Ipod Touch 32 Gb 5ta Generacion Col Negro
                                  Envio Gratis"},
  {"id":"MLA452109532","title":"Apple Ipod Nano 16gb 7ma Generación. Bluetooth
                                  Radio Earpod"},
    {"id":"MLA447208949","title":"Apple Ipod Touch 5g 32gb Pantalla Retina 4 Wifi
                                  Camara 5mp"}]
Un API call -> Muchas vistas
GET /sites/MLA/search?q=macbook pro retina
{
 "site_id": "MLA",
 "query": "macbook pro retina",
 "paging": - {...},
 "results": - [
  -{
    "id": "MLA453075102",
    "site_id": "MLA",
    "title": "Apple Macbook Pro 15 Retina I7 2.3ghz 8gb 256gb Geforce 1gb",
    "subtitle": "Hacemos Factura A O B, Mas De 7.500 Calificaciones Positivas",
    "seller": {...},
    "price": 24499.85,
    "currency_id": "ARS",
    "available_quantity": 37,
    "sold_quantity": 12,
    "buying_mode": "buy_it_now",
    "listing_type_id": "gold_premium",
    "stop_time": "2013-05-11T13:08:08.000Z",
    "condition": "new",
    "permalink": "http://articulo.mercadolibre.com.ar/MLA-453075102-apple-macbook-pro-15-retina-i7-23ghz-8gb-256gb-
geforce-1gb-_JM",
    "thumbnail": "http://img2.mlstatic.com/s_MLA_v_I_f_2903730648_072012.jpg",
    "accepts_mercadopago": true,
    "installments": {...},
    "address": {...},
    "shipping": {...},
    "seller_address": {...},
    "attributes": [
    ],
  },
API Call en background
API Call al inicio
Ejemplo


                  GET /users/me/bookmarks?...

  [{"item_id":"MLA452547458"}, {"item_id":"MLA448735225"}, {"item_id":"
 MLA452109532"},{"item_id":"MLA452392103"}, {"item_id":"MLA447208949"}]
Características

■ Deben pocos y livianos

■ Asincrónicos

■ No podemos traernos todo Ej: Sólo ids. Usar selection

■ Tener cuidado: Penalty en el inicio de la app

■ Nos evitan futuros API calls
Múltiples API calls




 ■   Search    ■   Categories
 ■   Items     ■   Variations
Problema complejo

■ Problema de lógica compleja

■ Muchas API calls -> Muchas conexiones

■ Muchos puntos de falla

■ Duplicamos código

■ Muchos KBs a descargar
Podemos...
... O server propio:
Un API Call




                       MercadoLibre
                           API
              Server
Mashup de respuestas
                                                  Categories
         Search         Items        Categories
                                                  attributes




  {
      "results"[{
             "title": "Zapatillas Adidas Climacoo"
             "pictures_url":[
                 "http://img2.mlstatic.com/s_MLA_v_O_f_54_13.jpg",
            ]
             "variations": ["color","size"],
             "vertical": "CORE"
        }]
  }
Custom JSON
Mayor flexibilidad a cambios
Agenda

■   Estadísticas sobre apps mobile de ML
■   Casos de éxito sobre API
■   Técnicas para exprimir los bytes
■   Consejos
Consejos

■ Medir response time

■ Medir kbs a descargar

■ Probar en redes lentas (3G, EDGE)

■ Ser creativos y exprimir cada byte!
No olvidarse de gzip!
curl -H 'Accept-Encoding: gzip,deflate' /sites/MLA/search?
                         q=ipod



            Sin gzip                 Con gzip
             61 KB                     9 KB




                       - 80%
Muchas gracias!
Pablo Matías Di Gregorio
@pmdigregorio




                           ?

Contenu connexe

En vedette

Cloud + Docker - La arquitectura MELI usando AWS en la nube.
Cloud + Docker - La arquitectura MELI usando AWS en la nube.Cloud + Docker - La arquitectura MELI usando AWS en la nube.
Cloud + Docker - La arquitectura MELI usando AWS en la nube.melidevelopers
 
Creando herramientas para nuestros clientes
Creando herramientas para nuestros clientes	Creando herramientas para nuestros clientes
Creando herramientas para nuestros clientes melidevelopers
 
¿Cómo monetizar en marketplace?
¿Cómo monetizar en marketplace?¿Cómo monetizar en marketplace?
¿Cómo monetizar en marketplace?melidevelopers
 
Machine Learning para prevención de Fraude.
Machine Learning para prevención de Fraude.Machine Learning para prevención de Fraude.
Machine Learning para prevención de Fraude.melidevelopers
 
¿Cómo Publicar desde la API? Y no morir en el intento.
¿Cómo Publicar desde la API? Y no morir en el intento.¿Cómo Publicar desde la API? Y no morir en el intento.
¿Cómo Publicar desde la API? Y no morir en el intento.melidevelopers
 
Autenticación vs Autorización -¿Cómo trabajar con el protocolo OAUTH?.
Autenticación vs Autorización -¿Cómo trabajar con el protocolo OAUTH?.Autenticación vs Autorización -¿Cómo trabajar con el protocolo OAUTH?.
Autenticación vs Autorización -¿Cómo trabajar con el protocolo OAUTH?.melidevelopers
 
Conocer a los usuarios - El diseño como factor estratégico en el Desarrollo d...
Conocer a los usuarios - El diseño como factor estratégico en el Desarrollo d...Conocer a los usuarios - El diseño como factor estratégico en el Desarrollo d...
Conocer a los usuarios - El diseño como factor estratégico en el Desarrollo d...melidevelopers
 
Oportunidades en clasificados
Oportunidades en clasificados	Oportunidades en clasificados
Oportunidades en clasificados melidevelopers
 
Introducción a Open Platform - La API Rest de Mercado Libre.
Introducción a Open Platform - La API Rest de Mercado Libre. Introducción a Open Platform - La API Rest de Mercado Libre.
Introducción a Open Platform - La API Rest de Mercado Libre. melidevelopers
 
Angular 2 & nativescript… chau híbrido
Angular 2 & nativescript… chau híbridoAngular 2 & nativescript… chau híbrido
Angular 2 & nativescript… chau híbridomelidevelopers
 
El Ecosistema de Mercado Libre.
El Ecosistema de Mercado Libre.El Ecosistema de Mercado Libre.
El Ecosistema de Mercado Libre.melidevelopers
 
Autenticación vs. Autorización - ¿Cómo trabajar con el protocolo OAuth?
Autenticación vs. Autorización - ¿Cómo trabajar con el protocolo OAuth?Autenticación vs. Autorización - ¿Cómo trabajar con el protocolo OAuth?
Autenticación vs. Autorización - ¿Cómo trabajar con el protocolo OAuth?melidevelopers
 
Introducción a Open Platform - La API Rest de Mercado Libre
Introducción a Open Platform - La API Rest de Mercado LibreIntroducción a Open Platform - La API Rest de Mercado Libre
Introducción a Open Platform - La API Rest de Mercado Libremelidevelopers
 
¡Meli GO GO! - Conocé Golang, el lenguaje de programación de Google.
¡Meli GO GO! - Conocé Golang, el lenguaje de programación de Google.¡Meli GO GO! - Conocé Golang, el lenguaje de programación de Google.
¡Meli GO GO! - Conocé Golang, el lenguaje de programación de Google.melidevelopers
 
Tu sitio propio: ¿Cómo convertir tu proyecto de venta online en una historia ...
Tu sitio propio: ¿Cómo convertir tu proyecto de venta online en una historia ...Tu sitio propio: ¿Cómo convertir tu proyecto de venta online en una historia ...
Tu sitio propio: ¿Cómo convertir tu proyecto de venta online en una historia ...melidevelopers
 

En vedette (20)

Cloud + Docker - La arquitectura MELI usando AWS en la nube.
Cloud + Docker - La arquitectura MELI usando AWS en la nube.Cloud + Docker - La arquitectura MELI usando AWS en la nube.
Cloud + Docker - La arquitectura MELI usando AWS en la nube.
 
Docker
DockerDocker
Docker
 
Bienvenida
Bienvenida Bienvenida
Bienvenida
 
Creando herramientas para nuestros clientes
Creando herramientas para nuestros clientes	Creando herramientas para nuestros clientes
Creando herramientas para nuestros clientes
 
¿Cómo monetizar en marketplace?
¿Cómo monetizar en marketplace?¿Cómo monetizar en marketplace?
¿Cómo monetizar en marketplace?
 
Latencia en la Web
Latencia en la WebLatencia en la Web
Latencia en la Web
 
Machine Learning para prevención de Fraude.
Machine Learning para prevención de Fraude.Machine Learning para prevención de Fraude.
Machine Learning para prevención de Fraude.
 
Live Coding
Live CodingLive Coding
Live Coding
 
¿Cómo Publicar desde la API? Y no morir en el intento.
¿Cómo Publicar desde la API? Y no morir en el intento.¿Cómo Publicar desde la API? Y no morir en el intento.
¿Cómo Publicar desde la API? Y no morir en el intento.
 
Autenticación vs Autorización -¿Cómo trabajar con el protocolo OAUTH?.
Autenticación vs Autorización -¿Cómo trabajar con el protocolo OAUTH?.Autenticación vs Autorización -¿Cómo trabajar con el protocolo OAUTH?.
Autenticación vs Autorización -¿Cómo trabajar con el protocolo OAUTH?.
 
Conocer a los usuarios - El diseño como factor estratégico en el Desarrollo d...
Conocer a los usuarios - El diseño como factor estratégico en el Desarrollo d...Conocer a los usuarios - El diseño como factor estratégico en el Desarrollo d...
Conocer a los usuarios - El diseño como factor estratégico en el Desarrollo d...
 
Oportunidades en clasificados
Oportunidades en clasificados	Oportunidades en clasificados
Oportunidades en clasificados
 
Introducción a Open Platform - La API Rest de Mercado Libre.
Introducción a Open Platform - La API Rest de Mercado Libre. Introducción a Open Platform - La API Rest de Mercado Libre.
Introducción a Open Platform - La API Rest de Mercado Libre.
 
Angular 2 & nativescript… chau híbrido
Angular 2 & nativescript… chau híbridoAngular 2 & nativescript… chau híbrido
Angular 2 & nativescript… chau híbrido
 
DOCKER+AWS+MELI
DOCKER+AWS+MELIDOCKER+AWS+MELI
DOCKER+AWS+MELI
 
El Ecosistema de Mercado Libre.
El Ecosistema de Mercado Libre.El Ecosistema de Mercado Libre.
El Ecosistema de Mercado Libre.
 
Autenticación vs. Autorización - ¿Cómo trabajar con el protocolo OAuth?
Autenticación vs. Autorización - ¿Cómo trabajar con el protocolo OAuth?Autenticación vs. Autorización - ¿Cómo trabajar con el protocolo OAuth?
Autenticación vs. Autorización - ¿Cómo trabajar con el protocolo OAuth?
 
Introducción a Open Platform - La API Rest de Mercado Libre
Introducción a Open Platform - La API Rest de Mercado LibreIntroducción a Open Platform - La API Rest de Mercado Libre
Introducción a Open Platform - La API Rest de Mercado Libre
 
¡Meli GO GO! - Conocé Golang, el lenguaje de programación de Google.
¡Meli GO GO! - Conocé Golang, el lenguaje de programación de Google.¡Meli GO GO! - Conocé Golang, el lenguaje de programación de Google.
¡Meli GO GO! - Conocé Golang, el lenguaje de programación de Google.
 
Tu sitio propio: ¿Cómo convertir tu proyecto de venta online en una historia ...
Tu sitio propio: ¿Cómo convertir tu proyecto de venta online en una historia ...Tu sitio propio: ¿Cómo convertir tu proyecto de venta online en una historia ...
Tu sitio propio: ¿Cómo convertir tu proyecto de venta online en una historia ...
 

Similaire à Mobile apps - MeliDevConf BsAs.

Tendencias Mobile - Neftali Segovia
Tendencias Mobile - Neftali SegoviaTendencias Mobile - Neftali Segovia
Tendencias Mobile - Neftali Segoviafsolari
 
Cómo mejorar-la-velocidad-de-tu-web (Cámara madrid)
Cómo mejorar-la-velocidad-de-tu-web (Cámara madrid)Cómo mejorar-la-velocidad-de-tu-web (Cámara madrid)
Cómo mejorar-la-velocidad-de-tu-web (Cámara madrid)SiteGround España
 
OMEXPO 2017 - Rendimiento y optimización
OMEXPO 2017 - Rendimiento y optimizaciónOMEXPO 2017 - Rendimiento y optimización
OMEXPO 2017 - Rendimiento y optimizaciónFernando Puente
 
OMExpo2017 - SiteGround & Fernando Puente: "Rendimiento y optimización web”
OMExpo2017 - SiteGround & Fernando Puente: "Rendimiento y optimización web”OMExpo2017 - SiteGround & Fernando Puente: "Rendimiento y optimización web”
OMExpo2017 - SiteGround & Fernando Puente: "Rendimiento y optimización web”SiteGround España
 
Fundamentos del diseño web front end
Fundamentos del diseño web front endFundamentos del diseño web front end
Fundamentos del diseño web front endDavid Hurtado
 
Características claves de la solución geotab para gestión de flotas
Características claves de la solución geotab para gestión de flotasCaracterísticas claves de la solución geotab para gestión de flotas
Características claves de la solución geotab para gestión de flotasJulian Beggs
 
Conceptos Avanzados: Parte 3 - Conector de BI
Conceptos Avanzados: Parte 3 - Conector de BIConceptos Avanzados: Parte 3 - Conector de BI
Conceptos Avanzados: Parte 3 - Conector de BIMongoDB
 
La estandarización y automatización como factores clave para el éxito de una ...
La estandarización y automatización como factores clave para el éxito de una ...La estandarización y automatización como factores clave para el éxito de una ...
La estandarización y automatización como factores clave para el éxito de una ...confluent
 
Shodan Tips and tricks. Automatiza y maximiza las búsquedas shodan
Shodan Tips and tricks. Automatiza y maximiza las búsquedas shodanShodan Tips and tricks. Automatiza y maximiza las búsquedas shodan
Shodan Tips and tricks. Automatiza y maximiza las búsquedas shodanJose Manuel Ortega Candel
 
Beyond the Basics 2: Framework Aggregation
Beyond the Basics 2: Framework AggregationBeyond the Basics 2: Framework Aggregation
Beyond the Basics 2: Framework AggregationMongoDB
 
Api - visión general - MeliDevConf BsAs.
Api - visión general - MeliDevConf BsAs.Api - visión general - MeliDevConf BsAs.
Api - visión general - MeliDevConf BsAs.melidevelopers
 
SPS Madrid 2019 - Eleva tu aplicaciones de PowerApps a otro nivel
SPS Madrid 2019 - Eleva tu aplicaciones de PowerApps a otro nivelSPS Madrid 2019 - Eleva tu aplicaciones de PowerApps a otro nivel
SPS Madrid 2019 - Eleva tu aplicaciones de PowerApps a otro nivelImanol Iza Martin
 
Tips en la instalación de Dynamics 365 Finance and Operations On Premise - LBD
Tips en la instalación de Dynamics 365 Finance and Operations On Premise - LBDTips en la instalación de Dynamics 365 Finance and Operations On Premise - LBD
Tips en la instalación de Dynamics 365 Finance and Operations On Premise - LBDJuan Fabian
 
Descubriendo Ruby on Rails (Desarrollo Agil de Aplicaciones Web)
Descubriendo Ruby on Rails (Desarrollo Agil de Aplicaciones Web)Descubriendo Ruby on Rails (Desarrollo Agil de Aplicaciones Web)
Descubriendo Ruby on Rails (Desarrollo Agil de Aplicaciones Web)lenny
 
Descubriendo Ruby On Rails (Desarrollo Agil De Aplicaciones Web)
Descubriendo Ruby On Rails (Desarrollo Agil De Aplicaciones Web)Descubriendo Ruby On Rails (Desarrollo Agil De Aplicaciones Web)
Descubriendo Ruby On Rails (Desarrollo Agil De Aplicaciones Web)INSIGNIA4U
 
Extendiendo Django: Cómo Escribir Tu Propio Backend de Base de Datos - Exasol
Extendiendo Django: Cómo Escribir Tu Propio Backend de Base de Datos - ExasolExtendiendo Django: Cómo Escribir Tu Propio Backend de Base de Datos - Exasol
Extendiendo Django: Cómo Escribir Tu Propio Backend de Base de Datos - ExasolJavier Abadía
 

Similaire à Mobile apps - MeliDevConf BsAs. (20)

Tendencias Mobile - Neftali Segovia
Tendencias Mobile - Neftali SegoviaTendencias Mobile - Neftali Segovia
Tendencias Mobile - Neftali Segovia
 
Cómo mejorar-la-velocidad-de-tu-web (Cámara madrid)
Cómo mejorar-la-velocidad-de-tu-web (Cámara madrid)Cómo mejorar-la-velocidad-de-tu-web (Cámara madrid)
Cómo mejorar-la-velocidad-de-tu-web (Cámara madrid)
 
OMEXPO 2017 - Rendimiento y optimización
OMEXPO 2017 - Rendimiento y optimizaciónOMEXPO 2017 - Rendimiento y optimización
OMEXPO 2017 - Rendimiento y optimización
 
OMExpo2017 - SiteGround & Fernando Puente: "Rendimiento y optimización web”
OMExpo2017 - SiteGround & Fernando Puente: "Rendimiento y optimización web”OMExpo2017 - SiteGround & Fernando Puente: "Rendimiento y optimización web”
OMExpo2017 - SiteGround & Fernando Puente: "Rendimiento y optimización web”
 
Software libre en impresion 3D
Software libre en impresion 3DSoftware libre en impresion 3D
Software libre en impresion 3D
 
Fundamentos del diseño web front end
Fundamentos del diseño web front endFundamentos del diseño web front end
Fundamentos del diseño web front end
 
Características claves de la solución geotab para gestión de flotas
Características claves de la solución geotab para gestión de flotasCaracterísticas claves de la solución geotab para gestión de flotas
Características claves de la solución geotab para gestión de flotas
 
Conceptos Avanzados: Parte 3 - Conector de BI
Conceptos Avanzados: Parte 3 - Conector de BIConceptos Avanzados: Parte 3 - Conector de BI
Conceptos Avanzados: Parte 3 - Conector de BI
 
La estandarización y automatización como factores clave para el éxito de una ...
La estandarización y automatización como factores clave para el éxito de una ...La estandarización y automatización como factores clave para el éxito de una ...
La estandarización y automatización como factores clave para el éxito de una ...
 
Shodan Tips and tricks. Automatiza y maximiza las búsquedas shodan
Shodan Tips and tricks. Automatiza y maximiza las búsquedas shodanShodan Tips and tricks. Automatiza y maximiza las búsquedas shodan
Shodan Tips and tricks. Automatiza y maximiza las búsquedas shodan
 
AWS Summit Mexico 2015 Key Note Raul Frias
AWS Summit Mexico 2015 Key Note Raul Frias AWS Summit Mexico 2015 Key Note Raul Frias
AWS Summit Mexico 2015 Key Note Raul Frias
 
Google Tag Manager
Google Tag ManagerGoogle Tag Manager
Google Tag Manager
 
Beyond the Basics 2: Framework Aggregation
Beyond the Basics 2: Framework AggregationBeyond the Basics 2: Framework Aggregation
Beyond the Basics 2: Framework Aggregation
 
Api - visión general - MeliDevConf BsAs.
Api - visión general - MeliDevConf BsAs.Api - visión general - MeliDevConf BsAs.
Api - visión general - MeliDevConf BsAs.
 
SPS Madrid 2019 - Eleva tu aplicaciones de PowerApps a otro nivel
SPS Madrid 2019 - Eleva tu aplicaciones de PowerApps a otro nivelSPS Madrid 2019 - Eleva tu aplicaciones de PowerApps a otro nivel
SPS Madrid 2019 - Eleva tu aplicaciones de PowerApps a otro nivel
 
Tips en la instalación de Dynamics 365 Finance and Operations On Premise - LBD
Tips en la instalación de Dynamics 365 Finance and Operations On Premise - LBDTips en la instalación de Dynamics 365 Finance and Operations On Premise - LBD
Tips en la instalación de Dynamics 365 Finance and Operations On Premise - LBD
 
Descubriendo Ruby on Rails (Desarrollo Agil de Aplicaciones Web)
Descubriendo Ruby on Rails (Desarrollo Agil de Aplicaciones Web)Descubriendo Ruby on Rails (Desarrollo Agil de Aplicaciones Web)
Descubriendo Ruby on Rails (Desarrollo Agil de Aplicaciones Web)
 
Descubriendo Ruby On Rails (Desarrollo Agil De Aplicaciones Web)
Descubriendo Ruby On Rails (Desarrollo Agil De Aplicaciones Web)Descubriendo Ruby On Rails (Desarrollo Agil De Aplicaciones Web)
Descubriendo Ruby On Rails (Desarrollo Agil De Aplicaciones Web)
 
Extendiendo Django: Cómo Escribir Tu Propio Backend de Base de Datos - Exasol
Extendiendo Django: Cómo Escribir Tu Propio Backend de Base de Datos - ExasolExtendiendo Django: Cómo Escribir Tu Propio Backend de Base de Datos - Exasol
Extendiendo Django: Cómo Escribir Tu Propio Backend de Base de Datos - Exasol
 
Presentacion hackathon copia
Presentacion hackathon   copiaPresentacion hackathon   copia
Presentacion hackathon copia
 

Plus de melidevelopers (20)

Mercado Envíos Ful
Mercado Envíos FulMercado Envíos Ful
Mercado Envíos Ful
 
Fernando Adrian Scasserra
Fernando Adrian ScasserraFernando Adrian Scasserra
Fernando Adrian Scasserra
 
Lucía Brizuela
Lucía BrizuelaLucía Brizuela
Lucía Brizuela
 
Victor Piñal
Victor PiñalVictor Piñal
Victor Piñal
 
Leandro Bertalot y Jair Vázquez
Leandro Bertalot y Jair VázquezLeandro Bertalot y Jair Vázquez
Leandro Bertalot y Jair Vázquez
 
Omar Galicia
Omar GaliciaOmar Galicia
Omar Galicia
 
Daniel Gándara
Daniel GándaraDaniel Gándara
Daniel Gándara
 
Mercado Pago para seller del on
Mercado Pago para seller del onMercado Pago para seller del on
Mercado Pago para seller del on
 
Mandaê
MandaêMandaê
Mandaê
 
Eu entrego
Eu entregoEu entrego
Eu entrego
 
Be Commerce
Be CommerceBe Commerce
Be Commerce
 
Bling!
Bling!Bling!
Bling!
 
Any Market
Any MarketAny Market
Any Market
 
Aprendendo sobre o seu mercado
Aprendendo sobre o seu mercadoAprendendo sobre o seu mercado
Aprendendo sobre o seu mercado
 
AWS
AWS AWS
AWS
 
Mercado Pago - SDK mobile
Mercado Pago - SDK mobile Mercado Pago - SDK mobile
Mercado Pago - SDK mobile
 
sensedia - Design Sprint
sensedia - Design Sprint sensedia - Design Sprint
sensedia - Design Sprint
 
VTEX
VTEX VTEX
VTEX
 
Mercado pago - além do e-commerce
Mercado pago - além do e-commerceMercado pago - além do e-commerce
Mercado pago - além do e-commerce
 
Facebook - Marketing
Facebook - MarketingFacebook - Marketing
Facebook - Marketing
 

Mobile apps - MeliDevConf BsAs.

  • 1. MercadoLibre Developers Conference Mobile Apps Lo que aprendimos en desarrollo mobile usando la API de MercadoLibre, consejo de uso para exprimir al mango los bytes Pablo Matias Di Gregorio @pmdigregorio 11 de Abril de 2013, Buenos Aires
  • 2.
  • 3. Agenda ■ Estadísticas sobre apps mobile de ML ■ Casos de éxito sobre API ■ Técnicas para exprimir los bytes ■ Consejos
  • 4. Agenda ■ Estadísticas sobre apps mobile de ML ■ Casos de éxito sobre API ■ Técnicas para exprimir los bytes ■ Consejos
  • 5.
  • 6.
  • 7.
  • 8. Estadísticas sobre apps mobile de ML ■ +6MM downloads ■ 13 países ■ 6000 Transacciones diarias ■ 5,85% de las compras del sitio: 2,2% apps
  • 9. Agenda ■ Estadísticas sobre apps mobile de ML ■ Casos de éxito sobre API ■ Técnicas para exprimir los bytes ■ Consejos
  • 10. Caso de éxito sobre API MercadoLibre API
  • 11. Caso de éxito sobre API
  • 12. Agenda ■ Estadísticas sobre apps mobile de ML ■ Casos de éxito sobre API ■ Técnicas para exprimir los bytes ■ Consejos
  • 13. Selection GET /sites/MLA/search?q=ipod &attributes=id,title [{"id":"MLA452547458","title":"Ipod Touch 8gb Apple 4ta Generacion Video Hd Caja Sellada"}, {"id":"MLA448735225","title":"Apple Ipod Touch 32 Gb 5ta Generacion Col Negro Envio Gratis"}, {"id":"MLA452109532","title":"Apple Ipod Nano 16gb 7ma Generación. Bluetooth Radio Earpod"}, {"id":"MLA447208949","title":"Apple Ipod Touch 5g 32gb Pantalla Retina 4 Wifi Camara 5mp"}]
  • 14. Un API call -> Muchas vistas GET /sites/MLA/search?q=macbook pro retina { "site_id": "MLA", "query": "macbook pro retina", "paging": - {...}, "results": - [ -{ "id": "MLA453075102", "site_id": "MLA", "title": "Apple Macbook Pro 15 Retina I7 2.3ghz 8gb 256gb Geforce 1gb", "subtitle": "Hacemos Factura A O B, Mas De 7.500 Calificaciones Positivas", "seller": {...}, "price": 24499.85, "currency_id": "ARS", "available_quantity": 37, "sold_quantity": 12, "buying_mode": "buy_it_now", "listing_type_id": "gold_premium", "stop_time": "2013-05-11T13:08:08.000Z", "condition": "new", "permalink": "http://articulo.mercadolibre.com.ar/MLA-453075102-apple-macbook-pro-15-retina-i7-23ghz-8gb-256gb- geforce-1gb-_JM", "thumbnail": "http://img2.mlstatic.com/s_MLA_v_I_f_2903730648_072012.jpg", "accepts_mercadopago": true, "installments": {...}, "address": {...}, "shipping": {...}, "seller_address": {...}, "attributes": [ ], },
  • 15.
  • 16. API Call en background
  • 17. API Call al inicio
  • 18. Ejemplo GET /users/me/bookmarks?... [{"item_id":"MLA452547458"}, {"item_id":"MLA448735225"}, {"item_id":" MLA452109532"},{"item_id":"MLA452392103"}, {"item_id":"MLA447208949"}]
  • 19. Características ■ Deben pocos y livianos ■ Asincrónicos ■ No podemos traernos todo Ej: Sólo ids. Usar selection ■ Tener cuidado: Penalty en el inicio de la app ■ Nos evitan futuros API calls
  • 20. Múltiples API calls ■ Search ■ Categories ■ Items ■ Variations
  • 21. Problema complejo ■ Problema de lógica compleja ■ Muchas API calls -> Muchas conexiones ■ Muchos puntos de falla ■ Duplicamos código ■ Muchos KBs a descargar
  • 23. ... O server propio:
  • 24. Un API Call MercadoLibre API Server
  • 25. Mashup de respuestas Categories Search Items Categories attributes { "results"[{ "title": "Zapatillas Adidas Climacoo" "pictures_url":[ "http://img2.mlstatic.com/s_MLA_v_O_f_54_13.jpg", ] "variations": ["color","size"], "vertical": "CORE" }] }
  • 28. Agenda ■ Estadísticas sobre apps mobile de ML ■ Casos de éxito sobre API ■ Técnicas para exprimir los bytes ■ Consejos
  • 29. Consejos ■ Medir response time ■ Medir kbs a descargar ■ Probar en redes lentas (3G, EDGE) ■ Ser creativos y exprimir cada byte!
  • 31. curl -H 'Accept-Encoding: gzip,deflate' /sites/MLA/search? q=ipod Sin gzip Con gzip 61 KB 9 KB - 80%
  • 32.
  • 33. Muchas gracias! Pablo Matías Di Gregorio @pmdigregorio ?