SlideShare ist ein Scribd-Unternehmen logo
1 von 18
Downloaden Sie, um offline zu lesen
Live Coding with Salesforce Developers
Oct 24, 2019
Code Reviews for fun and commit
with Ryan Headley and Kevin Poorman
Have Questions?
● Don’t wait until the end to ask your question!
● Technical support will answer questions starting now.
● Respect Q&A etiquette
● No need to repeat questions. The support team is working their way
down the queue.
● Please take the pop-up survey at the end of the webinar.
● Close out of the webinar and rejoin if you experience audio/visual issues.
This session is being recorded! The video will be posted to YouTube & the
session recap page (same URL as registration).
Salesforce Developers
Salesforce Developers
Salesforce Developers
@salesforcedevs
Go Social
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 Website.
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.
Statement under the Private Securities Litigation Reform Act of 1995
Forward-Looking Statement
Introductions
What’s a code review?
Why code review?
What to ask?
Let’s do a code review
Recap
Talking about what we’re gonna talk about. #meta
What’re we coding today?
Ryan Headley
Developer Evangelist, Salesforce.com
I like sloths.
Live Coding with Ryan Headley & Kevin Poorman
Kevin Poorman @codefriar
Lead Member of Technical Staff, Education Data
Architecture, Salesforce.org
Fronts everyone’s favorite band: Apex and the
Limits
Code Review
Process of asking questions
Not intended to shame
Others’ code
Everyone knows they should, but ….
Code Review
More eyes on code means more chances to:
Catch
Learn
Mentor
Why?
Code Review
Does this code compile without PMD warnings?
Does this code have meaningful test coverage?
Do all tests have asserts?
Does the code reference or use any PII that is not bound by runtime CRUD/FLS checks?
Do any triggers contain logic?
Does this code refactor?
Questions to ask - a non exhaustive list
https://github.com/sfcodelive/CodeReviewsDoneRight
We’re working with this project:
This way to the code
In case Kevin forgets, this is where we (finally) get away
from the slides and to the coding bits.
Today we
Used Github’s built in code review system
Identified a few issues
Left mentoring comments
Read through a bunch of code
Key Takeaways
You should do code reviews to Catch, Learn and Mentor.
There are plenty of tools for code reviews, but at a minimum, just walk through the code while
sitting next to a the developer.
Ask more questions, and be open to unexpected answers.
Remember this!
Complete our Trailmix:
https://sforce.co/2WbXV6E
trailhead.salesforce.com
Next week on #CodeLive
Until then, catch up on previous episodes
Building a LWC Mobile app to track the best halloween candy stops with Adam Daw
Until then, hit https://trailhead.salesforce.com for past episode videos!
Do you have what it takes to defeat Iron Coder Winkelmeyer?
http://bit.ly/2MuPDTd
Q & A
Try Trailhead: trailhead.salesforce.com
Join the conversation: @salesforcedevs
Survey
Your feedback is crucial to the success of our
programs. Please fill out the survey at
the end of this session. Thank you!
Code live with ryan headley   code reviews done right

Weitere ähnliche Inhalte

Was ist angesagt?

Was ist angesagt? (20)

Design patterns for salesforce app decomposition
Design patterns for salesforce app decompositionDesign patterns for salesforce app decomposition
Design patterns for salesforce app decomposition
 
Salesforce API Series: Release Management with the Metadata API webinar
Salesforce API Series: Release Management with the Metadata API webinarSalesforce API Series: Release Management with the Metadata API webinar
Salesforce API Series: Release Management with the Metadata API webinar
 
Best Practices for Successful Deployment
Best Practices for Successful DeploymentBest Practices for Successful Deployment
Best Practices for Successful Deployment
 
How Open Source Embiggens Salesforce.com
How Open Source Embiggens Salesforce.comHow Open Source Embiggens Salesforce.com
How Open Source Embiggens Salesforce.com
 
The Ideal Salesforce Development Lifecycle
The Ideal Salesforce Development LifecycleThe Ideal Salesforce Development Lifecycle
The Ideal Salesforce Development Lifecycle
 
Automating Deployment Between Orgs Using Git & Continuous Integration
Automating Deployment Between Orgs Using Git & Continuous IntegrationAutomating Deployment Between Orgs Using Git & Continuous Integration
Automating Deployment Between Orgs Using Git & Continuous Integration
 
From Sandbox To Production: An Introduction to Salesforce Release Management
From Sandbox To Production: An Introduction to Salesforce Release ManagementFrom Sandbox To Production: An Introduction to Salesforce Release Management
From Sandbox To Production: An Introduction to Salesforce Release Management
 
Scaling Continuous Integration for Puppet
Scaling Continuous Integration for PuppetScaling Continuous Integration for Puppet
Scaling Continuous Integration for Puppet
 
Release Management: Managing Your Internal Releases
Release Management: Managing Your Internal ReleasesRelease Management: Managing Your Internal Releases
Release Management: Managing Your Internal Releases
 
DevOps in Salesforce AppCloud
DevOps in Salesforce AppCloudDevOps in Salesforce AppCloud
DevOps in Salesforce AppCloud
 
Automate Processes Visually with the Lightning Process Builder
Automate Processes Visually with the Lightning Process BuilderAutomate Processes Visually with the Lightning Process Builder
Automate Processes Visually with the Lightning Process Builder
 
Crossbrowser Testing at Salesforce Analytics
Crossbrowser Testing at Salesforce AnalyticsCrossbrowser Testing at Salesforce Analytics
Crossbrowser Testing at Salesforce Analytics
 
How to Setup Continuous Integration With Git, Jenkins, and Force.com
How to Setup Continuous Integration With Git, Jenkins, and Force.comHow to Setup Continuous Integration With Git, Jenkins, and Force.com
How to Setup Continuous Integration With Git, Jenkins, and Force.com
 
Development Best Practices
Development Best PracticesDevelopment Best Practices
Development Best Practices
 
Salesforce – Proven Platform Development with DevOps & Agile
Salesforce – Proven Platform Development with DevOps & AgileSalesforce – Proven Platform Development with DevOps & Agile
Salesforce – Proven Platform Development with DevOps & Agile
 
Salesforce.com Sandbox management
Salesforce.com Sandbox management Salesforce.com Sandbox management
Salesforce.com Sandbox management
 
Get ready for your platform developer i certification webinar
Get ready for your platform developer i certification   webinarGet ready for your platform developer i certification   webinar
Get ready for your platform developer i certification webinar
 
Best practices for implementing CI/CD on Salesforce
Best practices for implementing CI/CD on SalesforceBest practices for implementing CI/CD on Salesforce
Best practices for implementing CI/CD on Salesforce
 
Automating the Impossible: End to End Team Development for ISVs (October 14, ...
Automating the Impossible: End to End Team Development for ISVs (October 14, ...Automating the Impossible: End to End Team Development for ISVs (October 14, ...
Automating the Impossible: End to End Team Development for ISVs (October 14, ...
 
Salesforce & GitLab Integration for Next-gen DevOps with CEPTES
Salesforce & GitLab Integration for Next-gen DevOps with CEPTESSalesforce & GitLab Integration for Next-gen DevOps with CEPTES
Salesforce & GitLab Integration for Next-gen DevOps with CEPTES
 

Ähnlich wie Code live with ryan headley code reviews done right

Apex for Admins: Get Started with Apex in 30 Minutes! (part 1)
Apex for Admins: Get Started with Apex in 30 Minutes! (part 1)Apex for Admins: Get Started with Apex in 30 Minutes! (part 1)
Apex for Admins: Get Started with Apex in 30 Minutes! (part 1)
Salesforce Developers
 

Ähnlich wie Code live with ryan headley code reviews done right (20)

CodeLive with Cynthia Thomas - Refactoring data dependent code.
CodeLive with Cynthia Thomas - Refactoring data dependent code.CodeLive with Cynthia Thomas - Refactoring data dependent code.
CodeLive with Cynthia Thomas - Refactoring data dependent code.
 
codeLive: Positive and negative testing
codeLive: Positive and negative testingcodeLive: Positive and negative testing
codeLive: Positive and negative testing
 
Live Coding with Salesforce Developers: Adding CI to Your Salesforce Project
Live Coding with Salesforce Developers: Adding CI to Your Salesforce ProjectLive Coding with Salesforce Developers: Adding CI to Your Salesforce Project
Live Coding with Salesforce Developers: Adding CI to Your Salesforce Project
 
Webinar: Integrating Salesforce and Slack (05 12-16)
Webinar: Integrating Salesforce and Slack (05 12-16)Webinar: Integrating Salesforce and Slack (05 12-16)
Webinar: Integrating Salesforce and Slack (05 12-16)
 
Easy No-Code Integrations with External Services and Visual Flow
Easy No-Code Integrations with External Services and Visual FlowEasy No-Code Integrations with External Services and Visual Flow
Easy No-Code Integrations with External Services and Visual Flow
 
Drive Adoption of Salesforce at Your Company
Drive Adoption of Salesforce at Your CompanyDrive Adoption of Salesforce at Your Company
Drive Adoption of Salesforce at Your Company
 
Code live with Brian Kwong - Visualforce to Lwc
Code live with Brian Kwong - Visualforce to LwcCode live with Brian Kwong - Visualforce to Lwc
Code live with Brian Kwong - Visualforce to Lwc
 
Code live with kevin o'hara lwc oss dashboard
Code live with kevin o'hara   lwc oss dashboardCode live with kevin o'hara   lwc oss dashboard
Code live with kevin o'hara lwc oss dashboard
 
How to Create Awesome Documentation
How to Create Awesome DocumentationHow to Create Awesome Documentation
How to Create Awesome Documentation
 
Circles of success - So you have created or acquired a mess - now what (1)
Circles of success - So you have created or acquired a mess - now what (1)Circles of success - So you have created or acquired a mess - now what (1)
Circles of success - So you have created or acquired a mess - now what (1)
 
Build Better Communities with Lightning
Build Better Communities with LightningBuild Better Communities with Lightning
Build Better Communities with Lightning
 
Apex for Admins: Get Started with Apex in 30 Minutes! (part 1)
Apex for Admins: Get Started with Apex in 30 Minutes! (part 1)Apex for Admins: Get Started with Apex in 30 Minutes! (part 1)
Apex for Admins: Get Started with Apex in 30 Minutes! (part 1)
 
Salesforce Known Issues: The Lifecycle of a Bug
Salesforce Known Issues: The Lifecycle of a BugSalesforce Known Issues: The Lifecycle of a Bug
Salesforce Known Issues: The Lifecycle of a Bug
 
Gesture Controlled Interactions with Platform Events and IoT Explorer
Gesture Controlled Interactions with Platform Events and IoT ExplorerGesture Controlled Interactions with Platform Events and IoT Explorer
Gesture Controlled Interactions with Platform Events and IoT Explorer
 
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...
 
How to Rock a Salesforce Demo (and why it matters)
How to Rock a Salesforce Demo (and why it matters)How to Rock a Salesforce Demo (and why it matters)
How to Rock a Salesforce Demo (and why it matters)
 
I Passed the Force.com Advanced Developer Certification
I Passed the Force.com Advanced Developer CertificationI Passed the Force.com Advanced Developer Certification
I Passed the Force.com Advanced Developer Certification
 
Build Engaging Community Experiences with Community Cloud
Build Engaging Community Experiences with Community CloudBuild Engaging Community Experiences with Community Cloud
Build Engaging Community Experiences with Community Cloud
 
Force.com Friday: Intro to Force.com Slides
Force.com Friday: Intro to Force.com SlidesForce.com Friday: Intro to Force.com Slides
Force.com Friday: Intro to Force.com Slides
 
Live Coding with Salesforce Developers: Decoupling your org with Triggers
Live Coding with Salesforce Developers: Decoupling your org with TriggersLive Coding with Salesforce Developers: Decoupling your org with Triggers
Live Coding with Salesforce Developers: Decoupling your org with Triggers
 

Kürzlich hochgeladen

Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
Joaquim Jorge
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
panagenda
 

Kürzlich hochgeladen (20)

Top 10 Most Downloaded Games on Play Store in 2024
Top 10 Most Downloaded Games on Play Store in 2024Top 10 Most Downloaded Games on Play Store in 2024
Top 10 Most Downloaded Games on Play Store in 2024
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
HTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation StrategiesHTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation Strategies
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 

Code live with ryan headley code reviews done right

  • 1. Live Coding with Salesforce Developers Oct 24, 2019 Code Reviews for fun and commit with Ryan Headley and Kevin Poorman
  • 2. Have Questions? ● Don’t wait until the end to ask your question! ● Technical support will answer questions starting now. ● Respect Q&A etiquette ● No need to repeat questions. The support team is working their way down the queue. ● Please take the pop-up survey at the end of the webinar. ● Close out of the webinar and rejoin if you experience audio/visual issues.
  • 3. This session is being recorded! The video will be posted to YouTube & the session recap page (same URL as registration). Salesforce Developers Salesforce Developers Salesforce Developers @salesforcedevs Go Social
  • 4. 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 Website. 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. Statement under the Private Securities Litigation Reform Act of 1995 Forward-Looking Statement
  • 5. Introductions What’s a code review? Why code review? What to ask? Let’s do a code review Recap Talking about what we’re gonna talk about. #meta What’re we coding today?
  • 6. Ryan Headley Developer Evangelist, Salesforce.com I like sloths. Live Coding with Ryan Headley & Kevin Poorman Kevin Poorman @codefriar Lead Member of Technical Staff, Education Data Architecture, Salesforce.org Fronts everyone’s favorite band: Apex and the Limits
  • 7. Code Review Process of asking questions Not intended to shame Others’ code Everyone knows they should, but ….
  • 8. Code Review More eyes on code means more chances to: Catch Learn Mentor Why?
  • 9. Code Review Does this code compile without PMD warnings? Does this code have meaningful test coverage? Do all tests have asserts? Does the code reference or use any PII that is not bound by runtime CRUD/FLS checks? Do any triggers contain logic? Does this code refactor? Questions to ask - a non exhaustive list
  • 11. This way to the code In case Kevin forgets, this is where we (finally) get away from the slides and to the coding bits.
  • 12. Today we Used Github’s built in code review system Identified a few issues Left mentoring comments Read through a bunch of code
  • 13. Key Takeaways You should do code reviews to Catch, Learn and Mentor. There are plenty of tools for code reviews, but at a minimum, just walk through the code while sitting next to a the developer. Ask more questions, and be open to unexpected answers. Remember this!
  • 15. Next week on #CodeLive Until then, catch up on previous episodes Building a LWC Mobile app to track the best halloween candy stops with Adam Daw Until then, hit https://trailhead.salesforce.com for past episode videos! Do you have what it takes to defeat Iron Coder Winkelmeyer? http://bit.ly/2MuPDTd
  • 16. Q & A Try Trailhead: trailhead.salesforce.com Join the conversation: @salesforcedevs
  • 17. Survey Your feedback is crucial to the success of our programs. Please fill out the survey at the end of this session. Thank you!