Diapositivas correspondientes a la parte sobre la plataforma de desarrollo Google App Engine del curso de extensión universitaria "Cloud Computing. Desarrollo de Aplicaciones y Minería Web", celebrado en la Escuela Universitaria de Ingeniería Informática de Oviedo
En esta charla se explicará cómo realizar implementar integración continua usando Gitlab y fastlane para que de forma automatizada haga:
- Ejecución de tests unitarios
- Ejecución de tests de interfaz con KIF
- Análisis de código en Sonar
- Despliegue de la app a TestFlight
Flutter es el nuevo framework multiplaforma de Google que nos permite crear aplicaciones nativas en tiempo record.
Actualmente Flutter se encuentra en pleno crecimiento: gracias al soporte de Google y de su comunidad cada vez más empresas y startups están optando por usar Flutter en el desarrollo de apps móviles.
- Panorama actual de las apps móviles.
- Desafíos que enfrentamos.
- Aumentando la productividad con Flutter.
- Flutter y sus características.
En esta charla se explicará cómo realizar implementar integración continua usando Gitlab y fastlane para que de forma automatizada haga:
- Ejecución de tests unitarios
- Ejecución de tests de interfaz con KIF
- Análisis de código en Sonar
- Despliegue de la app a TestFlight
Flutter es el nuevo framework multiplaforma de Google que nos permite crear aplicaciones nativas en tiempo record.
Actualmente Flutter se encuentra en pleno crecimiento: gracias al soporte de Google y de su comunidad cada vez más empresas y startups están optando por usar Flutter en el desarrollo de apps móviles.
- Panorama actual de las apps móviles.
- Desafíos que enfrentamos.
- Aumentando la productividad con Flutter.
- Flutter y sus características.
DNUG2015 Frühjahrskonferenz: Brücken bauen, Grenzen überwinden: Domino im Dia...JRibbeck
Am praktischen Beispiel wird gezeigt, wie eine generische Interaktion zwischen der OpenSource Plattform camunda und einem Domino Server erfolgen kann. Im Beispiel werden BPMN 2.0 Workflowmodelle so gestaltet, dass eine beliebige Notes/Domino Datenbank ohne Designänderung mit einem Workflow ergänzt werden kann.
Desarrollando para Nmap Scripting Engine (NSE) [GuadalajaraCON 2013]Websec México, S.C.
http://www.guadalajaracon.org/talleres/desarrollando-para-nmap-scripting-engine-nse/
Hace 5 años Nmap dió luz a su propio motor de scripts que facilita a administradores de sistema y pentesters ha realizar una variedad impresionante de tareas como recolección de información, detección de servicios y hasta explotación de vulnerabilidades.
Su flexibilidad y poder lo han convertido en una herramienta indispensable, no solo para escaneo de puertos, sino durante todas las etapas de una prueba de penetración.
En este taller los asistentes se familiarizarán con el motor de scripts de Nmap, aprenderán casos de uso avanzado y crearán sus propios scripts. Los participantes desarrollarán módulos para diversos fines incluyendo escaneo, análisis de tráfico y explotación web y de otros dispositivos.
This is a short presentation I gave on the basic concepts of Google's App Engine.
The presentation consits of three sections: It starts with an overview of platform as a service (PaaS), then introduces some features of the App Engine and the development process. It closes with an evaluation of the discussed concepts.
Taller modelo de negocios Engine Up PerúP3 Ventures
Presentación de Sebastian Gonzalez, Gerente de Consultoría de P3 Ventures, sobre diseño y generación de modelos de negocios innvovadores, para el primer Engine Up realizado en Perú, y organizado en conjunto por Instituto Invertir, Apesoft, Lima Valley y P3 Ventures.
Google Cloud Platform. Google App Engine Kwaye Kant
This slide contains slides about Google AppEngine which the PaaS offered by Google Cloud.
The slides are presentations of Cloud, GAE and how to install plugins in Eclipse and deploy the app on Google Appspot.
Search Engine Friendly Design (SEFD) - SMX München 2014Daniel Herndler
Slides zur Session "Search Engine Friendly Design für Content Provider" auf der SMX München 2014 von Daniel Herndler.
Inhalte:
- HTML & Aufbau von SEFD
- Struktur & Content
- Les- & Crawlbarkeit
- Schema.org & Rich Snippets
- Zusammenfassung
DNUG2015 Frühjahrskonferenz: Brücken bauen, Grenzen überwinden: Domino im Dia...JRibbeck
Am praktischen Beispiel wird gezeigt, wie eine generische Interaktion zwischen der OpenSource Plattform camunda und einem Domino Server erfolgen kann. Im Beispiel werden BPMN 2.0 Workflowmodelle so gestaltet, dass eine beliebige Notes/Domino Datenbank ohne Designänderung mit einem Workflow ergänzt werden kann.
Desarrollando para Nmap Scripting Engine (NSE) [GuadalajaraCON 2013]Websec México, S.C.
http://www.guadalajaracon.org/talleres/desarrollando-para-nmap-scripting-engine-nse/
Hace 5 años Nmap dió luz a su propio motor de scripts que facilita a administradores de sistema y pentesters ha realizar una variedad impresionante de tareas como recolección de información, detección de servicios y hasta explotación de vulnerabilidades.
Su flexibilidad y poder lo han convertido en una herramienta indispensable, no solo para escaneo de puertos, sino durante todas las etapas de una prueba de penetración.
En este taller los asistentes se familiarizarán con el motor de scripts de Nmap, aprenderán casos de uso avanzado y crearán sus propios scripts. Los participantes desarrollarán módulos para diversos fines incluyendo escaneo, análisis de tráfico y explotación web y de otros dispositivos.
This is a short presentation I gave on the basic concepts of Google's App Engine.
The presentation consits of three sections: It starts with an overview of platform as a service (PaaS), then introduces some features of the App Engine and the development process. It closes with an evaluation of the discussed concepts.
Taller modelo de negocios Engine Up PerúP3 Ventures
Presentación de Sebastian Gonzalez, Gerente de Consultoría de P3 Ventures, sobre diseño y generación de modelos de negocios innvovadores, para el primer Engine Up realizado en Perú, y organizado en conjunto por Instituto Invertir, Apesoft, Lima Valley y P3 Ventures.
Google Cloud Platform. Google App Engine Kwaye Kant
This slide contains slides about Google AppEngine which the PaaS offered by Google Cloud.
The slides are presentations of Cloud, GAE and how to install plugins in Eclipse and deploy the app on Google Appspot.
Search Engine Friendly Design (SEFD) - SMX München 2014Daniel Herndler
Slides zur Session "Search Engine Friendly Design für Content Provider" auf der SMX München 2014 von Daniel Herndler.
Inhalte:
- HTML & Aufbau von SEFD
- Struktur & Content
- Les- & Crawlbarkeit
- Schema.org & Rich Snippets
- Zusammenfassung
An evening with ... Ionic Framework Meetup Arkhotech
Ionic es un framework de desarrollo híbrido móvil de amplio uso en la industria. Entre sus principales características se destacan el desempeño, integración con AngularJS, similitud de interfaces finales con las nativas y el soporte a integración de hardware vía Apache Cordova.
En este meetup usamos un proyecto real Ionic creado para uno de nuestros clientes, para analizar todo el proceso de construcción (de más de 3 meses), conociendo las principales características de la implementación y todos las experiencias que enfrentamos en este reto de equipo. Revisaremos todo lo que hicimos: la estructura de equipo, tecnologías, método de trabajo, obstáculos, etc. compartiendo con los asistentes el caso de éxito de una experiencia real.
Flutter es el SDK de aplicaciones móviles de Google para crear
interfaces nativas de alta calidad en iOS y Android en un tiempo
récord.
Sirve para crear fácilmente app móviles modernas, bonitas y de
alto desempeño Funciona para Android y iOS Es una herramienta open-source, desarrollada por Google
Actualmente se encuentra en Beta 3 Listo para producción.
Tutoriales - Explorando AWS con Java.
Aprende a descubrir los diferentes servicios que ofrece AWS para explotar por medio de Java a través de la capa gratuita.
Android Studio y gradle. DroidconES 2014Kamil Zabdyr
El objetivo de la charla es intentar convencer y motivar a los más excépticos a utilizar Android Studio junto con Gradle. Explicando, entre otras cosas, como incrementar la productividad con las últimas características y plugins de ambos, proponiendo soluciones a los errores más habituales y mostrando en una demo las muchas ventajas que ofrece.
WSO2 API Manager y ESB la plataforma perfecta para evolucionar los serviciosWSO2
To view recording of this webinar please use the below URL:
http://wso2.com/library/webinars/2015/04/wso2-api-manager-y-esb-la-plataforma-perfecta-para-evolucionar-los-servicios/
En nuestra presentación vamos realizar una breve introducción a estas herramientas y abordar temas relacionados con lo mencionado anteriormente, realizando ejemplos y comentando buenas prácticas. Algunos de los tópicos que mostraremos son:
Exponiendo Servicios Complejos del ESB en un API Rest
Veremos un ejemplo y hablaremos del patrón de fachada API
OAuth 2.0, su implementación en API Manager
Veremos su implementación y hablaremos de seguridad API
Los 5 secretos mejor guardados del API Manager y que deberías conocer
Relacionaremos 5 peculiaridades muy interesantes y poco conocidas
Velocidad y escalamiento / alta disponibilidad
Realizaremos alguna prueba en directo de velocidad y mostraremos diferentes patrones de clusterización
En el webinar aprenderemos como exponer servicios del ESB desde el API Manager, cual es seguridad que subyace en esta exposición, varias formas de sacar mejor partido de la herramienta y sus posibilidades de crecimiento.
3Redu: Responsabilidad, Resiliencia y Respetocdraco
¡Hola! Somos 3Redu, conformados por Juan Camilo y Cristian. Entendemos las dificultades que enfrentan muchos estudiantes al tratar de comprender conceptos matemáticos. Nuestro objetivo es brindar una solución inclusiva y accesible para todos.
(PROYECTO) Límites entre el Arte, los Medios de Comunicación y la Informáticavazquezgarciajesusma
En este proyecto de investigación nos adentraremos en el fascinante mundo de la intersección entre el arte y los medios de comunicación en el campo de la informática.
La rápida evolución de la tecnología ha llevado a una fusión cada vez más estrecha entre el arte y los medios digitales, generando nuevas formas de expresión y comunicación.
Continuando con el desarrollo de nuestro proyecto haremos uso del método inductivo porque organizamos nuestra investigación a la particular a lo general. El diseño metodológico del trabajo es no experimental y transversal ya que no existe manipulación deliberada de las variables ni de la situación, si no que se observa los fundamental y como se dan en su contestó natural para después analizarlos.
El diseño es transversal porque los datos se recolectan en un solo momento y su propósito es describir variables y analizar su interrelación, solo se desea saber la incidencia y el valor de uno o más variables, el diseño será descriptivo porque se requiere establecer relación entre dos o más de estás.
Mediante una encuesta recopilamos la información de este proyecto los alumnos tengan conocimiento de la evolución del arte y los medios de comunicación en la información y su importancia para la institución.
Índice del libro "Big Data: Tecnologías para arquitecturas Data-Centric" de 0...Telefónica
Índice del libro "Big Data: Tecnologías para arquitecturas Data-Centric" de 0xWord escrito por Ibón Reinoso ( https://mypublicinbox.com/IBhone ) con Prólogo de Chema Alonso ( https://mypublicinbox.com/ChemaAlonso ). Puedes comprarlo aquí: https://0xword.com/es/libros/233-big-data-tecnologias-para-arquitecturas-data-centric.html
Inteligencia Artificial y Ciberseguridad.pdfEmilio Casbas
Recopilación de los puntos más interesantes de diversas presentaciones, desde los visionarios conceptos de Alan Turing, pasando por la paradoja de Hans Moravec y la descripcion de Singularidad de Max Tegmark, hasta los innovadores avances de ChatGPT, y de cómo la IA está transformando la seguridad digital y protegiendo nuestras vidas.
Desarrollo de Habilidades de Pensamiento.docx (3).pdf
App engine
1. CLOUD COMPUTING.
DESARROLLO DE APLICACIONESY
MINERÍA WEB
Programa de extensión universitariaUniversidad de Oviedo
Miguel Fernández Fernández
miguel@ThirdWay.es
4. ¿Qué es Google App Engine?
La solución PaaS de Google
Webapps Python y Java
Altamente escalable
Pago por uso
SDK completo
Administración sencilla
5. ¿Qué es Google App Engine?
y Javascript (Rhino),JRuby,Scala...
La solución PaaS de Google
Webapps Python y Java
Altamente escalable
Pago por uso
SDK completo
Administración sencilla
6. ¿Qué es Google App Engine?
y Javascript (Rhino),JRuby,Scala...
La solución PaaS de Google
Webapps Python y Java
Altamente escalable
Pago por uso
SDK completo
Administración sencilla
Inicio gratuito
< 5M visitas/mes
7. ¿Qué aporta Google App Engine?
Escalabilidad
Ahorro en el coste de propiedad
Amplio conjunto de APIs
Facilidad de desarrollo
Sencillez en el mantenimiento
8. ¿Qué ofrece GAE a nivel funcional?
Memcache, manipulación imágenes, extracción URLs...
Sistema automático de escalado y balanceo de carga
Integración con cuentas de GoogleTM
Almacén de datos transaccional
Planificación de tareas programadas
À-la Unix CronAutenticación y envío de mail
12. El SDK de Java
appengine-java-sdk-1.3.6*
API JARs
Servidor de pruebas
App Engine Uploader
Documentación
Ejemplos
13. Google Plugin for eclipse
GWT 2.0.4
El SDK de Java
appengine-java-sdk-1.3.6*
API JARs
Servidor de pruebas
App Engine Uploader
Documentación
Ejemplos
14. Google Plugin for eclipse
GWT 2.0.4
El SDK de Java
appengine-java-sdk-1.3.6*
API JARs
Servidor de pruebas
App Engine Uploader
Documentación
Ejemplos
eclipse/plugins/com.google.appengine.eclipse.sdkbundle.1.3.6_1.3.6.v201006301254*
16. Hola App Engine! desde Java
Acceder a appengine.google.com y crear la app
17. Hola App Engine! desde Java
Acceder a appengine.google.com y crear la app
18. Hola App Engine! desde Java
Acceder a appengine.google.com y crear la app
Crear un ‘web application project’ desde eclipse
19. Hola App Engine! desde Java
Acceder a appengine.google.com y crear la app
Crear un ‘web application project’ desde eclipse
Configurar applicationId y versión del proyecto
20. Hola App Engine! desde Java
Acceder a appengine.google.com y crear la app
Crear un ‘web application project’ desde eclipse
Configurar applicationId y versión del proyecto
Probar en el servidor de pruebas
21. Hola App Engine! desde Java
Acceder a appengine.google.com y crear la app
Crear un ‘web application project’ desde eclipse
Configurar applicationId y versión del proyecto
Desplegar sobre App Engine
Probar en el servidor de pruebas
http://code.google.com/appengine/docs/java/tools/uploadinganapp.htmlAlternativamente...
22. Hola App Engine! desde Java
Acceder a appengine.google.com y crear la app
Crear un ‘web application project’ desde eclipse
Configurar applicationId y versión del proyecto
Desplegar sobre App Engine
Acceder a http://applicationId.appspot.com
Probar en el servidor de pruebas
http://code.google.com/appengine/docs/java/tools/uploadinganapp.htmlAlternativamente...
26. Limitaciones: El Sandbox
No se pueden escribir ficheros
No se pueden crear sockets
Las aplicaciones no pueden crear hilos ni procesos
Procesos que duran más de 10’’ son finalizados
Llamadas al sistema están deshabilitadas
JNI y extensiones nativas de Python deshabilitadas
27. Limitaciones: El Sandbox
No se pueden escribir ficheros
No se pueden crear sockets
Las aplicaciones no pueden crear hilos ni procesos
Procesos que duran más de 10’’ son finalizados
Llamadas al sistema están deshabilitadas
JNI y extensiones nativas de Python deshabilitadas
el datastoreAlmacenamiento en
28. Limitaciones: El Sandbox
No se pueden escribir ficheros
No se pueden crear sockets
Las aplicaciones no pueden crear hilos ni procesos
Procesos que duran más de 10’’ son finalizados
Llamadas al sistema están deshabilitadas
JNI y extensiones nativas de Python deshabilitadas
el datastoreAlmacenamiento en
batch? (Crawling, etc.)Y si necesitamos
29. Limitaciones: El Sandbox
No se pueden escribir ficheros
No se pueden crear sockets
Las aplicaciones no pueden crear hilos ni procesos
Procesos que duran más de 10’’ son finalizados
Llamadas al sistema están deshabilitadas
JNI y extensiones nativas de Python deshabilitadas
el datastoreAlmacenamiento en
batch? (Crawling, etc.)Y si necesitamos
http://bit.ly/k5jiUcrawlers y GAE @ stackoverflow:
30. Users Service
Cuentas de google apps
Open Id
3 tipos de autenticación
Usuario en sesión?
Usuario es administrador?
Redirección a login
Servicios para
Redirección a sign-up
Users Service API package summary: http://bit.ly/9xDdCK
34. Datastore (el almacén de datos)
Persistencia de entidades
Distribuido, replicado y balanceado
BigTable y GFS
http://code.google.com/appengine/docs/java/datastore/
No relacional
No hay esquema(à-la Sorted Set)Transaccional
35. Datastore standard APIs: JPA y JDO
Garantizan portabilidad A diferencia del A P Ide bajo nivel(à-la SQL) JPQL y JDOQL
36. Datastore standard APIs: JPA y JDO
Garantizan portabilidad A diferencia del A P Ide bajo nivel(à-la SQL) JPQL y JDOQL
¿Cuál usar?
37. Datastore standard APIs: JPA y JDO
Garantizan portabilidad A diferencia del A P Ide bajo nivel(à-la SQL) JPQL y JDOQL
¿Cuál usar?
http://db.apache.org/jdo/jdo_v_jpa.html
38. Datastore standard APIs: JPA y JDO
Garantizan portabilidad A diferencia del A P Ide bajo nivel(à-la SQL) JPQL y JDOQL
¿Cuál usar?
http://db.apache.org/jdo/jdo_v_jpa.html
Data Nucleus Class enhancement
42. Datastore en la práctica
Muestran el tablón y dirigen al usuario al login
43. Datastore en la práctica
Modela la entidad a persistir @PersistentCapable
44. Datastore en la práctica
Tramita la persistencia del mensaje publicado
45. Datastore en la práctica
Singleton para las operaciones de gestión de persistencia
46. Mail Service
Mail Service API: http://bit.ly/aig7Sf
Basado en JSR919 (javax.mail)
Recepción mapeada a HTTP/POST
http://appid.appspot.com/_ah/mail/<address>
53. XMPP (A.K.A. Jabber) Service
Mensajería instantánea
http://www.ietf.org/rfc/rfc3921.txt*XMPP IM standard (pp 4 y 5)
XMPP Service API http://bit.ly/clIjJ8
54. XMPP (A.K.A. Jabber) Service
Mensajería instantánea
Chat bots
Notificaciones
Interfacesa servicios
http://www.ietf.org/rfc/rfc3921.txt*XMPP IM standard (pp 4 y 5)
XMPP Service API http://bit.ly/clIjJ8
55. XMPP (A.K.A. Jabber) Service
Mensajería instantánea
Servidor
Envío y recepción de mensajes*
http://www.ietf.org/rfc/rfc3921.txt*XMPP IM standard (pp 4 y 5)
XMPP Service API http://bit.ly/clIjJ8
56. XMPP (A.K.A. Jabber) Service
Mensajería instantánea
Servidor
Envío y recepción de mensajes*
Consulta de estado cliente (disponible...)
http://www.ietf.org/rfc/rfc3921.txt*XMPP IM standard (pp 4 y 5)
XMPP Service API http://bit.ly/clIjJ8
57. XMPP (A.K.A. Jabber) Service
Mensajería instantánea
Servidor
Envío y recepción de mensajes*
Consulta de estado cliente (disponible...)
http://www.ietf.org/rfc/rfc3921.txt*XMPP IM standard (pp 4 y 5)
XMPP Service API http://bit.ly/clIjJ8
Recepción mapeada a HTTP/POST
http://appid.appspot.com/_ah/xmpp/message/chat
58. XMPP (A.K.A. Jabber) Service
Mensajería instantánea
Servidor
Envío y recepción de mensajes*
Consulta de estado cliente (disponible...)
http://www.ietf.org/rfc/rfc3921.txt*XMPP IM standard (pp 4 y 5)
XMPP Service API http://bit.ly/clIjJ8
Recepción mapeada a HTTP/POST
59. XMPP (A.K.A. Jabber) Service
Varios aliases (JIDs) para la misma app
XMPP Service API http://bit.ly/clIjJ8
app-id@appspot.com
anything@app-id.appspotchat.com
73. Otros recursos
• Using Django with App Engine
http://www.42topics.com/dumps/django/docs.html
• Google app engine Cookbook
http://appengine-cookbook.appspot.com/
• AppScale: Despliegue de la infraestructura AppEngine sobre Amazon
EC2, Eucalyptus, Xen ...
http://code.google.com/p/appscale/
• JRuby on Rails en GAE
*http://olabini.com/blog/2009/04/jruby-on-rails-on-google-app-engine/
75. CLOUD COMPUTING.
DESARROLLO DE APLICACIONESY
MINERÍA WEB
Programa de extensión universitariaUniversidad de Oviedo
Miguel Fernández Fernández
miguel@ThirdWay.es