I started at salesforce.com about two weeks ago. It is a hectic time to join because our Dreamforce conference is about to start. However, it is also a great time for learning and experiencing the platform first hand by attending session dry runs and exploring the development experience by going through the workbook. Seeing the buzz around me, and the kind of experience we have put together for developers, I am excited for Dreamforce to start.
As a Developer, you will have many opportunities to try new things:
• attending the immersion labs
• developer sessions in two tracks, beginner and advanced
• hanging out in the developer lounge to learn new things
• attending code consultations
• working with experts
Of course, there is also the fun and highly anticipated hackathon!
In this realm, let me talk about the new workbooks we will have. In the conference, we will provide a new set of tutorials, which will allow developers to experience different aspects of developing with Force.com. I took the workbook for a test ride before the conference to learn about the platform.
For those of you who don't know me, I have been around the block a few times as an architect and a developer, have used, designed for and experimented with several development environments, from JEE to .NET. I also designed development environments for RIA and data oriented services in Ruby using metaprogramming. I started my career in developing frameworks and programming environments in Prolog! Thus, getting the right level of abstraction in a platform is dear to my heart.
I am really excited about these workbooks is because of total experience about the platform in one comprehensive tutorial. The workbook provides a set of development exercises that build on the previous steps. Each exercise is a tutorial on a specific aspect of application programming such as:
* Creating a datamodel of an application, such as business entities
* Adding relationships within the datamodel between entities and their constraints
* Adding business logic with validations, computed fields, rollups
* Including users and workflows, such as validations, approvals for the application
* Adding business logic to application model entities’ lifecycle events by using triggers
* How to design and develop tests for the application you are building, how to debug
* Creating user interfaces that are customized for your app, adding style, look and feel
* Creating and hosting your app on the web
* Integrating your app with a RIA environment
By the end of exploring and doing the exercises in the workbook, the developer gets a complete running simple application on the web, which has non-trivial behavior, a customized look and feel, a dedicated website and possible integration with a third party cool environment! Thanks to the model driven application development on the cloud, all this exercise completes in a couple of hours! This is not only because the tutorials are written well, it is due to the simplicity the platform brings to application development on the cloud.
As a newbie, I loved my fast progress. You get such a sense of accomplishment as you go through it. Further, there are steps to explain how to use the Eclipse-based Force.com IDE. I am an Eclipse fan, so this was also very useful for me as a newbie.
As a technologist, it is impossible to neglect the euphoria of this sense of accomplishment! No messy installations, no testing with many versions of the database statements, its mappings, not wondering around necessary tools to install, not making sure their dependencies work, no more multiple versions of libraries that are incompatible, no startup costs in managing my environment, not many clicks or many forms to fill to do something very simple, etc. Phew! For an application programmer, to focus on the right things was inherent in the platform and intuitive. At the end of the exercise, as an app developer, I had a full fledged application on the cloud that comprises all aspects of application customization.
The simplicity of the platform development is remarkable. Not only that, the development experience provides instant feedback, ie. as you create new entities, relationships, users, they immediately become operational in the development environment. You can interact with them as you create them. This approach reminded me of RIA widget framework developerment where you can interact with what you build as you build it. Of course, I am still not well versed in many aspects of the platform, such as deep dive Apex programming or different aspects of Visual force, but getting something off the ground this quickly impressed me.
You should be aware that we will also distribute platform cheat sheets in the developer labs. If you are curious about the development experience, and would like to get a feel about this total development experience, make sure to look at our new workbook. If you are attending the conference, check it out.
A piece of code is worth a thousand words, and you will find it very useful for your cloud computing application development experience. I did!
The workbook/cheatsheets will be available tomorrow at Dreamforce, and online.