In mathematics, a radical is the symbol used to indicate the square (or cube, or other) root operation. In chemistry, a radical (sometimes called a “free radical”) is an atom, ion, or molecule that has an unpaired valence electron, and thus is highly reactive. In politics, a radical is one who subscribes to extremist viewpoints. In youth culture, something radical is just far out, dude. Except their way to hip to go to the trouble of pronouncing all those syllables, so radical is just “rad.”
In software development, RAD (for “rapid application development”) is radical too, in that it’s a departure from traditional development approaches.
Putting the “Radical” in RAD
If you see the phrase “rapid application development” and immediately think “Agile,” you’re sadly mistaken. Although the Agile methodology does speed up the development process, it still involves writing code. RAD, by contrast, takes the concept a step further by hiding much of the actual coding. RAD platforms enable users, with little or no coding experience, to build applications by dragging and dropping elements into place and using point-and-click methods to configure the behavior and implement the underlying business logic. With RAD, “citizen developers” (that is, pretty much anyone) can build working applications in short order.
Since their first appearance a few years ago, a number of providers have introduced RAD platforms (also known as “low-code” or “no-code” development platforms). Some are supported by industry heavyweights such as Microsoft, Google, and Salesforce, and others by smaller companies and startups. It doesn’t seem to be a passing fad; by some estimates, the market for RAD platforms is expected to exceed $20 billion in the next few years.
Most RAD platforms have the following user-friendly features, among others.
- A drag-and-drop, WYSIWYG interface that makes placing and configuring buttons, data-entry fields, drop-down lists, and other user interface elements a snap
- Workflow modeling that simplifies the task of defining the user’s path through the application
- Pre-built templates for common application types
- Database integration, which is almost indispensable for any modern app
- Lots of documentation, training courses, and other sources of assistance
Here are some of the RAD platforms that are popular today.
- Quick Base: Formerly a part of accounting software giant Intuit, Quick Base is now a standalone company with a compelling, database-centric RAD solution. Quick Base enables users to build simple or complex data models using an intuitive interface and then layer simple applications on top.
- Google App Maker: With a clean, intuitive interface and the ability to create basic apps with no coding at all, Google’s App Maker ranks among the top contenders for ease of use. It’s part of Google’s G Suite Business offering.
- ZOHO Creator: This platform strikes a balance between “low-code” and “no-code.” Most basic apps can be built without coding; implementing more advanced or custom features require the use of ZOHO’s proprietary Deluge scripting language.
- Appian Quick Apps: Although more expensive than other offerings, Appian Quick Apps is a more comprehensive solution that provides a collaborative development environment for designers, developers, and testers in one package.
- Microsoft PowerApps: A relatively recent entrant in the RAD platform space, Microsoft PowerApps has quickly gained positive reviews and an enthusiastic user community. It sports an easy-to-use interface and numerous powerful features for citizen developers and coders alike.
- Salesforce App Cloud: This powerful platform is designed to extend the popular Salesforce customer-relationship management solution. As such, it’s something of a niche solution, but it can address a wide range of needs for businesses of all sizes in all industries.
What’s Next for RAD Platforms
RAD platforms have come a long way in just a few short years, but there is still much room for improvement.
RAD platforms have peculiar challenges and somewhat conflicting requirements. You want a tool that’s accessible to someone with no coding experience, little or no knowledge of database concepts, and a potentially poor understanding of user interface design, and still somehow produce real, useful usable apps. How do you do this without “dumbing it down” so much that the end products are laughably trivial? How do you enable app customization that doesn’t require extensive coding?
Other challenges around RAD platforms involve app security. How do you ensure that apps built and published by citizen developers don’t expose company data resources to hackers? How do you ensure the app has robust authentication and authorization features?
The RAD platform field is crowded at present, with many providers trying to differentiate themselves in the market. In the near future, look for continued innovations in both usability and flexibility, with clever ways to enable increasingly advanced app capabilities with little or no coding.
At the same time, some of the more popular platforms make it easy for technical contributors to ply their skills alongside their less-technical peers. Look for further innovations that encourage collaboration among designers, coders, testers, end users, and other stakeholders.
Further along these lines, tools that help with app development project management would seem a natural fit for advanced RAD platforms. Look for features that enable management of sprints, backlog items, and other typical Agile aspects.
The evolution of RAD platforms continues. This is an exciting area that promises to make app development even easier, opening it up for businesses of all sizes and of all levels of development expertise.
RAD platforms will always have limits beyond which actual coding must be performed. Those of us who make our living by writing code won’t be put out of business—in fact, we see RAD platforms as a way to involve more stakeholders in the process, automating the simpler parts of app development and leaving the more challenging parts to code developers. As such, we welcome these tools and look forward to making them an integral part of the app development process.