You are a part of an organization that utilizes the power of Salesforce. Your organization contains a lot of information, some of that information is very sensitive and you do not want to jeopardize the security or integrity of your data by making any changes that could potentially mess things up. That is what Sandboxes are for. They give you a platform to develop and/or test out changes in a closed off environment that has no influence at all on your production org. There are some basic limitations with your Sandboxes though, some Sandboxes are bigger than others and have different functionality and use cases. Lets chat about those different sandbox types and the use cases for each.
A Developer Sandbox serves purely as a development environment, containing only metadata and zero actual data. While you don’t have any access to data from your production org, you will have the opportunity here to create something new. You have the ability to refresh this Sandbox daily, which essentially deletes and recreates a Sandbox using the same name. Developer Sandboxes have 200 MB of file storage and a 200 MB data storage limit. The Developer Sandbox is not to be confused with it’s older brother, the Developer Pro Sandbox. The Developer Pro Sandbox serves the same purpose as it’s little brother, only it has 1GB of file storage and a 1GB data storage limit.
Partial Copy Sandbox
Looking to work with some data from your production org? Partial Copy Sandboxes are for you. As the name suggests, these are partial copies of your production org. The Partial Copy environment contains all metadata from your production org and some data. You define what data gets copied into your Sandbox via a Sandbox template. Partial Copy Sandboxes have 5GB of storage for files and a 5GB data storage limit. You can refresh a Partial Copy Sandbox 5 days after its creation or from when you last refreshed it. That 5 day period holds true with deletion as well, as you are not allowed to delete and create a new one until 5 days after its last refresh or creation.
This is the boss hog of Sandboxes, folks. Full Sandboxes are a direct replication of your current Salesforce org, all the way down to the attachments on an account that hasn’t been active in years. Feel free to do whatever you want here, there are no limitations! You can do anything you could normally do inside of your Salesforce org with minimal repercussions. Something to be aware of is that since it is a direct copy, you can still trigger email alerts like you would in Production. Full Sandboxes’ primary use case is testing changes, particularly big changes that would otherwise have major ramifications if done incorrectly in your production org. One of my favorite features of a Full Sandbox is that ID’s are exactly the same as Production. This makes performing data migration that you did in your Sandbox very easy to duplicate in your Production org. You have the ability to refresh a Full Sandbox 29 days after its creation or last refresh. If you delete a Full Sandbox within the 29 days, you need to wait until after that 29 day period has expired to create a new one. This Sandbox comes with the same file and data storage limit as your production organization. It is important to note that since a Full Sandbox does come with everything that is inside of your production org, it can take as long as a few days to create.
What Do I Get?
Like Sandboxes, Salesforce comes in several different types, or editions. Each edition has a different amount of Sandbox licenses included with it:
Enterprise Edition orgs come with licenses for 25 Developer Sandboxes and 1 Partial Copy Sandbox.
Performance Edition orgs come with licenses for 1 Full Sandbox, 5 Developer Pro Sandboxes, 100 Developer Sandboxes, and 1 Partial Copy Sandbox
Unlimited Edition orgs include licenses for 1 Full Sandbox, 5 Developer Pro Sandboxes, and 100 Developer Sandboxes and 1 Partial Copy Sandbox
Professional Edition orgs include licenses for 10 Developer Sandboxes
If you have an org and wish to obtain a Sandbox that did not come included with your edition, you can purchase additional Sandboxes by contacting Salesforce (typically this is for testing big changes in full sandboxes).
So What’s Next?
If you are happy with the changes that you’ve made, you can deploy your changes via something called a change set. This moves your changes from the Sandbox to Production after undergoing some pre-deployment testing provided by Salesforce.
Sandboxes are great for every need. It doesn't matter if you are an organization looking to implement big changes or an admin who wants to show off your amazing ideas that could propel the organization to the next level. The only limitation is your imagination!
Do you love or hate Sandboxes? Want to share your experiences or opinions? Let me know on the Arkus Facebook page, in the comments below, in the Success Community, or to me directly via Twitter at @RyanOwensRPO.
The Summer 16 release has now been deployed for over a month and we at Arkus have been implementing many of the new features. Here’s a partial list of enhancements that we have implemented with our clients that received favorable feedback.
Lightning Experience and Salesforce Classic
- Contacts: Associate a Contact with Multiple Accounts - This long overdue feature has been widely embraced as users are pleased with being given the ability to associate a single contact with multiple accounts. Administrators have been hard at work to deploy this feature and clean up existing Contact records. Shoutout to Salesforce for the superb help content “Set Up Contacts to Multiple Accounts” which includes an extremely helpful video.
- Processes Can Execute Actions on More Than One Criteria - This is a significant improvement to Process Builder that allows you to manage what happens after your process executes a specific action group. Now you can have the process stop or continue on to evaluate the next criteria in the process, effectively managing multiple process for a single object. Process Builder continues to evolve into a more robust tool with every release and we hope it continues to receive needed attention to resolve outstanding concerns.
Console for Service
- Set up Service Cloud Features in a Flash with Launch Pad Templates - The addition of templates has significantly streamlined console configuration. Administrators just enter “Launch Pad” in the Setup Quick Search box, then choose to deploy a Standard or Branded Console, or Service Reports & Dashboards. The new math: Templates = Win
- See What’s What with Responsive List Hovers - This is a rather nifty feature that allows console users to peek into list-view rows. It appears to be a seemingly small enhancement but it is one that can greatly increase productivity and is certainly better than those pesky non-stop movie trailers.
- Customize Home for Different User Profiles - create custom Home pages that appear for different profiles in your org. Display and organize useful components, and assign different pages to different types of users. You can even create and edit pages for leads, contacts, and other types of records.
- Team Up to Work Accounts in Lightning Experience - Account teams are now available in Lightning Experience, allowing for increased access to the account and its related records.
- Create New Accounts Lightning Fast with Account Autofill - This is slick, have you tried it yet? This usability enhancement saves users from having to type the full company name as it offers suggestions as you type. As a bonus, the account website, phone, and billing address will populate in the record if they are available without having to type them.
- Visualize Your Business Like Never Before with Account Logos (Beta) - This feature shows company logos on account records, yet another visual usability enhancement. I’ve had limited success in getting logos for smaller to medium companies to appear but it seems reasonable to expect that this will improve over time.
- Create a Calendar from Anything in Salesforce - This is another long overdue feature that allows anyone to create a calendar from a standard or custom object by choosing a date field representing what they want to track. It’s simple to create a calendar and you can display a single or multiple calendars, they are color-coded so you can easily distinguish between them. Users are empowered to manage their own calendars - they can apply a list view to filter, as well as edit and delete calendars they’ve created.
This monumental Summer 16 Salesforce release has quickly proven to be a success. Do you have some favorites that we didn’t mention? Please feel free to comment below, on the Salesforce Success Community, on our Facebook page, or directly at me on Twitter @sfdcclicks.
The event is called the Nonprofit CRM Summit, and it is free August 1-12, 2016, available for purchase after. Yes, I just said free, and the tickets are available at www.nonprofitcrmsummit.com. It was organized by the fantastic Missy Longshore of Longshore Consulting. The speakers, me being one of them, are going to show you everything you need to know as a social change leader when it comes to starting and sustaining the simplest, most successful, and user friendly CRM possible. Obviously I focused on Salesforce and brought some interesting insights into how to configure a very simple program management application using best practices for app building using clicks and not code.
One of the coolest parts about this event - all of the speakers have never been together at one event before...and it can cost hundreds to thousands to see us all at live events. You can see all of them in one place for free – you don't even have to leave your house, and you can definitely watch in your pj's.
Who Is Speaking
Over 20 world-class nonprofit leaders, social change experts, authors, thought leaders, fundraisers, and technology experts will be there. Big names like Beth Kanter, Mike Gerholdt, Cheryl Contee, Marc Baizman, Cole Nussbaumer Knaflic, Ben McCarthy, Joni Martin, our very own Jason Atwood, and lots more.
The event's broken down into 2 main interwoven tracks so you can mix and match your topics for maximum impact. Here are just a few of the speakers' presentations:
Track 1: Nonprofit Executives: Sustainable Tech Strategy
- Creating a Culture of Technology Innovation at Your Nonprofit (Karen Graham - special live keynote August 1st!)
- Salesforce Admins are the Next Leaders (Mike Gerholdt)
- How to Partner with Consultants (Sara Chieco)
- 11 Common Mistakes in Selecting CRMs (and How to Avoid Them) (Robert Weiner)
- How to Fundraise Effectively in Less Time (Marc Pitman)
- And several more!
Track 2: Nonprofit Professionals: Sustain Your Success
- Getting Things Done (Jason Atwood)
- How to Get Started with Trailhead! (Shonnah Hughes)
- More Effective Online Engagement with Salesforce (Ryan Ozimek)
- Formulas are Your Friends! (Michelle Regal)
- Drive Adoption with Salesforce Actions - published on August 10, 2016 (step by step workshop) (Justin Edelstein - hey, that’s me!)
- The Power of Community (Joni Martin)
- And several more!
Remember to take to the social networks and talk all about this great event using the hashtag #NPOCRM. It’s bound to be educational on every level and don’t forget to thank Missy Longshore.
What is Salesforce Bootcamp?
The Monroe College Salesforce bootcamp was designed to introduce Salesforce as a platform to individuals who are underrepresented in technology. Participants learned Salesforce basics, discussed careers opportunities and got a complete overview of the Salesforce ecosystem as it exists today. In collaboration with Monroe College, the NYC Women in Tech user group and Salesforce.com, the goal is to really inspire and prepare the next generation of Trailblazers to pursue careers in technology. The group that I was honored to work with included current students, recent graduates, and veterans.
There is a mentorship component to this program where all individuals are paired up with a Salesforce professional whose career is closely aligned with the path participants would like to pursue. The mentor’s role is to share industry knowledge and expertise, provide guidance, and help their mentees discover meaningful potential career opportunities.
During the Training
We utilized Trailhead as the base of the course and walked the students through the modules. The immediate feedback from students was overwhelming, they were excited to learn more about the platform and became Trailblazers right before our eyes. One of the students even mentioned that he wished he would’ve had this Trailhead project assigned as to him as the Senior Project. He could not believe how quickly he was able to build a simple app. The students were also very happy to hear about the flexibility of working with a platform that is cloud based. This touched the hearts of many transfer students as they realized that the opportunity to work from their home country is very realistic.
The bootcamp participants were there to learn, but I also learned a lot too. This experience really helped me reflect on what makes pursuing a career implementing Salesforce so great. The platform has readily accessible resources needed to take your career wherever you want, the sky's really the limit. Due to the awesome community and amazing resources, there is much less of a cutthroat, dog eat dog attitude that plagues so many industries. We are all here to help one another which is a great asset when first getting started.
There are employers that will hire you based on potential and willingness to learn. One advantage of working with the Salesforce platform is that it makes it simple to showcase your skills and demonstrate your knowledge of the platform. One of the many ways this can be accomplished is by displaying Trailhead badges you have earned in your Community Profile or talk about projects you have completed. Additionally you could even create a free Developer Edition org and just build out something awesome to share during the interview. We shared this information with the participants so they could hit the ground running once they are ready to begin interviewing.
I am happy that I was able to provide some insight and shed some light on a platform that has helped my career tremendously and has allowed me to grow my skills and meet some great people along the way.
I want to hear about your volunteer experiences and ways that you have given back to the community. Please feel free to share with me on the Salesforce Success Community, on our Facebook page, or directly at me on Twitter @msespinal90.
Whether you need a survey sent to your customer’s after the purchase of a product or an application completed on your website (both of which need to be tracked in your Salesforce instance), form products are the best tool to use. Here are some features you will probably want to consider as part of your form requirements:
Multiple Object Syncing
I think this is absolutely mandatory. Fields on a single form should always be able to map to different objects in Salesforce, including standard and custom. Period.
Pull and Push Data
A good form product can not only push fields completed on a form to Salesforce, but also gives the capability to pull data from Salesforce to the form created and disbursed. For example, let’s say you want to send a survey out to your contacts to gather demographic information. You may want to include from their Salesforce record their name, address, phone, email, etc…. These can be added as options that are fixed or can be updated. You will need to create a mapping of those fields to your form and include a unique identifier (typically the record ID). Then determine what fields are locked and what fields can be updated. Options for pushing data back to Salesforce typically are: updating records, upserting (update or create new), and creating new records. On a single form it’s possible to select more than one of these options on an object by object basis. So the Contact specific fields can update the Contact record but other demographic information may create a new record on a custom object related to that contact.
Syncing before Submitting
What if a multi-page, multi-step form is required, but, a lot of information may not be known at the onset to complete the form in it’s entirety. And, the initial fields completed are required to be added to Salesforce so that internal users can help and support with the completion of the remainder of the form? Is it possible to save and push before final submission? The answer is yes. Some products provide push options with a save button, some push when a next button is clicked. In either case, partial completed forms can be pushed to Salesforce in phases. Pretty cool!
Here are a few products I’m aware of that contain the features I’ve mentioned:
The difference between these would be in the details of other features not mentioned; price, preference on UI, etc. When you’re looking for a form product, first determine what your requirements are, request a demo on each product, compare pricing, and even download on a trial basis into a sandbox environment to test it out yourself.
Do you know of other form products that include these features and more you can recommend? Please feel free to comment below, on our Facebook page, or directly at me on Twitter @LeiferAshley or in the Success Community.
Incredibly powerful—remarkably simple… that is the S-Docs tag-line. So, does it live up to this? S-Docs is the only document generation tool on the AppExchange that is 100% native to Salesforce. This makes it a one stop shop to meet all of your document generation needs. A native Salesforce application has its benefits, my favorite being that all data is natively stored on the platform. The absence of an external server or engine means that any security risks are greatly reduced. This also means that there is no paying twice for infrastructure, making S-Docs a cheaper than its competitors. S-Docs also comes with the look and feel of the Salesforce that we all know and love. Let’s check out some of my favorite components.
Oh, the capabilities!
S-Docs is quite the powerful tool, so no data in your Salesforce org is out of reach. There is a built-in SOQL feature that allows unrelated data to be queried and directly merged into a template along with your standard related object merge fields. You can grab multiple standard or custom objects, and include related lists as tables to filter, sort, group, or manipulate rows however you see fit. You can also embed pictures, graphs, charts, and dynamically show content based on the data values being retrieved. Finally, you have the option to output your document to Word, PDF, Excel, Google Drive, or direct to email as inline content. Once you’ve output your document, integrate it with activities, tasks, and Chatter upon creation. These are all great features, but what I have found through usage is that the strength of this application is the simplicity and flexibility of its template editor.
Keep it simple, stupid!
Tired of the complexities of some document generation tools? No more creating outside templates for you, buddy. As I mentioned earlier, S-Docs is a 100% native Salesforce application. This means that you can access and do everything right from inside Salesforce. All you have to do is click on the S-Docs tab, name your template, create the object relationships that you are going to be using, click through a few more options, and then go right to the template editor.
No Code? No Problem
Salesforce is famous for their clicks not code model. So why wouldn’t a native Salesforce application follow that exact same model? S-Docs features an intuitive point and click design where you have the ability to create your template, like a Word document, directly from the template editor. You can create tables, align text, bullet point, style, and format your template to your heart's desire. If you’ve been given a word template, you can copy and paste it straight into the editor and after a little reformatting, you will be good to go. And to top it all off, all of the HTML code is automatically generated for you by the application. You can reveal all of the HTML code that you have generated by simply clicking the ‘Source’ button on the top left corner of the window. This gives all of you folks that like to dabble in code the opportunity to flex your creative muscles without having to start from scratch.
One of the best things that I’ve found about S-Docs is the flexibility that this application provides to those of us who are hip to the HTML and CSS world. If you feel like you need to scratch your coding itch, you can code your template from scratch. You can also style your template just as you would a webpage using CSS. As you can imagine, this opens up a ton of possibilities. To accomplish this all you need to do is start with your blank template, click that same ‘Source’ button that revealed your point and click generated code earlier, and start coding away. The possibilities are endless!
S-Docs is a great tool if you have a smaller Salesforce org with a simple need to click a button and generate a document, or if you have security concerns. If you are a larger Salesforce org with more complex needs or are looking to automate your document generation processes through button customization, you may want to look into third party application competitors.
S-Docs might not be the robust third party tool that some other document generation tools may be. However, S-Docs is a tool that fits simple needs in a big way, all in a seamless fashion while giving you a lot of flexibility. Incredibly powerful, remarkably simple, who could ask for more than that?
Have you tried S-Docs before? Want to share your experiences or opinions? Share them on the Arkus Facebook page, in the comments below, in the Success Community, or to me directly via Twitter at @RyanOwensRPO.
It seems like there is a new collaboration tool with each day, as the king of collaboration (email) gets shunned more and more. For this exercise I am going to look at Salesforce Chatter comparing it to the much newer Slack. First, let's start with the old dog.
<announcer voice> In this corner... </announcer voice>
Chatter Me Up
Salesforce Chatter was sprung on us at Dreamforce '09 (yes, that long ago) with a big reveal during the keynote. At first it was just a simple way of commenting on records such as a Lead or Opportunity, something that Salesforce lacked. Over the years Chatter has gotten pretty sophisticated with groups, approvals, actions, email replies, license types and even a desktop application. For a few years there it felt like the whole company was going to become Chatterized. In the new Salesforce Lightning, it looks as if Chatter will take a less prominent stance in the screen real estate, but lives on. At its core, Chatter is a very sophisticated threaded commenting system with lots of added features but very Salesforce specific.
Slack was launched at the end of the summer in 2013 and quickly became the darling of the venture capital community a year later. A lot of the initial marketing was around getting away from email by using the instant communication platform. Slack was born on the web, but has dedicated applications across tons of platforms, including most desktops. It has a robust set of APIs and applications (bots) that extend the functionality greatly (email) or just make things fun (Giphy). At the core it is an instant messaging application with lots of added functions like voice, channels (groups), and direct messaging.
When to Use
Since we use both platforms here at Arkus, a lot of discussion (in both platforms) centered around when to use which and why. Both have more than a few overlapping features so it became easier once we drew the line in the sand and pointed users in the right direction. Here is our takeaway on when to use each and why.
Chatter is best used for longer term collaboration around Salesforce records that have a more structured business process. For example, when reviewing an Opportunity or providing updates, Chatter excels. The data is relevant to the thing you are referencing, it is historical in nature in that it stays with the record and inherits the permissions for more concise collaboration. While Slack is great at communicating back and forth about something, it lacks the context and conversations can go all over the place, lost in the stream.
Slack is best for instant personal communication and group collaboration. It is easy to set up private and public channels, it has awareness as to who is online and if others are responding in real time. Slack is much more cross-platform as all of the applications work seamlessly together. Get a note on your iPhone, respond on the desktop, Slack picks up where you left off with what you missed, something that Chatter is very bad it doing. One of the best features of the Slack platform is managing notifications at a device or channel level. For example, I might only want to get notified of new posts when mentioned or in one on one direct messages, but not in the big #General channel that is full of noise (and Giphy). What Slack lacks is context to the data in Salesforce and more structured conversations. Slack channels can quickly fill with nonsense, which doesn't happen in Salesforce as often.
Learning From Others
Both platforms could learn from each other as both offer things that the other could improve on. Chatter could learn from Slack's use of the command line and key commands for quickly navigating and using functions. Chatter is way too dependant on a mouse to get around. Slack could learn from Chatter's structure and context around a process that makes information easier to absorb.
Developers love tools that make their lives easier and it should come as no shock that Salesforce developers have different backgrounds and preferences for their integrated development environment (IDE) of choice. The landscape has shifted since I started in the Salesforce ecosystem six years ago and the recent news about suspension of MavensMate development might have some worried about their tool of choice going forward. Let’s dive into the options that developers have available for writing Apex, Visualforce, and Lightning Components with a review of some popular IDEs.
The Developer Console is an officially supported Salesforce tool for developers that want a web-based experience for coding and debugging. Available by clicking Your Name → Developer Console, there are a whole host of features that users can leverage, such as debug logs, test execution, SOQL queries, and other tools for tuning performance.
Modifying existing classes and pages is available, as are the newer Lightning related metadata components, but the lack of features from more robust IDEs and text editors make this a bit of a secondary tool for hardcore developers. Often it is more useful to copy and paste code out of the Dev Console into a text editor and paste it back, simply because of the flexibility that other apps offer. Dev Console is a great resource for anyone getting into Salesforce development, but seasoned devs will be venturing here for specific features and quick fixes.
Web-based, but requires internet connection
No direct integration with source code repositories nor version control
No ability to deploy between environments
Offers performance profiling, has support from Salesforce engineering team
Free (included with your Salesforce license)
Bottom Line: great for beginners to learn development, helpful for debugging issues with existing code, but is closer to Chrome’s Dev Tools than an IDE.
Force.com IDE Plugin for Eclipse
The Force.com IDE Plugin is the original gangster for Salesforce developers and continues to have support from Salesforce. While it acts as a plugin for the Eclipse IDE, it’s worth noting that the features available with these two tools together is a great resource for developers that are coming from a more traditional IDE route. The Schema Explorer acts as a great resource that predated Workbench, allowing for devs to explore metadata with precision.
While other plugins offer support for Lightning today, the Force.com IDE does not. Salesforce engineering is releasing support for this in an update available within the next month, which will include code highlighting and hints. Eclipse is likely losing popularity with devs in favor of text editors, and arguably isn’t the most fashionable way to code, but it likely is the choice for enterprise devs that split their time between Salesforce and other languages (e.g. Java).
Windows, Mac OS X, and Linux
Eclipse offers ability to work with source code repositories
Able to deploy between Salesforce environments
Familiar setup for Java developers, Schema Explorer is helpful tool for exploring metadata without Workbench, has support from Salesforce engineering team
Free (included with your Salesforce license)
Bottom Line: it’s been around forever and still getting love from Salesforce, so if you had to pick a place to start as a seasoned dev, Eclipse with the IDE plugin is not a bad choice.
MavensMate provided a great alternative to using Eclipse when it was released a few years ago, and is available as a plugin for the Sublime Text and Atom text editors. These editors are widely used by developers that prefer a lighter weight experience for writing code and both have a whole suite of plugins available to assist with development or UI tweaks for the stylish coder. Over the past few years, MavensMate has gained more features to assist with coding, deployments, and testing.
Two weeks ago, there was a flurry of activity on MavensMate’s GitHub page due to Salesforce disabling TLS 1.0 for any sandbox orgs. This also coincided with a post from the main supporter, Joe Ferraro, that development has been suspended on MavensMate; congratulations are in order for Joe, who has a newborn member of his family! While development of MavensMate is on hold (and will likely resume later this year), there’s a version 7 beta available that is worth setting up to keep calm and code on.
Windows, Mac OS X, and Linux
Acts as a plugin to text editors that support plugins for handling source code repositories + version control
Able to deploy between environments
Lightweight tool allowing for users to leverage either Sublime Text or Atom with their other favorite editor plugins, retro arcade games available when waiting for test runs and deployments
Free and open source
Bottom Line: development is currently on hold and there are some nuances in the user experience, but it’s the most enjoyable if you prefer editors to IDEs.
Aside.io is like Cloud9, but only allows for Salesforce development. As a web based tool, it is impressively fast to manage existing files and create new metadata. The tool leverages four main functions to segment functionality: Code, Test, Push, Data. Each of these lets developers spend time writing code, executing tests, downloading package.xml and ZIPs to manage deployments, and running SOQL queries against their org.
This has a steeper learning curve due to choice in icons for various functions in the toolbars and could benefit from a bit of usability improvements, though offers targeted functionality for the cloud-based Salesforce developer that wants a cleaner or more “zen like” editor experience than Dev Console.
Web-based, but requires internet connection
No direct integration with source code repositories nor version control
Create a package.xml file or ZIP for deployments and drag/drop these files into your target org for deployments
Manage Apex, Visualforce, static resources, and custom objects with ease
Bottom Line: it’s clean and crisp, and feels a bit more fun to use than the Developer Console, but with most web-based tools, you need the internet for this to shine.
IntelliJ IDEA with Illuminated Cloud
Within IntelliJ IDEA, devs can leverage the Illuminated Cloud plugin for their Salesforce development needs. IntelliJ is a great alternative to Eclipse and has a community of plugins available. Illuminated Cloud is unlike all of the other tools mentioned thus far, as it requires a license to use after the 30 day trial period. Running through its features, it’s nearly at parity with the Eclipse plugin.
Windows, Mac OS X, and Linux
IntelliJ allows for managing source control repositories, and has a nice version control system without any work
Illuminated Cloud allows for deploying to different orgs
Robust functionality for code completion and validation, manage static resource bundles, offline Apex debugger
Illuminated Cloud is $65 per license with some volume discounts, and IntelliJ Community Edition is free, but will set you back $149 per year as an individual or $499 per year as a business if you want the pricier, more feature rich IntelliJ Ultimate Edition
Bottom Line: if you already use IntelliJ, you’re already using Illuminated Cloud; if you aren’t using IntelliJ, give it a shot with Illuminated Cloud and be prepared to fork over a few slices of artisanal toast.
Cloud9 has been around for a while and offers a cloud-based IDE for developing in various languages. A benefit of this is the abstraction away from hardware level constraints that may arise with using your “work” laptop versus “hobby” machine, etc. Cloud9 has launched support for Salesforce development and allows for signing into an org and starting to develop immediately.
Arguably the best feature of Cloud9 is their “Google Docs for code” approach; users are able to write code and share a workspace with colleagues or friends, and those people can jump into a file and make changes live. This is a huge step up for those looking for a mentor or doing remote pair programming.Like its native siblings, a bash shell can be used for handling commits, and like its web-based siblings, an internet connection is required to do any work with this tool. It’s best to consider this a hybrid of Sublime and Dev Console.
Web-based, but requires internet connection
Built in bash shell and has integrations with GitHub and Bitbucket repositories for your account
Automatic bidirectional sync of code from Salesforce to IDE, though no deployments to different orgs
Dubbed the “Google Docs” of coding, you can have multiple people in the same file working together
Free for 1 Salesforce workspace; premium users can create an unlimited number of Salesforce workspaces (premium pricing starts at $19 per month)
Bottom Line: social coding with your friends or mentors is a great feature, but the 1 workspace limitation will be difficult for anyone that spends a majority of their week working on code in a variety of environments.
As opposed to the last two options that sit within Java IDEs, Welkin Suite has built upon Visual Studio from the .NET side of the developer world. Welkin Suite is currently in beta and only available for the Windows platform, though their Twitter handle has promised support for macOS later this year. This IDE packs a lot of the functionality available in the other plugins, along with a bundled data loader, the ability to organize your metadata in folder structure different than what is returned from Salesforce, and integration to #askforce about a code snippet (including a screenshot!).
With that said, the features and experience is highly targeted to the MSDN developer that is familiar with patterns of Visual Studio. This is definitely worth noting for those that have not experienced this style of coding before, as it’s not directly related to Welkin Suite and their feature set.
Windows only, though support for Mac OS X coming this year
Offers support for source code repo and version control without switching to terminal or GUI app
Able to deploy between Salesforce environments
Offers developers the ability to #askforce directly from IDE to tweet their question and screenshot of their code, customizable folder structures, built in data loader
Free; currently offered as a beta, so pricing might come later
Bottom Line: nifty features for #askforce and data loading do not make up for its lack of support for macOS and the frustrating user experience if not familiar with Visual Studio.
There are certainly other tools and options available for developing on Salesforce, and some tools have their targeted use cases, while others try to be the kitchen sink. Also, with the rich set of APIs that are available, developers can spin their own tools using a combination of things like Node, Gulp, and the Force.com Migration Tool. Personally, I’ve found it’s most useful to combine MavensMate and Developer Console for any work that we do at Arkus, but that’s partly a choice based on habit.
As a bonus, the Product Manager for Platform Developer Tools (Greg Wester) shared some news with us about the future of developer tooling. The team at Salesforce is committed to investing in their existing tools (including the Force.com Command Line Interface) to help improve the developer experience, and are committed to providing the necessary APIs to allow tooling partners (new and existing) to continue creating great products.
This year’s Dreamforce will include announcements for features that developers have been long awaiting, as Salesforce continues to position developer experience as an important focus for their internal and partner engineering teams.
So, which tools are you using for Salesforce development? Do you use just one or a mix based on the use case? Let’s start up the discussion below in the comments, via Twitter @RogerMitchell, on our Facebook page, or in the Success Community!