Tuesday, March 8, 2011

Force.com development. My first steps and conclusions.

After Cloudforce 2011 I began waiting for VMforce.com platform to apply my Spring/Java experience to Cloud development. Meanwhile it seemed to be a good idea to become a bit more familiar with force.com platform and create several simple applications for it. So I made few steps further and went to developer.force.com, signed in for my new DE account, and started to go through slightly messy steps of force.com workbook.

First catch that distract me from routing copy-paste activities, which are quite common for any tutorial, was a completely unexpected absence of required information. Tutorial #3 that describes different reports and dashboards suddenly started referring to fields of Invoice object those haven't been described yet anywhere before. I returned back to Tutorials #1 and #2 and went thoroughly over all steps including extra notes and "fine print" sections.

I'm not mentioning here several typos and mistakenly referenced elements that I found during initial completion of the steps. They are quite obvious and if you are reading the textbook slowly and correcting them on your way through the tutorials it's not a problem.

So I had to stop locating non-existing fields and start actual development for the platform to define them. Actually this task wasn't bad at all, indeed it gave me an opportunity to think a bit and play with force.com's interface. The interface is fast, well organized, and has plenty of help (and helpful) messages. Anybody with basic Excel knowledge will be able to complete most the task almost intuitively.

As a result I was able to complete Tutorial #3 and see my reports on my newly created dashboard. Personally for me the most interesting things start from Tutorial #5 (programming on Apex, the platform's language) so I set a 10 minutes deadline to finish Tutorial #4. I spent 5 minutes instead. The funny thing is that the good part of the tutorial describes the process of defining those missing fields from Tutorial #3. That was slightly shameful as I couldn't predict it and look ahead.

Finally I reached the point of my interest - Apex, plain code, tests, steam and iron. For me as a developer it was obvious and natural to install Eclipse-based IDE called Force.com IDE. As a result this development tool left with mixed feelings. On the one hand there are really well done integration with force.com, nice speed of deployment, fair test coverage, and debug reports. On the other hand the IDE reminds me old IBM WSAD that existed before moving it to the Eclipse platform. There is no code completion for anything except types and sometimes object fields. You have to write method and constructor arguments manually, there is no signature highlighting. Forget about type outline. Keywords are not auto-completed and so on. I don't understand why the IDE is so immature. My guess is that this is not the main tool to develop force.com applications. But then I have a question: what is? Web interface is even more brutal - the code is just plain text and editor has definitely less features than Windows notepad.

So my newbie opinion on the current force.com development environment is exactly the same as the one on current weather - it's getting nicer but some shady places make you think about getting back to a warm and safe place you were before. Hopefully it will become better soon.

P.S. I have several more tutorials to go which can change my opinion. At least I hope so.

No comments:

Post a Comment