devfest09 app engine java
DESCRIPTION
This is a presentation on Google App Engine for Java given at Devfest 2009 in Buenos Aires Argentina on Nov 17, 2009 by Google Developer Advocate, Chris Schalk and Google Software Engineer, Ignacio Blanco.TRANSCRIPT
![Page 1: Devfest09 App Engine Java](https://reader033.vdocuments.mx/reader033/viewer/2022051514/54bf0b6e4a7959b8618b4574/html5/thumbnails/1.jpg)
![Page 2: Devfest09 App Engine Java](https://reader033.vdocuments.mx/reader033/viewer/2022051514/54bf0b6e4a7959b8618b4574/html5/thumbnails/2.jpg)
Chris Schalk, Developer Advocate Ignacio Blanco, Software Engineer
Introduction to Google App Engine for Java
Con: Juan Pablo Picasso, Pablo Francavilla de Getsense
DevFest 2009 November 17th Buenos Aires
![Page 3: Devfest09 App Engine Java](https://reader033.vdocuments.mx/reader033/viewer/2022051514/54bf0b6e4a7959b8618b4574/html5/thumbnails/3.jpg)
3
Agenda
• What does it take to host a Java Web application?
• Introducing Google App Engine for Java
• App Engine Review for Java – A Complete Java development stack
• Demos, Demos, Demos!
• Java App Engine use in Argentina
• Questions
![Page 4: Devfest09 App Engine Java](https://reader033.vdocuments.mx/reader033/viewer/2022051514/54bf0b6e4a7959b8618b4574/html5/thumbnails/4.jpg)
4
What does it take (for a Java developer) to host a Web application?
![Page 5: Devfest09 App Engine Java](https://reader033.vdocuments.mx/reader033/viewer/2022051514/54bf0b6e4a7959b8618b4574/html5/thumbnails/5.jpg)
5
Doing it yourself in Java is still complex!
![Page 6: Devfest09 App Engine Java](https://reader033.vdocuments.mx/reader033/viewer/2022051514/54bf0b6e4a7959b8618b4574/html5/thumbnails/6.jpg)
6
Hosting with Java still means hidden costs
• Idle capacity
• Software patches & upgrades
• License fees
• IT staff server wrangling
• Traffic & utilization forecasting
• Upgrades
![Page 7: Devfest09 App Engine Java](https://reader033.vdocuments.mx/reader033/viewer/2022051514/54bf0b6e4a7959b8618b4574/html5/thumbnails/7.jpg)
7
Google App Engine – now with Java!
• Easy to build
• Easy to maintain
• Easy to scale
And it’s still…
![Page 8: Devfest09 App Engine Java](https://reader033.vdocuments.mx/reader033/viewer/2022051514/54bf0b6e4a7959b8618b4574/html5/thumbnails/8.jpg)
8
All the same services for Java App Engine as with Python
![Page 9: Devfest09 App Engine Java](https://reader033.vdocuments.mx/reader033/viewer/2022051514/54bf0b6e4a7959b8618b4574/html5/thumbnails/9.jpg)
9
Apr 2008 Python launch May 2008 Memcache, Images API Jul 2008 Logs export Aug 2008 Batch write/delete Oct 2008 HTTPS support Dec 2008 Status dashboard, quota details Feb 2009 Billing, larger files Apr 2009 Java launch, DB import, cron support,
SDC May 2009 Key-only queries Jun 2009 Task queues Aug 2009 Kindless queries Sep 2009 XMPP Oct 2009 Incoming Email
18+ months in review
![Page 10: Devfest09 App Engine Java](https://reader033.vdocuments.mx/reader033/viewer/2022051514/54bf0b6e4a7959b8618b4574/html5/thumbnails/10.jpg)
10
Same Distributed web hosting platform
![Page 11: Devfest09 App Engine Java](https://reader033.vdocuments.mx/reader033/viewer/2022051514/54bf0b6e4a7959b8618b4574/html5/thumbnails/11.jpg)
11
Same Distributed web hosting platform
• Parallel processing
• Scales automatically
• Available globally
• Configuration free
• Built-in DoS protections
![Page 12: Devfest09 App Engine Java](https://reader033.vdocuments.mx/reader033/viewer/2022051514/54bf0b6e4a7959b8618b4574/html5/thumbnails/12.jpg)
12
Same Distributed web hosting platform
SCALABILITY for Java as well
![Page 13: Devfest09 App Engine Java](https://reader033.vdocuments.mx/reader033/viewer/2022051514/54bf0b6e4a7959b8618b4574/html5/thumbnails/13.jpg)
13
Same Specialized services
![Page 14: Devfest09 App Engine Java](https://reader033.vdocuments.mx/reader033/viewer/2022051514/54bf0b6e4a7959b8618b4574/html5/thumbnails/14.jpg)
14
Same App Engine Dashboard
![Page 15: Devfest09 App Engine Java](https://reader033.vdocuments.mx/reader033/viewer/2022051514/54bf0b6e4a7959b8618b4574/html5/thumbnails/15.jpg)
15
Same initial free use policy as Python
• ~5M pageviews/month
• 6.5 CPU hrs/day
• 1 GB storage
• 650K URL Fetch calls
• 2,000 recipients emailed
• 1 GB/day bandwidth
• N tasks
![Page 16: Devfest09 App Engine Java](https://reader033.vdocuments.mx/reader033/viewer/2022051514/54bf0b6e4a7959b8618b4574/html5/thumbnails/16.jpg)
16
App Engine and Java Standards
![Page 17: Devfest09 App Engine Java](https://reader033.vdocuments.mx/reader033/viewer/2022051514/54bf0b6e4a7959b8618b4574/html5/thumbnails/17.jpg)
17
Based on Java Standards
![Page 18: Devfest09 App Engine Java](https://reader033.vdocuments.mx/reader033/viewer/2022051514/54bf0b6e4a7959b8618b4574/html5/thumbnails/18.jpg)
18
Based on Java Standards
![Page 19: Devfest09 App Engine Java](https://reader033.vdocuments.mx/reader033/viewer/2022051514/54bf0b6e4a7959b8618b4574/html5/thumbnails/19.jpg)
19
Extended Language support through JVM
• Java • Scala • JRuby (Ruby) • Groovy • Quercus (PHP) • Rhino (JavaScript) • Jython (Python)
Duke, the Java mascot Copyright © Sun Microsystems Inc., all rights reserved.
![Page 20: Devfest09 App Engine Java](https://reader033.vdocuments.mx/reader033/viewer/2022051514/54bf0b6e4a7959b8618b4574/html5/thumbnails/20.jpg)
20
Development Tools for Java App Engine
![Page 21: Devfest09 App Engine Java](https://reader033.vdocuments.mx/reader033/viewer/2022051514/54bf0b6e4a7959b8618b4574/html5/thumbnails/21.jpg)
21
Google’s Complete Java Development Stack
+
![Page 22: Devfest09 App Engine Java](https://reader033.vdocuments.mx/reader033/viewer/2022051514/54bf0b6e4a7959b8618b4574/html5/thumbnails/22.jpg)
22
Google Plugin for Eclipse
![Page 23: Devfest09 App Engine Java](https://reader033.vdocuments.mx/reader033/viewer/2022051514/54bf0b6e4a7959b8618b4574/html5/thumbnails/23.jpg)
23
Google Plugin for Eclipse
![Page 24: Devfest09 App Engine Java](https://reader033.vdocuments.mx/reader033/viewer/2022051514/54bf0b6e4a7959b8618b4574/html5/thumbnails/24.jpg)
24
NeatBeans Plugin for Java App Engine
http://kenai.com/projects/nbappengine/
![Page 25: Devfest09 App Engine Java](https://reader033.vdocuments.mx/reader033/viewer/2022051514/54bf0b6e4a7959b8618b4574/html5/thumbnails/25.jpg)
25
Demo
• Getting started – How to get an account
– Dealing with registration issues here in Argentina
![Page 26: Devfest09 App Engine Java](https://reader033.vdocuments.mx/reader033/viewer/2022051514/54bf0b6e4a7959b8618b4574/html5/thumbnails/26.jpg)
26
Demo
• How to build and deploy a Java AE App in 30 seconds
![Page 27: Devfest09 App Engine Java](https://reader033.vdocuments.mx/reader033/viewer/2022051514/54bf0b6e4a7959b8618b4574/html5/thumbnails/27.jpg)
27
Demo
• Lolcat Wave Robot – From the GWT client
to a Google Wave Bot!
![Page 28: Devfest09 App Engine Java](https://reader033.vdocuments.mx/reader033/viewer/2022051514/54bf0b6e4a7959b8618b4574/html5/thumbnails/28.jpg)
28
Demo
• Demonstrating “Plane Crazy” • Uses DataStore for Airplane, Activities, People data
• Uses email service for correspondence
• Uses XMPP for simple chatbot access
Live Demo: http://plane-crazy.appspot.com Source: http://code.google.com/p/plane-crazy-demo/
![Page 29: Devfest09 App Engine Java](https://reader033.vdocuments.mx/reader033/viewer/2022051514/54bf0b6e4a7959b8618b4574/html5/thumbnails/29.jpg)
Java Development with Google App Engine in Argentina
Local Experts using Google App Engine for Java
Juan Pablo Picasso, Pablo Francavilla
![Page 30: Devfest09 App Engine Java](https://reader033.vdocuments.mx/reader033/viewer/2022051514/54bf0b6e4a7959b8618b4574/html5/thumbnails/30.jpg)
Using App Engine and other Google Cloud products
• Cashflow Spreadsheets Integration
• latamvalley.com
![Page 31: Devfest09 App Engine Java](https://reader033.vdocuments.mx/reader033/viewer/2022051514/54bf0b6e4a7959b8618b4574/html5/thumbnails/31.jpg)
Cashflow Spreadsheets Integration
– “Google Apps + Your Apps”: integración de Google Spreadsheets con SaaS financiero mediante GAE/J
– Reportes
– Escenarios
– URL Fetch API – XML
![Page 32: Devfest09 App Engine Java](https://reader033.vdocuments.mx/reader033/viewer/2022051514/54bf0b6e4a7959b8618b4574/html5/thumbnails/32.jpg)
• Costo cero en infraestructura
• Reutilización de know-how Java
• Disponibilidad del Servicio
• Comunidad muy activa y en crecimiento
+ = Optimización de procesos internos
Cashflow Spreadsheets Integration
![Page 33: Devfest09 App Engine Java](https://reader033.vdocuments.mx/reader033/viewer/2022051514/54bf0b6e4a7959b8618b4574/html5/thumbnails/33.jpg)
latamvalley.com
![Page 34: Devfest09 App Engine Java](https://reader033.vdocuments.mx/reader033/viewer/2022051514/54bf0b6e4a7959b8618b4574/html5/thumbnails/34.jpg)
latamvalley.com
• “Uniendo a las Personas y Proyectos de Internet de Latinoamérica”
• Base abierta de:
• Empresas
• Personas
• Productos
• Proveedoras de Servicios
• Inversoras de Capital
![Page 35: Devfest09 App Engine Java](https://reader033.vdocuments.mx/reader033/viewer/2022051514/54bf0b6e4a7959b8618b4574/html5/thumbnails/35.jpg)
• Apache Wicket
• Images API
• Datastore Persistence (JDO)
• Custom authentication
• JUnit
+ = Scrum Working Software desde la iteración
1 (one week)
latamvalley.com
![Page 36: Devfest09 App Engine Java](https://reader033.vdocuments.mx/reader033/viewer/2022051514/54bf0b6e4a7959b8618b4574/html5/thumbnails/36.jpg)
Nuestro “Feedback”
• Import/Export SQL • SSL para Google Apps Domains • Generación de Imágenes • + tools para entorno development • Tools Python == Tools Java
![Page 37: Devfest09 App Engine Java](https://reader033.vdocuments.mx/reader033/viewer/2022051514/54bf0b6e4a7959b8618b4574/html5/thumbnails/37.jpg)
37
Questions
Q&A
Chris Schalk • Twitter: @cschalk • [email protected]
Ignacio Blanco • [email protected]
Getsense
Juan Pablo Picasso, Pablo Francavilla
http://groups.google.com/group/gtug-ar
Foro GAE en Español La seguimos en el break [email protected]