My random thoughts
Sunday, March 27, 2011
Friday, March 25, 2011
Mess or Technical Debt?
There is a very interested discussion at http://blog.objectmentor.com/articles/2009/09/22/a-mess-is-not-a-technical-debt and I'd like to point on one really interesting and detailed comment - http://agileotter.blogspot.com/2009/09/elusive-code-quality-argument.html
Never go to dentists :)
I took me two weeks to finally recuperate and become interested in anything at all.
Friday, March 11, 2011
Java to Apex migration.
Actually you don't need to code a lot. The platform (salesforce) allows you to do a lot of things just through web interface and this is a crucial thing for new people. But if you have descent experience in Java, Apex will please you with familiarity.
Revoking my words about online editor. It has some level of auto-completion and it seems to be enough for such a limited efforts in actual coding.
Next step for me is to apply TDD to Apex development. This seems to be quite challenging, but nothing really impossible to do.
Revoking my words about online editor. It has some level of auto-completion and it seems to be enough for such a limited efforts in actual coding.
Next step for me is to apply TDD to Apex development. This seems to be quite challenging, but nothing really impossible to do.
Thursday, March 10, 2011
Apex was built on top of Java.
So if you have any experience with Java/JSP you'll feel pretty comfortable. In example their table tag is a copy of well known displayTag library.
The more interesting thing about the force.com tutorials. They make to access new pages on Visualforce via changing link in browser. But there is much more convenient way to do so: Your name -> Setup -> Develop -> Pages :)
Just a small trick but helpful if you want to oversee that you've already created.
Just a small trick but helpful if you want to oversee that you've already created.
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.
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.
Subscribe to:
Posts (Atom)