Saturday 2 August 2014

Book Review - Force.com Development Blueprints

2451EN

(Disclaimer: I didn’t purchase this book - I was sent an e-copy to review by Packt Publishing).

For the first time in six months, its book review time.  
 
Force.com Development Blueprints guides you through the development of number of complete applications on the Force.com (and other!) platforms:
  1. A Salesforce community, including the use of Site.com to create custom branded pages
    As I’ve not done a huge amount with Site.com I was keen to dig into this chapter, so it was handy that it was the first.  One of the things that surprised me is the amount of effort required in what is purported to be a simple drag and drop tool, not only the complexity of the tool itself but also the low-level CSS tweaks required. (This might explain why Site.com didn’t really take off as intended and is now being rolled into communities as a custom page builder).
     
  2. Develop an e-commerce application using Bootstrap, Ruby on Rails, Heroku and Visualforce
    I was surprised to jump straight into an application using Heroku - if you are working through the book in order it might make more sense to swap this with the third application, which is limited to the Force.com application itself.  Its a very thorough build out of the application, with a nice approach to building the basics first and then adding the slicker UI on top.

  3. Build a traditional CRM solution with a custom Apex workflow feature
    Another full-featured application, taking advantage of a lot of the clicks-not-code features of the platform. I’d like to have seen this as the first application, as this is very much about employee-facing applications - the sweet spot of Force.com I’ve always thought. 
     
  4. Building a custom reporting system using Visualforce
    An excellent real-world use case and example code that can be readily adapted to a number of scenarios. 

  5. Build an HTML5 mobile application, using Bootstrap, Angular, Node.js and Heroku
    The complexity ramps up several notches in this chapter, which is not for the faint hearted where JavaScript is concerned. Using Node.js for JavaScript on the server, and Angular as the front end MVW framework, there’s quite a learning curve if you are new to one or more of these technologies.  This is by no means wasted learning though, as JavaScript is eating the web and demand for mobile applications is very much increasing.  
     
  6. Building cloud connected applications
    Did I say application number 5 ramps up the complexity?  Chapter 6 takes it to the next level, building an application that connects to multiple external clouds via APIs and throws an Android application into the mix as well.  Set aside plenty of time for this one, as this number of external integrations means a pretty unforgiving development environment and promises plenty of opportunity to hone investigative and debugging skills.  It also bravely introduces the Android SDK, which readers of my musing on the BrightGen blog will remember was one of the more challenging aspects of the Elevate London Workshop. Once again, while this might (will!) be a challenging application to complete and understand, its very much the future of application development.  Applications built on Force.com are increasingly seen as part of the enterprise architecture and will be expected to integrate fully with the other architecture components.

As I’ve noted a couple of times above, I feel that the order of the applications could stand a little tweaking, so I would work through the applications in the following order:

3. Build a traditional CRM solution with a custom Apex workflow feature
4. Building a custom reporting system using Visualforce
1. A Salesforce community, including the use of Site.com to create custom branded pages
2. Develop an e-commerce application using Bootstrap, Ruby on Rails, Heroku and Visualforce
5. Build an HTML5 mobile application, using Bootstrap, Angular, Node.js and Heroic
6. Building cloud connected applications

This is a very well written book - each chapter flows well and the explanation of the purpose and high level overview of each application are clear and concise.  If I have one gripe its the amount of code, markup and repetitive instructions that appear (although the instructions do improve as the book goes on).  Often this comes across as filler, as the entirety of pages and controllers are presented, rather than just the key areas of functionality.  

This isn’t a book you’ll be able to skim through in a couple of evenings or a weekend. If you are coming over from the functional side of Force.com to development, you should expect the journey to take several months, returning to each chapter as your development experience increases - trying to rush through it when you aren’t that confident in the underlying technologies will likely lead to frustration when you are unable to get some of the more complex applications working.  If you are an experienced developer who is new to the Force.com platform you will go faster, but its still likely to be a number of weeks if you are making sure you understand all aspects of the applications.  It will be well worth the effort though.

You can find out more about the book, and purchase it, at:

4 comments:

  1. This comment has been removed by a blog administrator.

    ReplyDelete
  2. This comment has been removed by a blog administrator.

    ReplyDelete
  3. This comment has been removed by a blog administrator.

    ReplyDelete
  4. This comment has been removed by a blog administrator.

    ReplyDelete