Posted on Leave a comment

New Delhi Salesforce News and Updates: Week #56

Introducing Anypoint DataGraph

Delivering digital initiatives faster with composability

Customers can make the composable business a reality to meet today’s demand and create the agility needed for tomorrow. The next major release of Anypoint Platform allows IT and business teams to take advantage of reusable building blocks to:

  • Accelerate delivery speed: As the number of apps and systems continues to grow, integration becomes more complex and slows down the business. With Anypoint DataGraph, companies compose data faster, by consuming data from multiple APIs with just a single GraphQL query. Developers can explore, unify, and serve data from all their APIs into powerful data services – without developing new code or creating new APIs. In addition, developers can increase efficiency by replacing custom code for many API requests with a managed service that requires no maintenance.

How to install Runtime Fabric on-premises

The installation of Runtime Fabric involves many steps running across several platforms. Some steps rely on manually executing scripts on the command line and collecting the output from the script output. Depending on the platform you run the install on, the steps may differ. If you’re new to Runtime Fabric, the process can be overwhelming especially when you encounter problems.


Guide to error handling in Mule for Java programmers

In this contrived example, the Java code accepts two Strings and attempts to convert them into integers. If this conversion fails, the code throws a NumberFormatException, which must be dealt with higher up the call stack. Otherwise, integer division is attempted and the result is returned. In the case of division by zero, the code catches an ArithmeticException, and returns “infinity,” as if the operation had completed successfully.

We will look at the ‘throws’ case and the ‘catch’ case separately, and build Mule code to handle each case. At the end, we will see how we can combine both cases together.


Posted on Leave a comment

New Delhi Salesforce News and Updates: Week #55

Weird Apex with Paul Battisson

Paul Battisson:
This will shock you, but for a guy who’s really into deep math, I was a slightly insular nerdy child who enjoyed playing … There’s a game in Britain called Championship Manager. I loved playing that. All the teenagers were like, “I want to write my own video game.”

Josh:
That is Paul Battisson, chief operating officer for Cloud Galacticos. I’m Josh [Berk 00:00:28], your host for the Salesforce Developer Podcast, and here on the podcast, you’ll hear stories and insights from developers for developers. Today we sit down and talk with Paul about some of the weird experiments he’s done with two things. One, his love for, and I’m quoting him here: “super hardcore nerdy math” and APEX, as well as some other parts of the platform. Also at some point, we start talking a lot about pigeons. But to kick things off, we go back to that [inaudible 00:00:54] and talk about the program languages he was learning to make that game.


Unit Testing, Mocking, and AMOSS with Rob Baillie

Rob Baillie:
I was very lucky to get the job with a CIO who knew about these things and wanted to do this. So I went into the job interview there and basically I splurted out about extreme programming and this is the way I want to work. I think it’s going to be fantastic. And you kind of got halfway through the interview. And I’m thinking, well, have I just ruined my chances here? And luckily, he did just kind of turned around and said, “Well, yeah, that’s exactly what we want to hear because that is exactly what we want to do.”

Josh Birk:
That is Rob Bailie, a senior technical architect over at Make Positive. I’m Josh Birk, your host for the Salesforce Developer podcast. And here on the podcast, you’ll hear stories and insights from developers, for developers. There, rob is talking about his experience getting a job where he got to be passionate about extreme programming and other things like unit testing. And today, we’re going to sit down with Rob, we’re going to talk about unit testing. We’re going to talk about mocking. And we’re going to talk about Rob’s own framework, Amos, but where we start is how on apparently a very, very nerdy level, Rob and I are mortal enemies.


Learn MOAR with Summer ’21: External Services Enhancements

Our External Services empower customers to leverage OpenAPI standards to create declarative building blocks of integration goodness without writing a single line of code. We’ve used OpenAPI specifications to enhance the creation of actions that invoke functionality in other systems from within Salesforce, providing a useful tool to help you automate anything and integrate everything.

In Summer ’21, we’ve enhanced External Services so you can seamlessly integrate with more third party platforms building upon their published APIs without having to manually edit input specifications before registering.

We have grown our selection of publicly available APIs such as Slack or Okta thanks to new support for larger spec sizes and more support for schema constructs and use cases.


Posted on Leave a comment

New Delhi Salesforce News and Updates: Week #54

How to Build a Webview-Powered VS Code Extension with LWC

VS Code was built with extensibility as one of its main principles. A VS Code extension is a plugin that adds functionality to VS Code, extending or customizing it. You can create extensions to support a new programming language, execute automated tasks, display a user interface with which users can interact, and much more. The options are huge. You can find some popular VS Code extensions published by Salesforce in the Salesforce Extension Pack.

One way in which you can create VS Code extensions is using Webviews and the Webview API. You can think of a Webview like an iframe, in which you can render a user interface built with HTML, JavaScript, and CSS. You can communicate the embedded user interface with the VS Code extension code passing messages on both directions, using the provided APIs.


Build Salesforce Industries Skills with New Trailhead Academy Classes

Imagine you’re a health insurance provider looking to transform the way you work. Your customers want a personalized and seamless experience across every interaction, and that means integrating data across systems to allow them to find the right health insurance plan.

But the way you do work as a health insurer is very different from, for example, how a retailer or bank does business. You want all the goodness of Salesforce, but you want it to speak the language of your industry right out of the box.


Empowering Anyone to Learn Marketable Skills with Trailhead

Over the last few months, we’ve all been challenged. Life as we know it transformed overnight. Businesses were forced to move to remote workspaces or close their doors, employees shifted to virtual offices or lost their jobs, and communities around the world sheltered-in-place.

Throughout it all, the resilience and innovation of the Trailblazer Community have inspired me. One shared thread that continues to unite our community is a passion for learning with Trailhead. Undoubtedly, empowering anyone to reskill has never been more important.


Posted on Leave a comment

New Delhi Salesforce News and Updates: Week #53

Metrics Matter: Three Ways to Leverage Impact Metrics to Drive Business Value

There has arguably never been a more important moment for businesses to be a force for good, and financial firms and investors are taking note. In 2019, a study found nearly 80% of global investors focus more on sustainability now than they did five years before; and a review of more than 2,000 studies showed a strong correlation between the performance of environmental, social, and governance funds and positive investment returns.

Since 2017, the Salesforce Ventures Impact Fund has been investing in innovative companies that drive positive, measurable social and environmental impact with financial return. We invest in the most disruptive startups delivering solutions across education and reskilling, climate action, diversity, equity and inclusion, and enabling tech for nonprofits and foundations.


Meet the Improved Pardot Developer Docs

Salesforce has reorganized the documentation for each object, breaking each topic into consistent sections and giving them clear outlines. The table of contents on the left side of the page lets you jump between methods and sections within each method — this is handy for some of our longer topics. The biggest change is the Resource table included at the beginning of each object’s topic. This table outlines and describes supported operations and links to the relevant content, so you can quickly scan for what you need.

Let’s start with the Resource table and topic outline in our object documentation, using the Prospect object as an example.


How to Query Data from Customer 360 Audiences

In a nutshell, Customer 360 Audiences is a customer data platform (CDP). As part of Marketing Cloud, it’s designed for marketers who want to drive a personalized experience for their customers by creating a unified profile of each customer. Some of the key features are:

  • Data ingestion from web, mobile, and other sources at big data scale
  • Data modeling, cleansing, and unification of user profiles from disconnected systems
  • Segmentation of customers into unique audience segments

For a more detailed overview, check out the Trailhead module Customer 360 Audiences Basics. This module not only gives you information about key capabilities, but it also gives you an introduction to the Cloud Information Model (CIM). CIM is a new standardized data model that aims to provide a common model for various data modeling use cases across enterprise systems. It is supported by companies like Salesforce, Google, Twilio, and AWS.

Why is CIM important? When you work within CDP, you are working with data models. Many of them are already pre-defined for you, based on CIM definitions. This is relevant to know when thinking about not only unifying your data but also extracting and visualizing it.


Posted on Leave a comment

New Delhi Salesforce News and Updates: Week #52

Caching with the Salesforce Commerce SDK

Every e-commerce application is going to need caching. For some of our customers, millions of shoppers may look at the same product information and, if you have to request that information from the service every time, your application will not scale. This is why we built the Commerce SDK with caching as a primary consideration from the start. Here we will discuss how to implement a custom caching solution based on what we learned, demonstrate how to move to a distributed cache, and explore what our customers will see when they start using our new Commerce SDK.


The Design of Strongly Consistent Global Secondary Indexes in Apache Phoenix — Part 1

Phoenix is a relational database with a SQL interface that uses HBase as its backing store. This combination allows it to leverage the flexibility and scalability of HBase, which is a distributed key-value store. Phoenix provides additional functionality on top of HBase, including SQL semantics, joins, and secondary indexing.

Secondary indexing, which enables efficient queries on non-primary key fields, is central in many use cases. At Salesforce, we saw this to be the case and recognized that some use cases demand a higher level of data consistency for secondary indexes than what was offered in Phoenix. We set out to redesign global secondary indexes to meet the strong data consistency demand.


The Design of Strongly Consistent Global Secondary Indexes in Apache Phoenix — Part 2

The mutable tables allow existing rows to be updated many times, and updating an existing data table row may change a secondary key on this row. If this happens, we need to remove the old index row for this secondary key and insert a new index row with the new key. As the following illustration shows, changing the city for Alice from Seattle to Utah requires simply updating the city column value for Alice’s row on the data table however, it requires multi-row updates on the index table.