Introducing FormBuilder: The first ODK Integrated Development Environment (IDE)
ODK is a great survey tool, but when we introduce it to companies or individuals who have never used it, their first question is: "How do I create my own form?" And here is what the struggle used to be. ODK is basically a programming language (XML, XPath). We can abstract much of that complexity with XLSForm, but the learning curve is still quite steep.
Users need to learn the question types, what data goes in each header, and the logic, which is still a major blocker for a newbie. Solutions like KoboToolbox, CommCare, and SurveyCTO have created Survey Builders that help new users create forms; however, they abstract so much of ODK that users have no clue what's happening behind the scenes, and the interface becomes an obstacle when dealing with complex logic. So there are two camps: those who need a guided process to build a form use the point-and-click interface, and those who need to create a complex ODK form use Excel. But users have no learning path from the point-and-click interface to mastering ODK.
When I started discussing FormBuilder with our development team, one of them suggested an IDE. Visual Studio is an IDE; it helps new users get up to speed with the code by providing helpers, but it also lets expert users ramp up their code. So we decided to build the first ODK IDE!
In this blog, we show some of FormBuilder's features. You can also see it in action in this video.
A familiar experience
FormBuilder offers a similar experience to working with XLSForm, but with helpers and intelligent abstraction. Column headers have explanatory popups. You can easily translate labels and other elements. Groups and repeats are containers that you access by going inside (like in graphical software), so you don't need to worry about "Closing a group".
Easy navigation
The survey structure is easy to access. Clicking on a question will take you to the corresponding row. If such a question is inside a group or repeat, the interface will open each container group with "breadcrumbs".
Real-time error catching
The interface will tell you if there are errors in the form as you progress.
Question library
Experienced users can write questions directly in the spreadsheet, just like in Excel. New users can use the question library. Our library combines all question types with their appearances and explanations. Adding a question will add it to the survey sheet with the correct appearance.
Intelligent logic
We spent a lot of time getting the logic right. Our logic editor provides full syntax highlighting and helpers to minimize errors. You can test each logic statement independently to assert that it performs as expected.
AI-driven logic
Logic is a major obstacle in the ODK learning curve. New users can write logic in natural language, even for the most challenging tasks. The generated expression includes a confidence level and can be tested.
Logic across the survey is no longer invisible
The "Logic Map" shows how your ODK Form flows from beginning to end and how each question connects to the others.
Users can evaluate logic in real time and visually determine non-reachable sections across the survey.
Enabling a learning path
FormBuilder lets users create a form in minutes and also enables a learning path from newbie to expert because it doesn't abstract ODK; it makes it visible, so users can learn and eventually create a form without any aid.
Like any cool feature in FormShare, FormBuilder is available on all our SaaS plans. I hope you find it as exciting as we felt when we created it.
All product and company names mentioned are trademarks or registered trademarks of their respective owners. FormShare and QLands are not affiliated with, endorsed by, or sponsored by any of them. ODK is free and open-source software, getodk.org.