Force.com / Salesforce - is it WTFy?
Thinking of applying for a job using it ... involving web services or something (job spec not overly clear).
Had a google and played with it a bit, seems quite logical and time-saving, but obviously I've only scratched the surface. The tutorial i followed was basically an extended advert, so yeah.
Has anyone here used it? Is it by any chance completely shit? It kind of seems like it must be.
Has anyone here used it?
I guess you have your answer. :<br>
It's not completly shit - it has some serious WTFs though.
You can code triggers in a language they call APEX. It's Java syntax (mostly) with a few changes: Variables are not case-sensitive. Strings go into single quotes.
They have a eclipse plugin to code your triggers etc - but syntax check is server side. Saving a file? 3 - 20 seconds - depending on which instance you work on and if the US is awake or not.
Checkboxes have 3 values (the value is a boolean - w/ 3 values): True, False and Null.
The trickiest part with salesforce is getting around/working within the "limits" (google spring 11 governor limits) - for example you can only execute a few DML statements within a trigger (150 I think).
You've confirmed my impression that APEX is not as bad as PHP (if it was you'd have had more to say about it). Using something Java-like attracts me after a few years of that foul woolliness.
I don't much fancy waiting many seconds to save a file, but as for the limits, I don't think I'll mind that so much. Having some discipline imposed on one's code can be good ... i often think about doing a project on small or old-fashioned hardware so as to impose limits of ram or cpu power, so maybe this will be similar ...
Anyway, as you can probably tell by my hopeful optimism, I accepted the job a few weeks ago - starting soon - let's see how much posting i do about it once i start ... !
Well I don't consider PHP bad - but then I never coded PHP for a living.
For me, the language, APEX in this case, is almost never the issue. APEX doesn't make your life too easy though - you cannot step through your code, as you could with some Java framework. So you might see a lot of System.debug('this is the spot') statements, which write into a debug log.
Or: APEX does not have namespaces and it only has very, very basic XML support. And no real support for out-bound SOAP-based webservices.
It depends very much how the company you'll be working for (congrats btw) handles development - salesforce makes it easy, so easy that some sales people start to do data modelling... If your company has sales people doing that... good luck. If not, you'll be alright - people are able to do WTFs in any language. Be sure to post them
Here's my first WTF moment regarding Salesforce:
Their website, at the time I looked at it, used a shitload of images consisting of a "Not" symbol over the word "Software". (As a developer, I don't see anything good about that, but I digress.) Presumably they're appealing to business-types' hate of software by saying their product has none of it? Or something?
At the same time, a certain "freelance project portal" site had what must have been 5% of all projects asking for people to code custom "Salesforce plugins". Among salesforce users, there is apparently a huge demand for... software!
That was a real head-scratcher. Disclaimer: I have no idea about what Salesforce actually is.