SlideShare a Scribd company logo
1 of 85
Salesforce 2014 
Campus Tour 
James Ward 
@_JamesWard
Safe Harbor 
Safe 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 product or service availability, 
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, new products and services, 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, the outcome of any litigation, risks associated with completed and any 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 year and in our quarterly report on Form 10-Q for the most recent fiscal quarter. 
These documents and others containing important disclosures 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 presentations, 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.
#CampusTour14
World’s #1 CRM company* 
World’s most admired software company 
#1 most 
admired in 
software 
#7 best company 
to work for 
World’s most innovative company 
2011 • 2012 • 2013 • 2014 
4TH YEAR IN A 
ROW! 
*Source: IDC, Worldwide CRM Applications 2014-2018 Forecast and 2013 Vendor Shares, Doc #248875, June 2014 
Image 
FPO 
Celebrating 15 Years 
of Customer Success
1% 
Time • Equity • Product 
530,000+ 
Hours Service 
20,000 
Non-profit 
organizations 
$53M+ 
Grants 
foundation
The Third Wave of Computing
Server 
Mainframe LAN / WAN 
SNA 
Terminal 
Client 
customer 
transactions 
connected 
things 
Cloud 
LTE 
Mobile 
“Third Wave” of Computing 
Thousands Millions Billions Trillions
But Most Companies Are Disconnected From Customers 
Service Agents 
Your 
Company 
Salespeople 
Your 
Customers 
Your Partners
Become a Customer Company 
Analytics 
for the rest of us 
Build 
mobile apps 
faster 
Sell, Service, Market 
& Engage 
in a whole new way 
Connect with your customers in a whole new way
Salesforce1: A New Customer Platform for the Future 
Salesforce1 App 
Salesforce1 Platform APIs 
Force.com Heroku1 
Salesforce1 Platform Services 
ExactTarget 
Fuel
Build Amazing Apps and Connect 
Everything. 
Build Innovative 
Customer apps 
Automate Processes 
with Employee Apps 
Connect 
Everything
Virgin America Connects Every Employee with a Social Intranet 
Branded social intranet built mobile first 
Key business metrics customized for each ‘teammate” 
Chatter collaboration for every department 
Business users update content in real-time
Trunk Club Connects Customers & Employees with Mobile Apps 
Customer facing mobile app built on Heroku 
Employee mobile app built on Force.com for order fulfillment 
Integrated sales, service & marketing built on the Salesforce Platform
Salesforce Academic 
Program
Demand is Growing Across Multiple Roles 
60% 159% 90% 
Force.com 
Developer 
Technical 
Architect 
Solutions 
Architect 
Principal 
Consultant 
Business 
Analyst 
Source: Hire On-Demand http://www.hireon-demand.com 
of companies moving 
to cloud 
Demand growth for all 
Salesforce Talent 
Demand growth for 
Salesforce 
Developers
Salesforce Skills Earn Top Paying Jobs 
Salary Average 
Job Silicon Valley National 
Force.com Data Analyst $95k $65k 
Salesforce.com Administrators $100k $80k 
Global Salesforce Administrators $120k $95k 
Force.com Developers $125k $98k 
Certified Force.com Developers $135k $115k 
Sr. Force.com Developers $150k $125k 
Force.com Architects $170k $140k 
Force.com Solution Architects $200k $165k 
Salesforce CRM Business Analysts $140k $110k 
Salesforce CRM Program Managers $185k $135k 
Salesforce Implementation Consultants $220k $175k 
Source: Nelson Technologies, November 2013 
http://www.nelsontechnology.com
Campus Events 
Internships & 
Recruiting Curriculum 
Mentorship & 
Experience 
Classroom speakers 
Workshops 
Hackathons 
Business Competitions 
University 
Conferences 
Student User Groups 
Company visits/tours 
Internship Program 
Recruitment 
Courseware 
Curriculum 
Student/Faculty 
licenses 
Training & certification 
Capstone projects 
Entrepreneurship 
Research projects 
Student Ambassadors 
Academic Program Components
Salesforce Campus Tour 
Oct 24-Nov 14th 
1 2 3 
Join Live Telecast on 
November 12, 2014 
Compete in Salesforce1 
Challenge to win an Xbox 
Attend a 
Campus Event 
www.salesforcecampustour.com
Keep Learning With Trailhead 
developer.salesforce.com/trailhead
Salesforce Certifications 
Key Skills Preparation 
• Manage users, data, and security 
• Maintain and customize Sales Cloud and Service Cloud 
applications 
• Build reports, dashboards, and workflow 
Administration Essentials for New 
Admins (ADM 201) 
FREE Self-paced Training: 
• certifiedondemand.com 
• Leverage advanced administration 
• Optimize and extend Sales Cloud and Service Cloud 
applications 
• Design advanced reports, dashboards, and business 
process automation 
Administration Essentials for 
Experienced Admins (ADM-211) 
FREE Self-paced Training: 
• Force.com Fundamentals Book 
• Build custom applications using point-and-click 
• Design the data model, user interface, business logic, 
and security for custom applications 
• Design reports, dashboards, and portals 
Building Applications with Force.com 
and Visualforce (DEV401) 
FREE Self-paced Training: 
• Udacity.com 
• Develop custom applications using Apex & Visualforce 
• Manage the development lifecycle and environments 
• Write and execute comprehensive test plans 
Apex and Visualforce Controllers 
(DEV501) 
FREE Self-paced Training: 
• Introduction to Visualforce (YouTube) 
• www.sfdc99.com
Campus Ambassador 
Program
Salesforce FutureForce Program 
salesforce.com/futureforce
Lets Build an App! 
https://ccoenraets.github.io/salesforce-developer-fasttrack/
Two Approaches to Development 
Declarative Approach Programmatic Approach 
Visualforce Pages 
Visualforce Components 
Apex Controllers 
Apex Triggers 
Metadata API 
REST API 
Bulk API 
Page Layouts 
Record Types 
Formula Fields 
Validation Rules 
Workflows and Approvals 
Custom Objects 
Custom Fields 
Relationships 
User 
Interface 
Business 
Logic 
Data 
Model
Creating the Data Model
Salesforce Objects 
Similar to Tables (with more metadata) 
Standard objects out-of-the-box 
• Account, Contact, Opportunity, … 
You can add custom fields to standard objects 
•Rating__c, Twitter__c, … 
You can create custom objects 
• i.e. Speaker__c, Session__c, Hotel__c 
Custom objects have standard fields 
• Id, Owner, LastModifiedDate, LastModifiedBy, …
Rich Data Types 
Auto Number 
Formula 
Roll-Up Summary 
Lookup 
Master-Detail 
Checkbox 
Currency 
Date 
Picklist (multi select) 
Text 
Text Area 
Text Area (Long) 
Text Area (Rich) 
Text (Encrypted) 
URL 
 Date/Time 
 Email 
 Geolocation 
 Number 
 Percent 
 Phone 
 Picklist
Modeling One-to-Many Relationships 
An expense has one 
expense report 
An expense report has 
many expenses
Modeling Many-to-Many Relationships 
A speaker can have 
many session 
assignments 
A session can have 
many speaker 
assignments
Id 
All objects are given an Id field 
Globally unique Id is assigned at record creation 
"Primary key" used to access records
Record Name 
Human readable / logical identifier 
Text or Auto Number ("Intro to Apex" or SP-00002) 
Uniqueness not enforced
When you create an Object, you get… 
A CRUD user interface 
Instant Mobile App access (Salesforce1) 
A REST API 
Rich Metadata 
Indexed search
Lab: Creating the Data Model
Creating the Application
What's an Application? 
Group of tabs that provide easy access to related features 
Salesforce comes with standards apps 
•Sales, Call Center, Marketing, … 
You can create your own apps 
Tabs can be: 
•Object pages, Visualforce pages, Canvas app
Page Layouts 
Let you customize all aspects of the layout, related lists, …
Lab: Creating the Application
Writing Apex Classes
What is Apex? 
Salesforce platform language 
Cloud based compiling, debugging and unit testing 
Object-oriented 
Strongly typed 
Classes and Interfaces 
Similar to Java
Apex and Java 
Same 
Primitive data types 
Flow control (if, for, while, …) 
Exception handling 
Collections: Lists, Sets, … 
Different 
Case insensitive 
Single quote strings: 'Joe' 
Id data type 
Built-in support for data access
Apex Class 
public class MortgageCalculator { 
public Double amount { get; set; } 
public Double rate { get; set; } 
public Integer years { get; set; } 
public Double calculateMonthlyPayment() { 
Integer months = years * 12; 
Double monthlyRate = rate / (12 * 100); 
return amount * (monthlyRate/ 
(1 - Math.pow(1 + monthlyRate, -months))); 
} 
}
Development Tools 
Developer Console 
Force.com IDE (Eclipse Plugin) 
Mavens Mate (Sublime Plugin) 
Force CLI
Developer Console 
Browser Based IDE 
Create Classes, Triggers, Pages 
Execute Apex Anonymously 
Execute SOQL Queries 
Run Unit Tests 
Review Debug Logs
Accessing Data with 
SOQL and DML
SOQL 
Salesforce Object Query language 
Similar to SQL 
Streamlined syntax to traverse object relationships 
Built into Apex
SELECT Id, Name, Phone 
FROM Contact
SELECT Id, Name, Phone 
FROM Contact 
WHERE Phone <> null
SELECT Id, Name, Phone 
FROM Contact 
WHERE Phone <> null 
AND Name LIKE '%rose%'
SELECT Id, Name, Phone 
FROM Contact 
WHERE Phone <> null 
AND Name LIKE '%rose%' 
ORDER BY Name
SELECT Id, Name, Phone, Account.Name 
FROM Contact 
WHERE Phone <> null 
AND Name LIKE '%rose%' 
ORDER BY Name
SELECT Id, Name, Phone, Account.Name 
FROM Contact 
WHERE Phone <> null 
AND Name LIKE '%rose%' 
ORDER BY Name 
LIMIT 50
Executing SOQL in the Developer Console
Inlining SOQL in Apex 
Integer i = [select count() from Session__c];
Inlining SOQL in Apex 
String level = 'Advanced'; 
List<Session__c> sessions = 
[SELECT Name, Level__c FROM Session__c 
WHERE Level__c = :level];
Inlining SOQL in Apex 
List<String> levels = new List<String>(); 
levels.add('Intermediate'); 
levels.add('Advanced'); 
List<Session__c> sessions = 
[SELECT Name, Level__c FROM Session__c 
WHERE Level__c IN :levels];
Inlining SOQL in Apex 
for (Speaker__c s : [select email__c from Speaker__c]) 
{ 
System.debug(s.email__c); 
}
insert 
Session__c session = new Session__c(); 
session.name = 'Apex 101'; 
session.level__c = 'Beginner'; 
insert session;
insert 
Session__c session = new Session__c( 
name = 'Apex 201', 
level__c = 'Intermediate' 
); 
insert session;
update 
String oldName = 'Apex 101'; 
String newName = 'Apex for Beginners'; 
Session__c session = 
[SELECT Id, Name FROM Session__c 
WHERE Name=:oldName]; 
session.name = newName; 
update session;
delete 
String name = 'Testing 501'; 
Session__c session = 
SELECT Name FROM Session__c 
WHERE Name=:name]; 
delete session;
Writing Triggers
Trigger 
Apex code executed on database events 
Before or after: 
• Insert 
•Update 
•Delete 
•Undelete
Before or After? 
Before 
•Update or validate values before they are saved to the database 
•Example: Prevent double-booking of a speaker 
After 
•Need access to values set by the database (Id, lastUpdated, …) 
•Example: Send speaker confirmation email
Bulk Mode 
Trigger API designed to support bulk operations 
•Data Import, Bulk API, etc. 
Triggers work on bulk of records, not single records 
Context variables provide access to data: 
•Trigger.old and Trigger.new (List) 
•Trigger.oldMap and Trigger.newMap (Map)
Example 
Trigger on Account (after insert) { 
for (Account account : Trigger.new) { 
Case case = new Case(); 
case.Subject = 'Mail Welcome Kit'; 
case.Account.Id = account.Id; 
insert case; 
} 
}
Writing Visualforce Pages
Model-View-Controller 
Model 
Data + Rules 
Controller 
View-Model 
interactions 
View 
UI code 
 Separation of concerns 
– No data access code in view 
– No view code in controller 
 Benefits 
– Minimize impact of changes 
– More reusable components
Model-View-Controller in Salesforce 
View 
• Metadata 
• Standard Pages 
• Visualforce Pages 
• External apps 
Controller 
• Standard Controllers 
• Controller Extensions 
• Custom Controllers 
(all Apex) 
Model 
• Metadata 
• Objects 
• Triggers (Apex) 
• Classes (Apex)
What's a Visualforce Page? 
The View in MVC architecture 
HTML page with tags executed at the server-side to generate dynamic content 
Similar to JSP and ASP 
Can leverage JavaScript and CSS libraries
Expression Language 
Anything inside of {! } is evaluated as an expression 
Same expression language as Formulas 
Same global variables are available. For example: 
• {!$User.FirstName} {!$User.LastName}
Example 1 
<apex:page> 
<h1>Hello, {!$User.FirstName}</h1> 
</apex:page>
Example 2 
<apex:page standardController="Contact"> 
<apex:form> 
Standard controller 
<apex:inputField value="{!contact.firstname}"/> 
<apex:inputField value="{!contact.lastname}"/> 
<apex:commandButton action="{!save}" value="Save"/> 
</apex:form> 
</apex:page> 
object 
Function in 
standard controller
Standard Controller 
A standard controller is available for all objects 
•You don't have to write it! 
Provides standard CRUD operations 
•Create, Update, Delete, Field Access, etc. 
Can be extended with more capabilities (next module) 
Uses id in URL to access object
Component Library 
Presentation tags 
– <apex:pageBlock title="My Account Contacts"> 
Fine grained data tags 
•<apex:outputField value="{!contact.firstname}"> 
•<apex:inputField value="{!contact.firstname}"> 
Coarse grained data tags 
•<apex:detail> 
•<apex:pageBlockTable> 
Action tags 
•<apex:commandButton action="{!save}" >
Email 
Templates 
Embedded in Page 
Layouts 
Generate PDFs 
Custom Tabs 
Mobile 
Interfaces 
Page Overrides 
Where can I use Visualforce?
Writing Controller Extensions
Custom Controllers 
Custom class written in Apex 
Can override standard behavior 
Can add new capabilities
Defining a Controller Extension 
<apex:page standardController="Speaker__c" 
extensions="SpeakerCtrlExt"> 
Provides basic 
CRUD 
Overrides standard 
actions and/or provide 
additional capabilities
Anatomy of a Controller Extension 
public class SpeakerCtrlExt { 
private final Speaker__c speaker; 
private ApexPages.StandardController stdController; 
public SpeakerCtrlExt (ApexPages.StandardController ctrl) { 
this.stdController = ctrl; 
this.speaker = (Speaker__c)ctrl.getRecord(); 
} 
// method overrides 
// custom methods 
}
All done. Take a survey! 
http://bit.ly/devdayutaustin
Salesforce Campus Tour 2014 Highlights

More Related Content

What's hot

Eli Lilly is All In on Salesforce App Cloud. How They Did It and You Can Too!
Eli Lilly is All In on Salesforce App Cloud. How They Did It and You Can Too!Eli Lilly is All In on Salesforce App Cloud. How They Did It and You Can Too!
Eli Lilly is All In on Salesforce App Cloud. How They Did It and You Can Too!Dreamforce
 
Winter '17 Lightning Navigation (August 23, 2016)
Winter '17 Lightning Navigation (August 23, 2016)Winter '17 Lightning Navigation (August 23, 2016)
Winter '17 Lightning Navigation (August 23, 2016)Salesforce Partners
 
Migrating to Salesforce Lightning
Migrating to Salesforce Lightning Migrating to Salesforce Lightning
Migrating to Salesforce Lightning ricknania
 
Summer '16 Lightning Update for ISVs (June 30, 2016)
Summer '16 Lightning Update for ISVs (June 30, 2016)Summer '16 Lightning Update for ISVs (June 30, 2016)
Summer '16 Lightning Update for ISVs (June 30, 2016)Salesforce Partners
 
Developer Tour on the Salesforce1 Platform
Developer Tour on the Salesforce1 PlatformDeveloper Tour on the Salesforce1 Platform
Developer Tour on the Salesforce1 PlatformSalesforce Deutschland
 
Salesforce Jumpstart: Getting Started as a Consulting Partner
Salesforce Jumpstart: Getting Started as a Consulting PartnerSalesforce Jumpstart: Getting Started as a Consulting Partner
Salesforce Jumpstart: Getting Started as a Consulting PartnerSalesforce Partners
 
Horton, kathy SFDC Consultant resume
Horton, kathy SFDC Consultant resumeHorton, kathy SFDC Consultant resume
Horton, kathy SFDC Consultant resumeKathy Horton
 
Developers guide to the Salesforce1 Platform
Developers guide to the Salesforce1 PlatformDevelopers guide to the Salesforce1 Platform
Developers guide to the Salesforce1 PlatformJohn Stevenson
 
Heroku + Salesforce = Partner Success
Heroku + Salesforce = Partner SuccessHeroku + Salesforce = Partner Success
Heroku + Salesforce = Partner SuccessAlexander Sutherland
 
Transition to the Lightning Experience: Pro Tips, Tools and a Transition Stra...
Transition to the Lightning Experience: Pro Tips, Tools and a Transition Stra...Transition to the Lightning Experience: Pro Tips, Tools and a Transition Stra...
Transition to the Lightning Experience: Pro Tips, Tools and a Transition Stra...Shell Black
 
Df14 Maintaining your orgs setup for optimal efficiency for dist
Df14 Maintaining your orgs setup for optimal efficiency for distDf14 Maintaining your orgs setup for optimal efficiency for dist
Df14 Maintaining your orgs setup for optimal efficiency for distjayvinarora
 
Hands-On Workshop: Introduction to Development on Force.com for Developers
Hands-On Workshop: Introduction to Development on Force.com for DevelopersHands-On Workshop: Introduction to Development on Force.com for Developers
Hands-On Workshop: Introduction to Development on Force.com for DevelopersSalesforce Developers
 
European Saas Forum - Microsoft - Peter de Haas - 18-11-2008
European Saas Forum - Microsoft - Peter de Haas - 18-11-2008European Saas Forum - Microsoft - Peter de Haas - 18-11-2008
European Saas Forum - Microsoft - Peter de Haas - 18-11-2008Peter de Haas
 
Jax Salesforce Labs Day 2019 deck
Jax Salesforce Labs Day 2019 deckJax Salesforce Labs Day 2019 deck
Jax Salesforce Labs Day 2019 deckMarc Lester
 
Introduction to Salesforcedotcom
Introduction to SalesforcedotcomIntroduction to Salesforcedotcom
Introduction to SalesforcedotcomEdureka!
 
Build Apps Visually with Lightning App Builder
Build Apps Visually with Lightning App BuilderBuild Apps Visually with Lightning App Builder
Build Apps Visually with Lightning App BuilderSalesforce Developers
 

What's hot (20)

Eli Lilly is All In on Salesforce App Cloud. How They Did It and You Can Too!
Eli Lilly is All In on Salesforce App Cloud. How They Did It and You Can Too!Eli Lilly is All In on Salesforce App Cloud. How They Did It and You Can Too!
Eli Lilly is All In on Salesforce App Cloud. How They Did It and You Can Too!
 
Winter '17 Lightning Navigation (August 23, 2016)
Winter '17 Lightning Navigation (August 23, 2016)Winter '17 Lightning Navigation (August 23, 2016)
Winter '17 Lightning Navigation (August 23, 2016)
 
Migrating to Salesforce Lightning
Migrating to Salesforce Lightning Migrating to Salesforce Lightning
Migrating to Salesforce Lightning
 
Salesforce for Platform
Salesforce for PlatformSalesforce for Platform
Salesforce for Platform
 
Summer '16 Lightning Update for ISVs (June 30, 2016)
Summer '16 Lightning Update for ISVs (June 30, 2016)Summer '16 Lightning Update for ISVs (June 30, 2016)
Summer '16 Lightning Update for ISVs (June 30, 2016)
 
Developer Tour on the Salesforce1 Platform
Developer Tour on the Salesforce1 PlatformDeveloper Tour on the Salesforce1 Platform
Developer Tour on the Salesforce1 Platform
 
Partner Branding Guidelines
Partner Branding Guidelines Partner Branding Guidelines
Partner Branding Guidelines
 
Salesforce Jumpstart: Getting Started as a Consulting Partner
Salesforce Jumpstart: Getting Started as a Consulting PartnerSalesforce Jumpstart: Getting Started as a Consulting Partner
Salesforce Jumpstart: Getting Started as a Consulting Partner
 
Horton, kathy SFDC Consultant resume
Horton, kathy SFDC Consultant resumeHorton, kathy SFDC Consultant resume
Horton, kathy SFDC Consultant resume
 
Developers guide to the Salesforce1 Platform
Developers guide to the Salesforce1 PlatformDevelopers guide to the Salesforce1 Platform
Developers guide to the Salesforce1 Platform
 
Heroku + Salesforce = Partner Success
Heroku + Salesforce = Partner SuccessHeroku + Salesforce = Partner Success
Heroku + Salesforce = Partner Success
 
Transition to the Lightning Experience: Pro Tips, Tools and a Transition Stra...
Transition to the Lightning Experience: Pro Tips, Tools and a Transition Stra...Transition to the Lightning Experience: Pro Tips, Tools and a Transition Stra...
Transition to the Lightning Experience: Pro Tips, Tools and a Transition Stra...
 
Df14 Maintaining your orgs setup for optimal efficiency for dist
Df14 Maintaining your orgs setup for optimal efficiency for distDf14 Maintaining your orgs setup for optimal efficiency for dist
Df14 Maintaining your orgs setup for optimal efficiency for dist
 
Hands-On Workshop: Introduction to Development on Force.com for Developers
Hands-On Workshop: Introduction to Development on Force.com for DevelopersHands-On Workshop: Introduction to Development on Force.com for Developers
Hands-On Workshop: Introduction to Development on Force.com for Developers
 
European Saas Forum - Microsoft - Peter de Haas - 18-11-2008
European Saas Forum - Microsoft - Peter de Haas - 18-11-2008European Saas Forum - Microsoft - Peter de Haas - 18-11-2008
European Saas Forum - Microsoft - Peter de Haas - 18-11-2008
 
Jax Salesforce Labs Day 2019 deck
Jax Salesforce Labs Day 2019 deckJax Salesforce Labs Day 2019 deck
Jax Salesforce Labs Day 2019 deck
 
Introduction to Salesforcedotcom
Introduction to SalesforcedotcomIntroduction to Salesforcedotcom
Introduction to Salesforcedotcom
 
Salesforce Lightning workshop
Salesforce Lightning workshopSalesforce Lightning workshop
Salesforce Lightning workshop
 
Build Apps Visually with Lightning App Builder
Build Apps Visually with Lightning App BuilderBuild Apps Visually with Lightning App Builder
Build Apps Visually with Lightning App Builder
 
Ponakaladinne reddy
Ponakaladinne reddyPonakaladinne reddy
Ponakaladinne reddy
 

Similar to Salesforce Campus Tour 2014 Highlights

Salesforce Campus Tour - Declarative
Salesforce Campus Tour - DeclarativeSalesforce Campus Tour - Declarative
Salesforce Campus Tour - DeclarativeJames Ward
 
Trailhead live - Overview of Salesforce App Cloud
Trailhead live - Overview of Salesforce App CloudTrailhead live - Overview of Salesforce App Cloud
Trailhead live - Overview of Salesforce App CloudJohn Stevenson
 
APP Academy: Build Your First App (October 13, 2014)
APP Academy: Build Your First App (October 13, 2014)APP Academy: Build Your First App (October 13, 2014)
APP Academy: Build Your First App (October 13, 2014)Salesforce Partners
 
Introducing the Salesforce platform
Introducing the Salesforce platformIntroducing the Salesforce platform
Introducing the Salesforce platformJohn Stevenson
 
Elevate london dec 2014.pptx
Elevate london dec 2014.pptxElevate london dec 2014.pptx
Elevate london dec 2014.pptxPeter Chittum
 
[MBF2] Plate-forme Salesforce par Peter Chittum
[MBF2] Plate-forme Salesforce par Peter Chittum[MBF2] Plate-forme Salesforce par Peter Chittum
[MBF2] Plate-forme Salesforce par Peter ChittumBeMyApp
 
Scaling Developer Efforts with Salesforce Marketing Cloud
Scaling Developer Efforts with Salesforce Marketing CloudScaling Developer Efforts with Salesforce Marketing Cloud
Scaling Developer Efforts with Salesforce Marketing CloudSalesforce Developers
 
Elevate Madrid Essentials - Advance Track
Elevate Madrid Essentials - Advance TrackElevate Madrid Essentials - Advance Track
Elevate Madrid Essentials - Advance TrackCarolEnLaNube
 
Integrating with salesforce
Integrating with salesforceIntegrating with salesforce
Integrating with salesforceMark Adcock
 
Architecting Apps for the AppExchange
Architecting Apps for the AppExchangeArchitecting Apps for the AppExchange
Architecting Apps for the AppExchangedreamforce2006
 
Starting A Successful ISV Business with Salesforce (October 13, 2014)
Starting A Successful ISV Business with Salesforce (October 13, 2014)Starting A Successful ISV Business with Salesforce (October 13, 2014)
Starting A Successful ISV Business with Salesforce (October 13, 2014)Salesforce Partners
 
Publish Your First App on the AppExchange
Publish Your First App on the AppExchangePublish Your First App on the AppExchange
Publish Your First App on the AppExchangeSalesforce Partners
 
Kitchener Salesforce Developer Group Event - Introduction to dev ops with Sal...
Kitchener Salesforce Developer Group Event - Introduction to dev ops with Sal...Kitchener Salesforce Developer Group Event - Introduction to dev ops with Sal...
Kitchener Salesforce Developer Group Event - Introduction to dev ops with Sal...Sudipta Deb ☁
 
Force.com Friday: Intro to Force.com
Force.com Friday: Intro to Force.comForce.com Friday: Intro to Force.com
Force.com Friday: Intro to Force.comSalesforce Developers
 
Turbocharging AppExchange
Turbocharging AppExchangeTurbocharging AppExchange
Turbocharging AppExchangedreamforce2006
 
Communities & Dreamforce Key Takeaways
Communities & Dreamforce Key TakeawaysCommunities & Dreamforce Key Takeaways
Communities & Dreamforce Key TakeawaysMagnet 360
 
CloudOps evening presentation from Salesforce.com
CloudOps evening presentation from Salesforce.comCloudOps evening presentation from Salesforce.com
CloudOps evening presentation from Salesforce.comAlistair Croll
 
Using Apache Spark for Intelligent Services by Alexis Roos
Using Apache Spark for Intelligent Services by Alexis RoosUsing Apache Spark for Intelligent Services by Alexis Roos
Using Apache Spark for Intelligent Services by Alexis RoosSpark Summit
 
Salesforce.com Mobile Dev Week Chicago DUG
Salesforce.com Mobile Dev Week Chicago DUGSalesforce.com Mobile Dev Week Chicago DUG
Salesforce.com Mobile Dev Week Chicago DUGTom Gersic
 

Similar to Salesforce Campus Tour 2014 Highlights (20)

Salesforce Campus Tour - Declarative
Salesforce Campus Tour - DeclarativeSalesforce Campus Tour - Declarative
Salesforce Campus Tour - Declarative
 
Trailhead live - Overview of Salesforce App Cloud
Trailhead live - Overview of Salesforce App CloudTrailhead live - Overview of Salesforce App Cloud
Trailhead live - Overview of Salesforce App Cloud
 
APP Academy: Build Your First App (October 13, 2014)
APP Academy: Build Your First App (October 13, 2014)APP Academy: Build Your First App (October 13, 2014)
APP Academy: Build Your First App (October 13, 2014)
 
Introducing the Salesforce platform
Introducing the Salesforce platformIntroducing the Salesforce platform
Introducing the Salesforce platform
 
Elevate london dec 2014.pptx
Elevate london dec 2014.pptxElevate london dec 2014.pptx
Elevate london dec 2014.pptx
 
[MBF2] Plate-forme Salesforce par Peter Chittum
[MBF2] Plate-forme Salesforce par Peter Chittum[MBF2] Plate-forme Salesforce par Peter Chittum
[MBF2] Plate-forme Salesforce par Peter Chittum
 
Scaling Developer Efforts with Salesforce Marketing Cloud
Scaling Developer Efforts with Salesforce Marketing CloudScaling Developer Efforts with Salesforce Marketing Cloud
Scaling Developer Efforts with Salesforce Marketing Cloud
 
Elevate Madrid Essentials - Advance Track
Elevate Madrid Essentials - Advance TrackElevate Madrid Essentials - Advance Track
Elevate Madrid Essentials - Advance Track
 
Integrating with salesforce
Integrating with salesforceIntegrating with salesforce
Integrating with salesforce
 
Architecting Apps for the AppExchange
Architecting Apps for the AppExchangeArchitecting Apps for the AppExchange
Architecting Apps for the AppExchange
 
Starting A Successful ISV Business with Salesforce (October 13, 2014)
Starting A Successful ISV Business with Salesforce (October 13, 2014)Starting A Successful ISV Business with Salesforce (October 13, 2014)
Starting A Successful ISV Business with Salesforce (October 13, 2014)
 
Publish Your First App on the AppExchange
Publish Your First App on the AppExchangePublish Your First App on the AppExchange
Publish Your First App on the AppExchange
 
Kitchener Salesforce Developer Group Event - Introduction to dev ops with Sal...
Kitchener Salesforce Developer Group Event - Introduction to dev ops with Sal...Kitchener Salesforce Developer Group Event - Introduction to dev ops with Sal...
Kitchener Salesforce Developer Group Event - Introduction to dev ops with Sal...
 
Appx for Developers
Appx for Developers   Appx for Developers
Appx for Developers
 
Force.com Friday: Intro to Force.com
Force.com Friday: Intro to Force.comForce.com Friday: Intro to Force.com
Force.com Friday: Intro to Force.com
 
Turbocharging AppExchange
Turbocharging AppExchangeTurbocharging AppExchange
Turbocharging AppExchange
 
Communities & Dreamforce Key Takeaways
Communities & Dreamforce Key TakeawaysCommunities & Dreamforce Key Takeaways
Communities & Dreamforce Key Takeaways
 
CloudOps evening presentation from Salesforce.com
CloudOps evening presentation from Salesforce.comCloudOps evening presentation from Salesforce.com
CloudOps evening presentation from Salesforce.com
 
Using Apache Spark for Intelligent Services by Alexis Roos
Using Apache Spark for Intelligent Services by Alexis RoosUsing Apache Spark for Intelligent Services by Alexis Roos
Using Apache Spark for Intelligent Services by Alexis Roos
 
Salesforce.com Mobile Dev Week Chicago DUG
Salesforce.com Mobile Dev Week Chicago DUGSalesforce.com Mobile Dev Week Chicago DUG
Salesforce.com Mobile Dev Week Chicago DUG
 

More from James Ward

Kotlin Mullets
Kotlin MulletsKotlin Mullets
Kotlin MulletsJames Ward
 
Koober Machine Learning
Koober Machine LearningKoober Machine Learning
Koober Machine LearningJames Ward
 
Introduction to Machine Learning
Introduction to Machine LearningIntroduction to Machine Learning
Introduction to Machine LearningJames Ward
 
Integrating Clouds & Humans with Wearable Apps
Integrating Clouds & Humans with Wearable AppsIntegrating Clouds & Humans with Wearable Apps
Integrating Clouds & Humans with Wearable AppsJames Ward
 
Building Reactive Apps
Building Reactive AppsBuilding Reactive Apps
Building Reactive AppsJames Ward
 
Planet of the AOPs
Planet of the AOPsPlanet of the AOPs
Planet of the AOPsJames Ward
 

More from James Ward (6)

Kotlin Mullets
Kotlin MulletsKotlin Mullets
Kotlin Mullets
 
Koober Machine Learning
Koober Machine LearningKoober Machine Learning
Koober Machine Learning
 
Introduction to Machine Learning
Introduction to Machine LearningIntroduction to Machine Learning
Introduction to Machine Learning
 
Integrating Clouds & Humans with Wearable Apps
Integrating Clouds & Humans with Wearable AppsIntegrating Clouds & Humans with Wearable Apps
Integrating Clouds & Humans with Wearable Apps
 
Building Reactive Apps
Building Reactive AppsBuilding Reactive Apps
Building Reactive Apps
 
Planet of the AOPs
Planet of the AOPsPlanet of the AOPs
Planet of the AOPs
 

Recently uploaded

Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsRizwan Syed
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningLars Bell
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Commit University
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.Curtis Poe
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfAddepto
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsPixlogix Infotech
 
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfHyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfPrecisely
 
Search Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfSearch Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfRankYa
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxNavinnSomaal
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationSlibray Presentation
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLScyllaDB
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clashcharlottematthew16
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyAlfredo García Lavilla
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek SchlawackFwdays
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 3652toLead Limited
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Mark Simos
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteDianaGray10
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...Fwdays
 

Recently uploaded (20)

Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL Certs
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine Tuning
 
DMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special EditionDMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special Edition
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdf
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and Cons
 
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfHyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
 
Search Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfSearch Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdf
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptx
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck Presentation
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQL
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clash
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easy
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test Suite
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
 

Salesforce Campus Tour 2014 Highlights

  • 1. Salesforce 2014 Campus Tour James Ward @_JamesWard
  • 2. Safe Harbor Safe 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 product or service availability, 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, new products and services, 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, the outcome of any litigation, risks associated with completed and any 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 year and in our quarterly report on Form 10-Q for the most recent fiscal quarter. These documents and others containing important disclosures 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 presentations, 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.
  • 4. World’s #1 CRM company* World’s most admired software company #1 most admired in software #7 best company to work for World’s most innovative company 2011 • 2012 • 2013 • 2014 4TH YEAR IN A ROW! *Source: IDC, Worldwide CRM Applications 2014-2018 Forecast and 2013 Vendor Shares, Doc #248875, June 2014 Image FPO Celebrating 15 Years of Customer Success
  • 5. 1% Time • Equity • Product 530,000+ Hours Service 20,000 Non-profit organizations $53M+ Grants foundation
  • 6. The Third Wave of Computing
  • 7. Server Mainframe LAN / WAN SNA Terminal Client customer transactions connected things Cloud LTE Mobile “Third Wave” of Computing Thousands Millions Billions Trillions
  • 8.
  • 9.
  • 10. But Most Companies Are Disconnected From Customers Service Agents Your Company Salespeople Your Customers Your Partners
  • 11. Become a Customer Company Analytics for the rest of us Build mobile apps faster Sell, Service, Market & Engage in a whole new way Connect with your customers in a whole new way
  • 12. Salesforce1: A New Customer Platform for the Future Salesforce1 App Salesforce1 Platform APIs Force.com Heroku1 Salesforce1 Platform Services ExactTarget Fuel
  • 13. Build Amazing Apps and Connect Everything. Build Innovative Customer apps Automate Processes with Employee Apps Connect Everything
  • 14. Virgin America Connects Every Employee with a Social Intranet Branded social intranet built mobile first Key business metrics customized for each ‘teammate” Chatter collaboration for every department Business users update content in real-time
  • 15. Trunk Club Connects Customers & Employees with Mobile Apps Customer facing mobile app built on Heroku Employee mobile app built on Force.com for order fulfillment Integrated sales, service & marketing built on the Salesforce Platform
  • 17.
  • 18. Demand is Growing Across Multiple Roles 60% 159% 90% Force.com Developer Technical Architect Solutions Architect Principal Consultant Business Analyst Source: Hire On-Demand http://www.hireon-demand.com of companies moving to cloud Demand growth for all Salesforce Talent Demand growth for Salesforce Developers
  • 19.
  • 20. Salesforce Skills Earn Top Paying Jobs Salary Average Job Silicon Valley National Force.com Data Analyst $95k $65k Salesforce.com Administrators $100k $80k Global Salesforce Administrators $120k $95k Force.com Developers $125k $98k Certified Force.com Developers $135k $115k Sr. Force.com Developers $150k $125k Force.com Architects $170k $140k Force.com Solution Architects $200k $165k Salesforce CRM Business Analysts $140k $110k Salesforce CRM Program Managers $185k $135k Salesforce Implementation Consultants $220k $175k Source: Nelson Technologies, November 2013 http://www.nelsontechnology.com
  • 21. Campus Events Internships & Recruiting Curriculum Mentorship & Experience Classroom speakers Workshops Hackathons Business Competitions University Conferences Student User Groups Company visits/tours Internship Program Recruitment Courseware Curriculum Student/Faculty licenses Training & certification Capstone projects Entrepreneurship Research projects Student Ambassadors Academic Program Components
  • 22. Salesforce Campus Tour Oct 24-Nov 14th 1 2 3 Join Live Telecast on November 12, 2014 Compete in Salesforce1 Challenge to win an Xbox Attend a Campus Event www.salesforcecampustour.com
  • 23. Keep Learning With Trailhead developer.salesforce.com/trailhead
  • 24. Salesforce Certifications Key Skills Preparation • Manage users, data, and security • Maintain and customize Sales Cloud and Service Cloud applications • Build reports, dashboards, and workflow Administration Essentials for New Admins (ADM 201) FREE Self-paced Training: • certifiedondemand.com • Leverage advanced administration • Optimize and extend Sales Cloud and Service Cloud applications • Design advanced reports, dashboards, and business process automation Administration Essentials for Experienced Admins (ADM-211) FREE Self-paced Training: • Force.com Fundamentals Book • Build custom applications using point-and-click • Design the data model, user interface, business logic, and security for custom applications • Design reports, dashboards, and portals Building Applications with Force.com and Visualforce (DEV401) FREE Self-paced Training: • Udacity.com • Develop custom applications using Apex & Visualforce • Manage the development lifecycle and environments • Write and execute comprehensive test plans Apex and Visualforce Controllers (DEV501) FREE Self-paced Training: • Introduction to Visualforce (YouTube) • www.sfdc99.com
  • 26. Salesforce FutureForce Program salesforce.com/futureforce
  • 27. Lets Build an App! https://ccoenraets.github.io/salesforce-developer-fasttrack/
  • 28. Two Approaches to Development Declarative Approach Programmatic Approach Visualforce Pages Visualforce Components Apex Controllers Apex Triggers Metadata API REST API Bulk API Page Layouts Record Types Formula Fields Validation Rules Workflows and Approvals Custom Objects Custom Fields Relationships User Interface Business Logic Data Model
  • 30. Salesforce Objects Similar to Tables (with more metadata) Standard objects out-of-the-box • Account, Contact, Opportunity, … You can add custom fields to standard objects •Rating__c, Twitter__c, … You can create custom objects • i.e. Speaker__c, Session__c, Hotel__c Custom objects have standard fields • Id, Owner, LastModifiedDate, LastModifiedBy, …
  • 31. Rich Data Types Auto Number Formula Roll-Up Summary Lookup Master-Detail Checkbox Currency Date Picklist (multi select) Text Text Area Text Area (Long) Text Area (Rich) Text (Encrypted) URL  Date/Time  Email  Geolocation  Number  Percent  Phone  Picklist
  • 32. Modeling One-to-Many Relationships An expense has one expense report An expense report has many expenses
  • 33. Modeling Many-to-Many Relationships A speaker can have many session assignments A session can have many speaker assignments
  • 34. Id All objects are given an Id field Globally unique Id is assigned at record creation "Primary key" used to access records
  • 35. Record Name Human readable / logical identifier Text or Auto Number ("Intro to Apex" or SP-00002) Uniqueness not enforced
  • 36. When you create an Object, you get… A CRUD user interface Instant Mobile App access (Salesforce1) A REST API Rich Metadata Indexed search
  • 37. Lab: Creating the Data Model
  • 39. What's an Application? Group of tabs that provide easy access to related features Salesforce comes with standards apps •Sales, Call Center, Marketing, … You can create your own apps Tabs can be: •Object pages, Visualforce pages, Canvas app
  • 40. Page Layouts Let you customize all aspects of the layout, related lists, …
  • 41. Lab: Creating the Application
  • 43. What is Apex? Salesforce platform language Cloud based compiling, debugging and unit testing Object-oriented Strongly typed Classes and Interfaces Similar to Java
  • 44. Apex and Java Same Primitive data types Flow control (if, for, while, …) Exception handling Collections: Lists, Sets, … Different Case insensitive Single quote strings: 'Joe' Id data type Built-in support for data access
  • 45. Apex Class public class MortgageCalculator { public Double amount { get; set; } public Double rate { get; set; } public Integer years { get; set; } public Double calculateMonthlyPayment() { Integer months = years * 12; Double monthlyRate = rate / (12 * 100); return amount * (monthlyRate/ (1 - Math.pow(1 + monthlyRate, -months))); } }
  • 46. Development Tools Developer Console Force.com IDE (Eclipse Plugin) Mavens Mate (Sublime Plugin) Force CLI
  • 47. Developer Console Browser Based IDE Create Classes, Triggers, Pages Execute Apex Anonymously Execute SOQL Queries Run Unit Tests Review Debug Logs
  • 48. Accessing Data with SOQL and DML
  • 49. SOQL Salesforce Object Query language Similar to SQL Streamlined syntax to traverse object relationships Built into Apex
  • 50. SELECT Id, Name, Phone FROM Contact
  • 51. SELECT Id, Name, Phone FROM Contact WHERE Phone <> null
  • 52. SELECT Id, Name, Phone FROM Contact WHERE Phone <> null AND Name LIKE '%rose%'
  • 53. SELECT Id, Name, Phone FROM Contact WHERE Phone <> null AND Name LIKE '%rose%' ORDER BY Name
  • 54. SELECT Id, Name, Phone, Account.Name FROM Contact WHERE Phone <> null AND Name LIKE '%rose%' ORDER BY Name
  • 55. SELECT Id, Name, Phone, Account.Name FROM Contact WHERE Phone <> null AND Name LIKE '%rose%' ORDER BY Name LIMIT 50
  • 56. Executing SOQL in the Developer Console
  • 57. Inlining SOQL in Apex Integer i = [select count() from Session__c];
  • 58. Inlining SOQL in Apex String level = 'Advanced'; List<Session__c> sessions = [SELECT Name, Level__c FROM Session__c WHERE Level__c = :level];
  • 59. Inlining SOQL in Apex List<String> levels = new List<String>(); levels.add('Intermediate'); levels.add('Advanced'); List<Session__c> sessions = [SELECT Name, Level__c FROM Session__c WHERE Level__c IN :levels];
  • 60. Inlining SOQL in Apex for (Speaker__c s : [select email__c from Speaker__c]) { System.debug(s.email__c); }
  • 61. insert Session__c session = new Session__c(); session.name = 'Apex 101'; session.level__c = 'Beginner'; insert session;
  • 62. insert Session__c session = new Session__c( name = 'Apex 201', level__c = 'Intermediate' ); insert session;
  • 63. update String oldName = 'Apex 101'; String newName = 'Apex for Beginners'; Session__c session = [SELECT Id, Name FROM Session__c WHERE Name=:oldName]; session.name = newName; update session;
  • 64. delete String name = 'Testing 501'; Session__c session = SELECT Name FROM Session__c WHERE Name=:name]; delete session;
  • 66. Trigger Apex code executed on database events Before or after: • Insert •Update •Delete •Undelete
  • 67. Before or After? Before •Update or validate values before they are saved to the database •Example: Prevent double-booking of a speaker After •Need access to values set by the database (Id, lastUpdated, …) •Example: Send speaker confirmation email
  • 68. Bulk Mode Trigger API designed to support bulk operations •Data Import, Bulk API, etc. Triggers work on bulk of records, not single records Context variables provide access to data: •Trigger.old and Trigger.new (List) •Trigger.oldMap and Trigger.newMap (Map)
  • 69. Example Trigger on Account (after insert) { for (Account account : Trigger.new) { Case case = new Case(); case.Subject = 'Mail Welcome Kit'; case.Account.Id = account.Id; insert case; } }
  • 71. Model-View-Controller Model Data + Rules Controller View-Model interactions View UI code  Separation of concerns – No data access code in view – No view code in controller  Benefits – Minimize impact of changes – More reusable components
  • 72. Model-View-Controller in Salesforce View • Metadata • Standard Pages • Visualforce Pages • External apps Controller • Standard Controllers • Controller Extensions • Custom Controllers (all Apex) Model • Metadata • Objects • Triggers (Apex) • Classes (Apex)
  • 73. What's a Visualforce Page? The View in MVC architecture HTML page with tags executed at the server-side to generate dynamic content Similar to JSP and ASP Can leverage JavaScript and CSS libraries
  • 74. Expression Language Anything inside of {! } is evaluated as an expression Same expression language as Formulas Same global variables are available. For example: • {!$User.FirstName} {!$User.LastName}
  • 75. Example 1 <apex:page> <h1>Hello, {!$User.FirstName}</h1> </apex:page>
  • 76. Example 2 <apex:page standardController="Contact"> <apex:form> Standard controller <apex:inputField value="{!contact.firstname}"/> <apex:inputField value="{!contact.lastname}"/> <apex:commandButton action="{!save}" value="Save"/> </apex:form> </apex:page> object Function in standard controller
  • 77. Standard Controller A standard controller is available for all objects •You don't have to write it! Provides standard CRUD operations •Create, Update, Delete, Field Access, etc. Can be extended with more capabilities (next module) Uses id in URL to access object
  • 78. Component Library Presentation tags – <apex:pageBlock title="My Account Contacts"> Fine grained data tags •<apex:outputField value="{!contact.firstname}"> •<apex:inputField value="{!contact.firstname}"> Coarse grained data tags •<apex:detail> •<apex:pageBlockTable> Action tags •<apex:commandButton action="{!save}" >
  • 79. Email Templates Embedded in Page Layouts Generate PDFs Custom Tabs Mobile Interfaces Page Overrides Where can I use Visualforce?
  • 81. Custom Controllers Custom class written in Apex Can override standard behavior Can add new capabilities
  • 82. Defining a Controller Extension <apex:page standardController="Speaker__c" extensions="SpeakerCtrlExt"> Provides basic CRUD Overrides standard actions and/or provide additional capabilities
  • 83. Anatomy of a Controller Extension public class SpeakerCtrlExt { private final Speaker__c speaker; private ApexPages.StandardController stdController; public SpeakerCtrlExt (ApexPages.StandardController ctrl) { this.stdController = ctrl; this.speaker = (Speaker__c)ctrl.getRecord(); } // method overrides // custom methods }
  • 84. All done. Take a survey! http://bit.ly/devdayutaustin