IBM Bluemix saves the game

Preview:

Citation preview

1

Global Game JamJanuary 23-25, 2015 Rome

IBM Bluemix saves the gameibm.biz/Bluemix2015

@gjuljo

2 © 2015 IBM Corporation

Cloud Service Models

Networking Networking Networking Networking

Storage Storage Storage Storage

Servers Servers Servers Servers

Virtualization Virtualization Virtualization Virtualization

O/S O/S O/S O/S

Middleware Middleware Middleware Middleware

Runtime Runtime Runtime Runtime

Data Data Data Data

Applications Applications Applications Applications

Traditional On-Premises

Infrastructureas a Service

Platformas a Service

Softwareas a Service

Clie

nt

Man

ages

Ven

do

r Man

ages in C

lou

d

Ven

do

r Man

ages in C

lou

d

Ven

do

r Man

ages in C

lou

d

Clie

nt

Man

ages

Clie

nt

Man

ages

Customization; higher costs; slower time to value

Standardization; lower costs; faster time to value

3 © 2015 IBM Corporation

Security

Services

Web and

application

services

Cloud

Integration

Services

Mobile

Services

Database

services

Big Data

services

Watson

Services

Create apps quickly with ready-to-use services

DevOps

Services

Internet of

Things

Services

• Runtimes, services, and tooling

up to you

Choice

Industry Leading Capabilities• Services leveraging the

depth of IBM software

• Full range of capabilities

Completeness

• Open source platform and services

• Third party to enable key use cases

4 © 2015 IBM Corporation

DevOps Services for Bluemix

1. Agile development, tracking & collaboration

2. Use your favorite tool or web IDE

6. Continuously deliver

8. Get instantaneous feedback

from mobile apps

7. Manage and monitor your

app’ performance

4. Continuously integrate your code

Agile

Planning

5. Scan your app for vulnerabilities

Jazz SCM Hosted Git

Web IDE

Delivery

Pipeline AppScan

Mobile & Web

Continous

Integration

Mobile Quality

Monitoring

and Analytics

Operate Develop/ Test

Deploy

Steer

DevOpsServices

Eclipse Sublime

3. Use the repo you like

Auto Scaling

5 © 2015 IBM Corporation

Watson Services in Bluemix

Concept ExpansionMaps euphemisms or colloquial terms

to more commonly understood phrases

User ModelingImproved understanding of people’s

preferences to help engage users on

their own terms

Language IdentificationIdentifies the language in which text

is written

Question and AnswerDirect responses to user inquiries

fueled by primary document sources

Message ResonanceCommunicate with people with a

style and words that suits them

Relationship ExtractionIntelligently finds relationships

between sentence components

(nouns, verbs, subjects, objects)

Visualization RenderingGraphical representations of data

analysis for easier understanding

Language TranslationGlobalize on the fly. Translate text

from one language to another

6 © 2015 IBM Corporation

IBM Internet Of Things Foundation

https://quickstart.internetofthings.ibmcloud.com

7

Gamification (BETA)

8 © 2015 IBM Corporation

Gamification Service on Bluemix

• Players

• Variables

• Missions

• Events

• Deeds & Awards

9 © 2015 IBM Corporation

Gamification Documentation and Examples

Gamification Service Documentation

https://www.ng.bluemix.net/docs/#services/Gamification/index.html#gamification

Gamification REST API:

http://gs.ng.bluemix.net/index.html

Gamification SDK for Node.js:

https://hub.jazz.net/project/bioflash/gamiRESTClient/overview

Gamification Examples:

https://hub.jazz.net/project/bioflash/HelloGami/overview

https://hub.jazz.net/project/bioflash/GamifyPollApp/overview

10 © 2015 IBM Corporation

Gamification Example: PayRewards

https://hub.jazz.net/project/jstart/payrewards/overview

http://payrewards.mybluemix.net

http://youtu.be/9QlMcwtu7xA

Gamebar

11 © 2015 IBM Corporation

Gamification: REST APIs

Example: View Game Plan Details (GET):https://gs.ng.bluemix.net/service/plan/<PlanName>?key=<PlanKey>&tenantId=<tid>

Example: List Events in Game Plan (GET):https://gs.ng.bluemix.net/service/plan/<PlanName>/event?key=<PlanKey>&tenantId=<tid>

Example: Create User (POST)https://gs.ng.bluemix.net/service/plan/<PlanName>/user?key=<PlanKey>&tenantId=<tid>

Example: Trigger Event (POST)https://gs.ng.bluemix.net/trigger/plan/<PlanName>/event/<EventName>?key=<PlanKey>&tenantId=<tid>

You can programmatically handle users, missions and events

{ "uid": "user123", "firstName": "Pinco", "lastName": "Pallino" }

{ "eventSource": "myapp", "uid": "user123" }

12

Internet of Things Foundation

13 © 2015 IBM Corporation

IoT Foundation: Apps, Devices and APIs

Devices

IBM IoT Foundation

Apps

PUBLISH

RECEIVE

events

commands

PUBLISHcommands

REGISTERdevices

GENERATEAPI keys

HTTP HTTP

RECEIVEevents

(and services)

MQTT MQTT

14 © 2015 IBM Corporation

IoT Foundation: MQTT and Apps

https://developer.ibm.com/iot/recipes/improvise-application-development

username <key>

password <token>

clientid a:<orgid>:<app-id>

publishes iot-2/type/<type-id>/id/<device-id>/cmd/<cmd-id>/fmt/<format-id>

subscribes iot-2/type/<type-id>/id/<device-id>/evt/<event-id>/fmt/<format-id>

Apps & Serviceskey: a-myorg-hketyuionf

token: AB3ur51jL+3awe0kl

Example

tcp://<org-id>.messaging.internetofthings.ibmcloud.com:1883

ssl://<org-id>.messaging.internetofthings.ibmcloud.com:8883

MQTT Host

15 © 2015 IBM Corporation

IoT Foundation: Devices

Devices

https://developer.ibm.com/iot/recipes/improvise-registered-devices

https://developer.ibm.com/iot/recipes/improvise-commands

username use-token-auth

password <auth-token>

clientid d:<orgid>:<type-id>:<divice-id>

publishes iot-2/evt/<event-id>/fmt/<format>

subscribes iot-2/cmd/<cmd-type>/fmt/<format-id>

payload {“d”: {“name1”: “value1”, “name2”: intvalue } }

org=myorg

type=mydevicetype

id=mydeviceid

auth-method=token

auth-token=Gh3e(EA998fart4

Example

16 © 2015 IBM Corporation

IoT Foundation: REST APIs

View an organization (GET):https://internetofthings.ibmcloud.com/api/v0001/organizations/<org-id>

List all devices (GET) / Registr a device (POST):https://internetofthings.ibmcloud.com/api/v0001/organizations/<org-id>/devices

Historical data for a device (GET):https://internetofthings.ibmcloud.com/api/v0001/historian/<org-id>/<type-id>/<id>?filter

REST API Examples

https://developer.ibm.com/iot/recipes/api-documentation

curl --user “<key>:<token>" https://internetofthings.ibmcloud.com/api/v0001/organizations/<org-id>/devices

Example: get all devices

17 © 2015 IBM Corporation

IoT Foundation: MQTT Starfighter

http://m2m.demos.ibm.com/collaboration.html#starfighter

https://hub.jazz.net/project/spirit/MQTT%20Starfighter%20Server/overview

18 © 2015 IBM Corporation

IoT Foundation: Quick Start

https://quickstart.internetofthings.ibmcloud.com

https://github.com/ibm-messaging/iot-arduino

19 © 2015 IBM Corporation

IoT Foundation: App Example

https://github.com/ibm-messaging/iot-visualization

20 © 2015 IBM Corporation

IBM Connected Car

http://m2m.demos.ibm.com/connectedCar.html#connectedCar

http://tiny.cc/ws0zpx

21

Bluemix references.

22 © 2015 IBM Corporation

Bluemix Docs

- BLUEMIX DOCS

https://www.ng.bluemix.net/docs

https://developer.ibm.com/bluemix

- PREREQUISITES AND DOWNLOAD

https://developer.ibm.com/bluemix/support/#prereqs

https://www.ng.bluemix.net/docs/#starters/BuildingWeb.html#building_web

- COMMAND LINE AND VCAP_SERVICES ENVIRONMENT VARIABLE

https://www.ng.bluemix.net/docs/#cli/index.html#cli

- MANIFEST GUIDE (manifest.yml)

http://docs.cloudfoundry.org/devguide/deploy-apps/manifest.html

- BUILDPACK FROM CLOUD FOUNDRY COMMUNITY

https://github.com/cloudfoundry-community/cf-docs-contrib/wiki/Buildpacks

23 © 2015 IBM Corporation

Tutorials and Examples (1/5)

- TUTORIAL: Build your first App in Node.js1) https://www.youtube.com/watch?v=GRQnwVhYeWU

2) https://www.youtube.com/watch?v=-WsIjAdGeHQ

3) https://www.youtube.com/watch?v=S_tcicKXW1A

- TUTORIAL: Mobile Data + Push Notification + Node.js1) http://www.ibm.com/developerworks/mobile/library/mo-android-mobiledata-app/index.html

2) http://www.ibm.com/developerworks/library/mo-android-push-app/index.html

24 © 2015 IBM Corporation

Tutorials and Examples (2/5)

- EXAMPLE MOBILE APP: Cordova + Push Nofiticationhttp://www.ibm.com/developerworks/mobile/library/mo-push-apache-cordova-app

- EXAMPLE MEAN STACK (MongoDB, Express, AngularJS, Node.js)http://www.ibm.com/developerworks/web/library/wa-nodejs-polling-app/index.html

- EXAMPLE: Node.js + SQLDBhttp://www.ibm.com/developerworks/cloud/library/cl-math-app/index.html

- EXAMPLE: Node.js + MQ Lighthttps://developer.ibm.com/messaging/2014/09/25/getting-started-node-js-mq-light-apps-bluemix

- EXAMPLE: Node.js + Data Chace + Monitoring and Analytics(express, Jade, Bootstrap, Font Awesome, jQuery, Google Analytics, request, cheerio, async)

http://www.ibm.com/developerworks/cloud/library/cl-situational-app/index.html

25 © 2015 IBM Corporation

Tutorials and Examples (3/5)

- EXAMPLE: Java EE + Session Cache + SQLDB + Auto Scalinghttp://www.ibm.com/developerworks/cloud/library/cl-cloudtrader-app/index.html

- EXAMPLE: Java EE + Cloudant NoSQLhttps://developer.ibm.com/bluemix/2014/07/08/cloudant_on_bluemix

- EXAMPLE: Java EE + dashDB (Data Mining)http://www.ibm.com/developerworks/library/bd-dataminingblu-app

- EXAMPLE: Java EE + App User Registry + MongoDBhttp://www.ibm.com/developerworks/cloud/library/cl-oauthregistry-app/index.html

- EXAMPLE: Java EE + MQ Lighthttps://developer.ibm.com/messaging/2014/09/25/getting-started-j2ee-apps-mq-light-bluemix

26 © 2015 IBM Corporation

Tutorials and Examples (4/5)

- EXAMPLE: Python with custom buildpackhttp://blog.4loeser.net/2014/06/some-fun-with-bluemix-cloud-foundry.html

- EXAMPLE: Go with custom buildpackhttp://www.ibm.com/developerworks/cloud/library/cl-bluemix-go-app

- EXAMPLE: Node.js + Watson Questions and Answerswww.ibm.com/developerworks/cloud/library/cl-watson-films-bluemix-app/index.html

- EXAMPLE: Node-RED + Twitter + Watsion Questions and Answershttp://www.ibm.com/developerworks/cloud/library/cl-twitterbot-watson-bluemix-app/index.html

- CLOUD INTEGRATION APIhttps://www.ng.bluemix.net/docs/#services/CloudIntegration/index-gentopic3.html#cloudint_create_CIservice

- GETTING STARTED WITH DOCKERhttps://developer.ibm.com/bluemix/2014/12/04/ibm-containers-beta-docker

27 © 2015 IBM Corporation

Tutorials and Examples (5/5)

- GAME EXAMPLE: JavaEE, Cloudant and Single Sign-On

http://www.ibm.com/developerworks/cloud/library/cl-multiservicegame-app

- GAME EXAPLE: Node.js, Cloudant and Oculus Rift

http://www.ibm.com/developerworks/cloud/library/cl-oculus-app

- USING CLOUDANT WITH NODE.JS

https://docs.cloudant.com/using-cloudant-with/nodejs.html

- MQ Light

https://developer.ibm.com/messaging/mq-light

https://developer.ibm.com/messaging/mq-light/docs

https://developer.ibm.com/messaging/mq-light/getting-started-mq-light

- IBM Mobile Cloud Services SDK Developer Guide

http://mbaas-gettingstarted.ng.bluemix.net

28

Bluemix works.Start a free trial todayibm.biz/Bluemix2015