brasil roadshow
Post on 15-Jan-2015
637 Views
Preview:
DESCRIPTION
TRANSCRIPT
@reidcarlberg@joshbirk
bem vindos
SSID: CiscoNet-Manage
WIFI Username / PasswordOn table
http://bit.ly/brazilweek
InteractiveQuestions? Current projects? Feedback?
http://developer.force.com/join
Check Your Developer Edition Environment
http://developer.force.com/join
http://bit.ly/brazilweek
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.
Steve SassonEngineered the first digital camera prototype
Eastman KodakFiled for bankruptcy in 2012
Steve SassonWorked for Eastman Kodak in 1954
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)
“80% of new commercial enterprise apps will be deployed on cloud platforms in 2012”
IDC Predictions 2012: Competing for 2020
Salesforce PlatformCloud based, multi-tenant, enterprise class PaaS
800,000Force.com developers
9 BillionAPI calls last month
2.5xIncreased demand for Force.com developers
YOUare the makers
Fundamentals for the Enterprise
Mobile Social Identity Data Marketplace
Data Modeling
Declarative Applications
Create relationships, requirements and validation rules
Apex, Visualforce and API’s automatically extended
Business Logic
Workflows & Approvals
Apex & Visualforce
Enterprise API’s
Chatter
Go Mobile, Go Social
Mobile SDK for Android and iOS
Chatter Mobile and Chatter REST
Salesforce Identity & OAuth
Extend and Market
Heroku
AppExchange
AppExchange
1,700+ Apps 20k+ Reviews 1.4m+ Installs
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
Now it’s your turnBuilding a cloud based application
@ReidCarlberg
DATA MODELING
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.
Data Modeling
Declarative Applications
Create relationships, requirements and validation rules
Apex, Visualforce and API’s automatically extended
Spreadsheet Versus ApplicationRelational DataValidated dataProcess driven workflowsApproval SystemField AuditingUsers, Profiles and PermissionsEnterprise Collaboration
OR
With the same amount of programming…
Let’s Build an App!
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
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
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
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
TUTORIALS 1 & 2http://bit.ly/brasilportal-rj
Name, Title@twitter
BUSINESS LOGIC COLLABORATION
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.
Spreadsheet Versus Application
Business Logic
Workflows & Approvals
Apex & Visualforce
Enterprise API’s
Chatter
Declarative ApplicationsCreating business applications without programmatic code
Formula FieldsOperations for performing common logic
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) )
Validation RulesFormulas which block data entry if evaluated as true
IF THENERROR?
Record is saved Formula evaluates to
true
Return error message
WorkflowsEvent based business logic
When this happens
Meets this Criteria?
Perform These Actions
TaskOutbound Message
Update Field
ApprovalsSystem to route approvals through an organization
Track Approval History
Define Criteria
Single/Multi/Skip step processes
Route based on roles, or queues
Approval via emails or Chatter
ChatterSocial framework for the enterprise
CHATTER DEMO
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
TUTORIALS 3 & 4http://bit.ly/brasilportal-rj
LUNCH:
Room 119
To the left, down the stairs
Joshua Birk, Developer Evangelist@joshbirk
APEX + VISUALFORCE
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.
Business Logic
Workflows & Approvals
Apex & Visualforce
Enterprise API’s
Chatter
Model View ControllerApplication design paradigm to divide data, logic and UI
ApexCloud based programming language
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
Controllers Inbound/OutboundEmail Services
Custom API andHTTP Callouts
Triggers Scheduled and Batched Tasks
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
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
DEVELOPER CONSOLE DEMO
VisualforceCloud based component framework for interfaces
<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
@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
Email Templates Generate PDFsEmbed in Page Layouts
Mobile Interfaces Page Overrides
chatter:follow
chatter:newsfeed
chatter:feed
chatter:followers
chatter:feedAndFollowers
Chatter Components
MOBILE VF DEMO
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
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
TUTORIAL #9http://bit.ly/brazilweek
ORhttp://bit.ly/mobilevf-tutorial
http://bit.ly/wareutilhttp://bit.ly/vfchart
http://bit.ly/mvf-phonegap
Joshua Birk, Developer Evangelist@joshbirk
INTEGRATION + HEROKU
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.
Business Logic
Workflows & Approvals
Apex & Visualforce
Enterprise API’s
Chatter
OAuthIndustry standard method of user authentication
RemoteApplication
SalesforcePlatform
Sends App Credentials
User logs in,Token sent to callback
Confirms token
Send access token
Maintain session withrefresh token
OAuth2 Flow
REST APIHTTP based API
SOAP APIXML messaging and WSDL based API
Bulk APIAsynchronous API for handling large datasets
Streaming API
Bayeux implementation for real-time delivery of data
Extend and Market
Heroku
AppExchange
Polyglot FrameworkPaaS allowing for the deployment of multiple languages
$ 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
HEROKU DEMO
THANK YOU
Double-click to enter title
Double-click to enter text
The Wrap Up
http://bit.ly/brasildevweek-fp
Double-click to enter title
Double-click to enter text
@forcedotcom@joshbirk
@reidcarlberg@larimaryprairie
@eddyrperez#brasildevweek
Double-click to enter title
Double-click to enter text
Become A Developer User Group Leader
Email:Eddy Perez
<eduardo.perez@salesforce.com>
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
simplicity is the ultimate form ofsophistication
Da Vinci
top related