We're All Slackers Now
Salesforce
One of the effects of the pandemic for me has been the simultaneous slowing down and speeding up of time - it still feels like March 2020, although 2021 is flying by. The Salesforce acquisition of Slack has had a similar taking forever/done very quickly vibe, but it finally completed on 21st July. I’ve blogged my thoughts on this before, and again a month later, and I haven’t changed my mind. Once the Salesforce sales machine gets incentivised to move Slack licenses, the floodgates will open. The Trailhead team were quick off the mark, launching a slew of badges and a competition to get us all skilling up.
YAAPI. Yet Another API was announced on July 13th - the Pub/Sub API for event driven integration. Combining the publishing and subscribing aspects of event driven architecture into a single API, it simplifies things somewhat, but that’s not the most interesting part - the new API is based on gRPC, a modern high performance Remote Procedure Call framework. gRPC moves away from the traditional client request/server response nature of SOAP/REST, to a connection that persists across multiple requests/responses in either direction, and supports streams in either direction. I’m still playing around with the basics of gPRC, but here’s a good article from Redhat comparing REST, SOAP, GraphQL and gRPC if you want to learn more.
London’s Calling is back in person in 2022 (Safe Harbor!). Scheduled for June 10th at the Brewery, it must flirting with treading on the toes of TrailheaDX, typically around that time. Should be nicer weather than previously, although you can never guarantee these things, especially in the UK.
The Times News Express (covering all the bases for news site names there!) ran an interesting article this week about the comings and goings of Salesforce execs, with details of 13 important leavers and 4 new joiners. This leaves us with a net deficit of 9, but I’m fairly sure that those posts would be filled by internal promotions, battlefield or otherwise.
Functions is still in beta, but for some reason the Salesforce Developers team sent me another email linking to a post from June 23rd announcing this. I got all excited, thinking maybe it’s public beta! While you can self-nominate, you aren’t guaranteed to be accepted, and it’s still something your Account Executive has to be involved in. This combination has historically meant that unless you have a ton of Salesforce licenses you won’t get in, but maybe this time will be different. (Spoiler alert - this time won’t be different).
Me
Just the one blog post since my last Substack missive, as I had to write a bunch of code for it. For those unaware of the background, I built a GUI wrapping the Salesforce CLI in Electron, which was the most fun I’ve had for a long time. The original app was around letting people who weren’t great the with command line build up a command by filling in a form, but I also wanted a mechanism for them to copy a complex command and convert that to the form view to help them understand, which I finally found time to add. You can read more about this capability at The CLI GUI Decodes Command Strings.
Other
Github launched co-pilot, an AI Pair Programmer that converts your comments to code suggestions with varying degrees of success. Reaction to this has been mixed to say the least!
One concern is that it may be suggesting blocks of code that are directly copied from the open source Github repositories used to train the model. This throws up interesting licensing questions, as a lot of the time you can’t just copy even small chunks of code without attribution. If you are using co-pilot in a commercial setting, you might want to check you aren’t opening yourself up to copyright issues.
A concern which I heard a few times in the Salesforce ecosystem was that co-pilot would do us all out of a job. As I mentioned when I appeared on the Forcepreneur podcast, I’ve been reading about this since I first considered a career in programming. The first copy of Personal Computer World that I bought had a story about a new application called The Last One that generated Basic code from a description generated from menu options. The key feature of all of these applications which are going to replace developers is that they need an incredibly detailed description of the code they are being asked to generate, which typically needs developers to get to the level of detail required. Same as the low-code tools, you are still developing, just expressing it in a different medium to writing code. In this case, I see it as a potentially useful tool for handling the repetitive, low-complexity, boilerplate code that we always have to write - the next step for snippets really.