I started working on apex/visualforce since last 1 yr.And I don't have any progamming experience prior to salesforce.I want to become master in salesforce programming.But i still lag behind my progamming skills.How to improve it.Please suggest me.

  • You said you have started programming last year, then you said you have no programming experience. How?
    – Ashwani
    Commented Sep 11, 2013 at 15:32
  • Prior to working on salesforce i don't have any other progamming experience like Java or dot net
    – sfdc
    Commented Sep 11, 2013 at 15:34

6 Answers 6


Here are the steps that I would suggest:

  • Fundamentals: First learn the fundamentals of programming, databases, etc. Check out coursera which has excellent courses on many topics such as 'Learn to Program: The Fundamentals', 'Introduction to Databases', 'Computer Science 101'. These courses are taught by well renowned universities and professors.
  • Salesforce: developer.force.com has ton of materials - start with the workbooks. You can also watch the webinars
  • Youtube: There are several channels on youtube where you can watch hundreds of videos everything from administration to click and configure programming to apex/visualforce programming.
  • Salesforce premier training: If you have access to Salesforce premier training (normally comes part of your company's unlimited edition subscription), take the course from it.
  • Pluralsight: Pluralsight has some great courses - from beginners to advanced developers. Though, it is not free, it is worth every penny.
  • User groups: Enroll yourself in your local developer user groups and attend the sessions - you will have great opportunity to network with some great minds.

Though, this is not a full list, I believe, this will be a good start. I hope this helps.


Since, you mention that you are not a programmer I will tell you 6 key points I believe will help you no matter what language you code in and also provide some assistance on the force.com development side.

1. Don't go too fast, get it right before moving on.
2. Look at example code.
3. Don't just look at it, RUN it.
4. Interpret the code in your own mind. Then, write your own code as soon as possible.
5. Learn to use a debugger.
6. Seek out more resources and keep learning.

A good developer needs to have 2 skills - a.) Debugging and b.) ability to read/understand other's code and write their own. Once you master these skills, you can step in any framework and pickup any language without experience.

As per Apex/Visualforce go, you need the following:

1. Signup on developerforce, get a developer sandbox.
2. Go through the salesforce workbooks - Starting with Fundamentals.
3. Keep following the #askforce on twitter. Trust me, you will get involved in the community - talk and learn.
4. Evolve continuously. Just writing Apex/Visualforce won't make you the master of Salesforce - the platform is growing so you need to grow with it.
5. Pick up another language on the side - Take on Javascript but this is my personal recommendation.

Never feel inferior when someone boasts their programming skills because everyone was a beginner at some point in life. I wish you good luck!

  • Last point is equally important!! :)
    – Sam
    Commented Sep 12, 2013 at 2:00
  • @theGreatDanton You got it! I struggled really hard in my early days and I feel it when people really want to learn. My story inspires me everyday.
    – subodhbahl
    Commented Sep 12, 2013 at 5:02

Salesforce is basically a platform developed on base of java. I would recommend to learn the core concepts/fundamental of java programming.

Also learn the concepts of object oriented programming. Salesforce is based on java but has limitations and don't completely implement it. So you should only clear fundamental concepts of core java and object oriented programming.

When done with these read this workbook . It is small book but has covered all the fundamentals and scenario basically used in creating a custom to apex programming etc. This will give idea of how to work with this platform.

Then read this book "Force.com Platform Fundamentals" A book which all basic concepts to start with salesforce.

In addition you can individually read references and fundamentals books for Apex language, Visual force language. Search them on google as "Apex developer guide or Visualforce developer guide". I think that will be enough for write now.

Also post your issues and doubts on salesforce.stackexchange.com to make them clear.


I'd recommend starting with the Force.com Workbooks. These documents are designed to get you started on the fast track to salesforce.com development. Since you mentioned that you have no prior programming experience, I would also recommend that, before even getting started with workbooks, you learn the fundamentals of programming through any of a number of sites that you can find by searching Google for "fundamentals of programming". The core basics of programming-- variables and control structures-- should take just a day or so of casual learning to make sure you're up to speed on how a program works.


In addition to what the other folks said, try to get a good understanding of basic oops concepts like the object oriented paradigm while you learn programming. Its really surprising to see how many folks don't understand the basics of classes, objects and concepts like instantiation, overloading etc.

Try to practice as much as you can by following coding practices. Try to focus on writing good efficient code by understanding the governor limits.

Try to create and solve simple exercises such as:

  • Create a VF page and controller to insert, update and delete records.

  • Try to learn about the different types of triggers(for ex. after insert vs before insert etc)

  • Try to connect to Salesforce using JAVA. Create and update records.
  • Try to build a simple integration from another system such as Oracle, SQL server or workday and try to maintain both in sync.

Finally even I started programming on the Force.com platform about a year ago but I did have prior programming experience. I started reading blogs and frequented the message boards but this Salesforce stack exchange really helped me learn a lot and now I dont go anywhere else.

And also if you feel that you need motivation, try to study for the Force.com certified developer exam and include that preparation as part of your quest to be a better programmer.


The best way to learn is to do real work for real users. If it were me, if take any job, do CloudSpokes, hackathons, volunteer, stuff for non-profits, schools, etc.

Go through the salesforce ideas site and find something simple that people need that SF doesn't give them.

Ask people what app they hate most, or need desperately.

You'll get more out of it, meet more people, and get a wider range of "real- world" requirements than just doing workbooks or trainings.

Then google when you get stuck, and you'll learn as you go.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .