Coding in the Cloud A review of the development experience  across cloud strata
Eric Peterson Principal Consultant Centerstance Introduction
Goal: a taste of development experience in several different cloud offerings. No fear! Review: SaaS – Blogger PaaS – Force...
<ul><li>SaaS – Software as a Service </li></ul><ul><ul><li>Configuration vs. Coding </li></ul></ul><ul><ul><li>Usually cus...
<ul><li>Sign up </li></ul><ul><li>Configure </li></ul><ul><li>Done </li></ul><ul><li>No code! </li></ul>SaaS - Blogger
<ul><li>Proprietary language(s) – Apex, VisualForce </li></ul><ul><li>Eclipse IDE plugin for dev, testing, deployment </li...
PaaS – Force.com
PaaS – Force.com Apex VisualForce SOQL
PaaS – Force.com
PaaS – Force.com
<ul><li>Java or Python </li></ul><ul><li>Eclipse IDE plugin for dev, testing, deployment </li></ul><ul><li>“ compile”/Dev/...
PaaS –  Google App Engine
PaaS –  Google App Engine JSP Java JDO
PaaS –  Google App Engine
<ul><li>Java, Python, .NET, PHP, Ruby, Caml, etc. </li></ul><ul><li>Pick your OS (Windows, Linux, Solaris) </li></ul><ul><...
IaaS – Amazon EC2 with .NET
IaaS – Amazon EC2 with .NET ASP.NET C# SimpleDB
IaaS – Amazon EC2 with .NET
<ul><li>SaaS – Software as a Service </li></ul><ul><ul><li>Good if known problem/known solution </li></ul></ul><ul><li>Paa...
Getting on the right path to the cloud with AWS 4/21 – Portland, OR  http://bit.ly/cxBb2G   Seattle AWS User Group Meeting...
Upcoming SlideShare
Loading in …5
×

NWCloud Cloud Track - A comparative analysis of the development experience across cloud strata

1,052 views
1,030 views

Published on

NWCloud Cloud Track Session

0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
1,052
On SlideShare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
0
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide
  • Comparative view of development experience across several cloud offerings Goal: help you know where to start, and what cloud layer is appropriate for the type of solution you are developing One target application: a simple blog Several development platforms
  • SaaS – wheel already been invented PaaS – “pure code”, just write your code, don’t worry about where to host it or how to configure the system IaaS – pretty much like a VM hosted “out there”, you own coding and System Configuration, but not physical maintenance or support
  • Apex based on Java, c-style syntax – easy for c# or java devs to pick up VisualForce – markup (like asp.net or jsp) Database – sObjects DTO/Table/Schema all wrapped up into one Built in test framework – requires 75% code coverage for a given test run to pass Tests must pass in order to be able to deploy to production Can’t do “full” TDD because files are saved (and compiled) one at a time Deployment is eeeeeasy Built in security, but can do federated authentication
  • Eclipse again!? You don’t *have* to use it, but I’m lazy. If you use a different IDE - /appengine-java-sdk/demos/new_project_template/ Google Web Toolkit – compile Java into JavaScript for rich-client web app Google App Engine – dev code for normal servlet-style app Data storage in App Engine Datastore – uses DataNucleus (either JDO or JPA) Write normal java servlets according to Java Servlet standard Debug using Eclipse plugin If you read the tutorial, there is lots of “if you’re not using Eclipse, then do this. Otherwise, it was done for you.” Most of the eclips functionality is also provided as ANT scripts This is cool – normal Java (almost). There is a JRE Class Whitelist, you can’t use classes from the JRE that aren’t on that list.
  • When you sign up you get [something] .appspot.com Eclipse again!? You don’t *have* to use it, but I’m lazy. If you use a different IDE - /appengine-java-sdk/demos/new_project_template/ Google Web Toolkit – compile Java into JavaScript for rich-client web app Google App Engine – dev code for normal servlet-style app Data storage in App Engine Datastore Write normal java servlets according to Java Servlet standard Debug using Eclipse plugin If you read the tutorial, there is lots of “if you’re not using Eclipse, then do this. Otherwise, it was done for you.” Most of the eclips functionality is also provided as ANT scripts
  • When you sign up you get [something] .appspot.com Eclipse again!? You don’t *have* to use it, but I’m lazy. If you use a different IDE - /appengine-java-sdk/demos/new_project_template/ Google Web Toolkit – compile Java into JavaScript for rich-client web app Google App Engine – dev code for normal servlet-style app Data storage in App Engine Datastore Write normal java servlets according to Java Servlet standard Debug using Eclipse plugin If you read the tutorial, there is lots of “if you’re not using Eclipse, then do this. Otherwise, it was done for you.” Most of the eclips functionality is also provided as ANT scripts
  • NWCloud Cloud Track - A comparative analysis of the development experience across cloud strata

    1. 1. Coding in the Cloud A review of the development experience across cloud strata
    2. 2. Eric Peterson Principal Consultant Centerstance Introduction
    3. 3. Goal: a taste of development experience in several different cloud offerings. No fear! Review: SaaS – Blogger PaaS – Force.com, Google Apps IaaS – AWS EC2 Overview
    4. 4. <ul><li>SaaS – Software as a Service </li></ul><ul><ul><li>Configuration vs. Coding </li></ul></ul><ul><ul><li>Usually customizing a solution for a known/solved problem. </li></ul></ul><ul><li>PaaS – Platform as a Service </li></ul><ul><ul><li>“ pure code” </li></ul></ul><ul><ul><li>Don’t have to worry as much about system configuration. </li></ul></ul><ul><li>IaaS – Infrastructure as a Service </li></ul><ul><ul><li>VMs hosted “somewhere” </li></ul></ul><ul><ul><li>You still own system configuration and coding </li></ul></ul>Cloud Strata
    5. 5. <ul><li>Sign up </li></ul><ul><li>Configure </li></ul><ul><li>Done </li></ul><ul><li>No code! </li></ul>SaaS - Blogger
    6. 6. <ul><li>Proprietary language(s) – Apex, VisualForce </li></ul><ul><li>Eclipse IDE plugin for dev, testing, deployment </li></ul><ul><li>Dev locally </li></ul><ul><li>“ compile”, test in the cloud </li></ul>PaaS – Force.com
    7. 7. PaaS – Force.com
    8. 8. PaaS – Force.com Apex VisualForce SOQL
    9. 9. PaaS – Force.com
    10. 10. PaaS – Force.com
    11. 11. <ul><li>Java or Python </li></ul><ul><li>Eclipse IDE plugin for dev, testing, deployment </li></ul><ul><li>“ compile”/Dev/Test locally </li></ul>PaaS – Google App Engine
    12. 12. PaaS – Google App Engine
    13. 13. PaaS – Google App Engine JSP Java JDO
    14. 14. PaaS – Google App Engine
    15. 15. <ul><li>Java, Python, .NET, PHP, Ruby, Caml, etc. </li></ul><ul><li>Pick your OS (Windows, Linux, Solaris) </li></ul><ul><li>Pick your IDE </li></ul><ul><li>Can Dev/test in the cloud or locally </li></ul>IaaS – Amazon EC2 with .NET
    16. 16. IaaS – Amazon EC2 with .NET
    17. 17. IaaS – Amazon EC2 with .NET ASP.NET C# SimpleDB
    18. 18. IaaS – Amazon EC2 with .NET
    19. 19. <ul><li>SaaS – Software as a Service </li></ul><ul><ul><li>Good if known problem/known solution </li></ul></ul><ul><li>PaaS – Platform as a Service </li></ul><ul><ul><li>Trade control for speed, multi-tenancy can be limiting </li></ul></ul><ul><ul><li>Cheap/free for simple Hello World apps </li></ul></ul><ul><li>IaaS – Infrastructure as a Service </li></ul><ul><ul><li>No Platform-provider “rules” </li></ul></ul><ul><ul><li>Exellent starting point to port “physical” apps to the cloud </li></ul></ul><ul><ul><li>Less abstract than developing in PaaS </li></ul></ul>Conclusions
    20. 20. Getting on the right path to the cloud with AWS 4/21 – Portland, OR http://bit.ly/cxBb2G Seattle AWS User Group Meeting 4/27 – Seattle, WA http://bit.ly/sawsugmar2010 Eric Peterson [email_address] www.centerstance.com centerstance.wordpress.com @centerstance Q&A

    ×