Let's say that prior to mobile explosion you've had a popular site. It is very probable that there was only "the site". So you've had one rendering engine - the web view - one way to retrieve and save data to the database. Along came mobile with the need for native apps - iOS & Android - as well as the old page's younger brother - the mobile website.

OMG I have a platform!


Suddenly the need for a decent API emerged. An API that can consistently service all the places where your users want to create the content and probably more places which you need to fuel with your data. You need to handle all the interested parties, while making sure all the channels are being served in a consistent manner: getting the same results, the same content and not loosing a bit of precious user-contributed data.


Best Practices


All of this enforces the adoption of good architectural practices, like say, RESTful WebServices to support communication with external and internal systems. Good coding practices become a must - things like code encapsulation, business logic reuse, separation of layers and division responsibilities. Going further you'll need your devs to create meaningful methods and data structures, not mentioning documentation and testing.


This all may seem obvious in the backend and big systems world. But in a web-shop reality it is still a fairly new thing. For many companies this is the first time they realize there's different kinds of developers and that having the same developer create DB tables as wells as writing JavaScript is not the best, scalable approach. They now need to quickly learn the good practices and they arrived at this conclusion thanks to mobile technologies.