At Dreamforce this year Salesforce announced their new learning platform Trailhead. It is a way to help new developers and administrators get up to speed with the Salesforce1 Platform and understand through a series of articles and challenges how to create and develop new applications.
The system is currently split into 3 tracks which cover getting started with the platform, building apps using the point and click tools and then using the programmatic tools on the platform to develop apps. Each track has a series of modules which then consists of a set of challenges. Completing a challenge earns you points and completing all the challenges in a module earns you a badge that is linked to your Developer Community profile (as the system is in beta it seems you can only view your own badges when logged in, but expect to be able to see the badges of others in the future).
To work on the system you need to login using your Developer Community account and then separately login and link a Developer Edition account to the system (you can switch between these) for you to undertake some of the challenges in. Some of the challenges involve you performing some task in your developer environment that you then check. I believe the system runs some execute anonymous test code in the background to verify you have completed the requirement as necessary. In the case of a formula field challenge this may be validating that creating a record with some specified data returns the correct value in that field, in the case of a code challenge your code will get executed and be expected to return a certain result.
Although I no longer work with many Salesforce starters or am involved in training any graduates, I was keen to spend a couple of hours playing with this system to see what it offered so I could begin to recommend it to former colleagues and contacts as a good way of learning about the platform. I have also been an extensive user of the Code School system[link to codeschool] to learn more about a number of programming languages and frameworks and so I was keen to see what Salesforce had produced for Trailhead. I decided to undertake 3 modules; “Apex Basics & Database”, “Apex Testing” and “Formulas & Validations”.
The content for the challenges is currently mostly text based, with lots of good detail on the topic at hand as well as a series of scenarios provided to help in illustrating the idea for a particular challenge. A couple of the challenges also included video and I would say that the more video is added the better. I personally enjoy learning through reading text and documentation, but often find that when people new to the platform are trying to get to grips with certain aspects it helps to go through items step by step.
For the challenges I would say they are probably pitched at the right level for the intended audience. If you have experience in working with Salesforce for a year or more then you will probably not get too much from the current material as the topics are beginner focussed (although trust me there are still some items in there you can learn from). I have been informed however that more advanced material is on the way and so I think this would make a compelling option for learning new material (hint hint to Salesforce - Lightning Components/Aura!).
I did however come across a couple of teething issues. The first was that you really should do this in a brand new Developer Org - the nature of these challenges means that any existing validation rules, workflow etc. could throw the challenge off and you will be stuck. I found this with my first challenge (creating a formula) and after contacting the team via the feedback link they were extremely helpful in diagnosing and debugging the problem. The error messages currently provided are quite generic and so it means that you need to think about these many possibilities in trying to debug “what have I done wrong”. The best advice I can give is to use a new developer edition. Another slight issue is that one of the “Formulas & Validations” challenges requires you to add a new validation rule, which was then causing a later module to fail for me. Having already dealt with the validation rule issue and armed with the knowledge that the system was using execute anonymous I was able to turn on the debug logs and discover the issue, but other users may not be as well equipped to figure the problem out (note I have passed the instance causing issues onto the Salesforce Trailhead team who have told me they are working on fixing it).
The final thing that was a minor issue for me was that some challenges actually had no challenge, you could simply get a small number of points for marking the challenge as read. The challenges in question were code based and difficult to give a specific “test” to, however it would have been good to give maybe a simple quiz question at the end to verify the user’s understanding rather than nothing.
On the flip side of those few teething issues (it is still in beta remember) I would have no issue recommending it to anybody wishing to get started with Salesforce. The material provided is detailed and thorough on a topic whilst ensuring that you are not being swamped by too much information too soon. The challenges provided are good and focus on real world scenarios which help to illustrate the point. The fact you are doing the work in your own developer edition as well means that you can refer back to the item at a later stage to jog your own memory.
I also think the badges are a fantastic way of helping people to showcase they have done a certain topic and would love to see these incorporated into the Developer Forums and Developer Community in general more. With the addition of more advanced topics it will be great to see who has gone through a certain module when reviewing someone’s answer to a question.
Trailhead is a fantastic initiative from Salesforce and I think with the addition of new material in the future will become an indispensible tool. I would love to see Salesforce’s future announcements and enhancements (or even releases) being tied into this so that when a new product or feature is released there is another great resource to help learn all about it. Salesforce have reiterated to me their plans to work on Trailhead for the long term with it being a keen initiative for them going forward and I am looking forward to working with the system more and more as they add content.