1. Keep your audience in mind. Who will be using and filling out your forms? What device will they be using? Will they need additional instruction to fill out the form? Are they going to be trained on how to use and complete your form?
Just because you know how to complete your form doesn’t mean that someone else does. Keep it simple and it will save you a lot of time and effort. Have a coworker or relative try to fill out the form and see how they do. If they get confused you may want to try a different field type, give an explanation with a static text field, or change the field color to bring more attention to that part of your form. These are all things that might help keep your form more universally accessible for all of your users.
2. Organize your form with pages and sections. For the same reason we organize our thoughts into sentences and paragraphs, you should use pages and sections; it makes it easier to read and understand. If you have a bunch of fields that gather information about the customer, it might make sense to add a section in your form called Customer Information. It not only makes it easier for your users to fill out the form, but it makes it easier for an admin who didn’t build the form to read the report or make simple changes and edits.
3. Add a little color. As mentioned above, you can color different fields by using our alert type feature. I wouldn’t go too crazy with the colors, but adding a little color helps to reinforce what you are trying to communicate. If you want your users to see your important note about Making sure they lock all doors before leaving the location, having the background color of that field as red or yellow might help reinforce that point.
4. Review your form changes often. There is nothing more frustrating than building a large form with a lot of complexity, only to check it when finished and find out that things didn’t appear how you wished or better yet don’t appear at all. In these cases the problem may be a simple click of a setting, but with large or detailed forms there are a lot more variables when trying to diagnose a particular issue. It is better to build small parts of your form at a time and check to make sure everything is showing as you wish in the app and on the reports. This will make it much easier to identify problems early on, instead of finding issues later when your form is much more complicated.
5. Keep it simple. While it may be tempting to create a complex form that has fancy scripting, lots of subforms, and layers of filtered lookup lists, we have found that the simpler you make your form the better. Subforms and lookup lists are an important and powerful part of our software and play a key role in filling some use cases, however we find that people will often unnecessarily use features when they really don’t need to. Always try to keep the form as simple as possible to fill your needs.
6. Before you start writing script or adding rules, rename your field keys. By default, FastField will automatically name your field keys as something generic. It is a good habit when creating your forms to rename the field keys to something descriptive about the actual field. For Example - Lets say you have a script to calculate an area:
$length$ * $width$
If you hadn't renamed your fieldkeys your script would probably look something like:
$numeric_21$ * $numeric_32$
It is a lot clearer and a good habit to rename your fieldkeys so they are easily identified by you or another individual.
7. Try not to add required fields until you’re almost finished building your form. If you add hundreds of required fields to your form while you are still testing and building your form, each time you check your form on the app, you will need to fill in each of those required fields before you can submit and check your reports. Add them later in your building process and it will save you a lot of time.
8. Newer devices generally perform better. The problem is that bigger forms consume more memory (not storage memory, but processing power) on your device. The more subforms, the more lookup lists, the more scripting/rules that you have on your form the more memory it consumes on your device. When your device starts running out of memory, it starts to run slowly. Ultimately the better/newer the device, the more memory and processing power it will have. The more power, the faster it will run bigger forms. For Example - We have a few Gen 1 iPad Mini’s which we use a lot for testing and QA purposes. On a gigantic form there is a noticeable performance difference between the Ipad Mini and a newer iPhone. The iPhone runs much quicker. On smaller to medium sized forms there really isn’t much of a difference, but if you have large or complex forms it would be a good idea to make sure your team's devices can handle it.