SlideShare uma empresa Scribd logo
1 de 46
Baixar para ler offline
Servicios en la nube,
evolución de software
Desafíos de la evolución
arquitectónica

               Innovar utilizando Prediction API




                              Google Confidential and Proprietary
Agenda

●   Introduction to the ecosystem
●   Trends
●   Cloud Services
●   Mobility Feeling
●   Opportunities in our ecosystem
●   Your Future!
●   Q&A




                                     Google Confidential and Proprietary
DevRel Latam South Region


+Nicolas Bortolotti
 ● Ecosystem
 ● Focus (+Social)
    ○   Academia
    ○   Startups
    ○   Software Industry

+DevRelSouthRegion
http://www.dvlatamsouthregion.com.ar/




         Research            Startups   Developer Academic Machine


                                                  Google Confidential and Proprietary
NextLevel
 ● GDGs
   ○ Academic Developer Technology Groups
         ■   Class connect
         ■   University Key
 ● Reality Mode
 ● Innovative Events (Virtual events, virtual practice, more flexible)
 ● +Social


a. Developers Live (Argentina)
b. Developers Academy
c. Developers University Consortium




                                                         Google Confidential and Proprietary
Este es el año...
 ●   Las pequeñas y medianas empresas que invirtieron 30% de su presupuesto en tecnologías online
     vieron crecer sus ingresos nueve veces más rápido que aquellas compañías que invierten menos
     del 10%. (McKinsey, SME Chapter, 2012)
 ●   650.000 PYMES y el 28% de ellas compran o venden por Internet (Estudio anual de Comercio
     Electrónico en Argentina de Prince&Cooke para CACE - 2012).
 ●   La aparición de empresas de descuentos y clubes de compra favorecen el ingreso de PyMEs al
     mundo online (Prince&Cooke para CACE - 2012).
 ●   Las PyMEs que brindan mayor ancho de banda a sus empleados crecieron el doble de rápido de
     aquellas que dieron el peor acceso en los últimos 3 años. (McKinsey, SME Chapter, 2012)
 ●   Las mayores tasas de crecimiento de las PYMEs están relacionadas positivamente con gasto en la
     Web, generación de ventas online, acceso de banda ancha y acceso móvil de banda ancha
     (McKinsey, SME Chapter, 2012)


 ●   Google comenzó siendo una pequeña empresa, por eso conocemos muy bien el potencial que
     tienen las PyMEs y lo mucho que éstas pueden lograr.
 ●   La Web es la plataforma de negocios más poderosa del mundo permitiendo que cualquier
     PyME se abra a millones de clientes potenciales que, todos los días, a cualquier hora y desde
     cualquier lugar, realizan búsquedas en Internet acerca de productos y servicios.
 ●   Argentina se encuentra entre los 10 países más emprendedores del mundo: tiene un gran
     ecosistema emprendedor, 1 de cada 8 argentinos está involucrado en el desarrollo de nuevas
     empresas.(Global Entrepreneurship)


                                                                              Google Confidential and Proprietary
A few Key Trends...


●   Networks involved in human sensors. (embedded devices)
●   Derived from census data (embedded devices)
●   Social feeling.
●   Social changes with the help of the population. (fraud, harassment,
    etc.)
●   Instant maps, more social, more collaborative.
●   Contextual mapping.
●   Timelines variables, social, etc. narrated.
●   trends ... real-time information ....




                                                        Google Confidential and Proprietary
Some challenges ...




                      Google Confidential and Proprietary
Thinking...




              Google Confidential and Proprietary
Startups




            Build       Measure




                     Get out There &
           Enhance
                        Get paid



                                Google Confidential and Proprietary
Research - University
      ●   Human-Computer     ●   Research Awards
          Interaction        ●   Educational
      ●   Speech                 Materials
      ●   Natural Language   ●   Research Tools
          Processing         ●   Collaboration and
      ●   Computer Vision        Communication
      ●   Machine Learning   ●   ...
      ●   Algorithms
      ●   Structured Data




                                 University
          Research
                                 Relations




                                                 Google Confidential and Proprietary
Open Source




              Projects




                         Google Confidential and Proprietary
Open source and App Engine

                                  gaeproxy
     Slim3




   jclouds                              objectify
                                        appengine


                       Projects




                                  Google Confidential and Proprietary
Innovation..
“La innovación es ineficiente. Con frecuencia, es indisciplinada,
siempre lleva la contraria y es iconoclasta; se realimenta con la
confusión y la contradicción.
En pocas palabras, ser innovador es todo lo contrario de lo que la
mayoría de los padres quieren para sus hijos, los consejeros
delegados para sus compañías y los jefes de estado para sus países.
Los innovadores son insoportables.
Y, sin embargo, sin innovación estamos condenados –por aburrimiento
y por monotonía- a la decadencia.”




Nicholas Negroponte. Fundador del MIT Media Lab

                                                    Google Confidential and Proprietary
Cloud Services
Software Evolution




                     Google Confidential and Proprietary
¿Cloud?




          SaaS




          PaaS




          IaaS




                 Google Confidential and Proprietary
Thinking...

"Cloud computing es un modelo que habilita un acceso conveniente, una
red bajo demanda a con un pool compartido de recursos informáticos
configurables (por ejemplo, redes, servidores, almacenamiento, aplicaciones y
servicios) que pueden ser rápidamente aprovisionado y desplegado con un
mínimo esfuerzo de gestión o servicio por parte proveedor. El modelo de
computación en la nube promueve la disponibilidad."


●   Cloud computing es una arquitectura o una infraestructura.
●   Internet y la Web son la “nube”
●   Todo estará en la cloud.
●   Toda la informática remota es cloud computing.
                                                                  ¿Mitos o
●   Cloud computing es una nueva revolución                       Verdades?
●   Cada suministrador tendrá una “nube” diferente
●   SaaS es la cloud
●   Cloud elimina las redes privadas.


                                                             Google Confidential and Proprietary
Services
                                                        Images
                       Blob
                       store             Capabilities

        App
      Identity                                                                      Mail

                                                         Multitenancy




                                    APP
             Cloud                 ENGINE
                                                                            Memcache
             Storage




                                                          Log
     Conversio
        n                      Channel                  Services




                                                                        Google Confidential and Proprietary
Languages


JVM Languages
 ● Scala
 ● JRuby
 ● Groovy
 ● Quercus
 ● Rhino
 ● Jython
 ● ...




                Google Confidential and Proprietary
App Engine Application Lifecycle


             Test
                                ● Build (App Engine SDK and
                                  Eclipse plug-in)
                                ● Test (App Engine SDK and
                                  Eclipse plug-in)
 Build                 Deploy   ● Deploy (App Engine SDK and
                                  Eclipse plug-in)
                                ● Manage (Admin Console)
                                ● Upgrade
   Upgrade          Manage




                                               Google Confidential and Proprietary
Ensuring Portability




                       Google Confidential and Proprietary
Java App Engine : SDK                                 Test




                                       Build                         Deploy




                                         Upgrade               Manage



                        ● Local Emulation of the App
                          Engine
                        ● HTTP Server
                        ● Servlet and JSP container
                        ● Lightweight Datastore
                        ● Build tools - ant + JSP
                          compiler
                        ● Deployment Tools




                                        Google Confidential and Proprietary
Eclipse Project


                   Source Folder



                    Persistence
                     config file



                  App Engine SDK




                  Destination WAR




                      Google Confidential and Proprietary
Life of a request - Scales dynamically/automatically



                        App Engine         App's
         User
                         FrontEnd         Runtime




                                                                       App's
User
                                                                      Runtime


                                                                       App's
User
                           App Engine       App's                     Runtime
                User
                            FrontEnd       Runtime

                                                                       App's
User
                                                                      Runtime


                                                Google Confidential and Proprietary
Multiple versions



                                    Version
                                  Version
                                       1.1
                                 Version
                                     1.1
                                   1.1

                    App Engine                       App's
   User
                     FrontEnd                       Runtime

                                 Version
                                   2.1




                                              Google Confidential and Proprietary
Images
- App Engine provides the ability to manipulate image data using a dedicated Images service.

- The Images service can accept image data directly from the app, or it can use a Blobstore value or a
Google Cloud Storage value

                                        import    com.google.appengine.api.images.Image;
                                        import    com.google.appengine.api.images.ImagesService;
                                        import    com.google.appengine.api.images.ImagesServiceFactory;
                                        import    com.google.appengine.api.images.Transform;

 ●   Transforming Images in Java        // ...
 ●   Available Image Transformations             byte[] oldImageData; // ...
 ●   Image Formats
                                                 ImagesService imagesService = ImagesServiceFactory.getImagesService();

                                                 Image oldImage = ImagesServiceFactory.makeImage(oldImageData);
                                                 Transform resize = ImagesServiceFactory.makeResize(200, 300);

                                                 Image newImage = imagesService.applyTransform(resize, oldImage);

                                                 byte[] newImageData = newImage.getImageData();




https://developers.google.com/appengine/docs/java/images/overview

                                                                                        Google Confidential and Proprietary
Blobstore API
- The Blobstore API allows your application to serve data objects, called blobs, that are much larger
than the size allowed for objects in the Datastore service




● Using the Blobstore                             Map<String, BlobKey> blobs = blobstoreService.
                                                  getUploadedBlobs(req);
● Uploading a Blob                                BlobKey blobKey = blobs.get("myFile");

● Serving a Blob                                  if (blobKey == null) {
                                                      res.sendRedirect("/");
                                                  } else {
                                                      res.sendRedirect("/serve?blob-key=" + blobKey.
                                                  getKeyString());
                                                  }




https://developers.google.com/appengine/docs/java/blobstore/overview

                                                                                      Google Confidential and Proprietary
Cloud Storage
- The Google Cloud Storage API allows your application to store and serve your data as opaque
blobs known as "objects". While Cloud Storage offers a RESTful API,


                                                    // Get the file service
                                                    FileService fileService = FileServiceFactory.getFileService();

                                                    /**
                                                     * Set up properties of your new object
                                                     * After finalizing objects, they are accessible
 ●   Using the Cloud Storage API                     * through Cloud Storage with the URL:
      ○ Creating an Object                           * http://commondatastorage.googleapis.
                                                    com/my_bucket/my_object
      ○ Opening and Writing to the                   */
         Object                                     GSFileOptionsBuilder optionsBuilder = new
                                                    GSFileOptionsBuilder()
      ○ Finalizing the Object                         .setBucket("my_bucket")
      ○ Reading the Object                            .setKey("my_object")
                                                      .setAcl("public-read");

                                                    // Create your object
                                                    AppEngineFile writableFile = fileService.createNewGSFile
                                                    (optionsBuilder.build());



https://developers.google.com/appengine/docs/java/googlestorage/overview

                                                                                      Google Confidential and Proprietary
Mobility Feeling..




                     Google Confidential and Proprietary
El rápido crecimiento de Android



Android es el sistema operativo con la mayor
presencia en el mercado mundial de smartphones.
                            2010
         25%    de los smartphones eran Androids


                            2011

  52,5% de los smartphones son Androids
             (para comparación, 16,6% son iPhones)

                                                        Gartner, 2011

                                                     Google Confidential and Proprietary
Números de Android


                    825                             58
                   dispositivos                  fabricantes




                    329                          169
                   operadoras                       paises



Crecimiento: 850.000 nuevos Androids por día
Más de 300.000.000 de dispositivos activados
globalmente hasta el momento.
OBS: Los números consideran solamente los dispositivos oficiales.


                                                                    Google Confidential and Proprietary
Aplicaciones




          Google Play ya ha registrado

       11.000.000.000
        instalaciones de apps globalmente

                ...1.57 apps/persona




                                         Google Confidential and Proprietary
1.423.800 !
Android en Argentina




800K
                           388.980
400K
         26.680
   0
         2009                2010                2011

       Shipments por año, no acumulados (Canalys, 2011)


                                               Google Confidential and Proprietary
Android en Argentina

 Smartphone Shipments - Argentina - 2011 (Canalys, 2011)




                                                           Google Confidential and Proprietary
¿Necesitamos más apps?


Hay 500.000+ apps en Google Play
(buenas y malas)

Lo más importante no es la cantidad sino que la
calidad de apps.




                                      Google Confidential and Proprietary
Prediction API




                 Google Confidential and Proprietary
What is Prediction API?
This API allows us to make smarter applications. Prediction API has
access to machine learning algorithms proposed by Google to analyze
historical data and predict possible future results.



      RESTful API                     Flexible Input           Multi-Platform Support




 Asynchronous cloud-based         Numeric or text input that
                                   can output hundreds of       Google App Engine, Apps
  training, automatic model
                                    discrete categories or     Script (Google Docs), web &
selection and tuning, and the
                                     continuous values.           desktop apps, and the
ability to add training data on
                                                                       command line.
             the fly.




                                                                    Google Confidential and Proprietary
Prediction API Overview


                     Storage. -
                     Google Cloud                                Send queries for
    Training data    Storage.              Train the model.      the model.



                            Model
                            Feedback
                            (with more
                            information)


●   Soporta Autenticación (OAuth2.0)
●   Predictive Model Markup Language. (PMML)
●   HTTP and HTTPs



                                                              Google Confidential and Proprietary
Opportunities with Prediction API


+ Predictions shopping or wish list. (shops, supermarkets, etc.)
+ Analysis of viewing preferences in movies, television, etc..
+ Analysis and categorization of sounds.
+ Prediction of common routes, cross-traffic analysis, etc..
+ Social analysis and the senses ... +1 -1
more ... ...




                                                         Google Confidential and Proprietary
Demo!




        Google Confidential and Proprietary
Recursos


● Guía de desarrollo de Prediction API
● Escenarios de Aplicación


Librerias
Galería de ejemplos




                                         Google Confidential and Proprietary
WebGL Skin




http://www.chromeexperiments.com/detail/webgl-skin/


                                                      Google Confidential and Proprietary
Google Gravity




http://www.chromeexperiments.com/detail/gravity/



                                                   Google Confidential and Proprietary
WebGL Bookcase




http://www.chromeexperiments.com/detail/webgl-bookcase/



                                                    Google Confidential and Proprietary
Google APIs and the Future Web..




http://www.sea-seek.com/3d/San_Francisco_Bay


                                               Google Confidential and Proprietary
Questions...




               Q&A


                     Google Confidential and Proprietary
Thank you!
Director de Relaciones para Desarrollo de la Región
Sur
+Nicolas Bortolotti

http://nbortolotti.blogspot.com/




                                       Google Confidential and Proprietary

Mais conteúdo relacionado

Semelhante a Servicios en la nube, desafíos de la evolución arquitectónica

Cómo agregar calidad a sus aplicaciones mediante pruebas
Cómo agregar calidad a sus aplicaciones mediante pruebas Cómo agregar calidad a sus aplicaciones mediante pruebas
Cómo agregar calidad a sus aplicaciones mediante pruebas Motorola Mobility - MOTODEV
 
Construir una App con AI nunca fue tan fácil
Construir una App con AI nunca fue tan fácilConstruir una App con AI nunca fue tan fácil
Construir una App con AI nunca fue tan fácilRuben Chavarri
 
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
 
Oportunidad para innovar con tecnología google - AgileOpenLima V
Oportunidad para innovar con tecnología google - AgileOpenLima VOportunidad para innovar con tecnología google - AgileOpenLima V
Oportunidad para innovar con tecnología google - AgileOpenLima VJuan José Rodriguez MsC.
 
Desarrollo Móvil con Android (...y Firebase)
Desarrollo Móvil con Android (...y Firebase)Desarrollo Móvil con Android (...y Firebase)
Desarrollo Móvil con Android (...y Firebase)Armando Picón Z.
 
Otavio silva google
Otavio silva   googleOtavio silva   google
Otavio silva googleftsantiago
 
Diapositivas software en la actualidad
Diapositivas software en la actualidadDiapositivas software en la actualidad
Diapositivas software en la actualidadJhoanny Osuna
 
Commit 2018 - Integrando Microservicios y Machine Learning
Commit 2018 - Integrando Microservicios y Machine LearningCommit 2018 - Integrando Microservicios y Machine Learning
Commit 2018 - Integrando Microservicios y Machine LearningRafa Hidalgo
 
Cloud native Computing Perú Octubre
Cloud native Computing Perú OctubreCloud native Computing Perú Octubre
Cloud native Computing Perú OctubreMario IC
 
SOA Cloud Silos
SOA Cloud Silos SOA Cloud Silos
SOA Cloud Silos Juan Bello
 

Semelhante a Servicios en la nube, desafíos de la evolución arquitectónica (20)

Cómo agregar calidad a sus aplicaciones mediante pruebas
Cómo agregar calidad a sus aplicaciones mediante pruebas Cómo agregar calidad a sus aplicaciones mediante pruebas
Cómo agregar calidad a sus aplicaciones mediante pruebas
 
Presentación lg
Presentación lgPresentación lg
Presentación lg
 
Smart TV
Smart TVSmart TV
Smart TV
 
Presentación cloud sourceit v7
Presentación cloud sourceit v7Presentación cloud sourceit v7
Presentación cloud sourceit v7
 
Google
GoogleGoogle
Google
 
Gvpontis - Generalitat valenciana
Gvpontis - Generalitat valencianaGvpontis - Generalitat valenciana
Gvpontis - Generalitat valenciana
 
Meetup app-moviles
Meetup app-movilesMeetup app-moviles
Meetup app-moviles
 
Construir una App con AI nunca fue tan fácil
Construir una App con AI nunca fue tan fácilConstruir una App con AI nunca fue tan fácil
Construir una App con AI nunca fue tan fácil
 
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
 
Oportunidad para innovar con tecnología google - AgileOpenLima V
Oportunidad para innovar con tecnología google - AgileOpenLima VOportunidad para innovar con tecnología google - AgileOpenLima V
Oportunidad para innovar con tecnología google - AgileOpenLima V
 
Desarrollo Móvil con Android (...y Firebase)
Desarrollo Móvil con Android (...y Firebase)Desarrollo Móvil con Android (...y Firebase)
Desarrollo Móvil con Android (...y Firebase)
 
Otavio silva google
Otavio silva   googleOtavio silva   google
Otavio silva google
 
Diapositivas software en la actualidad
Diapositivas software en la actualidadDiapositivas software en la actualidad
Diapositivas software en la actualidad
 
Demo 2012
Demo 2012Demo 2012
Demo 2012
 
Principios de cloud native
Principios de cloud nativePrincipios de cloud native
Principios de cloud native
 
Gae android
Gae androidGae android
Gae android
 
Commit 2018 - Integrando Microservicios y Machine Learning
Commit 2018 - Integrando Microservicios y Machine LearningCommit 2018 - Integrando Microservicios y Machine Learning
Commit 2018 - Integrando Microservicios y Machine Learning
 
Cloud native Computing Perú Octubre
Cloud native Computing Perú OctubreCloud native Computing Perú Octubre
Cloud native Computing Perú Octubre
 
SOA Cloud Silos
SOA Cloud Silos SOA Cloud Silos
SOA Cloud Silos
 
Big Data perspectiva DevOps
Big Data perspectiva DevOpsBig Data perspectiva DevOps
Big Data perspectiva DevOps
 

Mais de GeneXus

After Chatbots Yo (Ro) Bots
After Chatbots Yo (Ro) BotsAfter Chatbots Yo (Ro) Bots
After Chatbots Yo (Ro) BotsGeneXus
 
Construya las aplicaciones del futuro ¡hoy!
Construya las aplicaciones del futuro ¡hoy!Construya las aplicaciones del futuro ¡hoy!
Construya las aplicaciones del futuro ¡hoy!GeneXus
 
Live Editing in Action
Live Editing in ActionLive Editing in Action
Live Editing in ActionGeneXus
 
Experiencias en el desarrollo de aplicaciones móviles en el sector salud de M...
Experiencias en el desarrollo de aplicaciones móviles en el sector salud de M...Experiencias en el desarrollo de aplicaciones móviles en el sector salud de M...
Experiencias en el desarrollo de aplicaciones móviles en el sector salud de M...GeneXus
 
¿Pensando en implementar un sistema de gestión integral en su organización?
¿Pensando en implementar un sistema de gestión integral en su organización?¿Pensando en implementar un sistema de gestión integral en su organización?
¿Pensando en implementar un sistema de gestión integral en su organización?GeneXus
 
K2B Tools el compañero de viaje ideal hacia el futuro
K2B Tools el compañero de viaje ideal hacia el futuroK2B Tools el compañero de viaje ideal hacia el futuro
K2B Tools el compañero de viaje ideal hacia el futuroGeneXus
 
Sd y Plataformas
Sd y PlataformasSd y Plataformas
Sd y PlataformasGeneXus
 
PXTools: Nuevo generador y nuevos controles responsivos
PXTools: Nuevo generador y nuevos controles responsivosPXTools: Nuevo generador y nuevos controles responsivos
PXTools: Nuevo generador y nuevos controles responsivosGeneXus
 
APPlícate: Aplicaciones móviles para el desarrollo de la industria
APPlícate: Aplicaciones móviles para el desarrollo de la industriaAPPlícate: Aplicaciones móviles para el desarrollo de la industria
APPlícate: Aplicaciones móviles para el desarrollo de la industriaGeneXus
 
GeneXus 4 Students
GeneXus 4 StudentsGeneXus 4 Students
GeneXus 4 StudentsGeneXus
 
La importancia de ser responsive
La importancia de ser responsiveLa importancia de ser responsive
La importancia de ser responsiveGeneXus
 
K2B: El ERP nativo para el mundo GeneXus
K2B: El ERP nativo para el mundo GeneXusK2B: El ERP nativo para el mundo GeneXus
K2B: El ERP nativo para el mundo GeneXusGeneXus
 
GeneXus 15 (Salto)
GeneXus 15 (Salto)GeneXus 15 (Salto)
GeneXus 15 (Salto)GeneXus
 
GeneXus Cloud Deployment Services. El camino a la nube.
GeneXus Cloud Deployment Services. El camino a la nube.GeneXus Cloud Deployment Services. El camino a la nube.
GeneXus Cloud Deployment Services. El camino a la nube.GeneXus
 
LigaMX con GeneXus: De 0 a 1.700.000 de usuarios
LigaMX con GeneXus: De 0 a 1.700.000 de usuariosLigaMX con GeneXus: De 0 a 1.700.000 de usuarios
LigaMX con GeneXus: De 0 a 1.700.000 de usuariosGeneXus
 
Innovando con GeneXus y SAP
Innovando con GeneXus y SAPInnovando con GeneXus y SAP
Innovando con GeneXus y SAPGeneXus
 
Going mobile
Going mobileGoing mobile
Going mobileGeneXus
 
Audit+: La mejor forma de auditar KB’s GeneXus
Audit+: La mejor forma de auditar KB’s GeneXusAudit+: La mejor forma de auditar KB’s GeneXus
Audit+: La mejor forma de auditar KB’s GeneXusGeneXus
 
WW+, SD+ y Audit+: Potencie GeneXus la Suite Plus
WW+, SD+ y Audit+: Potencie GeneXus la Suite PlusWW+, SD+ y Audit+: Potencie GeneXus la Suite Plus
WW+, SD+ y Audit+: Potencie GeneXus la Suite PlusGeneXus
 
Aproveche las ventajas de la colaboración entre GeneXus y Cloud Shared Office...
Aproveche las ventajas de la colaboración entre GeneXus y Cloud Shared Office...Aproveche las ventajas de la colaboración entre GeneXus y Cloud Shared Office...
Aproveche las ventajas de la colaboración entre GeneXus y Cloud Shared Office...GeneXus
 

Mais de GeneXus (20)

After Chatbots Yo (Ro) Bots
After Chatbots Yo (Ro) BotsAfter Chatbots Yo (Ro) Bots
After Chatbots Yo (Ro) Bots
 
Construya las aplicaciones del futuro ¡hoy!
Construya las aplicaciones del futuro ¡hoy!Construya las aplicaciones del futuro ¡hoy!
Construya las aplicaciones del futuro ¡hoy!
 
Live Editing in Action
Live Editing in ActionLive Editing in Action
Live Editing in Action
 
Experiencias en el desarrollo de aplicaciones móviles en el sector salud de M...
Experiencias en el desarrollo de aplicaciones móviles en el sector salud de M...Experiencias en el desarrollo de aplicaciones móviles en el sector salud de M...
Experiencias en el desarrollo de aplicaciones móviles en el sector salud de M...
 
¿Pensando en implementar un sistema de gestión integral en su organización?
¿Pensando en implementar un sistema de gestión integral en su organización?¿Pensando en implementar un sistema de gestión integral en su organización?
¿Pensando en implementar un sistema de gestión integral en su organización?
 
K2B Tools el compañero de viaje ideal hacia el futuro
K2B Tools el compañero de viaje ideal hacia el futuroK2B Tools el compañero de viaje ideal hacia el futuro
K2B Tools el compañero de viaje ideal hacia el futuro
 
Sd y Plataformas
Sd y PlataformasSd y Plataformas
Sd y Plataformas
 
PXTools: Nuevo generador y nuevos controles responsivos
PXTools: Nuevo generador y nuevos controles responsivosPXTools: Nuevo generador y nuevos controles responsivos
PXTools: Nuevo generador y nuevos controles responsivos
 
APPlícate: Aplicaciones móviles para el desarrollo de la industria
APPlícate: Aplicaciones móviles para el desarrollo de la industriaAPPlícate: Aplicaciones móviles para el desarrollo de la industria
APPlícate: Aplicaciones móviles para el desarrollo de la industria
 
GeneXus 4 Students
GeneXus 4 StudentsGeneXus 4 Students
GeneXus 4 Students
 
La importancia de ser responsive
La importancia de ser responsiveLa importancia de ser responsive
La importancia de ser responsive
 
K2B: El ERP nativo para el mundo GeneXus
K2B: El ERP nativo para el mundo GeneXusK2B: El ERP nativo para el mundo GeneXus
K2B: El ERP nativo para el mundo GeneXus
 
GeneXus 15 (Salto)
GeneXus 15 (Salto)GeneXus 15 (Salto)
GeneXus 15 (Salto)
 
GeneXus Cloud Deployment Services. El camino a la nube.
GeneXus Cloud Deployment Services. El camino a la nube.GeneXus Cloud Deployment Services. El camino a la nube.
GeneXus Cloud Deployment Services. El camino a la nube.
 
LigaMX con GeneXus: De 0 a 1.700.000 de usuarios
LigaMX con GeneXus: De 0 a 1.700.000 de usuariosLigaMX con GeneXus: De 0 a 1.700.000 de usuarios
LigaMX con GeneXus: De 0 a 1.700.000 de usuarios
 
Innovando con GeneXus y SAP
Innovando con GeneXus y SAPInnovando con GeneXus y SAP
Innovando con GeneXus y SAP
 
Going mobile
Going mobileGoing mobile
Going mobile
 
Audit+: La mejor forma de auditar KB’s GeneXus
Audit+: La mejor forma de auditar KB’s GeneXusAudit+: La mejor forma de auditar KB’s GeneXus
Audit+: La mejor forma de auditar KB’s GeneXus
 
WW+, SD+ y Audit+: Potencie GeneXus la Suite Plus
WW+, SD+ y Audit+: Potencie GeneXus la Suite PlusWW+, SD+ y Audit+: Potencie GeneXus la Suite Plus
WW+, SD+ y Audit+: Potencie GeneXus la Suite Plus
 
Aproveche las ventajas de la colaboración entre GeneXus y Cloud Shared Office...
Aproveche las ventajas de la colaboración entre GeneXus y Cloud Shared Office...Aproveche las ventajas de la colaboración entre GeneXus y Cloud Shared Office...
Aproveche las ventajas de la colaboración entre GeneXus y Cloud Shared Office...
 

Servicios en la nube, desafíos de la evolución arquitectónica

  • 1. Servicios en la nube, evolución de software Desafíos de la evolución arquitectónica Innovar utilizando Prediction API Google Confidential and Proprietary
  • 2. Agenda ● Introduction to the ecosystem ● Trends ● Cloud Services ● Mobility Feeling ● Opportunities in our ecosystem ● Your Future! ● Q&A Google Confidential and Proprietary
  • 3. DevRel Latam South Region +Nicolas Bortolotti ● Ecosystem ● Focus (+Social) ○ Academia ○ Startups ○ Software Industry +DevRelSouthRegion http://www.dvlatamsouthregion.com.ar/ Research Startups Developer Academic Machine Google Confidential and Proprietary
  • 4. NextLevel ● GDGs ○ Academic Developer Technology Groups ■ Class connect ■ University Key ● Reality Mode ● Innovative Events (Virtual events, virtual practice, more flexible) ● +Social a. Developers Live (Argentina) b. Developers Academy c. Developers University Consortium Google Confidential and Proprietary
  • 5. Este es el año... ● Las pequeñas y medianas empresas que invirtieron 30% de su presupuesto en tecnologías online vieron crecer sus ingresos nueve veces más rápido que aquellas compañías que invierten menos del 10%. (McKinsey, SME Chapter, 2012) ● 650.000 PYMES y el 28% de ellas compran o venden por Internet (Estudio anual de Comercio Electrónico en Argentina de Prince&Cooke para CACE - 2012). ● La aparición de empresas de descuentos y clubes de compra favorecen el ingreso de PyMEs al mundo online (Prince&Cooke para CACE - 2012). ● Las PyMEs que brindan mayor ancho de banda a sus empleados crecieron el doble de rápido de aquellas que dieron el peor acceso en los últimos 3 años. (McKinsey, SME Chapter, 2012) ● Las mayores tasas de crecimiento de las PYMEs están relacionadas positivamente con gasto en la Web, generación de ventas online, acceso de banda ancha y acceso móvil de banda ancha (McKinsey, SME Chapter, 2012) ● Google comenzó siendo una pequeña empresa, por eso conocemos muy bien el potencial que tienen las PyMEs y lo mucho que éstas pueden lograr. ● La Web es la plataforma de negocios más poderosa del mundo permitiendo que cualquier PyME se abra a millones de clientes potenciales que, todos los días, a cualquier hora y desde cualquier lugar, realizan búsquedas en Internet acerca de productos y servicios. ● Argentina se encuentra entre los 10 países más emprendedores del mundo: tiene un gran ecosistema emprendedor, 1 de cada 8 argentinos está involucrado en el desarrollo de nuevas empresas.(Global Entrepreneurship) Google Confidential and Proprietary
  • 6. A few Key Trends... ● Networks involved in human sensors. (embedded devices) ● Derived from census data (embedded devices) ● Social feeling. ● Social changes with the help of the population. (fraud, harassment, etc.) ● Instant maps, more social, more collaborative. ● Contextual mapping. ● Timelines variables, social, etc. narrated. ● trends ... real-time information .... Google Confidential and Proprietary
  • 7. Some challenges ... Google Confidential and Proprietary
  • 8. Thinking... Google Confidential and Proprietary
  • 9. Startups Build Measure Get out There & Enhance Get paid Google Confidential and Proprietary
  • 10. Research - University ● Human-Computer ● Research Awards Interaction ● Educational ● Speech Materials ● Natural Language ● Research Tools Processing ● Collaboration and ● Computer Vision Communication ● Machine Learning ● ... ● Algorithms ● Structured Data University Research Relations Google Confidential and Proprietary
  • 11. Open Source Projects Google Confidential and Proprietary
  • 12. Open source and App Engine gaeproxy Slim3 jclouds objectify appengine Projects Google Confidential and Proprietary
  • 13. Innovation.. “La innovación es ineficiente. Con frecuencia, es indisciplinada, siempre lleva la contraria y es iconoclasta; se realimenta con la confusión y la contradicción. En pocas palabras, ser innovador es todo lo contrario de lo que la mayoría de los padres quieren para sus hijos, los consejeros delegados para sus compañías y los jefes de estado para sus países. Los innovadores son insoportables. Y, sin embargo, sin innovación estamos condenados –por aburrimiento y por monotonía- a la decadencia.” Nicholas Negroponte. Fundador del MIT Media Lab Google Confidential and Proprietary
  • 14. Cloud Services Software Evolution Google Confidential and Proprietary
  • 15. ¿Cloud? SaaS PaaS IaaS Google Confidential and Proprietary
  • 16. Thinking... "Cloud computing es un modelo que habilita un acceso conveniente, una red bajo demanda a con un pool compartido de recursos informáticos configurables (por ejemplo, redes, servidores, almacenamiento, aplicaciones y servicios) que pueden ser rápidamente aprovisionado y desplegado con un mínimo esfuerzo de gestión o servicio por parte proveedor. El modelo de computación en la nube promueve la disponibilidad." ● Cloud computing es una arquitectura o una infraestructura. ● Internet y la Web son la “nube” ● Todo estará en la cloud. ● Toda la informática remota es cloud computing. ¿Mitos o ● Cloud computing es una nueva revolución Verdades? ● Cada suministrador tendrá una “nube” diferente ● SaaS es la cloud ● Cloud elimina las redes privadas. Google Confidential and Proprietary
  • 17. Services Images Blob store Capabilities App Identity Mail Multitenancy APP Cloud ENGINE Memcache Storage Log Conversio n Channel Services Google Confidential and Proprietary
  • 18. Languages JVM Languages ● Scala ● JRuby ● Groovy ● Quercus ● Rhino ● Jython ● ... Google Confidential and Proprietary
  • 19. App Engine Application Lifecycle Test ● Build (App Engine SDK and Eclipse plug-in) ● Test (App Engine SDK and Eclipse plug-in) Build Deploy ● Deploy (App Engine SDK and Eclipse plug-in) ● Manage (Admin Console) ● Upgrade Upgrade Manage Google Confidential and Proprietary
  • 20. Ensuring Portability Google Confidential and Proprietary
  • 21. Java App Engine : SDK Test Build Deploy Upgrade Manage ● Local Emulation of the App Engine ● HTTP Server ● Servlet and JSP container ● Lightweight Datastore ● Build tools - ant + JSP compiler ● Deployment Tools Google Confidential and Proprietary
  • 22. Eclipse Project Source Folder Persistence config file App Engine SDK Destination WAR Google Confidential and Proprietary
  • 23. Life of a request - Scales dynamically/automatically App Engine App's User FrontEnd Runtime App's User Runtime App's User App Engine App's Runtime User FrontEnd Runtime App's User Runtime Google Confidential and Proprietary
  • 24. Multiple versions Version Version 1.1 Version 1.1 1.1 App Engine App's User FrontEnd Runtime Version 2.1 Google Confidential and Proprietary
  • 25. Images - App Engine provides the ability to manipulate image data using a dedicated Images service. - The Images service can accept image data directly from the app, or it can use a Blobstore value or a Google Cloud Storage value import com.google.appengine.api.images.Image; import com.google.appengine.api.images.ImagesService; import com.google.appengine.api.images.ImagesServiceFactory; import com.google.appengine.api.images.Transform; ● Transforming Images in Java // ... ● Available Image Transformations byte[] oldImageData; // ... ● Image Formats ImagesService imagesService = ImagesServiceFactory.getImagesService(); Image oldImage = ImagesServiceFactory.makeImage(oldImageData); Transform resize = ImagesServiceFactory.makeResize(200, 300); Image newImage = imagesService.applyTransform(resize, oldImage); byte[] newImageData = newImage.getImageData(); https://developers.google.com/appengine/docs/java/images/overview Google Confidential and Proprietary
  • 26. Blobstore API - The Blobstore API allows your application to serve data objects, called blobs, that are much larger than the size allowed for objects in the Datastore service ● Using the Blobstore Map<String, BlobKey> blobs = blobstoreService. getUploadedBlobs(req); ● Uploading a Blob BlobKey blobKey = blobs.get("myFile"); ● Serving a Blob if (blobKey == null) { res.sendRedirect("/"); } else { res.sendRedirect("/serve?blob-key=" + blobKey. getKeyString()); } https://developers.google.com/appengine/docs/java/blobstore/overview Google Confidential and Proprietary
  • 27. Cloud Storage - The Google Cloud Storage API allows your application to store and serve your data as opaque blobs known as "objects". While Cloud Storage offers a RESTful API, // Get the file service FileService fileService = FileServiceFactory.getFileService(); /** * Set up properties of your new object * After finalizing objects, they are accessible ● Using the Cloud Storage API * through Cloud Storage with the URL: ○ Creating an Object * http://commondatastorage.googleapis. com/my_bucket/my_object ○ Opening and Writing to the */ Object GSFileOptionsBuilder optionsBuilder = new GSFileOptionsBuilder() ○ Finalizing the Object .setBucket("my_bucket") ○ Reading the Object .setKey("my_object") .setAcl("public-read"); // Create your object AppEngineFile writableFile = fileService.createNewGSFile (optionsBuilder.build()); https://developers.google.com/appengine/docs/java/googlestorage/overview Google Confidential and Proprietary
  • 28. Mobility Feeling.. Google Confidential and Proprietary
  • 29. El rápido crecimiento de Android Android es el sistema operativo con la mayor presencia en el mercado mundial de smartphones. 2010 25% de los smartphones eran Androids 2011 52,5% de los smartphones son Androids (para comparación, 16,6% son iPhones) Gartner, 2011 Google Confidential and Proprietary
  • 30. Números de Android 825 58 dispositivos fabricantes 329 169 operadoras paises Crecimiento: 850.000 nuevos Androids por día Más de 300.000.000 de dispositivos activados globalmente hasta el momento. OBS: Los números consideran solamente los dispositivos oficiales. Google Confidential and Proprietary
  • 31. Aplicaciones Google Play ya ha registrado 11.000.000.000 instalaciones de apps globalmente ...1.57 apps/persona Google Confidential and Proprietary
  • 32. 1.423.800 ! Android en Argentina 800K 388.980 400K 26.680 0 2009 2010 2011 Shipments por año, no acumulados (Canalys, 2011) Google Confidential and Proprietary
  • 33. Android en Argentina Smartphone Shipments - Argentina - 2011 (Canalys, 2011) Google Confidential and Proprietary
  • 34. ¿Necesitamos más apps? Hay 500.000+ apps en Google Play (buenas y malas) Lo más importante no es la cantidad sino que la calidad de apps. Google Confidential and Proprietary
  • 35. Prediction API Google Confidential and Proprietary
  • 36. What is Prediction API? This API allows us to make smarter applications. Prediction API has access to machine learning algorithms proposed by Google to analyze historical data and predict possible future results. RESTful API Flexible Input Multi-Platform Support Asynchronous cloud-based Numeric or text input that can output hundreds of Google App Engine, Apps training, automatic model discrete categories or Script (Google Docs), web & selection and tuning, and the continuous values. desktop apps, and the ability to add training data on command line. the fly. Google Confidential and Proprietary
  • 37. Prediction API Overview Storage. - Google Cloud Send queries for Training data Storage. Train the model. the model. Model Feedback (with more information) ● Soporta Autenticación (OAuth2.0) ● Predictive Model Markup Language. (PMML) ● HTTP and HTTPs Google Confidential and Proprietary
  • 38. Opportunities with Prediction API + Predictions shopping or wish list. (shops, supermarkets, etc.) + Analysis of viewing preferences in movies, television, etc.. + Analysis and categorization of sounds. + Prediction of common routes, cross-traffic analysis, etc.. + Social analysis and the senses ... +1 -1 more ... ... Google Confidential and Proprietary
  • 39. Demo! Google Confidential and Proprietary
  • 40. Recursos ● Guía de desarrollo de Prediction API ● Escenarios de Aplicación Librerias Galería de ejemplos Google Confidential and Proprietary
  • 44. Google APIs and the Future Web.. http://www.sea-seek.com/3d/San_Francisco_Bay Google Confidential and Proprietary
  • 45. Questions... Q&A Google Confidential and Proprietary
  • 46. Thank you! Director de Relaciones para Desarrollo de la Región Sur +Nicolas Bortolotti http://nbortolotti.blogspot.com/ Google Confidential and Proprietary