I built a site for a restaurant and use a Google Spreadsheet as the back-end for menu data. Whenever they have a change to make, they modify the spreadsheet, and the updates are instantly live on the site.
They like it because they're very non-technical people, but totally get spreadsheets. I like it because there's version-control on any changes to the spreadsheet, so tracking updates is easy. Everything is cached in-case Google'd data were to ever be inaccessible, but it's a system that was easy to implement, and has worked well for a couple years without any perceivable negatives.
I am using Google Spreadsheet as a simple back-end just using client-side JS (on a website to track testing of Firefox add-ons). I've been meaning to write a blog post about this because the existing blog posts I read each missed some details about parsing the spreadsheet data or accessing different spreadsheet tabs.
Agreed. We also use Spreadsheet as a zero-code backoffice interface for data entry in enterprise companies and they love it. You can even embed specific sheets on your website if you want, so they don't even have to leave the site.
> They like it because they're very non-technical people, but totally get spreadsheets.
My experience matches this. About a year ago I rigged up Google Spreadsheets as a data source for Middleman in order to streamline content updates from the client throughout development. I learned the hard way to use fuzzy matching when correlating client-editable record names between data sources, but it otherwise worked well for both of us.
I've done something a bit similar on Lump.co, but I'm using Workflowy as a CMS there instead of Google Docs.
I basically shove whatever random lists of things I need to manage into a shared Workflowy list and then point some server-side PHP at it. It has some crude memcache support and conventions for formatting the content and stuff.
It's handy because it makes it really easy to manage those "extra things" that most people don't have time to model in a CMS: sidebar links, footer text, meta descriptions, etc. If something requires a more functional UI or deeper forms of manipulation, I'll build whatever custom admin UI I need.
Plus, I'm already in Workflowy 24x7 anyway, so it makes updating my site a breeze.
At least until Workflowy changes their internal API endpoints, which will break everything. :)
If anyone wants to know more I'd love to talk about it or share the code.
I actually use Google Spreadsheets for signing people up to a newsletter. This way, if they want me to send emails through my mailing webapplication (alpha use, so i'm using it only for myselve right now). I only need to download the spreadsheet as *.csv and i can upload it right in my webapp. The spreadsheet doesn't need to be a specific structure fyi and the app supports multiple languages {{isEnglish}}my English message for {{FirstName}} {{/isEnglish}}{{isDutch}}mijn Nederlandstalig bericht voor {{FirstName}} (=my dutch message){{/isDutch}} in both subject, message (text) and message (html).. So it's quite flexible, i'm just not satisfied with my current layout...
I also tried to use it as a CMS. Using an 3rd party app in Google Drive for editing HTML files and then including it in my website, but i had problems with connecting the webapp with Google Drive OAUTH (spreadsheets was a no-brainer fyi). The problems were with a combo of Google Drive, OAuth and the .Net library that Google released (API V2. i suppose) :-(
I now use a file based database in Asp.Net MVC for my CMS. I'm updating it with every new website i have to create (if the client wants a CMS, off course).
I'm kinda curious what their backup method is when Google Drive goes down? (i thought about caching and a button for the client for cleaning the websites cache, so they could see their changes. )
I've been tinkering with a variant of the same thing at Cloudstitch.io and will be presenting a paper about spreadsheet-backed web apps in UIST 2014 [1] (an HCI research conference).
Happy to give anyone an account if you'd like to beta test.
Also, Brace.io folks -- great stuff. we should chat :)
I briefly wondered how to get push notifications from a Google spreadsheet, to update a website. My guess is they do it by getting email notifications: https://support.google.com/docs/answer/91588?hl=en
This is pretty cool. You can do something fairly similar with www.silk.co except it acts more like an online database and less like a static site. Basically, CSV to Website conversion where each page acts like a row on a DB. (Full disclosure - I work for Silk).
http://mynameisrage.com/ runs off of a SpreadsheetCMS I wrote ages ago. It's awesome and free :) I love that we get the off the shelf interface of Google Drive.
Well for one, I'm assuming the frontend is all javascript? Am I dependent on a 3rd party service? Are there some examples of how it looks / behaves on the frontend? Is it stable? Is that form submission code adding rows to the spreadsheet? Does it depend on the spreadsheet being a certain format? What about multiple tabs? Does it need to oauth a google account? So on and so forth
I am mostly of the same opinion as you are, but really what they are offering is an easy way to expose your data source as a service, and to provide a simple already established user interface over that data source.
So it does have its place but probably has a limited sweet spot. Is your end user already familiar with spreadsheets, possibly might want to view/edit the data in bulk, not going to pay you to build ur own editor over the data, not really that concerned about performance on a large scale? Then this might be a good solution for them.... Its basically MS Access in the cloud...
I agree with you in that it's not a bad idea for your use case. I would likely still make an admin portal to insert data. If we are dealing with static pages that have a dynamic spreadsheet, I would look up a Wordpress or Drupal solution first.
After reading your comment, I'm thinking that it may be easier in some situations like a teacher posting curriculum. It's also much easier than setting up a Wordpress deployment.
They like it because they're very non-technical people, but totally get spreadsheets. I like it because there's version-control on any changes to the spreadsheet, so tracking updates is easy. Everything is cached in-case Google'd data were to ever be inaccessible, but it's a system that was easy to implement, and has worked well for a couple years without any perceivable negatives.