Salesforce week 13

Last week I spent two days at the customer site in Stockholm and 3 days at home in the home office. I think. Cannot really remember. Maybe I was in the office one of the days. Oh well 🙂 It’s starting to become normal to go to Stockholm and family life and work life is starting to work out. It seems like it will work for us. Customer project wise I almost finished the Lightning Component I’ve been working on for the customer and even made small changes to also make it work in Salesforce1. With both the web UI and the mobile UI being based off the same technologies make that pretty easy to do. Of course there are still things to address but they are mainly to do with the inherit difference in how users work on mobile vs on a desktop.

I actually thought I was done with the component last week but then I realized that writing test cases are required to deploy code into Salesforce. An org code coverage percentage of 75% is required. So this week I’m going to write the test cases for the server side controllers (written in Apex). One of the things which has been fun is that it’s very different writing code for production release than writing for the sandboxes or exercises I’ve been doing otherwise. For one normal coding practices like documentation and comments are way more important but also things which is less obvious start rearing its head. Security for one… I suddenly had to stop and consider object and record access for the custom objects I use for the solution. For this solution it wasn’t a big issue but one of those things that isn’t necessarily required for a PoC / sandbox implementation.

I’ve also started to figure out how to bundle up my solution into “something” I can deploy easily across the various orgs we use at the customer. For now it’s a bit of a kludge using the Apache Ant functionality by Salesforce. It will lukily become way better soon then new Salesforce DX approach become publicly available. If you do not know what Salesforce DX is stay tuned but in short it will turn the whole Salesforce development experience on its head. From the org being the source of truth to being based on a source-first approach so that your source repository becomes the source of truth and all development and deployment runs from the source to the org and not the other way. It looks very promising.

What did I learn

  • The Salesforce Ant extensions are fine to work with but still feels like a bit of a kludge
  • There are CLI extensions for Salesforce but they are not really ready for production use
  • Salesforce DX looks to be the solution I’ve been looking for
  • There is a difference between developing for a sandbox and a production org – remember to write those test cases

Status after this week

Trailhead points: 71150

Trailhead badges: 72

Certifications: 4 (Salesforce Certified Administrator, Salesforce Certified Platform App Builder, Salesforce Certified Advanced Administrator, Salesforce Certified Sales Cloud Consultant)