aws user group - survey results and building apis on aws

Post on 22-Jan-2018

277 Views

Category:

Technology

1 Downloads

Preview:

Click to see full reader

TRANSCRIPT

#6 - Survey Results and Building APIs on AWS10 November 2015

Presenter: Sebastian Krueger – Co-Founder and Technical Director at API Talent

AcknowledgementsWe would like to thanks our sponsors for their help in making

AWS User Group Wellington a success.

Bronnie – OptimalPeople

Dan - OptimalBI

Buzzy – Amazon Web Services

Seb – API Talent

Agenda

• Part I: Survey Results

• Part II: Building APIs on AWS• API Overview

• API Case Study

• Server-based APIs on AWS Overview

• Server-less APIs on AWS Overview / Demo

Part I

Survey: Meetup Quality Rating

0

2

4

6

8

10

12

14

16

18

1 2 3 4 5 N/A

User Group Rating

User Group Rating

0

2

4

6

8

10

12

14

1 2 3 4 5 0

Num Meetups Attended

Num Meetups Attended

Survey: Meetup Scheduling

0

5

10

15

20

25

Monday Tuesday Wednesday Thursday Friday

Meetup Day

Meetup Day

0

5

10

15

20

25

12pm 1pm 4pm 530pm 6pm

Meetup Time

Meetup Time

0

5

10

15

20

25

Every 4weeks

Every 5weeks

Every 6weeks

Every 7weeks

Every 8weeks

Meetup Frequency

Meetup Frequency

Survey: Meetup Content

0

5

10

15

20

25

30

Technical Deep Dive AWS Service Overview Generic Use Cases Wellington AWSCustomer Solutions

Meetup Content

Meetup Content

Survey: Meetup Content

0

5

10

15

20

25

30

Technical Deep Dive AWS Service Overview Generic Use Cases Wellington AWSCustomer Solutions

Meetup Content

Meetup Content

0

5

10

15

20

25

30

Technical Deep Dive AWS Service Overview Generic Use Cases Wellington AWSCustomer Solutions

Meetup Content – Most Preferred

Meetup Content - The Most

Survey: Meetup Content – Service Category

02468

101214161820

Service Category First Choice

Service Category First Choice

Survey: Meetup Content – Service Category

02468

101214161820

Service Category First Choice

Service Category First Choice

0

2

4

6

8

10

12

Service Category Second Choice

Service Category Second Choice

Survey: Meetup Speaker Type

0

5

10

15

20

25

30

AWS Staff Enterprise AWSCustomers

Startup AWSCustomers

AWS TechnologyPartners

AWS ConsultingPartners

Speaker Type

Speaker Type

Survey: Meetup Speaker Type

0

5

10

15

20

25

30

AWS Staff Enterprise AWSCustomers

Startup AWSCustomers

AWS TechnologyPartners

AWS ConsultingPartners

Speaker Type

Speaker Type

0

2

4

6

8

10

12

14

AWS Staff Enterprise AWSCustomers

Startup AWSCustomers

AWS TechnologyPartners

AWS ConsultingPartners

Speaker Type – Most Preferred

Speaker Type - The Most

Survey: Respondents - Who are you?

0

2

4

6

8

10

12

14

16

18

CloudArchitect

DevOpsEngineer / IT

Ops

ApplicationDeveloper

Manager(Practice /

Project)

Other

Job Function

Job Function

0

5

10

15

20

Every day, all daylong

Weekly Monthly Not at all

AWS Usage Frequency

AWS Usage Frequency

0

2

4

6

8

10

12

No skills Novice /Beginner

Intermediate Advanced Expert World ClassCloud Ninja

AWS Skill Level

AWS Skill Level

Survey: Respondents – AWS Certs

0

2

4

6

8

10

12

14

Solutions Architect- Associate

Developer -Associate

SysOpsAdministrator -

Associate

Solutions Architect- Professional

DevOps Engineer -Professional

AWS Certs Completed

AWS Certs Completed

0

2

4

6

8

10

12

14

Not interested Considering it Started Studying

More Certs?

More Certs?

Survey: Cloud Vendors

0

5

10

15

20

25

30

35

40

45

Amazon WebServices

Microsoft Azure Google Compute OpenStack Other Total SurveyResponses

Using Which Cloud Vendors

Using Which Cloud Vendors

Survey Results Summary• Meetup day of the week: Tuesday

• Meetup time: 4pm or 5.30pm

• Meetup frequency: 6 weeks

• Meetup Content: • Anything goes.

• Technical deep dive preferred

• Service Categories: 1st Compute, 2nd Storage, 3rd Analytics

• Speaker type: • Anything goes

• Enterprise Customers or Startup Customers preferred

Part II

What is an API?

An Application Programming Interface (API) is a specification intended to be used as an interface by software components to communicate with each other. An API may include specifications for routines, data structures, object classes, and variables.Source: Wikipedia

An analogy: The evolution of the car industry follows the logic of APIs

Yesterday

Carmaker = craftsman

• Tailor made

• Custom design for each element of the car (wheels, seats, brakes, lights, roof, etc.)

• Restricted modularity

• No standardised processes

Source: 3Scale, What is an API?

Today

Carmaker = system integrator

• Car divided into subsystems (powertrain, brakes, steering, suspension, etc.)

• Main elements designed separately and reused in different cars

• Standardised processes

• Communication interfaces between different engineering teams

An analogy: The evolution of the car industry follows the logic of APIs

So, what is an API?

API Case Study: Fitbit API, externalising R&DFitbit is a fitness tracker that records health and fitness data.

Originally, there was only one application using the data developed by Fitbit.

In 2011, Fitbit created an API to allow third party developers to create fitness apps using Fitbithealth data such as daily steps, calories burned, food eaten and weight.

Thriving innovation based on the Fitbit API34 Apps were built on the Fitbit API creating innovative uses of fitness and health data.

What would it have cost if there were no APIs?What would it have cost if Fitbit had developed these apps themselves?

Let’s assume 1 application = $50,000

34 applications are using the fitness data from Fitbit API

Developing these apps would have cost FitBit:

$1,700,000

Even your bottle has an API!

Endless possibilities…

But…What do these APIs actually look like?APIs can be classified in several categories depending what abstraction is being described.

API Category Example Timeline

Operating System API for MS WindowsAPI for Apple Mac OS X (Cocoa)

1985-2001-

Programming Languages Java API 1995-

Application Services API for SAP (BAPI) 1990s-

Infrastructure Services Amazon Web Services API 2002-

Web Services Twitter API 2006-

REST architecture for APIsRESTFul is a style of software architecture that allows data exchange through human readable URIs.

REST language uses nouns and verbs, and has an emphasis on readability. It ultimately uses less bandwidth than other languages such as SOAP for instance.

• GET – Access a resource

• PUT – Update a resource

• POST – Create a resource

• DELETE – Delete a resource

Let’s Build an API using AWSThere are a few options:

• Roll your own (raw EC2) (could use CodeDeploy)

• OpsWorks

• Elastic Beanstalk

• API Gateway / Lambda

Use 3rd Party PaaS (on top of AWS):

• Heroku, Cloud 66, etc, etc, etc

First Up: AWS Beanstalk• EC2 - Elastic Compute Cloud

• S3 – Simple Storage Service

• ELB – Elastic Load Balancer

• Auto Scaling – starts new EC2 instances

• EBS – Elastic Block Storage; virtual hard disks

AWS Beanstalk provides a convenience layer on top of all of these services.

Elastic Beanstalk in a Nutshell• EC2 Server

• + Linux

• + OpenJDK

• + Tomcat

• Scaling Elastic Load Balancer / Auto Scaling

• Deploy artefacts on S3

• Can add database (RDS)

AWS Beanstalk Language Support

Let’s build a Java-based Web APIDEMO TIME

GET http://somewhere/hello/seb

Returns:

“Hello seb”

Amazon API Gateway and AWS Lambda

AMS Lambda + Amazon API Gateway means no infrastructure to manage - AWS does the scaling for you.

Amazon API Gateway is a fully managed service that makes it easy for developers to create, publish, maintain, monitor, and secure APIs at any scale.

Lambda functions is stateless, trigger based code execution.

A new, fully managed model

Amazon API Gateway and AWS LambdaDemo: Hello World with Name using Lambda/Python

GET http://somewhere/hello/seb

Returns:

“Hello seb”

Thanks to our Sponsors

top related