This book assumes that the reader is familiar with programming, either as an open source developer or a Salesforce developer.
Basic knowledge of Apex
The backend language for Salesforce applications is called Apex. It is a strongly-typed object-oriented language, which is syntactically very similar to Java.
Basic knowledge of Scala
PredictionIO is a Scala application, and hence familiarity with Scala will help you understand the code better. It is strongly recommended that you should try all the code covered in the book on your own local machine and try deploying the code on the Heroku free instance.
Basic knowledge of frontend technologies such as JavaScript and HTML
Salesforce Lightning components use web technology such as JavaScript and HTML, and hence having a basic knowledge will help you a great deal.
Salesforce Developer instances and MAC OS X
You will need a Mac OS X to locally test the code covered in Chapter 3, Building Smarter Apps Using PredictionIO and Heroku and Chapter 4, Product Recommendation Application Using PredicitionIO and Salesforce App Cloud. Also, it requires you to have your own Salesforce and Heroku instances. To obtain a free Salesforce instance, sign up at https://developer.salesforce.com/signup, and to obtain a free Heroku account, sign up at https://signup.heroku.com/.
To connect Mac OS X to Heroku, download and install the Heroku CLI from https://devcenter.heroku.com/articles/heroku-cli.