SlideShare ist ein Scribd-Unternehmen logo
1 von 45
Downloaden Sie, um offline zu lesen
ROME 11-12 april 2014ROME 11-12 april 2014
Backend as a Service: Parse
maurizio.moriconi@mobilesoft.it
Maurizio Moriconi
ROME 11-12 april 2014 - Maurizio Moriconi
Maurizio Moriconi
2
• CTO @ Mobilesoft
• Mobile Developer
• Co-founder
• Main Developer
http://www.facebook.com/maurizio.moriconi
http://www.linkedin.com/in/bugman
@bugman79
- Maurizio Moriconi
ROME 11-12 april 2014 - Maurizio Moriconi
Develop an app
Push Notification
Analytics
User management
Social integration
Shared data
Web Hosting
Database hosting
3
ROME 11-12 april 2014 - Maurizio Moriconi
Challenges
!
• Time
• Skill
• Scalability
• Cost
4
ROME 11-12 april 2014 - Maurizio Moriconi
Backend as a Service (Baas)
• MBaaS (mobile backend as a service)
!
• Link application to backend cloud storage
• Custom software development kit (SDK)
• Custom application programming interfaces (APIs)
!
Global Market
• $216.5 million in 2012
• $7.7 billion by 2017
5
ROME 11-12 april 2014 - Maurizio Moriconi
Baas Service
• Custom objects
• model, relationships and store/retrieve from central databases
• File storage
• images, large documents, association with a custom object
• Geolocation
• query object near a certain location
• Users
• creation, integration with Facebook/Twitter, ACL for objects
• Push notifications
• single way to push many platforms
6
ROME 11-12 april 2014 - Maurizio Moriconi
Some examples
7
ROME 11-12 april 2014 - Maurizio Moriconi
8
ROME 11-12 april 2014 - Maurizio Moriconi
One backend to rule them all
9
ROME 11-12 april 2014 - Maurizio Moriconi
Parse pricing
10
BASIC PRO ENTERPRISE
free $199 per month ask
Requests

1 Million/month
Requests

15 Million/month
Custom
Pushes

1 Million/month
Pushes

5 Million/month
Custom
File Storage

1 GB
File Storage

10 GB
Custom
App open metrics
1 concurrent background jobs
!
2 App collaborator

Advanced Push Targeting

Push Scheduling

…
Phone support

Enterprise SLA
Individual Push opens
metrics

…
ROME 11-12 april 2014 - Maurizio Moriconi
11
Parse Services
ROME 11-12 april 2014 - Maurizio Moriconi
Parse Core
!
• Parse Dashboard
• Save data in the cloud
• Make your app social
• Run custom app code in the Parse Cloud
• Background jobs
12
ROME 11-12 april 2014 - Maurizio Moriconi
Parse Push
!
• Push for:
• iOS, Android, Windows, Windows Phone
• Send notification via:
• web console, REST API, client SDKs !!!
• Advanced targeting (PRO, ENTERPRISE)
• Advanced scheduling (PRO, ENTERPRISE)
!
! 13
ROME 11-12 april 2014 - Maurizio Moriconi
Parse Analytics
• Measure App usage
• Optimize Push Campaign
• Track Custom Analytics
• Powerful Dashboard
14
ROME 11-12 april 2014 - Maurizio Moriconi
Let’s start!
15
ROME 11-12 april 2014 - Maurizio Moriconi
1 - Sign up for Parse
16
ROME 11-12 april 2014 - Maurizio Moriconi
2 - Create your first app
17
ROME 11-12 april 2014 - Maurizio Moriconi
3 - Dashboard
18
ROME 11-12 april 2014 - Maurizio Moriconi
Setup SDK on iOS
• Download SDK
• Latest version 1.2.18
• Support Xcode (5.0+) iOS 5.0 or higher
19
ROME 11-12 april 2014 - Maurizio Moriconi
Connect you app to Parse
20
ROME 11-12 april 2014 - Maurizio Moriconi
Data Browser
21
ROME 11-12 april 2014 - Maurizio Moriconi
Parse Object
• Contains key-valued pairs of JSON-compatible
data
• This data is schema-less
• Each Parse Object has a class name
!
PFObject in iOS
• ParseObject in Android/Windows
22
ROME 11-12 april 2014 - Maurizio Moriconi
Save an object
23
Auto generate Class!!!
ROME 11-12 april 2014 - Maurizio Moriconi
Save an object
24
ROME 11-12 april 2014 - Maurizio Moriconi
Special Class Name
• User
• for authentication, log in, sign up and more
• Installation
• store push notification subscriptions for each device
• Role
• to specify groups of users with shared permissions
• Product
• stores your in-app product data
25
ROME 11-12 april 2014 - Maurizio Moriconi
Data Types
26
ROME 11-12 april 2014 - Maurizio Moriconi
Some features
!
Saving objects offline
!
!
!
!
!
Relational Data
27
ROME 11-12 april 2014 - Maurizio Moriconi
Some features
28
!
!
!
!
!
!
Queries
!
!
!
!
!
ROME 11-12 april 2014 - Maurizio Moriconi
User
• specialized user class called PFUser in iOS
• several properties
• username (required)
• password (required on signup)
• email (optional)
• basic functionality:
• sign up
• login
• email verification
29
ROME 11-12 april 2014 - Maurizio Moriconi
Signing up
30
ROME 11-12 april 2014 - Maurizio Moriconi
Loggin in
31
ROME 11-12 april 2014 - Maurizio Moriconi
PFLogInViewController
• Manage Login via
PFLogInViewControllerDelegate
!
- (BOOL)logInViewController:(PFLogInViewController
*)logInController shouldBeginLogInWithUsername:
(NSString *)username password:(NSString *)password;
!
- (void)logInViewController:(PFLogInViewController
*)logInController didLogInUser:(PFUser *)user;
!
- (void)logInViewController:(PFLogInViewController
*)logInController didFailToLogInWithError:(NSError
*)error;
!
- (void)logInViewControllerDidCancelLogIn:
(PFLogInViewController *)logInController;
32
ROME 11-12 april 2014 - Maurizio Moriconi
PFSignUpViewController
33
• Manage Sign up via
PFSignUpViewControllerDelegate
!
- (BOOL)signUpViewController:
(PFSignUpViewController *)signUpController
shouldBeginSignUp:(NSDictionary *)info;
!
- (void)signUpViewController:
(PFSignUpViewController *)signUpController
didSignUpUser:(PFUser *)user;
!
- (void)signUpViewController:
(PFSignUpViewController *)signUpController
didFailToSignUpWithError:(NSError *)error;
!
- (void)signUpViewControllerDidCancelSignUp:
(PFSignUpViewController *)signUpController;
ROME 11-12 april 2014 - Maurizio Moriconi
Facebook / Twitter integration
34
ROME 11-12 april 2014 - Maurizio Moriconi
Facebook
• Setup FB application on developer.facebook.com
• Add App ID and App Secret on Parse settings
• Setup application follow https://developers.facebook.com/docs/ios/getting-
started
• Adding this line on application:didFinishLaunchingWithOptions
!
• Add also:

35
ROME 11-12 april 2014 - Maurizio Moriconi
Facebook
// Create the log in view controller
PFLogInViewController *logInViewController = [[PFLogInViewController alloc]
init];
[logInViewController setFacebookPermissions:[NSArray
arrayWithObjects:@"friends_about_me", nil]];
!
[logInViewController setFields: PFLogInFieldsTwitter | PFLogInFieldsFacebook |
PFLogInFieldsDismissButton];
36
ROME 11-12 april 2014 - Maurizio Moriconi
User
37
ROME 11-12 april 2014 - Maurizio Moriconi
Facebook / Twitter integration
• Login
• Sign up
• Linking existing PFUser to Twitter/Facebook
• Unlinking existing PFUser to Twitter/Facebook
• After authentication is possible to use:
• Query Graph on Facebook
• Twitter API on Twitter
38
ROME 11-12 april 2014 - Maurizio Moriconi
• A bit of logic that running in the Cloud
• Javascript SDK (same for apps)
• You don't have to wait for a new release of
your application
• Schedule jobs
• Cloud Modules for integrate your Parse app
with third-party services and libraries
39
ROME 11-12 april 2014 - Maurizio Moriconi
Cloud Code
curl -s https://www.parse.com/downloads/cloud_code/installer.sh | sudo /bin/bash
40
• Install the command line tool
• Create new project
$ parse new MyCloudCode
Email: ninja@gmail.com
Password:
1:MyApp
Select an App: 1
$ cd MyCloudCode
• A simple function in cloud/main.js
Parse.Cloud.define("hello", function(request, response) {
response.success("Hello world!");
});
ROME 11-12 april 2014 - Maurizio Moriconi
Cloud Code
41
$ parse deploy
• Deploy
• Run function on iOS
[PFCloud callFunctionInBackground:@"hello"
withParameters:@{}
block:^(NSString *result, NSError *error) {
if (!error) {
// result is @"Hello world!"
}
}];
• Response
{
"result": "Hello world!"
}
ROME 11-12 april 2014 - Maurizio Moriconi
Cloud Code
42
ROME 11-12 april 2014 - Maurizio Moriconi
Web hosting
43
/public
index.html
Cloud Parse PRJ
ROME 11-12 april 2014 - Maurizio Moriconi
and now?
44
Parse Analytics
File storage
Push notifications Data relations
Users ACL
Geopoint
File storage
In-app purchase
Web hosting
Query
Email-verification
ROME 11-12 april 2014 - Maurizio Moriconi
Thank You!
45
Backend as a Service:

Weitere ähnliche Inhalte

Ähnlich wie Backend as a Service: Parse - Moriconi

Microsoft products 2014
Microsoft products 2014Microsoft products 2014
Microsoft products 2014Ashraf Atef
 
Presentazione Codemotion
Presentazione Codemotion Presentazione Codemotion
Presentazione Codemotion LinkMe Srl
 
Sviluppare in cloud con M.E.A.N.: il caso Crowdcore
Sviluppare in cloud con M.E.A.N.: il caso CrowdcoreSviluppare in cloud con M.E.A.N.: il caso Crowdcore
Sviluppare in cloud con M.E.A.N.: il caso CrowdcoreENTER S.r.l.
 
PeopleSoft mobile
PeopleSoft mobilePeopleSoft mobile
PeopleSoft mobilehbiroglu
 
Sviluppare in cloud con M.E.A.N.: il caso Crowdcore
Sviluppare in cloud con M.E.A.N.: il caso CrowdcoreSviluppare in cloud con M.E.A.N.: il caso Crowdcore
Sviluppare in cloud con M.E.A.N.: il caso CrowdcoreCodemotion
 
April 2023 CIAOPS Need to Know Webinar
April 2023 CIAOPS Need to Know WebinarApril 2023 CIAOPS Need to Know Webinar
April 2023 CIAOPS Need to Know WebinarRobert Crane
 
Meetup Mulesoft Buenos Aires Noviembre 2018
Meetup Mulesoft Buenos Aires Noviembre 2018Meetup Mulesoft Buenos Aires Noviembre 2018
Meetup Mulesoft Buenos Aires Noviembre 2018Walter Olivito
 
Achieving Better Business Productivity through Apps for Office
Achieving Better Business Productivity through Apps for Office Achieving Better Business Productivity through Apps for Office
Achieving Better Business Productivity through Apps for Office Jason Himmelstein
 
SPSToronto: SharePoint 2016 - Hybrid, right choice for you and your organizat...
SPSToronto: SharePoint 2016 - Hybrid, right choice for you and your organizat...SPSToronto: SharePoint 2016 - Hybrid, right choice for you and your organizat...
SPSToronto: SharePoint 2016 - Hybrid, right choice for you and your organizat...Knut Relbe-Moe [MVP, MCT]
 
Mct Summit 2013 Why SharePoint 2013
Mct Summit 2013   Why SharePoint 2013Mct Summit 2013   Why SharePoint 2013
Mct Summit 2013 Why SharePoint 2013Chris Givens
 
Webinar nov14v2 slideshare
Webinar nov14v2 slideshareWebinar nov14v2 slideshare
Webinar nov14v2 slideshareJan F. Zeuthen
 
Increase Adoption By Building Lightning Pages
Increase Adoption By Building Lightning PagesIncrease Adoption By Building Lightning Pages
Increase Adoption By Building Lightning PagesSalesforce Admins
 
Datapolis Workflow 365: Create your Office 365 workflows easy and fast!
Datapolis Workflow 365: Create your Office 365 workflows easy and fast!Datapolis Workflow 365: Create your Office 365 workflows easy and fast!
Datapolis Workflow 365: Create your Office 365 workflows easy and fast!Datapolis
 
Devportal Information Architecture: A 4-step Method
Devportal Information Architecture: A 4-step MethodDevportal Information Architecture: A 4-step Method
Devportal Information Architecture: A 4-step MethodPronovix
 
Sharepoint Basics
Sharepoint BasicsSharepoint Basics
Sharepoint BasicsShervin Thomas
 
MOCA iBeacons SDK for iOS 7
MOCA iBeacons SDK for iOS 7MOCA iBeacons SDK for iOS 7
MOCA iBeacons SDK for iOS 7MOCA Platform
 
Gathering App Intelligence for your Web, Desktop and Mobile apps
Gathering App Intelligence for your Web, Desktop and Mobile appsGathering App Intelligence for your Web, Desktop and Mobile apps
Gathering App Intelligence for your Web, Desktop and Mobile appsAbhishek Kant
 
Developing social solutions on Microsoft technologies (SP Social and Yammer)
Developing social solutions on Microsoft technologies (SP Social and Yammer)Developing social solutions on Microsoft technologies (SP Social and Yammer)
Developing social solutions on Microsoft technologies (SP Social and Yammer)SPC Adriatics
 

Ähnlich wie Backend as a Service: Parse - Moriconi (20)

Microsoft products 2014
Microsoft products 2014Microsoft products 2014
Microsoft products 2014
 
Presentazione Codemotion
Presentazione Codemotion Presentazione Codemotion
Presentazione Codemotion
 
Sviluppare in cloud con M.E.A.N.: il caso Crowdcore
Sviluppare in cloud con M.E.A.N.: il caso CrowdcoreSviluppare in cloud con M.E.A.N.: il caso Crowdcore
Sviluppare in cloud con M.E.A.N.: il caso Crowdcore
 
PeopleSoft mobile
PeopleSoft mobilePeopleSoft mobile
PeopleSoft mobile
 
Sviluppare in cloud con M.E.A.N.: il caso Crowdcore
Sviluppare in cloud con M.E.A.N.: il caso CrowdcoreSviluppare in cloud con M.E.A.N.: il caso Crowdcore
Sviluppare in cloud con M.E.A.N.: il caso Crowdcore
 
cv-lorenzo-speranzoni
cv-lorenzo-speranzonicv-lorenzo-speranzoni
cv-lorenzo-speranzoni
 
April 2023 CIAOPS Need to Know Webinar
April 2023 CIAOPS Need to Know WebinarApril 2023 CIAOPS Need to Know Webinar
April 2023 CIAOPS Need to Know Webinar
 
Meetup Mulesoft Buenos Aires Noviembre 2018
Meetup Mulesoft Buenos Aires Noviembre 2018Meetup Mulesoft Buenos Aires Noviembre 2018
Meetup Mulesoft Buenos Aires Noviembre 2018
 
Achieving Better Business Productivity through Apps for Office
Achieving Better Business Productivity through Apps for Office Achieving Better Business Productivity through Apps for Office
Achieving Better Business Productivity through Apps for Office
 
SPSToronto: SharePoint 2016 - Hybrid, right choice for you and your organizat...
SPSToronto: SharePoint 2016 - Hybrid, right choice for you and your organizat...SPSToronto: SharePoint 2016 - Hybrid, right choice for you and your organizat...
SPSToronto: SharePoint 2016 - Hybrid, right choice for you and your organizat...
 
Mct Summit 2013 Why SharePoint 2013
Mct Summit 2013   Why SharePoint 2013Mct Summit 2013   Why SharePoint 2013
Mct Summit 2013 Why SharePoint 2013
 
Webinar nov14v2 slideshare
Webinar nov14v2 slideshareWebinar nov14v2 slideshare
Webinar nov14v2 slideshare
 
Increase Adoption By Building Lightning Pages
Increase Adoption By Building Lightning PagesIncrease Adoption By Building Lightning Pages
Increase Adoption By Building Lightning Pages
 
Datapolis Workflow 365: Create your Office 365 workflows easy and fast!
Datapolis Workflow 365: Create your Office 365 workflows easy and fast!Datapolis Workflow 365: Create your Office 365 workflows easy and fast!
Datapolis Workflow 365: Create your Office 365 workflows easy and fast!
 
Devportal Information Architecture: A 4-step Method
Devportal Information Architecture: A 4-step MethodDevportal Information Architecture: A 4-step Method
Devportal Information Architecture: A 4-step Method
 
Sharepoint Basics
Sharepoint BasicsSharepoint Basics
Sharepoint Basics
 
MOCA iBeacons SDK for iOS 7
MOCA iBeacons SDK for iOS 7MOCA iBeacons SDK for iOS 7
MOCA iBeacons SDK for iOS 7
 
Gathering App Intelligence for your Web, Desktop and Mobile apps
Gathering App Intelligence for your Web, Desktop and Mobile appsGathering App Intelligence for your Web, Desktop and Mobile apps
Gathering App Intelligence for your Web, Desktop and Mobile apps
 
Developing social solutions on Microsoft technologies (SP Social and Yammer)
Developing social solutions on Microsoft technologies (SP Social and Yammer)Developing social solutions on Microsoft technologies (SP Social and Yammer)
Developing social solutions on Microsoft technologies (SP Social and Yammer)
 
Beyond Social
Beyond SocialBeyond Social
Beyond Social
 

Mehr von Codemotion

Fuzz-testing: A hacker's approach to making your code more secure | Pascal Ze...
Fuzz-testing: A hacker's approach to making your code more secure | Pascal Ze...Fuzz-testing: A hacker's approach to making your code more secure | Pascal Ze...
Fuzz-testing: A hacker's approach to making your code more secure | Pascal Ze...Codemotion
 
Pompili - From hero to_zero: The FatalNoise neverending story
Pompili - From hero to_zero: The FatalNoise neverending storyPompili - From hero to_zero: The FatalNoise neverending story
Pompili - From hero to_zero: The FatalNoise neverending storyCodemotion
 
Pastore - Commodore 65 - La storia
Pastore - Commodore 65 - La storiaPastore - Commodore 65 - La storia
Pastore - Commodore 65 - La storiaCodemotion
 
Pennisi - Essere Richard Altwasser
Pennisi - Essere Richard AltwasserPennisi - Essere Richard Altwasser
Pennisi - Essere Richard AltwasserCodemotion
 
Michel Schudel - Let's build a blockchain... in 40 minutes! - Codemotion Amst...
Michel Schudel - Let's build a blockchain... in 40 minutes! - Codemotion Amst...Michel Schudel - Let's build a blockchain... in 40 minutes! - Codemotion Amst...
Michel Schudel - Let's build a blockchain... in 40 minutes! - Codemotion Amst...Codemotion
 
Richard SĂźselbeck - Building your own ride share app - Codemotion Amsterdam 2019
Richard SĂźselbeck - Building your own ride share app - Codemotion Amsterdam 2019Richard SĂźselbeck - Building your own ride share app - Codemotion Amsterdam 2019
Richard SĂźselbeck - Building your own ride share app - Codemotion Amsterdam 2019Codemotion
 
Eward Driehuis - What we learned from 20.000 attacks - Codemotion Amsterdam 2019
Eward Driehuis - What we learned from 20.000 attacks - Codemotion Amsterdam 2019Eward Driehuis - What we learned from 20.000 attacks - Codemotion Amsterdam 2019
Eward Driehuis - What we learned from 20.000 attacks - Codemotion Amsterdam 2019Codemotion
 
Francesco Baldassarri - Deliver Data at Scale - Codemotion Amsterdam 2019 -
Francesco Baldassarri  - Deliver Data at Scale - Codemotion Amsterdam 2019 - Francesco Baldassarri  - Deliver Data at Scale - Codemotion Amsterdam 2019 -
Francesco Baldassarri - Deliver Data at Scale - Codemotion Amsterdam 2019 - Codemotion
 
Martin FĂśrtsch, Thomas Endres - Stereoscopic Style Transfer AI - Codemotion A...
Martin FĂśrtsch, Thomas Endres - Stereoscopic Style Transfer AI - Codemotion A...Martin FĂśrtsch, Thomas Endres - Stereoscopic Style Transfer AI - Codemotion A...
Martin FĂśrtsch, Thomas Endres - Stereoscopic Style Transfer AI - Codemotion A...Codemotion
 
Melanie Rieback, Klaus Kursawe - Blockchain Security: Melting the "Silver Bul...
Melanie Rieback, Klaus Kursawe - Blockchain Security: Melting the "Silver Bul...Melanie Rieback, Klaus Kursawe - Blockchain Security: Melting the "Silver Bul...
Melanie Rieback, Klaus Kursawe - Blockchain Security: Melting the "Silver Bul...Codemotion
 
Angelo van der Sijpt - How well do you know your network stack? - Codemotion ...
Angelo van der Sijpt - How well do you know your network stack? - Codemotion ...Angelo van der Sijpt - How well do you know your network stack? - Codemotion ...
Angelo van der Sijpt - How well do you know your network stack? - Codemotion ...Codemotion
 
Lars Wolff - Performance Testing for DevOps in the Cloud - Codemotion Amsterd...
Lars Wolff - Performance Testing for DevOps in the Cloud - Codemotion Amsterd...Lars Wolff - Performance Testing for DevOps in the Cloud - Codemotion Amsterd...
Lars Wolff - Performance Testing for DevOps in the Cloud - Codemotion Amsterd...Codemotion
 
Sascha Wolter - Conversational AI Demystified - Codemotion Amsterdam 2019
Sascha Wolter - Conversational AI Demystified - Codemotion Amsterdam 2019Sascha Wolter - Conversational AI Demystified - Codemotion Amsterdam 2019
Sascha Wolter - Conversational AI Demystified - Codemotion Amsterdam 2019Codemotion
 
Michele Tonutti - Scaling is caring - Codemotion Amsterdam 2019
Michele Tonutti - Scaling is caring - Codemotion Amsterdam 2019Michele Tonutti - Scaling is caring - Codemotion Amsterdam 2019
Michele Tonutti - Scaling is caring - Codemotion Amsterdam 2019Codemotion
 
Pat Hermens - From 100 to 1,000+ deployments a day - Codemotion Amsterdam 2019
Pat Hermens - From 100 to 1,000+ deployments a day - Codemotion Amsterdam 2019Pat Hermens - From 100 to 1,000+ deployments a day - Codemotion Amsterdam 2019
Pat Hermens - From 100 to 1,000+ deployments a day - Codemotion Amsterdam 2019Codemotion
 
James Birnie - Using Many Worlds of Compute Power with Quantum - Codemotion A...
James Birnie - Using Many Worlds of Compute Power with Quantum - Codemotion A...James Birnie - Using Many Worlds of Compute Power with Quantum - Codemotion A...
James Birnie - Using Many Worlds of Compute Power with Quantum - Codemotion A...Codemotion
 
Don Goodman-Wilson - Chinese food, motor scooters, and open source developmen...
Don Goodman-Wilson - Chinese food, motor scooters, and open source developmen...Don Goodman-Wilson - Chinese food, motor scooters, and open source developmen...
Don Goodman-Wilson - Chinese food, motor scooters, and open source developmen...Codemotion
 
Pieter Omvlee - The story behind Sketch - Codemotion Amsterdam 2019
Pieter Omvlee - The story behind Sketch - Codemotion Amsterdam 2019Pieter Omvlee - The story behind Sketch - Codemotion Amsterdam 2019
Pieter Omvlee - The story behind Sketch - Codemotion Amsterdam 2019Codemotion
 
Dave Farley - Taking Back “Software Engineering” - Codemotion Amsterdam 2019
Dave Farley - Taking Back “Software Engineering” - Codemotion Amsterdam 2019Dave Farley - Taking Back “Software Engineering” - Codemotion Amsterdam 2019
Dave Farley - Taking Back “Software Engineering” - Codemotion Amsterdam 2019Codemotion
 
Joshua Hoffman - Should the CTO be Coding? - Codemotion Amsterdam 2019
Joshua Hoffman - Should the CTO be Coding? - Codemotion Amsterdam 2019Joshua Hoffman - Should the CTO be Coding? - Codemotion Amsterdam 2019
Joshua Hoffman - Should the CTO be Coding? - Codemotion Amsterdam 2019Codemotion
 

Mehr von Codemotion (20)

Fuzz-testing: A hacker's approach to making your code more secure | Pascal Ze...
Fuzz-testing: A hacker's approach to making your code more secure | Pascal Ze...Fuzz-testing: A hacker's approach to making your code more secure | Pascal Ze...
Fuzz-testing: A hacker's approach to making your code more secure | Pascal Ze...
 
Pompili - From hero to_zero: The FatalNoise neverending story
Pompili - From hero to_zero: The FatalNoise neverending storyPompili - From hero to_zero: The FatalNoise neverending story
Pompili - From hero to_zero: The FatalNoise neverending story
 
Pastore - Commodore 65 - La storia
Pastore - Commodore 65 - La storiaPastore - Commodore 65 - La storia
Pastore - Commodore 65 - La storia
 
Pennisi - Essere Richard Altwasser
Pennisi - Essere Richard AltwasserPennisi - Essere Richard Altwasser
Pennisi - Essere Richard Altwasser
 
Michel Schudel - Let's build a blockchain... in 40 minutes! - Codemotion Amst...
Michel Schudel - Let's build a blockchain... in 40 minutes! - Codemotion Amst...Michel Schudel - Let's build a blockchain... in 40 minutes! - Codemotion Amst...
Michel Schudel - Let's build a blockchain... in 40 minutes! - Codemotion Amst...
 
Richard SĂźselbeck - Building your own ride share app - Codemotion Amsterdam 2019
Richard SĂźselbeck - Building your own ride share app - Codemotion Amsterdam 2019Richard SĂźselbeck - Building your own ride share app - Codemotion Amsterdam 2019
Richard SĂźselbeck - Building your own ride share app - Codemotion Amsterdam 2019
 
Eward Driehuis - What we learned from 20.000 attacks - Codemotion Amsterdam 2019
Eward Driehuis - What we learned from 20.000 attacks - Codemotion Amsterdam 2019Eward Driehuis - What we learned from 20.000 attacks - Codemotion Amsterdam 2019
Eward Driehuis - What we learned from 20.000 attacks - Codemotion Amsterdam 2019
 
Francesco Baldassarri - Deliver Data at Scale - Codemotion Amsterdam 2019 -
Francesco Baldassarri  - Deliver Data at Scale - Codemotion Amsterdam 2019 - Francesco Baldassarri  - Deliver Data at Scale - Codemotion Amsterdam 2019 -
Francesco Baldassarri - Deliver Data at Scale - Codemotion Amsterdam 2019 -
 
Martin FĂśrtsch, Thomas Endres - Stereoscopic Style Transfer AI - Codemotion A...
Martin FĂśrtsch, Thomas Endres - Stereoscopic Style Transfer AI - Codemotion A...Martin FĂśrtsch, Thomas Endres - Stereoscopic Style Transfer AI - Codemotion A...
Martin FĂśrtsch, Thomas Endres - Stereoscopic Style Transfer AI - Codemotion A...
 
Melanie Rieback, Klaus Kursawe - Blockchain Security: Melting the "Silver Bul...
Melanie Rieback, Klaus Kursawe - Blockchain Security: Melting the "Silver Bul...Melanie Rieback, Klaus Kursawe - Blockchain Security: Melting the "Silver Bul...
Melanie Rieback, Klaus Kursawe - Blockchain Security: Melting the "Silver Bul...
 
Angelo van der Sijpt - How well do you know your network stack? - Codemotion ...
Angelo van der Sijpt - How well do you know your network stack? - Codemotion ...Angelo van der Sijpt - How well do you know your network stack? - Codemotion ...
Angelo van der Sijpt - How well do you know your network stack? - Codemotion ...
 
Lars Wolff - Performance Testing for DevOps in the Cloud - Codemotion Amsterd...
Lars Wolff - Performance Testing for DevOps in the Cloud - Codemotion Amsterd...Lars Wolff - Performance Testing for DevOps in the Cloud - Codemotion Amsterd...
Lars Wolff - Performance Testing for DevOps in the Cloud - Codemotion Amsterd...
 
Sascha Wolter - Conversational AI Demystified - Codemotion Amsterdam 2019
Sascha Wolter - Conversational AI Demystified - Codemotion Amsterdam 2019Sascha Wolter - Conversational AI Demystified - Codemotion Amsterdam 2019
Sascha Wolter - Conversational AI Demystified - Codemotion Amsterdam 2019
 
Michele Tonutti - Scaling is caring - Codemotion Amsterdam 2019
Michele Tonutti - Scaling is caring - Codemotion Amsterdam 2019Michele Tonutti - Scaling is caring - Codemotion Amsterdam 2019
Michele Tonutti - Scaling is caring - Codemotion Amsterdam 2019
 
Pat Hermens - From 100 to 1,000+ deployments a day - Codemotion Amsterdam 2019
Pat Hermens - From 100 to 1,000+ deployments a day - Codemotion Amsterdam 2019Pat Hermens - From 100 to 1,000+ deployments a day - Codemotion Amsterdam 2019
Pat Hermens - From 100 to 1,000+ deployments a day - Codemotion Amsterdam 2019
 
James Birnie - Using Many Worlds of Compute Power with Quantum - Codemotion A...
James Birnie - Using Many Worlds of Compute Power with Quantum - Codemotion A...James Birnie - Using Many Worlds of Compute Power with Quantum - Codemotion A...
James Birnie - Using Many Worlds of Compute Power with Quantum - Codemotion A...
 
Don Goodman-Wilson - Chinese food, motor scooters, and open source developmen...
Don Goodman-Wilson - Chinese food, motor scooters, and open source developmen...Don Goodman-Wilson - Chinese food, motor scooters, and open source developmen...
Don Goodman-Wilson - Chinese food, motor scooters, and open source developmen...
 
Pieter Omvlee - The story behind Sketch - Codemotion Amsterdam 2019
Pieter Omvlee - The story behind Sketch - Codemotion Amsterdam 2019Pieter Omvlee - The story behind Sketch - Codemotion Amsterdam 2019
Pieter Omvlee - The story behind Sketch - Codemotion Amsterdam 2019
 
Dave Farley - Taking Back “Software Engineering” - Codemotion Amsterdam 2019
Dave Farley - Taking Back “Software Engineering” - Codemotion Amsterdam 2019Dave Farley - Taking Back “Software Engineering” - Codemotion Amsterdam 2019
Dave Farley - Taking Back “Software Engineering” - Codemotion Amsterdam 2019
 
Joshua Hoffman - Should the CTO be Coding? - Codemotion Amsterdam 2019
Joshua Hoffman - Should the CTO be Coding? - Codemotion Amsterdam 2019Joshua Hoffman - Should the CTO be Coding? - Codemotion Amsterdam 2019
Joshua Hoffman - Should the CTO be Coding? - Codemotion Amsterdam 2019
 

KĂźrzlich hochgeladen

TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...apidays
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsJoaquim Jorge
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century educationjfdjdjcjdnsjd
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc
 
HTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation StrategiesHTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation StrategiesBoston Institute of Analytics
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...apidays
 
Top 10 Most Downloaded Games on Play Store in 2024
Top 10 Most Downloaded Games on Play Store in 2024Top 10 Most Downloaded Games on Play Store in 2024
Top 10 Most Downloaded Games on Play Store in 2024SynarionITSolutions
 
Manulife - Insurer Innovation Award 2024
Manulife - Insurer Innovation Award 2024Manulife - Insurer Innovation Award 2024
Manulife - Insurer Innovation Award 2024The Digital Insurer
 
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...Principled Technologies
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Scriptwesley chun
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FMESafe Software
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CVKhem
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...apidays
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodJuan lago vĂĄzquez
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUK Journal
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel AraĂşjo
 

KĂźrzlich hochgeladen (20)

TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
HTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation StrategiesHTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation Strategies
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
Top 10 Most Downloaded Games on Play Store in 2024
Top 10 Most Downloaded Games on Play Store in 2024Top 10 Most Downloaded Games on Play Store in 2024
Top 10 Most Downloaded Games on Play Store in 2024
 
Manulife - Insurer Innovation Award 2024
Manulife - Insurer Innovation Award 2024Manulife - Insurer Innovation Award 2024
Manulife - Insurer Innovation Award 2024
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 

Backend as a Service: Parse - Moriconi

  • 1. ROME 11-12 april 2014ROME 11-12 april 2014 Backend as a Service: Parse maurizio.moriconi@mobilesoft.it Maurizio Moriconi
  • 2. ROME 11-12 april 2014 - Maurizio Moriconi Maurizio Moriconi 2 • CTO @ Mobilesoft • Mobile Developer • Co-founder • Main Developer http://www.facebook.com/maurizio.moriconi http://www.linkedin.com/in/bugman @bugman79 - Maurizio Moriconi
  • 3. ROME 11-12 april 2014 - Maurizio Moriconi Develop an app Push Notification Analytics User management Social integration Shared data Web Hosting Database hosting 3
  • 4. ROME 11-12 april 2014 - Maurizio Moriconi Challenges ! • Time • Skill • Scalability • Cost 4
  • 5. ROME 11-12 april 2014 - Maurizio Moriconi Backend as a Service (Baas) • MBaaS (mobile backend as a service) ! • Link application to backend cloud storage • Custom software development kit (SDK) • Custom application programming interfaces (APIs) ! Global Market • $216.5 million in 2012 • $7.7 billion by 2017 5
  • 6. ROME 11-12 april 2014 - Maurizio Moriconi Baas Service • Custom objects • model, relationships and store/retrieve from central databases • File storage • images, large documents, association with a custom object • Geolocation • query object near a certain location • Users • creation, integration with Facebook/Twitter, ACL for objects • Push notifications • single way to push many platforms 6
  • 7. ROME 11-12 april 2014 - Maurizio Moriconi Some examples 7
  • 8. ROME 11-12 april 2014 - Maurizio Moriconi 8
  • 9. ROME 11-12 april 2014 - Maurizio Moriconi One backend to rule them all 9
  • 10. ROME 11-12 april 2014 - Maurizio Moriconi Parse pricing 10 BASIC PRO ENTERPRISE free $199 per month ask Requests
 1 Million/month Requests
 15 Million/month Custom Pushes
 1 Million/month Pushes
 5 Million/month Custom File Storage
 1 GB File Storage
 10 GB Custom App open metrics 1 concurrent background jobs ! 2 App collaborator
 Advanced Push Targeting
 Push Scheduling
 … Phone support
 Enterprise SLA Individual Push opens metrics
 …
  • 11. ROME 11-12 april 2014 - Maurizio Moriconi 11 Parse Services
  • 12. ROME 11-12 april 2014 - Maurizio Moriconi Parse Core ! • Parse Dashboard • Save data in the cloud • Make your app social • Run custom app code in the Parse Cloud • Background jobs 12
  • 13. ROME 11-12 april 2014 - Maurizio Moriconi Parse Push ! • Push for: • iOS, Android, Windows, Windows Phone • Send notification via: • web console, REST API, client SDKs !!! • Advanced targeting (PRO, ENTERPRISE) • Advanced scheduling (PRO, ENTERPRISE) ! ! 13
  • 14. ROME 11-12 april 2014 - Maurizio Moriconi Parse Analytics • Measure App usage • Optimize Push Campaign • Track Custom Analytics • Powerful Dashboard 14
  • 15. ROME 11-12 april 2014 - Maurizio Moriconi Let’s start! 15
  • 16. ROME 11-12 april 2014 - Maurizio Moriconi 1 - Sign up for Parse 16
  • 17. ROME 11-12 april 2014 - Maurizio Moriconi 2 - Create your first app 17
  • 18. ROME 11-12 april 2014 - Maurizio Moriconi 3 - Dashboard 18
  • 19. ROME 11-12 april 2014 - Maurizio Moriconi Setup SDK on iOS • Download SDK • Latest version 1.2.18 • Support Xcode (5.0+) iOS 5.0 or higher 19
  • 20. ROME 11-12 april 2014 - Maurizio Moriconi Connect you app to Parse 20
  • 21. ROME 11-12 april 2014 - Maurizio Moriconi Data Browser 21
  • 22. ROME 11-12 april 2014 - Maurizio Moriconi Parse Object • Contains key-valued pairs of JSON-compatible data • This data is schema-less • Each Parse Object has a class name ! PFObject in iOS • ParseObject in Android/Windows 22
  • 23. ROME 11-12 april 2014 - Maurizio Moriconi Save an object 23 Auto generate Class!!!
  • 24. ROME 11-12 april 2014 - Maurizio Moriconi Save an object 24
  • 25. ROME 11-12 april 2014 - Maurizio Moriconi Special Class Name • User • for authentication, log in, sign up and more • Installation • store push notification subscriptions for each device • Role • to specify groups of users with shared permissions • Product • stores your in-app product data 25
  • 26. ROME 11-12 april 2014 - Maurizio Moriconi Data Types 26
  • 27. ROME 11-12 april 2014 - Maurizio Moriconi Some features ! Saving objects offline ! ! ! ! ! Relational Data 27
  • 28. ROME 11-12 april 2014 - Maurizio Moriconi Some features 28 ! ! ! ! ! ! Queries ! ! ! ! !
  • 29. ROME 11-12 april 2014 - Maurizio Moriconi User • specialized user class called PFUser in iOS • several properties • username (required) • password (required on signup) • email (optional) • basic functionality: • sign up • login • email verification 29
  • 30. ROME 11-12 april 2014 - Maurizio Moriconi Signing up 30
  • 31. ROME 11-12 april 2014 - Maurizio Moriconi Loggin in 31
  • 32. ROME 11-12 april 2014 - Maurizio Moriconi PFLogInViewController • Manage Login via PFLogInViewControllerDelegate ! - (BOOL)logInViewController:(PFLogInViewController *)logInController shouldBeginLogInWithUsername: (NSString *)username password:(NSString *)password; ! - (void)logInViewController:(PFLogInViewController *)logInController didLogInUser:(PFUser *)user; ! - (void)logInViewController:(PFLogInViewController *)logInController didFailToLogInWithError:(NSError *)error; ! - (void)logInViewControllerDidCancelLogIn: (PFLogInViewController *)logInController; 32
  • 33. ROME 11-12 april 2014 - Maurizio Moriconi PFSignUpViewController 33 • Manage Sign up via PFSignUpViewControllerDelegate ! - (BOOL)signUpViewController: (PFSignUpViewController *)signUpController shouldBeginSignUp:(NSDictionary *)info; ! - (void)signUpViewController: (PFSignUpViewController *)signUpController didSignUpUser:(PFUser *)user; ! - (void)signUpViewController: (PFSignUpViewController *)signUpController didFailToSignUpWithError:(NSError *)error; ! - (void)signUpViewControllerDidCancelSignUp: (PFSignUpViewController *)signUpController;
  • 34. ROME 11-12 april 2014 - Maurizio Moriconi Facebook / Twitter integration 34
  • 35. ROME 11-12 april 2014 - Maurizio Moriconi Facebook • Setup FB application on developer.facebook.com • Add App ID and App Secret on Parse settings • Setup application follow https://developers.facebook.com/docs/ios/getting- started • Adding this line on application:didFinishLaunchingWithOptions ! • Add also:
 35
  • 36. ROME 11-12 april 2014 - Maurizio Moriconi Facebook // Create the log in view controller PFLogInViewController *logInViewController = [[PFLogInViewController alloc] init]; [logInViewController setFacebookPermissions:[NSArray arrayWithObjects:@"friends_about_me", nil]]; ! [logInViewController setFields: PFLogInFieldsTwitter | PFLogInFieldsFacebook | PFLogInFieldsDismissButton]; 36
  • 37. ROME 11-12 april 2014 - Maurizio Moriconi User 37
  • 38. ROME 11-12 april 2014 - Maurizio Moriconi Facebook / Twitter integration • Login • Sign up • Linking existing PFUser to Twitter/Facebook • Unlinking existing PFUser to Twitter/Facebook • After authentication is possible to use: • Query Graph on Facebook • Twitter API on Twitter 38
  • 39. ROME 11-12 april 2014 - Maurizio Moriconi • A bit of logic that running in the Cloud • Javascript SDK (same for apps) • You don't have to wait for a new release of your application • Schedule jobs • Cloud Modules for integrate your Parse app with third-party services and libraries 39
  • 40. ROME 11-12 april 2014 - Maurizio Moriconi Cloud Code curl -s https://www.parse.com/downloads/cloud_code/installer.sh | sudo /bin/bash 40 • Install the command line tool • Create new project $ parse new MyCloudCode Email: ninja@gmail.com Password: 1:MyApp Select an App: 1 $ cd MyCloudCode • A simple function in cloud/main.js Parse.Cloud.define("hello", function(request, response) { response.success("Hello world!"); });
  • 41. ROME 11-12 april 2014 - Maurizio Moriconi Cloud Code 41 $ parse deploy • Deploy • Run function on iOS [PFCloud callFunctionInBackground:@"hello" withParameters:@{} block:^(NSString *result, NSError *error) { if (!error) { // result is @"Hello world!" } }]; • Response { "result": "Hello world!" }
  • 42. ROME 11-12 april 2014 - Maurizio Moriconi Cloud Code 42
  • 43. ROME 11-12 april 2014 - Maurizio Moriconi Web hosting 43 /public index.html Cloud Parse PRJ
  • 44. ROME 11-12 april 2014 - Maurizio Moriconi and now? 44 Parse Analytics File storage Push notifications Data relations Users ACL Geopoint File storage In-app purchase Web hosting Query Email-verification
  • 45. ROME 11-12 april 2014 - Maurizio Moriconi Thank You! 45 Backend as a Service: