Sailing along with SalesForce

Is the SalesForce CRM usable right out of the box?

In one of my lives, I'm building a SalesForce implementation for a Chicago area non-profit. They'll use it to track contacts, clients, job placements, etc.  I'm creating custom objects, writing formulas, linking tables, and doing all the stuff that usually goes with a database appliction. Is this more efficient than writing my own PHP application or, more to the point, what does my client gain from SalesForce?

I'm a bit frustrated right now because I'm still climbing the learning curve.  As I see it, the advantages of building this app on the SalesForce platform are

  • a known platform that is known to a large community of developers and consultants
  • APIs that allow the application to (eventually) interact with other cloud apps
  • integrated report writing tools
  • a well defined UI
  • role based security

And these are big advantages.  All in all, it's the right choice. It's just a lot to wrap my brain around.