As a developer I would like to program fancy stuff, but in 90% of my time I only transfer Data from here to there...
Edit -> Memory -> JSON -> REST -> JSON -> Query -> Database.
Database -> Memory -> Form -> Memory -> Database.
Collect data here, combined with data from there, ask the user and write it back.
Client 1 : Form -> Database -> JSON/REST -> Server -> Database;
Client 2 : Server -> JSON/REST -> Client -> Database.
Comparing problems on a single non Server App against a Multi-Client-, Multi-Server-Environment you can find pitfalls on many procedures.
With all the mobile devices you normally have more the one location of your data and if you provide a mobile solution to your desktop application, the user expects a synchronization over the "cloud".
I've always developed it again and again for every new App, but why?
My cloud store is using the same database structure as the desktop and the device database was often nearly the same. So to store the data into the Server database I had to develop it each time.
For my application there is no need for a web interface, so the server must not have access to the actual data.
So finally I've developed a Class/ORM/CRUD/Cloud store interface that can be used by all of my (FDK) Applications. Both interfaces for Client and Server are in the next FDK-Plugin. so stay tuned.
So next time more fancy stuff and less hassle with the data.