An Architects Guide to the Salesforce1 Platform was initially created as a Sales Force Automation (SFA) / Customer Relationship Management (CRM) application in the cloud but has evolved over the years into a modern platform for all types of enterprise applications. Now the Salesforce name is a legacy artifact of that past. This is like the name Frigidaire which is still the name for a company that now produces much more than Frigidaires (i.e. Refrigerators). The Salesforce1 Platform still provides the SFA & CRM applications but is also a foundation for building modern systems.

Salesforce Gradle Plugin

As part of the Salesforce Wear Developer Pack for Android Wear I created a Gradle plugin that fetches and deploys Salesforce code (Apex). Gradle is the default build tool for Android but it can also be used with many other languages. For instance, here is an example build.gradle file for a project that fetches all of the Apex classes and Visualforce pages: buildscript { repositories { mavenLocal() mavenCentral() } dependencies { classpath 'com.

Create Webhooks on

Webhooks are the modern, web-oriented way for servers to receive notifications from other servers. For instance, when an event happens on a server, like, your own custom application can receive the event via a web request. Salesforce already has a built-in way to handle events called Triggers which run on Salesforce via Apex code. However, you may want to receive these events in your own custom application. In Salesforce it is pretty easy to write the Apex to do this but why not automate that process?

Cross-Origin Resource Sharing (CORS) for

By default browsers limit access to cross-origin resources. For instance, if a JavaScript app is loaded from then it isn’t allowed to access content from because this would be a significant security hole. Cross-Origin Resource Sharing (CORS) is the way to workaround this limitation in modern browsers. has a great REST api but unfortunately it doesn’t yet have native CORS support (but you can vote for this feature).

Integrating Clouds & Humans with Salesforce and Android Wear

Right out of the gate in my new job at and I have been working on a pretty exciting new project to integrate clouds and humans using and Android Wear. This week Salesforce launched six new open source developers packs for wearables. I created the Salesforce Wear Pack for Android Wear to help developers start building cloud-driven wearable apps for emerging devices like smart watches. Check out a short demo of the sample app I built:

New Adventures for a Technology Adventurer

Over the past year and a half I’ve had the great privilege of working with some really amazing people and projects at Typesafe. I’m a huge fan of the Typesafe Platform and I’ve really enjoyed being part of Activator, Play Framework, Akka, Scala, Slick, and the Reactive Manifesto. But at heart I’m a Technology Adventurer who loves to learn and create new things. Now it is time for me to embark on a new adventure at Salesforce.

Webinar: Social Enterprise Java Apps on Heroku

Tomorrow, May 30th, I will be co-hosting a webinar about Social Enterprise Java Apps on Heroku. The webinar will be at both 2:00 p.m. GMT and 10:00 a.m. PDT. Register at: Here is the description: In this webinar you will learn how to build Social Enterprise applications using, Heroku, and Java. Through live coding and demonstrations you will learn how to instantly deploy and scale Java apps on the cloud with Heroku.

Dreamforce 2010 and Cloudstock

I’ll be speaking at Dreamforce again this year! I have two sessions that are going to be super fun! First is a panel called “Cloud Mobility: Taking Critical Business Functions With You, Whenever, Wherever” on Wednesday at 3:15 PM. Then on Thursday at 11am I’ll be co-presenting a session on “Building Rich User Interfaces with Adobe Flash Builder for” with Markus Spohn from Preceding Dreamforce is the Cloudstock event where you can see some other great presentations related to Flex and RIAs.

Webinar Tomorrow: Building Client/Cloud Apps with Flex and

I will co-presenting a free webinar tomorrow (September 28th, 2010) on building Client/Cloud Apps with Flex and There are two times you can choose from: September 28, 2010 | 6:00 a.m. PDT | 2:00 p.m. GMT | 6:30 p.m. IST September 28, 2010 | 10:00 a.m. PDT This session will walk through how you can get started building applications for the web, desktop, and mobile devices using Flex and Force.