Saturday, September 10, 2016

Getting involved in the Salesforce Developer Community

I'll let you in on a little secret. Salesforce as a platform is really big, and it is only getting bigger. See all those colored circles, those are the Sales, Service, Marketing, Community, Analytics, Platform & Apps products. Then there is IoT in the middle integrating with many of those areas. Plus at Dreamforce '16 we are going to learn more about Salesforce Einstein, the new AI product and where it will fit in.

I'll go out on a limb here and say there probably isn't anyone with really in depth knowledge of all these products. And by that I mean deep vertical knowledge that would only come from working with it day in and day out solving real world problems. The sort of person you turn to late on a Friday when the deployment fails with some newly discovered error that even Google has never heard of.

How are you, as a developer, supposed to work with any number of these products at any given time?

No developer is an Island

Thankfully, it isn't all doom and gloom.

There are a number of existing Salesforce communities to help fill in the gaps with your Salesforce knowledge. Best of all, they are all free.

Salesforce StackExchange (SFSE)

This is my personal favorite, so it goes first in the list. Think Stack Overflow specifically for Salesforce. It's a well tuned site for asking and answering questions specific to working with Salesforce. It isn't a discussion forum, so you avoid the back and forward chit chat and associated noise that you get in other places. Plus content gets moderated and refined over time by the community.

An example of community moderation in the StackExchange format is the drive towards removing duplicates and having one conical answer where possible. We don't really need one question per person who encounters a System.QueryException: List has no rows for assignment to SObject exception. One is sufficient to outline how to check if a SOQL query returns at least one result.

SFSE is definitely my first stop for any Salesforce related questions I might have. More often than not the system will suggest a related question to the one you are forming, saving you from creating a new one.

If there is a downside to the SFSE system, it is that it can be a bit unfriendly/daunting to new users. Approaching it like any other forum system likely won't get you the results you want. Before asking a new question, have a read of How do I ask a good question? You want the question to be on topic to Salesforce, about a specific problem, and with the right amount of relevant details that someone could answer it.

Do

  • Include the applicable lines of code.
    If your asking a question about an exception, include the code that caused it. More importantly, indicate which of those lines of code caused the exception. It isn't always obvious when dealing with a snippet of code as line numbers aren't meaningful.
  • Put some effort into formatting your question. Code blocks in particular.
    Use the built in code formatting syntax. A bit of clean formatting makes it much easier for anyone attempting to answer your question to focus on the actual problem rather than misaligned code samples.
  • Vote for the constructive benefit of the site.
    Use your votes to encourage good questions and useful answers.
  • Acknowledge and link to any resources you used.
  • Use the tags.
    These help users identify questions they can potentially answer faster.

Don't

  • Post without showing any effort on your part to solve the problem.
    Someone else is giving up their time to try and help you. Include some details about what you have already tried and why it didn't work.
  • Post comments as an answer.
    It will get removed. Instead try and gain sufficient reputation so you can use the commenting system.
  • Post answers as comments.
    Comments are considered transient. They can drop off the page if there are several other interactions occurring. Also, voting on comments only serves to reorder them, nothing else.

Salesforce Developer forums

The Salesforce Developer Forum predates the SFSE. It still offers a broad trove of knowledge in the various threads.

The difficulty here is finding the nuggets of current information. It suffers from a number of problems that Stack Overflow was designed to address with Q&A sites. Lots of duplicates, stale posts that can't be edited, a limited notification system for interacting on multiple threads, painfully bad hyperlinks, etc....

Twitter

If you've got problems that can be expressing in 140 character then the #askforce hash tag can provide 140 character solutions.

Also follow and interact with MVPs and UG leaders.

Local User Groups

Check if there is already a local user group that you could attend. This is a great way to network, attend presentations, and share ideas.

Salesforce blogs

Many members of the Salesforce Developer community also run blogs that run the gamut of products. Rather than trying to compile such a list here I'll refer you to Johan Yu's complied a list of Salesforce Blogs.

Trailhead

First off, you got me, this isn't really a community where you can interact with other developers directly. At least not on the face of it. Initially it is an excellent learning resource for Salesforce. You can take modules on topics of interest and then complete some challenges to help cement what you have just learned. However, the more time you spend doing it the more you find there is a whole community of people behind it as well. See #Trailhead. Also, it is not uncommon to see Trailhead specific events at usergroups.

Ideas

Suggest new enhancements or vote on existing ideas to see the products changed.

See also: