It is becoming ever more common for server-side developers to build APIs thanks to the rise of front-end JavaScript frameworks, iPhone applications and generally API-centric architectures. Grabbing data source and shoving it out as JSON sounds easy, but there is so much more. Surviving changes in business logic, database schema updates, using serialization to avoid directly outputting database structure, JSON-API and loads more.