Administration, Apex, Development, Events, Videos

Grab some popcorn, London’s Calling 2017 videos are now LIVE!

I’m totally overjoyed to announce that we’ve uploaded the majority of the sessions for London’s Calling 2017, the largest Salesforce Community event in Europe. I can now watch all those sessions I missed :), like what was Todd wearing and why? a question I’ve been itching to find out 🙂 and Belinda Parmar OBE’s keynote on Empathy totally worth a second watch!

There are four playlists on the LC YouTube Channel:

We increased the quality of the videos this year and they look really great, there are a couple of videos still yet to be processed but the majority are now up. If you do have any questions please let me know! I know what I’m doing this weekend 🙂 … where’s the popcorn!

 

Apex, Dreamforce, Videos

The Mystery of Salesforce Connect Custom Apex Extensions and the Missing video

So I wonder if anyone can answer a question that has been bugging me for months…

So Salesforce records breakout sessions at Dreamforce, and for the last couple of years, I’ve been doing a lot of theatre sessions, which don’t get recorded. So I was a little bit excited to know that one of my Dreamforce 2016 sessions had been selected to be a workshop session! Whoopie! A video’ed session and it’s going online! In the end, Salesforce started recording theatre sessions at Dreamforce 2016 as well so the majority of my sessions were recorded which was brilliant.

BUT

For some reason, Salesforce never uploaded my “Integration with Salesforce Connect and Custom Connectors” session. It never made it to the 2016 Dreamforce Developer Sessions site.

So I contacted Salesforce thinking it may have been a mistake, a couple of people did a hunt for me but couldn’t find anything conclusive.

Present > Get Feedback > Improve > Repeat

The main reason I want to know is you can only improve your public speaking with feedback. I want to know what didn’t work. I want to know why people did or didn’t engage with it. So I need your help. Could you take a look at the video and see if you can figure out why Salesforce didn’t put this video up? A couple of ideas:

  1. “The talk that was too radical for Salesforce” – I did say things which may not be the real purpose of Salesforce Connect, but in my opinion, it makes Connect a much more powerful tool than people think.
  2. “Salesforce doesn’t like product placement” – I did mention two non-Salesforce products, both of which I had contacted and one of which was a Salesforce partner anyway.
  3. “I was talking rubbish” – Maybe there are things I said that were incorrect? if so I would love to know.
  4. “They just made a mistake and forgot the video” This is probably the most likely explanation but without knowing its a bit hard to tell.
  5. “Maybe it wasn’t very good, and they don’t put bad quality sessions up” – Now with 100% of people on the session survey recommending the session for next year and 4.86 out of 5 score, one of the highest for all developer talks, I don’t think it’s that.

Take a look for yourself and see if any of these are right, I’d love to know!

 

Apex, Development

Create Lightning with Lightning & IoT

If you came along to my talk “Create Lightning from Lightning & IoT”, thanks a lot! Here is my follow up post. Unfortunately in the time I couldn’t get through everything, so as promised I’ve included in the presentation slides for the Process builder code and how to expose your Apex code functionality to Process Builder.

Process Builder allows admins or click developers to build quickly processes based on their particular logic. For example, we could hook up the Lamp to flash when a high priority Case comes in. We don’t need to worry about when they need to flash the light, we are just exposing the ability for them to plug it into their process whenever they want it to fire.  Read more

Apex, Development

Five things that rocked my world learning Apex

Ok maybe not rocked my world but when I started developing on the Salesforce platform I was very much figuring it out as I went along (If only trailhead existed then!). Unfortunately, there were some things that I wished I had known before I had started. In some cases meant I had to do rework or in worse cases didn’t even know I’d made a fundamental error. So here are the top things that “rocked my world” when developing Apex for the first time.

Triggers don’t fire all the time

When I was first introduced to triggers, I was told they were very much like database triggers. Every time a record was inserted, updated, deleted or undeleted the trigger would fire. I expected that after I had written my update & delete triggers on say the contact object, the trigger would always fire in the same way a database stored procedure trigger would fire. But this is not the case. There are a couple of scenarios where triggers are not fired. A full list is here but here are the ones I know caught me out:

  1. Cascading delete operations; If you have records in a master-detail relationship and someone deletes the parent record, the children will cascade delete. The kicker? Only the parent records delete trigger is fired, not the children. To protect yourself from this happening you can put logic in the parents delete trigger.
  2. Cascading update operations as a result of a merge operation; If you merge two records together the “winning” record is kept, and the losing record is deleted. Any child records of the losing record are then “re-parented” with the winning record, but the update triggers on the child records are not fired. For example if you had two account records that you were merging, and both had opportunities on them, the Account field on the losing account’s opportunities will be updated with the new/winning account (the “re-parenting”), but the update triggers won’t fire on those opportunity records.

Read more

Apex, Development, General
  • Salesforce Lightning UI and what it means for developers!
  • Salesforce Lightning UI and what it means for developers!
  • Salesforce Lightning UI and what it means for developers!
  • Salesforce Lightning UI and what it means for developers!
  • Salesforce Lightning UI and what it means for developers!

Salesforce Lightning UI and what it means for developers!

It can be summed up in one word. Javascript. It’s a hell of a tide change for Salesforce. So long Visualforce, hello lightning components! They are coming mainstream!

So, what does this mean for developers? Is Salesforce switching off the old UI? No… well not yet, too many companies have invested too much in it and VisualForce. Are they switching off Visualforce? will you still be able to develop VisualForce? Yes of course.

The Lightning UI is still a little way off from being complete. One of the reasons is that it doesn’t have a vast amount of components that VisualForce has, but this is defiantly going to change! With Lightning Components your creating a whole application rather than just a page in VisualForce, so the complexity is higher than regular VisualForce. Read more

Apex, Architecture, General

Salesforce left nav hacks now unavailable? Not yet…

Well over a year ago Salesforce announced that they were going to retire slowly the “Left Navigation Hacks” in Salesforce. In the Summer 15 this took a next step of stopping the execution of JavaScript in homepage HTML components. This allowed developers to inject JavaScript code into the Salesforce left navigation to allow them to manipulate more or less any part of the Salesforce desktop user interface. This had positive uses too like allowing app providers like PostcodeAnywhere to dynamically search and clean addresses while the Salesforce user was entering information and not on save of the record. Read more

Apex, Best Practice, Development, Dreamforce

You can you use DML in a for loop!

Some people may have have seen ‘Apex Ten Commandments’ that myself and Codefriar did at Dreamforce a while back.

One slide we didn’t know if we should put in or not was to come right at the end saying “Thou shalt feel free to break these rules as wisdom merits”. But the issue with this slide was two fold. The majority of developers the ten commandments was aimed at should be following the rules. But for more advanced developers you do at times need to twist the rules and they don’t make sense. Adding the slide could mean that junior developers think of the commandments are only loose guidelines. In the end we left it out but the following year Codefriar kept it in… and in hindsight a better idea 🙂 Read more

Apex, Best Practice, Development

Thou shalt not leave the Salesforce critical updates until the last minute!

When I do org reviews its amazing how many people ignore the critical updates in Salesforce. You know that little pop-up box that says “You have critical updates do you want to view them? Yes | No?”, this appears when a new critical update gets added to your org (search for ‘critical updates’ in the setup menu), and with the Summer ’15 release there are a few new ones and one may need particular attention for some of us.

Read more