Visual Mobile App Development
Options and alternatives for the rise of NO code development.
¿Remember Macromedia? I built my first website with Dreamweaver, a WYSIWYG site builder that became popular during my teenage years. It was awesome. I think is still available under de Adobe’s umbrella offering.
Well, the idea behind Dreamweaver was/is to deliver good looking dynamic web sites in a shorter time, with some sort of snippets code in ASP, PHP, JSP, and ColdFusion, pretty ambitious but really cool for that time. With some integration with other programs like Fireworks, Flash, Contribute they used to reduce drastically the delivery and maintenance times. Adobe bought in 2011 a company called Nitobi, and rebranded it as Phonegap, so it was one of the first options to deliver cross platform apps with the eye candy, and later released an open source version of the software called Apache Cordova.
So the idea is not new.
Nowadays we can see a lot of alternatives for web & mobile non-code visual development, I’m going to focus only in mobile development. Maybe some tools or platforms can deliver to both options. But let’s keep it simply.
We can see a explosive growing number of tools and platforms, even a Congress held in San Francisco, CA, USA about non-code dev or RAD (rapid application development), or visual app development, whatever you name it.
But I wonder if there is a trap or a only one-way road that you can’t never come back. Do you still have the control at some point ? can you add your own components? are they easily integrated ? are they performant or just because they are part of a bigger black box we don’t know or we don’t even care? can we optimize this apps? how much time do we reduce our development time ? and finally, is a real option or maybe is just better to keep our distance? in conclusion build or buy?
In my search and with no surprise I found a lot of options, can say there is a explosion or tendency, maybe we can separate the offering in 2 groups.
Cloud based platforms.
You don’t have to install anything, everything is on the cloud, you just need the browser and of course internet connection. The advantage is precisely that, that you don’t have install anything, the disadvantage you don’t have too much control, in most cases you can’t touch the code, so you are limited to the platform features, templates, connections, integrations, etc. So if you don’t know nothing about programming go for this.
Goode examples are (in no specific order).
A lot of this No code Movement is due to the API growth as a business. Now we can connect everything with everything and make complex workflows and deliver applications connected trough the APIS, by instance we can mention, Zapier, Parabola, Integromat, Workato, IFTTT, etc, etc, just to say a few.
Low Code or RAD Tools.
You have to install a client, IDE or something in your machine, you have code control but there is an interface (most of the cases a XML generated UI interface or a declarative interface) where you can make an app almost without coding, the common business scenarios are supported but you still can code your own features or what you need and in some point some server side, database connectivity, or cloud integration.
As a developer I want to explore the alternatives where I can code and be more productive at the same time.
Qt has been in the market lot of years, is rock solid, development of Qt was started in 1990 and of course the Qt Company is the main driver behind Qt. But it was until 2018 that they released Qt Design Studio, which closes the gap between designers and developers.
Qt is a cross-platform application development framework for desktop, embedded and mobile
In Qt you can import your design from two of the most populars prototype tools in the UI/UX market, Sketch and the old Photoshop. I personally use Sketch.
C++ is though, I mean is not a programming language that you learn in one night, but is worth it, you additionally have the option to deliver embedded applications.
Embarcadero RAD Studio
It was founded in 1993, went public in 2000, and private in 2007, and became a division of Idera Software in 2015.
RAD Studio is a pretty solid alternative, but I think the problem is that you must dominate Delphi, this could be a problem, to hire some Delphi programmers. As an alternative you can code in C++ but in this case I’ll rather use QT.
Based on a recent webinar, I asked, and there is no a visual easy integration with Graph DataBases, just SOAP (pain in the ass) and of course REST.
RAD Studio is not free, neither RAD Server, neither de Embarcadero DataBase Interbase.
It was several years ago when I tried this product, at this moment generated code was pretty messy and to add some custom code or modify the existing one was a real pain. I don’t know if it is better now and I just don’t want to try it again.
The company was founded in 2005 and was acquired by Siemens in 2019.
The Mendix application platform is based on visual, model-driven software development and perhaps maybe have to be in the cloud based category, but what I like about Mendix is that you have some sort of control, I mean you can code, front and back.
But “Where can I see the generated code?”. The answer is “There is no code! The runtime interprets the model and produces your application. But, this doesn’t mean you can’t use code to extend your model”.
Yu can start using Mendix for free but if you need some thing else, like a on premise installation, support for CI/CD integration, automated backups, yes, you have to pay.
Oracle Visual Builder
Again, you don’t have to install anything, just use you browser.
If you currently use other Oracle products this is a good option, you can create applications that integrates with Oracle SaaS using Fusion Applications REST services pretty easy.
We all know that Oracle is stupidly expensive. If you don’t have access to the Oracle products and/or cloud don’t go this way.
I just realize (writing this article) that Oracle also owns Oracle Apex — Oracle Application Express, this tool enables you to design, develop and deploy beautiful, responsive, database-driven applications using only your web browser according to them.
One of the greatest advantages of Oracle APEX is that you have native access to all the capabilities of Oracle Database.
I’m not a huge fan of Oracle and I really don’t know the reason for having to similar products, but until I know, PL/SQL Developers PL/SQL (Procedural Language/Structured Query Language) is Oracle Corporation’s procedural extension for SQL and the Oracle RDBMS and is widely using by developers worldwide for database design and development and also in APEX and of course in Oracle, in contrast we can use a declarative JS development in Oracle Visual Builder.
I see this tools like more focused to extend Oracle capabilities or functionality, not as a general purpose app maker.
Adobe ColdFusion Builder
Adobe ColdFusion is a commercial rapid web-application development platform created by J. J. Allaire in 1995. I’m not going in the direction that “Coldfusion is unpopular”. I think is a good alternative and the CFML markup language boots productivity.
ColdFusion Builder is an IDE for delivering Rapid Application Development (RAD) using ColdFusion Enterprise or Standard server. Since ColdFusion Builder is based on Eclipse, it works easily with other Eclipse plugins.
I’m not pretty sure you can deliver a complete app without coding, but for sure the tag based language speed up the process.
Certainly the ColdFusion server is not free, they offer a developer free edition but the complete enterprise license cost around $12,500 USD. As an alternative you can install Lucee an open source project to run CFML scripting.
But to be honest it can be hard to hire a ColdFusion developer.
According to Xojo’s website.
Xojo, Inc. was founded in 1997 with the idea that software development should be accessible to anyone. With traditional tools, creating apps can be a very complicated process, but using Xojo anyone can learn to create high quality, native apps for the Desktop (macOS, Windows, Linux), Web, iOS (iPad/iPhone) and Raspberry Pi. Xojo also offers Xojo Cloud, which is easy, secure and maintenance-free web application hosting.
Xojo is made up of a rich set of graphical user interface objects, a modern object-oriented language, an integrated debugger, and a multi-platform compiler but Android support is not released yet, a major setback in my opinion.
Well the first and obvious conclusion is to use the tool that suits you. If you are a C++ coder go with Qt, if by any chance you know Pascal(if you have my age for instance), Delphi and Embarcadero is your way.
And as I said lines above, if you don’t know nothing about programming or don’t want to deal with code go for the cloud /web based options.
According to Gartner, by 2022, citizen developers will be building more than a third of all web and mobile employee-facing apps delivered in organizations with mature citizen development initiatives (Gartner Inc., “Market Guide for Rapid Mobile App Development Tools,” November 30, 2017, Jason Wong). Gartner recognized Mendix as a top player in the Low-Code Development Platforms arena.
Oracle Apex and Oracle Visual Coder are more like niche solutions in my understanding, so use it if you have other Oracle solutions, something similar to SAP Visual Composer, which doesn’t make sense if you don’t have other SAP modules available to interact with, or like Kendo Builder, it only fits for rapid development if you have a Progress Open Edge installation.
And we can keep going and going.
I know there are a lot more options maybe I don’t even know they exist, maybe you can drop a line or two and include them in a comment in order to in a future article revision/ update include them.
- The low Code Manifesto by Mendix.
- Model Driven engineering
- Fusion Applications REST services
- Moving Adobe Coldfusion to Lucee
I saw this comment in other article about the same topic, it makes sense to me.