The tools we use to get development done

Back in 2006, oe:gen began as a web design and development company. Throughout the years, we’ve been keeping up with the change of demand, going from standard websites to complex Salesforce Communities (and jumping over a few obstacles along the way). On this weird and wonderful journey, we’ve consistently strengthened our skills to nail the user experience of each of our projects, as well as trialled an insane amount of tools to see which are the best fit.

All this hard work has lead to what we are today – a Silver Salesforce partner full of over 30 experts in building beautiful, fully branded Salesforce Communities that our customers (and their customers) love to use.

In case you were curious about how we create these customer experiences, here are some of those tried and tested tools we continue to use.


Primary tool: JetBrains WebStorm with Illuminated Cloud 2 

We fell in love with WebStorm and Illuminated Cloud 2 as soon as we used them.  We were on the lookout for a solid, performant, extensible development environment for Salesforce, and WebStorm with Illuminated Cloud 2 met that brief superbly.  Some of our favourite features include the great code completion, refactoring, customizable linting, git integration and general layout/usability of the app. 

Honourable mention: VSCode with the Salesforce Extension Pack (and loads of other extensions) 

We have developers here at oe:gen who like to be “individual” and therefore opt to use VSCode with the Salesforce Extension Pack, plus Jira, Spotify and many other extensions that slow their machines down.  Bless them.  This is fine, we’re not dictators here, so long as they don’t come running to us when they can’t deploy a Lightning Component. 


Primary tool: ClickDeploy 

We’ve read about and trialled several metadata deployment tools in our time, but ClickDeploy meets our current needs very well.  It’s a huge step-up over traditional changesets, while still being very user-friendly, allowing us to deploy code and config quickly without spending hours RTFM-ing (Google it).  We’re on the cusp of upgrading to the top tier, Enterprise, for all the CI / CD gubbins that brings. 

Source Control 

Primary tool: Git with BitBucket 

Need I really say anything about Git?  We moved over to BitBucket from GitHub shortly after a certain software behemoth got their claws on it and haven’t looked back.  We love the native integration with Jira and the configurable branch permissions. 

Project/Task Management 

Primary tool: Jira Cloud 

oe:gen have dabbled in simpler tools like Trello in the past, but none really cut the mustard quite as Jira does.  It took us many, many months to accept Jira for what it is and to learn how to customize it to meet our needs, but now we’re (mostly) there. 


Primary tool: Microsoft Teams 

We use Teams.  We’d probably prefer to use Slack.  Sometimes you don’t get what you want in life, okay?  Teams has come a long way since its early days where the application would hang regularly and notifications were none-existent.  It’s not perfect, but neither was Game of Thrones.  You still watched all of it, didn’t you? 

Knowledge Sharing 

Primary tool: Salesforce Communities with CMS Content 

Being experts in Salesforce Communities, we thought it’d make sense if we created an Employee Community where our team could go to get information about the company, our tools and processes.  We’re mid-development, but are seeing a lot that we like about Salesforce CMS. 

Our value of continuous improvement means we’re constantly keeping an eye out for better ways to do development here at oe:gen. But these guys have become favourites in our toolkit. If you want to find out more about how we build our “best in class by far” Salesforce Communities, chat to us today!

Say hello to the new Salesforce Content Management System

It’s no secret that these days, companies are striving to create, deliver and personalise content for their customers. And according to Salesforce’s latest ‘State of the Connected Customer’ report, 78% of customers expect consistent experiences across departments. That’s why Salesforce has just announced its hybrid CMS!

Salesforce says the trouble with legacy CMS’ is that they’re designed for a single touch-point, rather than the ‘ever-evolving, omnichannel customer journey‘ of today. Salesforce’s CMS is designed to easily help us create and deliver content to any channel or device, and connect that content to your customer data.

What’s different about Salesforce CMS’ features?

It’s flexible

You can choose a content type, or create custom types and quickly draft the content in the app, without really needing any technical skills at all.

For example, if you want to add content to an experience built with Salesforce, you can choose from two of the CMS’ “what-you-see-is-what-you-get” tools: Experience Builder and Commerce Page Designer.

You can build a great experience by simply dragging content components right onto the website, portal, forum, or commerce storefront you’re using. But both tools are developer-friendly too, which is perfect if your design and development teams want to build the experience with code.

If you want to deliver content into a third-party site, experience, or mobile app, you can also use their headless APIs to do that smoothly. And it also has multi-language and translation features to help you scale.

It’s connected

Instead of blindly creating content, your teams will have access to their customer data to help inform their decisions and personalise their content. Plus, Salesforce CMS lets you actually turn your data into content. No, seriously. They say you can take a CRM record from your CRM and translate the rows and columns into rich, visual content, such as a banner or engaging promotional CTA. Pretty cool, that.

Salesforce CMS is also a shared service, meaning you can collaborate across teams who use:

  • Salesforce Platform
  • Service Cloud
  • Community Cloud
  • Customer 360.

And according to Salesforce, soon Commerce Cloud and Marketing Cloud will be added to that list, too.

It’s hybrid

Your teams can create a variety of content in one central location and then distribute it to any digital touch-point. You can also create content collections, which are like playlists of content that can be added to different experiences.

And this can be any format — blogs, news, events, social, email and more. You can start new projects with a single click, visualise that content in every format before publishing, build custom content, and drag components right into your site as needed.

Your content will also be dynamic — adapting to wherever it appears, meaning there’s no need to recreate content for different touchpoints. You won’t need to worry as the experience, branding and assets will stay just as you intended across each interaction.

Connecting a CMS to the world’s best CRM instantly sounded like a fab idea to me, especially since at oe:gen, we’re always looking out for ways to give better, more personalised digital experiences. Learn more about Salesforce CMS via this link!

Our top picks from the Summer ’19 Release for Users and Admins

Top picks for the Summer '19 released notes from Salesforce for users and admins

Our Head of Salesforce Development has been an absolute legend and highlighted some of the best new features for users and admins from the Summer ’19 release. Thanks, Mark!

Now, we’ve got to say that this release is in preview, so don’t make any purchase decisions based on these yet — make them instead based on the generally available products and features of Salesforce, yada yada yada. Got that? Awesome. Anyway, here they are!

Reinvent learning at your company with myTrailhead!

With the Summer ’19 release comes myTrailhead — a platform that lets you create, manage and publish your own modules and trails for your users. For example, say you need help onboarding new employees — you can create content that welcomes new employees and orients them to their job role and your company and design custom training programmes.

With the tools available through this release, you can format your content, add graphics and videos, create quizzes, create releases for them, and customise it based on your company’s unique brand colours and imagery.

myTrailhead is available to customers with Enterprise, Performance, or Unlimited editions for an extra cost. 

Zoom through related lists with Quick Filters

Now you can use quick filters in your related lists to find the data you’re looking for, dead fast. These are different from your bog-standard list view filters because they aren’t saved, persist only throughout your current session, and can’t be shared.

This applies to Lightning Experience in Essential, Group Professional, Enterprise, Performance, Unlimited, and Developer editions.

Choose from two record view options

Now you have two default record page view options. One is the current view — now called Grouped view — and the new shiny view is called Full view. You can choose which view is best for you, but Full view displays all details and related lists on the same page, whereas Grouped view focuses on specifics by grouping information across tabs and columns.

How do you make use of this new feature, you ask? Well, if you’re already using Lightning Experience, you can change your org’s default record view in Setup.

If you turn on Lightning Experience after Summer ’19, however, you configure these settings in the Lightning Experience Transition Assistant before you switch on Lightning Experience, or in Setup after switching on Lightning Experience.

In Setup, enter Record Page Settings in the Quick Find box, and select Record Page Settings. 

Power up your Related Lists with Enhanced Related lists.

With new Enhanced Related lists, you can show up to 20 columns, resize and sort your columns, perform mass actions, and wrap text. To take your related lists to the next level, select Enhanced List from the ‘Related List Type’ dropdown via the Related Lists component in Lightning App Builder. Here, you can customise how many records to display at once and choose whether to show the list view action bar.

Choosing Enhanced List affects all related lists in the component. To customise which columns appear in a particular Related List, edit the Related List in the page layout editor and add more fields.

This change applies to Lightning Experience in Essential, Group, Professional, Enterprise, Performance, Unlimited, and Developer editions.

More in item menus on the navigation bar

Salesforce have increased the number of recent items shown in item menus from three to five. They also made some styling enhancements, such as bold section names and separators, just so it’s a little easier to tell the difference between sections. This means an object’s item menu now displays up to five times each in the Favourites, Recent Records, and Recent lists sections.

This applies to Lightning Experience in Group, Essentials, Professional, Enterprise, Performance, Unlimited, and Developer editions. 

Find what you need fast with search results that reflect how you navigate

The items in an app’s navigation bar now help determine your top search results in Lightning Experience. And because your users can personalise an app’s navigation bar, they have more say in how they search in Lightning Experience. This applies to Lightning Experience in all editions and affects search results only for the app currently in use.

Access Lightning Experience from Safari on iPad devices (beta)

Now, users can run the full desktop version of Lightning Experience on their iPad device, which is handy for when they’re away from their desktop or laptop. In Setup, simply enter Lightning Experience in the Quick Find box, and then select Lightning Experience on iPad Browsers (Beta). 

This change applies to Lightning Experience in Group, Essentials, Professional, Enterprise, Performance, Unlimited, and Developer editions. 

It’s worth noting that Lightning Experience on iPad browser is a beta feature, meaning it’s a preview and isn’t part of the “services” under your master subscription agreement with Salesforce. Use this feature at your sole discretion and make your purchase decisions only on the basis of generally available products and features. Learn more here.

Keep Record Context When Switching from Salesforce Classic to Lightning Experience 

Spring ’19 has brought with it the ability to keep record context when switching over to Lightning Experience.

When you switch, you’ll land on the same page in Lightning Experience, if it exists. If the same page doesn’t exist in Lightning Experience, you’re redirected instead to your default landing page, whatever that may be set to in your org’s customisations.

This applies to Lightning Experience and Salesforce Classic in Group, Essentials, Professional, Enterprise, Performance, Unlimited, and Developer editions. 

New email template stuff: enhanced letterheads and images 

Want more consistent branding and compliance? With enhanced letterheads, you can now include header and footer info in Lightning email templates. You can also add images and global merge fields to letterheads and email templates to give your messaging that extra li’l something.

Here are the feature details, as described by Salesforce themselves:

Create Knowledge actions and Global Quick actions

You can now create an article from pretty much wherever you fancy. Simply choose Knowledge when you build global quick actions that create a record. Plus, new Knowledge-to-Knowledge lookup fields are now a thing, helping you make actions in the Buttons, Links, and Actions screen in the Object Manager.

This change applies to Lightning Experience only. Salesforce Knowledge is available in Essentials, Developer, and Unlimited editions, and for an additional cost in Professional, Performance, and Enterprise editions.

MORE lookup features for Lightning Knowledge

Create an article from a lookup while creating other records, and add article-to-article lookup fields so you can use a related list of articles and build even more types of article actions.

Have I said “article(s)” too much? Has it lost all meaning now?

This change applies to Lightning Experience only. Salesforce Knowledge is available in Essentials, Developer, and Unlimited editions, and for an additional cost in Professional, Performance, and Enterprise editions. 

  • Create master-detail relationships

This allows you to make use of Knowledge as the parent in a master-detail lookup relationship. Say you wanted to create a master-detail relationship between articles and the records in an article review custom object. Well, now you can. Then, you can create roll-up summaries from fields in the custom object.

  • Use Cascade-Delete with Knowledge

Cascade-delete is this new thing which removes related records in a lookup when articles are deleted. You can use this in lookups from custom objects to Knowledge.

If you wanted to, you could delete records from an article review custom object when the article version is deleted. Just bear in mind that lookups to Knowledge link to a specific article version, and if you publish an article and don’t use the option to Publish as a new version, the previously published version is deleted. Child records in a master-detail relationship using cascade-delete are therefore also deleted. 

  • Build Knowledge-to-Knowledge lookups

Now you can choose Knowledge as the target in a lookup field on the Knowledge object — just add the Knowledge related list to your page layouts. This change also lets you create new Knowledge record actions in the Buttons, Links, and Actions screen of the object manager, and create global quick actions with Knowledge. 

  • Create an article from the lookup while creating a related record 

When you create a record with a lookup to Knowledge, you can now choose to create an article from the lookup dropdown. And once you save the article, it’s linked to your new record. 

Evaluate each record in reports with row-level formulas (beta) 

If you need to answer business questions, you’ll sometimes need to make a calculation on every row in a report. For example, if you were to calculate the number of days between each opportunity’s created date and close date, you’d subtract the created date from the close date.

With row-level formulas, you don’t need to export report data to a spreadsheet or ask an admin to help you out with a one-off custom formula field — instead, you write a row-level formula directly into the Lightning report builder.

You can enable the row-level formulas beta feature from Setup. Just enter Reports in the Quick Find box, then click Reports and Dashboards Settings. Select Enable Row-Level Formulas (Lightning Experience Only) and click Save. 

Please note that this feature is in beta, so don’t go making any purchasing decisions based off this yet.

New Salesforce CMS (beta)

So CMS for Community Cloud has gotten even bigger and better, and is calling itself Salesforce CMS. Salesforce wanted to improve its usability and flexibility, so there are loads of new features.

Now you can share content across communities more easily and collaborate with local and regional teams on your projects. You can also create content outside of your communities in CMS workspaces, which has some lovely perks. You can also take advantage of role-based access to control who can author content and access settings.

Here are some reasons this is all a bit nice:

  • Assign content access with new contributor roles that don’t require administrative access to your communities. 
  • Create one or more CMS workspaces to organize your content and share it across multiple communities at once. 

Within your individual communities, you can also customise the experience for your users. 

  • Reuse content published from one or more CMS workspaces. 
  • Curate content into collections that automatically refresh as content changes. 
  • Reuse your existing CRM data, such as inventory, to help users find what they need. 
  • Connect to an external CMS to reuse content you already host elsewhere with CMS Connect. 

This is available automatically to all Community Cloud customers, so if you’re already one of those, check it out in the App Launcher!

Again, Salesforce CMS is a beta feature. Community admins, Salesforce admins, content managers, and content admins can access this beta feature in the Salesforce App Launcher and in the Content Management workspace of any community. You can provide feedback and suggestions for Salesforce CMS in the Community Cloud group in the Trailblazer Community. 

It’s available in Lightning Experience for Lightning communities in Enterprise, Essentials, Performance, Unlimited, and Developer editions. 

Set up mass quick actions in Communities

You can set up mass quick actions in Communities now, same as in Lightning Experience. This means your customers can select up to 100 records in a list view and perform mass updates, rather than painstakingly updating records one at a time.

This applies to Lightning Communities accessed through Lightning Experience and Salesforce Classic in Enterprise, Essentials, Performance, Unlimited, and Developer editions. 

Increase password complexity requirements for Communities

Salesforce have upped their security by offering a password complecity option that needs internal and external users to include at least three of the following characters in their passwords: one number, one uppercase letter, one lowercase letter, and one special character (! ” # $ % & ‘ ( ) * + , – . / : ; < = > ? @ [ \ ] ^ _ ` { | } ~). 

This applies to Lightning and Salesforce Tabs + Visualforce communities accessed through Lightning Experience and Salesforce Classic in Essentials, Enterprise, Performance, Unlimited, and Developer editions.

Analyse your automated business processes in Automation Home (beta)

Salesforce’s new Automation Home helps you with automated business processes. With it, you can:

  • Explore flow templates on AppExchange, or navigate to an automation tool.
  • Get a quick view of the most commonly used automation types.
  • See your org’s flow activity in charts, such as total errors and total started automations.
  • Learn how much time it’s taking users to complete screen flows, so you can optimize as needed. 

This change applies to Lightning Experience and Salesforce Classic in Professional, Enterprise, Performance, and Unlimited editions. 

Again, this is in beta, so you know what not to do…

Salesforce Surveys: free sending, customised email invites, and an improved UX

Now you can create surveys and send invitations for free, and only pay based on the number of responses you receive after the free allotment.
You no longer need a license to create and send surveys. Anyone who has been assigned one of the provided four profiles can create and send unlimited surveys for free.  Receive up to 300 survey responses for free. After the first 300, you can purchase an add-on response pack based on the number of responses you receive.

To help improve your response rates, you can also personalise your email invitations to participants. Plus, you can up the user experience of surveys and have more words to play with due to the increased character limit for questions, response choices, and participant comments. Mobile devices work well with these surveys too, meaning participants can fill them out on-the-go.

Path: Celebrate sales milestones with… confetti!

This one’s dead fun. Imagine celebratory confetti raining down on your screen whenever you win an opportunity. Yep, you can now help your teams celebrate their successes by throwing some virtual confetti whenever reps reach a designated path stage.

To set this up, in Setup, use the Quick Find box to find Path Settings. Then, enable Path and create or edit a Path.

I mean, it’s much better for the planet than throwing actual confetti, at least!

This applies to Lightning Experience and all versions of the mobile app in Essentials, Group, Professional, Enterprise, Performance, Unlimited, and Developer editions.

So, as you can see there are lots of great new features to get your teeth into this Summer. What’s your favourite? Was there anything you were hoping for that isn’t in the Summer ’19 release? Let us know in the comments below!

How to create your UX persona mappings

Before you spend loads of cash on building a website, first you need to have a think about UX persona mapping.  The more in-depth you go when mapping for your personas, the easier it’ll be to communicate with your customers throughout their entire journey and ultimately turn more qualified site visitors into leads and customers.

Read moreHow to create your UX persona mappings

Globalising Orchard layout elements (and testing them)

So, I created a HubSpot blog post layout element in Orchard for a recent project (which I intend to write a post about later). I was then asked to make it personalised by country, so users would see different blog posts based on which country they were in. This is how I got around to globalising Orchard layout elements…

Read moreGlobalising Orchard layout elements (and testing them)