Wilson Mar bio photo

Wilson Mar


Calendar YouTube Github


Get up and running on Trailhead and Developer tools

US (English)   Norsk (Norwegian)   Español (Spanish)   Français (French)   Deutsch (German)   Italiano   Português   Estonian   اَلْعَرَبِيَّةُ (Egypt Arabic)   Napali   中文 (简体) Chinese (Simplified)   日本語 Japanese   한국어 Korean


Here are steps and information for those new to Salesforce to get started working on the system. This also aims to provide succinct lists for experienced Salesforce readers.

“PROTIP:” in this document marks the unique contribution of this website, providing you advice available nowhere else.

Browsers using SaaS

Salesforce is one of first companies to provide software completely over the public internet, with users using internet browsers such as Internet Explorer, Chrome, Firefox.

Salesforce offers software as a web service, which many refers to using the acronym “SaaS”. BTW, Montclare.com named Salesforce the #1 most “successful” SaaS company in the world.

PROTIP: While there is no installing custom software (from Salesforce) on each user’s machine, users can use whatever internet browser is installed with their machine. That would be Internet Explorer that comes with Windows and Safari on Macs. But in practice many users install Firefox and Chrome browsers.

DEVDOC: In Supported Browsers some Internet Explorer support is limited. Firefox needs to be configured.

https://resources.docs.salesforce.com/214/latest/en-us/sfdc/pdf/salesforce_technical_requirements.pdf Requirements

Free Trailhead training

Most other software companies try to make the most money they can by putting their training material behind a paywall. So learning SAP and Oracle takes many thousands of dollars. This limits how many people can effectively learn their product.

Not so with Salesforce. Salesforce as a company offers classes addressing each job role and certification through its Salesforce University (@SalesforceU). For example, $3,750 for the 5-day course. PROTIP: Spending several days strait sitting in a class may seem like “drinking from a firehose”.

Salesforce Trailhead on-line training is both in-depth and offered free, with unlimited time on servers. This has enabled Salesforce users to be among the best trained of any software ecosystem.

Different ways to get org instances

Partners of Salesforce can use Trialforce to provision and manage free trial and demo Salesforce organizations holding apps and components. Trialforce enables the configuration of trials to specific specifications with relevant sample data, and even customize the look and feel to reflect company branding.

NOTE: Salesforce partners manage multiple member orgs using the Environment Hub.

See https://partners.salesforce.com/s/education/general/Partner_Orgs

ISVs (Independent Solution Vendors) use the ISVForce: See https://developer.salesforce.com/docs/atlas.en-us.packagingGuide.meta/packagingGuide/packaging_intro.htm

Get Trailhead Training Account

  1. Obtain a Trailhead account for FREE tutorials with unlimited server time:



  2. Click the green “Sign Up” button at the upper-right corner or “Start learning for free” in the middle of the screen.

  3. Click “Google” to use your Gmail or “LinkedIn” to use your LinkedIn.com account. Alternately, create a password within Salesforce.

    PROTIP: Sign up for Trailhead with a personal Gmail account instead of company email so you’ll be able to sign in no matter where you work in the future.

    You can later merge accounts, but that sometimes results in the loss of history information.

  4. Check “Remember me” to have the browser remember your account name (not password).


  5. Click Trailmixes. Each Trailmix recommends a sequence of single web pages and Trailhead modules. At last count there were 60 of them.

  6. Scroll down to click Get started with Trailhead.

  7. Click the Link to read a Medium.co article about Trailhead and Trailblazers.

  8. Begin your first Trailhead module:

    Trailhead Module: Trailhead Basics

    How Trailhead works

    Learning topics are organized into modules, which are broken up into units.

    Trails group modules to provide guided learning paths suited to specific roles or needs.

    Earn points when you finish each unit by completing a quiz or challenge in a Salesforce org. If you answer wrong, less points are earned for each additional attempt.

    Trailhead tutorials are great because of their quizzes (challenges).

    “Challenges” gives you a set of requirements that you have to figure out how to meet on your own. A project lays out step-by-step instructions for you to follow, then validates that you did everything correctly.

    PROTIP: Before you begin answering quiz questions, to avoid needing to having your answers wiped away because you timed out, make sure you’re logged by pressing the browser Refresh icon or pressing command+R on the Mac or Ctrl+R on Windows PCs.

    superbadges challenge you to implement a feature or solution in an org (a Trailhead Playground) without step-by-step instructions.

    More points get you higher rank. PROTIP: Each rank takes double the effort from the previous rank. “Ranger” is the highest rank, requiring 50,000 points from at least 100 badges. #TrailheadRanger

    Trailhead profiles

    There are enough Trails for Preethi Harris to reach #DoubleRanger


    Some sample profiles from among my list of Salesforce Rock Stars:

    Each profile includes how many trailhead modules and trails completed, and the points earned. Skills distribution by category:


    Profiles don’t list certifications exams passed.

    QUESTION: Those who have been designated as a “MVP” by Salesforce also get identified in their profile?

    Custom Trailmix

    PROTIP: You can create your own custom trailmix on myTrailhead, in different languages. For example:

    Plan to Pace Yourself

    Here’s an example of a progression:

    Trail/Project Hours Points
    Intro. to Trailhead 2 500
    Module: Salesforce Platform Basics Get introduced to the platform, navigate use cases, and build custom functionality. 2 300
    Trail: Admin Beginner 7 8,200
    Module: Data Modeling - -
    Module: Visualforce Basics - -
    Trail: Admin Intermediate 13 8,200
    Take Admin 1 exam - -
    Advanced Admin Trail - -
    Take Advanced Admin exam - -
    Trail: Developer Beginner 15 19,400
    Trail: Developer Intermediate 23 9,100
    Developer Trail - Mobile SDK 6.8 3,000
    Build a Conference Management App 3 550
    Build Suggestion Box App 1.9 ?
    Quick Start: Lightning Components 0.5 150
    Quick Connect: Lightning Connect 0.3 100
    Total: 50 45,000

    Text to speech

    Trailhead content are mainly text. There are a few videos, such as the Who Sees What for Lightning Experience and Salesforce Classic.

    PROTIP: Use a program that generates text to speech. Macs has it built-in, and just need to be enabled in Apple System Preferences > Accessibility > Speech. macos-speech-key-398x58

    You can change the default option+` (back tick) activation key sequence.

    PROTIP: I like the proper British female voice “Kate”, who is like Mary Poppins reading to me. For some reason, I am less distracted by minor pronouciation imperfections by American voices rather than the Queen’s English.


    If you have the money, several video tutorials are available from Pluralsight, Lynda/LinkedIn, etc.

    But don’t neglect completing Salesforce trailheads. Here’s why…

Trailhead Playground

You will need an “org” (database) to use which is different than the “productive” (real) environment.

A Trailhead Playground is an org you can use to complete hands on challenges, and try out new features and customizations. It comes with set of Trailhead-specific data (a set of sample contacts, etc.) that you can use when completing challenges, and a pre-installed unmanaged package that we use to test your hands-on challenges. Trailhead Playgrounds have some limits, but for the most part they give you the same customization options as a production org.

PROTIP: Salesforce is great because of its free Trailhead tutorial that are thorough.

PROTIP: For a list of your Hands-on Orgs, go to https://trailhead.salesforce.com, click the picture at the upper-right corner, and select Settings.

  1. Install the Google Chrome browser (if you haven’t already done so).

  2. Open Chrome and click the icon at the upper-right corner with the three dots for a menu to select “New incognito window”.

    Alternately, clear all cookies from your browser. On Chrome, click the three dots, Settings, scroll down to click Advanced, Clear browsing data, Clear Data.

  3. Highlight and copy this URL, then paste or type in this URL in the Address field:


    PROTIP: Using an icognito screen ignores all the previous cookies that may confuse the website.

  4. Login using the email associated with the Trailhead Username you wish to use.

  5. If the “Verify Your Identity” page appears about a text to your phone, go to your phone and get the code to type into Google Chrome.

    PROTIP: Press command+` (back tick at the upper-left keyboard) to switch among Chrome windows.

  6. At the bottom of the Trailhead Module page there is often a blue “Launch” button:


    PROTIP: Remember to select the Trailhead Playground before clicking the Launch button. You can crate multiple Trailhead Playground by selecting “Create a Trailhead Playground”. Over time learners have more than one Playground.

    If you don’t see the Launch button because you’ve passed the questions before, click the link to repeat the questions.

  7. Click Launch for the selected Playground.

    PROTIP: To quickly shift between tabs on a browser, use keyboard shortcut keys control+tab and control+shift+tab on the Mac.

    PROTIP: I stick a small physical dot (from a glue gun) near the control and command keys so I can find them without looking at the keyboard.

    PROTIP: Notice that when in a Playground, the browser’s URL is different than the “productive” (real) environment (such as “na53”). For example:


    At the upper-right corner, there is an avatar instead of your picture because you don’t own Playground orgs.


    PROTIP: When you time-out while in a Playground, don’t use your Salesforce account credentials to sign back in. Instead, close the page and Launch the Playground again from the Trailhead page.

    You can set a password to the Username associated with each Trailhead Playground.

  8. Click the avatar.
  9. Click Settings.

    Notice the email address to the right of label Username: matches the domain name of the URL, such as: “wilsonmar@resourceful-moose-263556.com”.

    Lightning UI Apps and Items

    Salesforce currently stores data for all product offerings (all SaaS in the cloud) within a single “monolithic” database.

  10. Click the “cog” icon to select Setup:


    BTW, app logos that appear at the upper left should be no larger than 300 pixels wide by 55 pixels high. Adjust the number of colors in .gif or .jpg so they are under the 20kb size limit.

    BTW, Colors in Salesforce screens

    At the upper-left is the App Launcher icon and the current app.

  11. Click the app launcher icon for a list of apps and items.

  12. Scroll down for the “All Items” list:


    Click the picture above here for a larger image in a new window.

    Items on the page is a mixture of objects and actions.

  13. Scroll back up to the top of the pop-up.


    Click the picture above here for a larger image in a new window.

    The list apps shown above are “Managed apps” developed by Salesforce itself.

    The “Sales” app is the base CRM (Customer Relationship Management) app. PROTIP: CRM (Customer Relationship Management) is the Salesforce company’s stock market symbol. CRM is the main offering from Salesforce as a company.

    “AppExchange apps” are developed by 3rd parties, usually an ISV (Independent Software Vendor) Salesforce partners. AppExchange is the name of the marketplace where such apps are available, either free or for a fee.

Einstein Trailhead Playground

  1. Go to the sign-up page for a Trailhead Playground with Einstein Prediction Builder at


  2. Fill out the form completely. In the Email field, enter an active email address because a confirmation email will be sent there.

  3. In the Username field, enter a email address unique among all other Trailhead users.

    PROTIP: It doesn’t have to be a valid email account. For example, I used “wilsonmar@einstein.com”.

  4. Click Sign me up. A confirmation message appears.
  5. Check your spam folder if you don’t see the email.
  6. When you receive the activation email, open it and click “Verify Account”.
  7. Change (set) your password and enter a security answer. Write it down.
  8. Click Change Password to get logged in to the Einstein Trailhead Playground’s Setup page.

  9. In the Trailhead Playground picklist, select “Log into a Developer Edition”.
  10. Login to the Username (such as my “wilsonmar@einstein.com”) and the password you assigned.
  11. Among the email associated with the Username, highlight and copy the Verification Code.
  12. Paste the verification code in the “Verify Your Identity” dialog.
  13. Click “Allow”.
  14. Click “Yes! Save It.”
  15. Scroll down to see your Einstein Username being the default.
  16. Click “Launch”.

Adding apps to Trailhead

We next look into adding one of each to your Trailhead Playground.

I got confused with the Install Apps and Packages in Your Trailhead Playground unit of the Trailhead module: Trailhead Playground Management.

PROTIP: I recommend following this article mentioned in the Superbadges tutorial.

To add a managed app such as the Salesforce Dreamhouse” app:

  1. In a new browser window, go to the “home page” for the Dreamhouse managed package:



    Notice the URL has a “productive” domain name for doing real work, separated from the rest of the URL in this example:


    PROTIP: Don’t click on the blue “Install” button or the app will install in the wrong domain (“na31” in the example above).

    What we want is to install in a Playground domain.

  2. Highlight and copy (to your invisible operating system Clipboard) the part of the URL string AFTER the domain, for example extract:

  3. Exit out from that browser window.

  4. Switch back to the Playground window.
  5. Press command+R to refresh the screen to make sure the session is still active.
  6. Construct the URL necessary by pasting it after the Playground domain name, such as:


    PROTIP: This “hack” works because somehow Salesforce treats the URL as a “declarative” statement of what is desired rather than as a usual read-only request URL.

  7. Press Enter.
  8. Now click Install.
  9. Check the box to the left of “Yes, grant access to these third-party web sites”.
  10. Click Continue.
  11. Wait for the “Installing and granting access to admins Only…” message to turn to “Installation Complete!”.
  12. Click Done.

    To verify what was included in the app or package you installed:

  13. Click the cog icon and select Setup. Another browser window opens.
  14. In Quick Find, type “Installed Packages” and select Installed Packages in the Apps list.
  15. Click the “Dreamhouse” app Package Name in the list.
  16. Click “View Components” to see all components of the package.
  17. Close that browser window.

Chrome Extensions


Clear fresh developer edition org

Some tutorials ask that you remove sample data. Based on this page and https://help.salesforce.com/articleView?id=deleting_trial_data.htm&type=5

  1. Go to Setup, Administration Setup, Manage Users, Profiles, System Administrator
  2. Click Edit
  3. Under “Custom App Settings”, change the “Default” to something other than Force.com
  4. Click Save
  5. Go to Setup, App Setup, Create, Apps
  6. Delete Force.com
  7. Go to Setup, App Setup, Create, Tabs
  8. Delete “Start Here”
  9. Go to Setup, App Setup, Develop, Pages
  10. Delete “Start Here”
  11. Go to Setup, App Setup, Develop, Classes
  12. Delete startHereController and XMLDom.

Now you can https://apex-commons.github.io/contribute/

Help Topics of conversation

  1. If get stuck, go through the trail again on another Playground. This struggle is part of the learning process.

  2. If you need help from others, first see if someone asked questions by clicking this at the bottom-right of each Trailhead Module page:


  3. Click “Help each other”. Trailhead offers this selection of product interests for “Answers”. Note the web page is in the Trailblazer Community Success Cloud URL https://success.salesforce.com/answers

    • Collaboration
    • Configuration & Data Management
    • CPQ and Billing
    • Customer Service & Support
    • Desktop Integration
    • Einstein Analytics
    • Email
    • Email Marketing
    • Journey Management
    • Mobile
    • Mobile Messaging
    • Packaging, Uploading & Installing Apps
    • Reports & Dashboards
    • Sales & Marketing
    • Security
    • Social Marketing
    • Trailhead Challenges
    • Additional products

    You will learn how to work with each of the above in various Trailhead modules.

  4. Click “Trailhead Challenges”.
  5. Type in your question in the field containing “What do you want to know?”, the press Enter.


Developer Account

  1. https://developer.salesforce.com/signup

  2. Fill out your information and upload your picture.

    Create a Developer Edition organization

    Even if you already have Enterprise Edition, Unlimited Edition, or Performance Edition, use Developer Edition for developing, staging, and testing your solutions against sample data to protect your org’s live data, especially for applications that insert, update, or delete data (as opposed to just reading data).

Developer Console

There is a Trailhead Module: https://trailhead.salesforce.com/en/modules/developer_console

  1. To open “Developer Console” for an org, click the “cog” icon to select “Developer Console”.


    See https://help.salesforce.com/articleView?id=code_dev_console.htm&type=5

  2. A headless browser window pops up with this tabs pane at the bottom:


    PROTIP: BLAH: The Developer Console doesn’t have version control or conflict resolution like DX does.

    The main pane displays the source code editor for the current workspace, which is a collection of resources (files).

  3. Flip back and forth to other Chrome windows using command+tilde(at the upper-left corner of the keyboard).

  4. Click menu item File, New for a list of what the Console deals with:


    • Apex classes
    • Visualforce pages
    • SOQL queries
    • Lightning components

  5. Copy text from another place and paste it in the editor window.

    PROTIP: Save code in a Git repository (such as GitHub) so that you can go back to any point in time.

  6. To save, press Ctrl+S.

    PROTIP: A common error is forgetting to save before execute. Execute without saving to see what the error is (such as “Unread”).

  7. Press control+E to Debug Open Execute Anonymous Window.
  8. Drag the top gray part of the “Enter Apex Code” window to position it on your screen.

    PROTIP: Connect additional monitors so you can have the Developer Console on one screen, and “Execute Anonymous Window” in another.

  9. In the new “Enter Apex Code” window, if there is text left over from the previous session, click on it and press command+A then delete key to delete it.

  10. In the new “Enter Apex Code” window, copy the following and paste it this:

    Account a = new Account(Name='Test Trigger');
    insert a;
  11. Click Execute.
  12. In the Log tab at the bottom of the screen, click the top entry in blue.
  13. Check “Debug Only” to see USER_DEBUG event Details. For example, “Hello World!” or “Email sent successfully”.
  14. PROTIP: At the top among orange tabs, so history does not hide tabs about source code, click the X to the right of the “Log executeAnonymous…” tab.

REST API Workbench

This utility is similar to Postman running on Chrome browser.

See https://trailhead.salesforce.com/modules/api_basics/units/api_basics_rest

  1. https://workbench.developerforce.com/


  2. For Environment, select Sandbox (not Production).
  3. For API Version, select the highest available number.
  4. Check “I agree to the terms of service.”
  5. Click “Login with Salesforce” for a to pop-up a window with a URL such as this:


VS Code Extensions

For users of Microsoft’s VS Code IDE, Salesforce extensions for Visual Studio Code provide syntax highlighting and code completion.

  1. Read https://developer.salesforce.com/tools/extension_vscode
  2. Install VS Code (see https://code.visualstudio.com/)

    brew install –cask visual-studio-code

  3. Launch “/Applications/Visual Studio Code.app” or from Terminal by typing “code”.
  4. Within Code, on the bottom of the left toolbar, click the Extensions cog icon for “Manage Extensions”.
  5. Type on top of the “Search Extensions” for “Salesforce Extensions for VS Code”. (No need to press Enter.)
  6. Click the green “Install” button for the item with the name.
  7. When the blue “Reload” button appears, click it to re-launch VS Code.
  8. See the video at https://www.salesforce.com/video/1768045/ on how to master Salesforce DX using VSCode:

    • Press command+P for the Command Pallette, then “sfdx”.

    QUESTION: Is there a script that can do the above?

    Source for this extention is on GitHub at https://github.com/forcedotcom/salesforcedx-vscode

    • https://github.com/forcedotcom/salesforcedx-vscode/wiki/Tips-and-Tricks
    • https://github.com/forcedotcom/salesforcedx-vscode/wiki/Troubleshooting

    Salesforce CLI Integration for Visual Studio Code

  9. https://marketplace.visualstudio.com/items?itemName=salesforce.salesforcedx-vscode-core
  10. Click “Install”.

    Per https://github.com/forcedotcom/salesforcedx-vscode/wiki/Tips-and-Tricks

  11. Open ~/.bash_profile to add:

    alias code-sfdx='code --extensions-dir ~/.sfdx-code'

See: http://developer.salesforce.com/blogs/2018/06/salesforce-for-vs-code-apex-replay-debugger-and-more.html Salesforce for VS Code: Apex Replay Debugger and More June 11, 2018 By Nathan Totten

Force.com Eclipse IDE

  1. Download and install the Java Developer (free) edition of Eclipse. It comes with the “EGit” plugin.
  2. Open Eclipse
  3. Identify yourself with GitHub credentials.
  4. Add the Force.com IDE plugin.
  5. Window > Open Perspective > Git repository exploring.
  6. Create a new Force.com Project (with a username and Security Token to the Trailhouse org)

    Install http://bit.ly/ApexWorkbookPackage1_4 (Apex Workbook by Sbob)

Eclipse IDE Known Issues

Developer Tools


https://developer.salesforce.com/blogs/engineering/2016/01/apex-interactive-debugger.html Apex Interactive Debugger

Other IDEs and Editors

The choice of editors is covered in

* Pluralsight video course: Apex Absolute Beginning Guide to Coding Salesforce

MavensMate is no longer maintained as of 2017.

Illumated Cloud is licensed to add-on to IntelliJ IDEA Java CE IDE. It provides complete Apex-aware completion (pulling documentation in). It’s smart because it extracts metadata from your Org into an offline symbol table to feed auto code completion. It also has an (offline) interactive debugger that can run to cursor. Git integration.

Welkin’s Suite


Cloud9 was acquired by Amazon on July 14, 2016. There is no additional charge for using it for AWS. For Salesforce, there is a 7-day trial. Docs


Trail: Learn Privacy and Data Protection Law:

Mobile Apps

“Salesforce1 Platform” is the brand name to emphasize that mobile capabilities are automatically provided when apps are created. “mySalesforce” refers specifically to mobile apps. The brand name first appeared in 2014.

Eugene Oksman (@oksman (https://twitter.com/oksman) and Akhilesh Gupta (@akhileshgupta (https://twitter.com/akhileshgupta)) lead the Mobile SDK team at Salesforce.com.

On Trailhead:

Salesforce Authenticator

I recommend that you use Google Authenticator instead so you only need to have one app for many accounts.

  1. On your smartphone install the “Salesforce Authenticator” app.

  2. Enable backups by typing in your phone number. The response is a text message (from 288-401):

    Ready to verify your mobile number in the Salesforce Authenticator app? SalesforceAuthenticator://verify-number?t=FvdRiT

  3. Press the link.
  4. Type a 4-digit passcode.

People behind Trailhead

  • #Trailhead
  • Chris Duarte (@TheChrisDuarte) - Managing Editor of #Trailhead
  • Sandeep Bhanot (@cloudysan) - #Trailhead Product Owner/ Evangelist

More learning

https://trailhead.salesforce.com/en/modules/search_solution_basics Search Solution Basics [45 mins] +300

More about Salesforce

This is one of a series about Salesforce

  1. Salesforce index

  2. Salesforce Ohana (about the Salesforce company, offices, mascots, emojis, and store)
  3. Salesforce Glossary (of acronyms)
  4. Salesforce Events (Conferences, local Meetups, ) to meet people face-to-face
  5. Salesforce Exhibitors (at Dreamforce)
  6. Salesforce Onboarding (Trailhead and IDEs)
  7. Salesforce Rock Stars (and influencers)

  8. Salesforce Offerings (Clouds, Industries, Domains, GitHub, editions, pricing, features, versions)
  9. Salesforce Certifications (training and exams)
  10. Salesforce Projects, Superbadges, and Sample Apps
  11. Salesforce myTrailhead for custom Trailhead content

  12. Salesforce Project Plans
  13. Salesforce Jobs (within Salesforce, with partners, etc.)
  14. Salesforce User Roles and Personas

  15. Salesforce Apps (in AppExchange)
  16. Salesforce Alexa
  17. Salesforce Heroku (external apps)
  18. Salesforce DX (Developer eXperience)

  19. Salesforce Non-Profit support
  20. Salesforce NPSP (Non-Profit Success Pack) performance (with Gatling)

  21. Salesforce Data Management
  22. Salesforce Einstein
  23. Salesforce Selenium (test automation)