Brasil Roadshow

97
@reidcarlberg @joshbirk bem vindos

description

 

Transcript of Brasil Roadshow

Page 1: Brasil Roadshow

@reidcarlberg@joshbirk

bem vindos

Page 2: Brasil Roadshow

SSID: CiscoNet-Manage

WIFI Username / PasswordOn table

http://bit.ly/brazilweek

Page 3: Brasil Roadshow

InteractiveQuestions? Current projects? Feedback?

Page 4: Brasil Roadshow

http://developer.force.com/join

Page 5: Brasil Roadshow

Check Your Developer Edition Environment

http://developer.force.com/join

Page 6: Brasil Roadshow

http://bit.ly/brazilweek

Page 7: Brasil Roadshow
Page 8: Brasil Roadshow

Safe HarborSafe harbor statement under the Private Securities Litigation Reform Act of 1995: This presentation may contain forward-looking statements that involve risks, uncertainties, and assumptions. If any such uncertainties materialize or if any of the assumptions proves incorrect, the results of salesforce.com, inc. could differ materially from the results expressed or implied by the forward-looking statements we make. All statements other than statements of historical fact could be deemed forward-looking, including any projections of subscriber growth, earnings, revenues, or other financial items and any statements regarding strategies or plans of management for future operations, statements of belief, any statements concerning new, planned, or upgraded services or technology developments and customer contracts or use of our services.

The risks and uncertainties referred to above include – but are not limited to – risks associated with developing and delivering new functionality for our service, our new business model, our past operating losses, possible fluctuations in our operating results and rate of growth, interruptions or delays in our Web hosting, breach of our security measures, risks associated with possible mergers and acquisitions, the immature market in which we operate, our relatively limited operating history, our ability to expand, retain, and motivate our employees and manage our growth, new releases of our service and successful customer deployment, our limited history reselling non-salesforce.com products, and utilization and selling to larger enterprise customers. Further information on potential factors that could affect the financial results of salesforce.com, inc. is included in our annual report on Form 10-K for the most recent fiscal quarter ended July 31, 2011. This document and others are available on the SEC Filings section of the Investor Information section of our Web site.

Any unreleased services or features referenced in this or other press releases or public statements are not currently available and may not be delivered on time or at all. Customers who purchase our services should make the purchase decisions based upon features that are currently available. Salesforce.com, inc. assumes no obligation and does not intend to update these forward-looking statements.

Page 9: Brasil Roadshow

Steve SassonEngineered the first digital camera prototype

Page 10: Brasil Roadshow

Eastman KodakFiled for bankruptcy in 2012

Page 11: Brasil Roadshow

Steve SassonWorked for Eastman Kodak in 1954

Page 12: Brasil Roadshow

Customers, Partners, and Employees Are Demanding a New Generation of Apps. Now.

456 Million Tablets at Work

782 Million Smartphones at Work

2009 2010 2011 20122013(E) 2014(E)

2015(E) 2016(E)

Page 13: Brasil Roadshow

“80% of new commercial enterprise apps will be deployed on cloud platforms in 2012”

IDC Predictions 2012: Competing for 2020

Page 14: Brasil Roadshow

Salesforce PlatformCloud based, multi-tenant, enterprise class PaaS

Page 15: Brasil Roadshow

800,000Force.com developers

Page 16: Brasil Roadshow

9 BillionAPI calls last month

Page 17: Brasil Roadshow

2.5xIncreased demand for Force.com developers

Page 18: Brasil Roadshow

YOUare the makers

Page 19: Brasil Roadshow

Fundamentals for the Enterprise

Mobile Social Identity Data Marketplace

Page 20: Brasil Roadshow

Data Modeling

Declarative Applications

Create relationships, requirements and validation rules

Apex, Visualforce and API’s automatically extended

Page 21: Brasil Roadshow

Business Logic

Workflows & Approvals

Apex & Visualforce

Enterprise API’s

Chatter

Page 22: Brasil Roadshow

Go Mobile, Go Social

Mobile SDK for Android and iOS

Chatter Mobile and Chatter REST

Salesforce Identity & OAuth

Page 23: Brasil Roadshow

Extend and Market

Heroku

AppExchange

Page 24: Brasil Roadshow

AppExchange

1,700+ Apps 20k+ Reviews 1.4m+ Installs

Page 25: Brasil Roadshow

The Salesforce Platform

InfrastructureServices

Network

Storage

Operating System

Database

App Server

Web Server

Data Center

Disaster Recovery

OperationsServices

Authentication

Availability

Monitoring

Patch Management

Upgrades

Backup

NOC

Troubleshooting

Your Innovative

AppApplicationServices

Security/Sharing

Integration

Customization

Web Services

Multi-Language

Workflow

Built-in ServicesTouch

Services

Native iOS SDK

Native Android SDK

HTML5

Xcode wizards

PIN code support

Custom APEX REST

Geo-location Mobile

APIs

SocialServices

Feeds

Profiles

Status updates

Groups

File sharing

Approvals

Messenger

Presence

PlatformServices

Globalization

APIs

Security

Analytics

Search

Identity

Page 26: Brasil Roadshow

Now it’s your turnBuilding a cloud based application

Page 27: Brasil Roadshow

@ReidCarlberg

DATA MODELING

Page 28: Brasil Roadshow

Safe HarborSafe harbor statement under the Private Securities Litigation Reform Act of 1995: This presentation may contain forward-looking statements that involve risks, uncertainties, and assumptions. If any such uncertainties materialize or if any of the assumptions proves incorrect, the results of salesforce.com, inc. could differ materially from the results expressed or implied by the forward-looking statements we make. All statements other than statements of historical fact could be deemed forward-looking, including any projections of subscriber growth, earnings, revenues, or other financial items and any statements regarding strategies or plans of management for future operations, statements of belief, any statements concerning new, planned, or upgraded services or technology developments and customer contracts or use of our services.

The risks and uncertainties referred to above include – but are not limited to – risks associated with developing and delivering new functionality for our service, our new business model, our past operating losses, possible fluctuations in our operating results and rate of growth, interruptions or delays in our Web hosting, breach of our security measures, risks associated with possible mergers and acquisitions, the immature market in which we operate, our relatively limited operating history, our ability to expand, retain, and motivate our employees and manage our growth, new releases of our service and successful customer deployment, our limited history reselling non-salesforce.com products, and utilization and selling to larger enterprise customers. Further information on potential factors that could affect the financial results of salesforce.com, inc. is included in our annual report on Form 10-K for the most recent fiscal quarter ended July 31, 2011. This document and others are available on the SEC Filings section of the Investor Information section of our Web site.

Any unreleased services or features referenced in this or other press releases or public statements are not currently available and may not be delivered on time or at all. Customers who purchase our services should make the purchase decisions based upon features that are currently available. Salesforce.com, inc. assumes no obligation and does not intend to update these forward-looking statements.

Page 29: Brasil Roadshow

Data Modeling

Declarative Applications

Create relationships, requirements and validation rules

Apex, Visualforce and API’s automatically extended

Page 30: Brasil Roadshow

Spreadsheet Versus ApplicationRelational DataValidated dataProcess driven workflowsApproval SystemField AuditingUsers, Profiles and PermissionsEnterprise Collaboration

OR

With the same amount of programming…

Page 31: Brasil Roadshow

Let’s Build an App!

Page 32: Brasil Roadshow

Warehouse Application Requirements

• Track price and inventory on hand for all merchandise

• Create invoices containing one or more merchandise items as a line items

• Present total invoice amount and current shipping status

Page 33: Brasil Roadshow

Warehouse Application Requirements

• Track price and inventory on hand for all merchandise

• Create invoices containing one or more merchandise items as a line items

• Present total invoice amount and current shipping status

Page 34: Brasil Roadshow

Warehouse Application Requirements

• Track price and inventory on hand for all merchandise

• Create invoices containing one or more merchandise items as a line items

• Present total invoice amount and current shipping status

Page 35: Brasil Roadshow

Warehouse Data Model

Merchandise

Name Price Inventory

Pinot $20 15

Cabernet $30 10

Malbec $20 20

Zinfandel $10 50

Invoice

Number Status Count Total

INV-01 Shipped 16 $370

INV-02 New 20 $200

Invoice Line Items

Invoice Line Merchandise Units Sold

Unit Price

Value

INV-01 1 Pinot 1 15 $20

INV-01 2 Cabernet 5 10 $150

INV-01 3 Malbec 10 20 $200

INV-02 1 Pinot 20 50 $200

Page 36: Brasil Roadshow

TUTORIALS 1 & 2http://bit.ly/brasilportal-rj

Page 37: Brasil Roadshow

Name, Title@twitter

BUSINESS LOGIC COLLABORATION

Page 38: Brasil Roadshow

Safe HarborSafe harbor statement under the Private Securities Litigation Reform Act of 1995: This presentation may contain forward-looking statements that involve risks, uncertainties, and assumptions. If any such uncertainties materialize or if any of the assumptions proves incorrect, the results of salesforce.com, inc. could differ materially from the results expressed or implied by the forward-looking statements we make. All statements other than statements of historical fact could be deemed forward-looking, including any projections of subscriber growth, earnings, revenues, or other financial items and any statements regarding strategies or plans of management for future operations, statements of belief, any statements concerning new, planned, or upgraded services or technology developments and customer contracts or use of our services.

The risks and uncertainties referred to above include – but are not limited to – risks associated with developing and delivering new functionality for our service, our new business model, our past operating losses, possible fluctuations in our operating results and rate of growth, interruptions or delays in our Web hosting, breach of our security measures, risks associated with possible mergers and acquisitions, the immature market in which we operate, our relatively limited operating history, our ability to expand, retain, and motivate our employees and manage our growth, new releases of our service and successful customer deployment, our limited history reselling non-salesforce.com products, and utilization and selling to larger enterprise customers. Further information on potential factors that could affect the financial results of salesforce.com, inc. is included in our annual report on Form 10-K for the most recent fiscal quarter ended July 31, 2011. This document and others are available on the SEC Filings section of the Investor Information section of our Web site.

Any unreleased services or features referenced in this or other press releases or public statements are not currently available and may not be delivered on time or at all. Customers who purchase our services should make the purchase decisions based upon features that are currently available. Salesforce.com, inc. assumes no obligation and does not intend to update these forward-looking statements.

Page 39: Brasil Roadshow

Spreadsheet Versus Application

Page 40: Brasil Roadshow

Business Logic

Workflows & Approvals

Apex & Visualforce

Enterprise API’s

Chatter

Page 41: Brasil Roadshow

Declarative ApplicationsCreating business applications without programmatic code

Page 42: Brasil Roadshow

Formula FieldsOperations for performing common logic

Page 43: Brasil Roadshow

Excel style formulas

Support for commons functions

Math

Text

Date & Time

Logical

Can chain functions together:

AND ( OR (

ISPICKVAL(StageName, "Closed Won"),

ISPICKVAL(StageName, "Negotiation/Review")),

ISBLANK(Delivery_Date__c) )

Page 44: Brasil Roadshow

Validation RulesFormulas which block data entry if evaluated as true

Page 45: Brasil Roadshow

IF THENERROR?

Record is saved Formula evaluates to

true

Return error message

Page 46: Brasil Roadshow

WorkflowsEvent based business logic

Page 47: Brasil Roadshow

When this happens

Meets this Criteria?

Perform These Actions

Page 48: Brasil Roadshow

TaskOutbound Message

Update Field

Email

Page 49: Brasil Roadshow

ApprovalsSystem to route approvals through an organization

Page 50: Brasil Roadshow

Track Approval History

Define Criteria

Page 51: Brasil Roadshow

Single/Multi/Skip step processes

Route based on roles, or queues

Approval via emails or Chatter

Page 52: Brasil Roadshow

ChatterSocial framework for the enterprise

Page 53: Brasil Roadshow

CHATTER DEMO

Page 54: Brasil Roadshow

Home Tab / Profile Page Record Detail Page

Every internal user can see what you post

Only users with “Read” access to the record can see what

you post

Chatter Security

Page 55: Brasil Roadshow

TUTORIALS 3 & 4http://bit.ly/brasilportal-rj

Page 56: Brasil Roadshow

LUNCH:

Room 119

To the left, down the stairs

Page 57: Brasil Roadshow

Joshua Birk, Developer Evangelist@joshbirk

APEX + VISUALFORCE

Page 58: Brasil Roadshow

Safe HarborSafe harbor statement under the Private Securities Litigation Reform Act of 1995: This presentation may contain forward-looking statements that involve risks, uncertainties, and assumptions. If any such uncertainties materialize or if any of the assumptions proves incorrect, the results of salesforce.com, inc. could differ materially from the results expressed or implied by the forward-looking statements we make. All statements other than statements of historical fact could be deemed forward-looking, including any projections of subscriber growth, earnings, revenues, or other financial items and any statements regarding strategies or plans of management for future operations, statements of belief, any statements concerning new, planned, or upgraded services or technology developments and customer contracts or use of our services.

The risks and uncertainties referred to above include – but are not limited to – risks associated with developing and delivering new functionality for our service, our new business model, our past operating losses, possible fluctuations in our operating results and rate of growth, interruptions or delays in our Web hosting, breach of our security measures, risks associated with possible mergers and acquisitions, the immature market in which we operate, our relatively limited operating history, our ability to expand, retain, and motivate our employees and manage our growth, new releases of our service and successful customer deployment, our limited history reselling non-salesforce.com products, and utilization and selling to larger enterprise customers. Further information on potential factors that could affect the financial results of salesforce.com, inc. is included in our annual report on Form 10-K for the most recent fiscal quarter ended July 31, 2011. This document and others are available on the SEC Filings section of the Investor Information section of our Web site.

Any unreleased services or features referenced in this or other press releases or public statements are not currently available and may not be delivered on time or at all. Customers who purchase our services should make the purchase decisions based upon features that are currently available. Salesforce.com, inc. assumes no obligation and does not intend to update these forward-looking statements.

Page 59: Brasil Roadshow

Business Logic

Workflows & Approvals

Apex & Visualforce

Enterprise API’s

Chatter

Page 60: Brasil Roadshow

Model View ControllerApplication design paradigm to divide data, logic and UI

Page 61: Brasil Roadshow

ApexCloud based programming language

Page 62: Brasil Roadshow

public with sharing class myControllerExtension implements Util {

private final Account acct; public Contact newContact {get; set;} public myControllerExtension(ApexPages.StandardController stdController) { this.acct = (Account)stdController.getRecord(); }

public PageReference associateNewContact(Id cid) { newContact = [SELECT Id, Account from Contact WHERE Id =: cid LIMIT 1];

newContact.Account = acct; update newContact; }}

Class and Interface based

Scoped Variables

Inline SOQL

Inline DML

Apex Anatomy

Page 63: Brasil Roadshow

Controllers Inbound/OutboundEmail Services

Custom API andHTTP Callouts

Triggers Scheduled and Batched Tasks

Page 64: Brasil Roadshow

trigger HelloWorldTrigger on Book__c (before insert) {

Book__c[] books = Trigger.new;

BooksUtil.applyProcessing(books);

}

Object Definition

Event Definition

Trigger.old and new

Bulkify code

Trigger Anatomy

Page 65: Brasil Roadshow

if(feed_text == ‘promote’) {rec.status__c = “Approved”

addToEmailPromotion(rec); FeedItem post = new FeedItem(); post.ParentId = rec.Id; post.Body = ‘Record added to promotion’;

feedsToInsert.addITem(post);}

Chatter Triggers

Page 66: Brasil Roadshow

DEVELOPER CONSOLE DEMO

Page 67: Brasil Roadshow

VisualforceCloud based component framework for interfaces

Page 68: Brasil Roadshow

<apex:page StandardController=“Contact” extensions=“duplicateUtilty” action=“{!checkPhone}”>

<apex:form>

<apex:outputField var=“{!Contact.FirstName}” ><apex:outputField var=“{!Contact.LastName}” />

<apex:inputField var=“{!Contact.Phone}” /><apex:commandButton value=“Update” action=“{!

quicksave}” />

<apex:form>

</apex>

Standard ControllersCustom ControllersCustom Extensions

Data bound components

Controller Callbacks

Visualforce Anatomy

Page 69: Brasil Roadshow

@RemoteAction public static String updateMerchandiseItem(String productId, Integer newInventory) { List<Merchandise__c> m = [SELECT Id, Total_Inventory__c from Merchandise__c WHERE Id =: productId LIMIT 1]; if(m.size() > 0) { m[0].Total_Inventory__c = newInventory; try { update m[0]; return 'Item Updated'; } catch (Exception e) { return e.getMessage(); } } else { return 'No item found with that ID'; } } }

JavaScript Remoting Access Apex from JavaScript

Asynchronous Responses

j$(".updateBtn").click(function() { var id = j$(this).attr('data-id'); var inventory = parseInt(j$("#inventory"+id).val()); j$.mobile.showPageLoadingMsg(); MobileInventoryExtension.updateMerchandiseItem(id,inventory,handleUpdate); });

Apex

Visualforce

Page 70: Brasil Roadshow

Email Templates Generate PDFsEmbed in Page Layouts

Mobile Interfaces Page Overrides

Page 71: Brasil Roadshow

chatter:follow

chatter:newsfeed

chatter:feed

chatter:followers

chatter:feedAndFollowers

Chatter Components

Page 72: Brasil Roadshow

MOBILE VF DEMO

Page 73: Brasil Roadshow

Salesforce Mobile

Mobile HTML Application

Mobile SDK Development

No additional development, admin configured and controlled

Web development skills required, easily made for multiple devices and screens

Offers access to device functionality and can create the most fast performing applications

Page 74: Brasil Roadshow

Mobile HTML Application

Mobile SDK Development

Web development skills required, easily made for multiple devices and screens

Offers access to device functionality and can create the most fast performing applications

Salesforce MobileNo additional development, admin configured and controlled

Page 75: Brasil Roadshow

TUTORIAL #9http://bit.ly/brazilweek

ORhttp://bit.ly/mobilevf-tutorial

http://bit.ly/wareutilhttp://bit.ly/vfchart

http://bit.ly/mvf-phonegap

Page 76: Brasil Roadshow

Joshua Birk, Developer Evangelist@joshbirk

INTEGRATION + HEROKU

Page 77: Brasil Roadshow

Safe HarborSafe harbor statement under the Private Securities Litigation Reform Act of 1995: This presentation may contain forward-looking statements that involve risks, uncertainties, and assumptions. If any such uncertainties materialize or if any of the assumptions proves incorrect, the results of salesforce.com, inc. could differ materially from the results expressed or implied by the forward-looking statements we make. All statements other than statements of historical fact could be deemed forward-looking, including any projections of subscriber growth, earnings, revenues, or other financial items and any statements regarding strategies or plans of management for future operations, statements of belief, any statements concerning new, planned, or upgraded services or technology developments and customer contracts or use of our services.

The risks and uncertainties referred to above include – but are not limited to – risks associated with developing and delivering new functionality for our service, our new business model, our past operating losses, possible fluctuations in our operating results and rate of growth, interruptions or delays in our Web hosting, breach of our security measures, risks associated with possible mergers and acquisitions, the immature market in which we operate, our relatively limited operating history, our ability to expand, retain, and motivate our employees and manage our growth, new releases of our service and successful customer deployment, our limited history reselling non-salesforce.com products, and utilization and selling to larger enterprise customers. Further information on potential factors that could affect the financial results of salesforce.com, inc. is included in our annual report on Form 10-K for the most recent fiscal quarter ended July 31, 2011. This document and others are available on the SEC Filings section of the Investor Information section of our Web site.

Any unreleased services or features referenced in this or other press releases or public statements are not currently available and may not be delivered on time or at all. Customers who purchase our services should make the purchase decisions based upon features that are currently available. Salesforce.com, inc. assumes no obligation and does not intend to update these forward-looking statements.

Page 78: Brasil Roadshow

Business Logic

Workflows & Approvals

Apex & Visualforce

Enterprise API’s

Chatter

Page 79: Brasil Roadshow

OAuthIndustry standard method of user authentication

Page 80: Brasil Roadshow

RemoteApplication

SalesforcePlatform

Sends App Credentials

User logs in,Token sent to callback

Confirms token

Send access token

Maintain session withrefresh token

OAuth2 Flow

Page 81: Brasil Roadshow

REST APIHTTP based API

Page 82: Brasil Roadshow

SOAP APIXML messaging and WSDL based API

Page 83: Brasil Roadshow

Bulk APIAsynchronous API for handling large datasets

Page 84: Brasil Roadshow

Streaming API

Bayeux implementation for real-time delivery of data

Page 85: Brasil Roadshow

Extend and Market

Heroku

AppExchange

Page 86: Brasil Roadshow
Page 87: Brasil Roadshow

Polyglot FrameworkPaaS allowing for the deployment of multiple languages

Page 88: Brasil Roadshow
Page 89: Brasil Roadshow

$ git push heroku masterCounting objects: 67, done.Delta compression using up to 4 threads.Compressing objects: 100% (53/53), done.Writing objects: 100% (67/67), 26.33 KiB, done.Total 67 (delta 5), reused 0 (delta 0)

Github Repo Heroku

Local Repo

Pull / PushDevelopment Changes

Push DeploymentsMonitor Application

Page 90: Brasil Roadshow

HEROKU DEMO

Page 91: Brasil Roadshow

THANK YOU

Page 92: Brasil Roadshow

Double-click to enter title

Double-click to enter text

The Wrap Up

Page 93: Brasil Roadshow

http://bit.ly/brasildevweek-fp

Page 94: Brasil Roadshow

Double-click to enter title

Double-click to enter text

@forcedotcom@joshbirk

@reidcarlberg@larimaryprairie

@eddyrperez#brasildevweek

Page 95: Brasil Roadshow

Double-click to enter title

Double-click to enter text

Become A Developer User Group Leader

Email:Eddy Perez

<[email protected]>

Page 96: Brasil Roadshow

Double-click to enter title

Double-click to enter text

http://developer.force.comhttp://youtube.com/salesforce

http://appexchange.comhttp://salesforce.stackexchange.com

#askforcehttp://webchat.freenode.net/?

channels=salesforce

Page 97: Brasil Roadshow

simplicity is the ultimate form ofsophistication

Da Vinci