{"id":1422,"date":"2014-08-20T09:13:00","date_gmt":"2014-08-20T15:13:00","guid":{"rendered":"http:\/\/www.mooreds.com\/wordpress\/?p=1422"},"modified":"2015-10-26T07:53:06","modified_gmt":"2015-10-26T13:53:06","slug":"the-limits-of-google-forms","status":"publish","type":"post","link":"https:\/\/www.mooreds.com\/wordpress\/archives\/1422","title":{"rendered":"The limits of Google forms"},"content":{"rendered":"<figure style=\"width: 240px\" class=\"wp-caption alignleft\"><img loading=\"lazy\" decoding=\"async\" title=\"Bureaucracy illustration by Harald Groven\" src=\"http:\/\/www.mooreds.com\/wordpress\/wp-content\/uploads\/2014\/08\/3821492016_7b1a758042_m_paperwork.jpg\" alt=\"paperwork photo\" width=\"240\" height=\"231\" \/><figcaption class=\"wp-caption-text\"><small>Photo by <a href=\"http:\/\/www.flickr.com\/photos\/50048728@N00\/3821492016\" target=\"_blank\">Harald Groven<\/a> <a title=\"Attribution-ShareAlike License\" href=\"http:\/\/creativecommons.org\/licenses\/by-sa\/2.0\/\" target=\"_blank\" rel=\"nofollow\"><img decoding=\"async\" src=\"http:\/\/www.mooreds.com\/wordpress\/wp-content\/plugins\/wp-inject\/images\/cc.png\" alt=\"\" \/><\/a><\/small><\/figcaption><\/figure>\n<p>I spent a fair amount of time in the spring working on <a href=\"http:\/\/www.google.com\/google-d-s\/createforms.html\">Google forms<\/a>. If you have Google apps for your domain and are doing any kind of data entry at all, you should use Google forms. With this, you can create a web and mobile friendly data entry form easily, with validation, for free.<\/p>\n<p>And by you, I mean &#8216;you, the non technical user&#8217;&#8211;a big win.\u00a0 I&#8217;m a big big fan of anything that removes developers from the loop because they are too often the bottleneck.\u00a0 Of course, as you&#8217;ll see below, Google forms is not entirely the land of milk and honey.<\/p>\n<p>Any data entered typically goes into a Google spreadsheet for easy batch processing. You can limit use of the form to your Google apps domain, too.<\/p>\n<p>Here are some ways that I&#8217;ve seen Google forms used to eliminate manual re-keying of data:<\/p>\n<ul>\n<li>Event RSVPs<\/li>\n<li>Contact forms<\/li>\n<li>Order forms for collateral<\/li>\n<li>Transaction reporting<\/li>\n<li>Timesheet or vacation tracking<\/li>\n<\/ul>\n<p>Google forms are extremely flexible, but do have some significant limitations (which is why other form building companies like <a href=\"http:\/\/www.wufoo.com\/\">Wufoo<\/a> haven&#8217;t had all the air sucked out of them).<\/p>\n<p>Some limitations and issues are:<\/p>\n<ul>\n<li>If you post to a Google spreadsheet, the typical use case, you are bound by spreadsheet limits: <a href=\"https:\/\/support.google.com\/docs\/answer\/37603?hl=en\">400k rows, 256 columns<\/a>.<\/li>\n<li>You can&#8217;t host the form on your domain. The best solution to this issue I found was to do a URL redirect of a domain name. For example, from someform.example.com to the Google form URL. This lets you replace the form while still sending people to the same URL.<\/li>\n<li>You can&#8217;t have a form email an arbitrary address on submission without custom code.<\/li>\n<li>Multi page forms are possible, but clunky.<\/li>\n<li><a href=\"https:\/\/support.google.com\/docs\/answer\/3378864?hl=en\">Validation is limited<\/a>, though using regular expressions gives you a fair bit of power (but then takes form creation\/maintenance out of the realm of the non developer).<\/li>\n<li>UI customization is limited. A Google form will always look like a Google form (short of <a href=\"http:\/\/stackoverflow.com\/questions\/217776\/how-to-apply-css-to-iframe\">serious server side gymnastics<\/a>). It will always have the &#8216;powered by Google forms&#8217; link, the same crappy &#8216;response received&#8217; page, and the same horrible handling of closed forms (an unmodifiable message from Google, with no way to customize it).<\/li>\n<li>Option lists are static (though if you use <a href=\"http:\/\/cloudlab.newvisions.org\/scripts\/formranger\">formRanger<\/a>, you can alleviate this issue).<\/li>\n<li>File upload is not supported. Seriously. Even though Google wants you to use Google Drive.<\/li>\n<\/ul>\n<p>As alluded to above, you can use <a href=\"https:\/\/developers.google.com\/apps-script\/\">Google Apps Script<\/a> to alleviate some of the issues with Google forms. However, doing so pushes the maintenance of that form into developer land (or at least &#8216;power user&#8217; land).<\/p>\n<p>Even with all the warts, Google forms is a powerful tool. And did I mention it is free? If you or anyone in your business is currently doing manual data re-entry, and the limits above haven&#8217;t scared you away, I&#8217;d take a long hard serious look at Google forms.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>I spent a fair amount of time in the spring working on Google forms. If you have Google apps for your domain and are doing any kind of data entry [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[65,53],"tags":[],"class_list":["post-1422","post","type-post","status-publish","format-standard","hentry","category-bpa","category-google-apps"],"_links":{"self":[{"href":"https:\/\/www.mooreds.com\/wordpress\/wp-json\/wp\/v2\/posts\/1422","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.mooreds.com\/wordpress\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.mooreds.com\/wordpress\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.mooreds.com\/wordpress\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/www.mooreds.com\/wordpress\/wp-json\/wp\/v2\/comments?post=1422"}],"version-history":[{"count":8,"href":"https:\/\/www.mooreds.com\/wordpress\/wp-json\/wp\/v2\/posts\/1422\/revisions"}],"predecessor-version":[{"id":1571,"href":"https:\/\/www.mooreds.com\/wordpress\/wp-json\/wp\/v2\/posts\/1422\/revisions\/1571"}],"wp:attachment":[{"href":"https:\/\/www.mooreds.com\/wordpress\/wp-json\/wp\/v2\/media?parent=1422"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.mooreds.com\/wordpress\/wp-json\/wp\/v2\/categories?post=1422"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.mooreds.com\/wordpress\/wp-json\/wp\/v2\/tags?post=1422"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}