Almost 10 years after its launch, about 200,000 people still use a Xiaomi Mi 2

What are 'low-code' and 'no-code' programming, what are the differences and how are they democratizing the creation of applications




According to the consultancy IDC, Between now and 2023, more than 500 million applications will be developed and implemented, as many as in the previous 40 years. Given that the number of developers has not experienced similar growth in the least, responding to this growing demand inevitably involves giving less advanced users the tools to be able to create their own applications.



That, of course, requires minimizing the importance of coding when developing them. And that's where they come in two concepts on the rise in recent years and that, according to a recent Research and Markets report, within 9 years they could be generating revenues of 187,000 million dollars, compared to the 10,900 million they generated in 2019 ...



These concepts are 'no-code' and 'low-code', and we will find them mentioned jointly in multiple sources because, quite simply, the border between the two is not always clear.




"Programming is not about writing, but about thinking" (Chris Wanstrath, CEO of GitHub)




Both low-code and no-code solutions offer everything you need to create an application quickly and relatively easily, usually with a development environment of a primarily visual nature (for example, by dragging and dropping blocks, as in programming learning systems for children).



However, there are differences between them.







Teach a Child to Code with Scratch from Scratch: Tips, Tutorials, and Videos







  • Low-Code: It requires some prior knowledge of 'traditional' programming. As its name suggests ('low code' in Spanish), they still require coding, although this is occasional and / or with a very simple syntax. The aim of this approach is to accelerate the development and deployment of each application by allowing programmers focus their efforts on that 10% of it that makes it different from other similar ones, and that is the portion of it that adds value to the customer.


  • No-Code: In contrast, no-code programming is intended for use by business users or by so-called 'citizen developers'; this is, by people who do not know (or need to know) any 'traditional' programming language to be able to develop a tool.







The programmer career in 2017 and in the future (with Javier Santana)

An example and some drawbacks



An example of this kind of tool is Microsoft's Power Apps platform, which recently announced the integration of artificial intelligence in it to be able to 'code' by giving instructions in natural language that are later translated into code programming by the platform. So, instructions like




"find products whose name includes 'for kids'"




they turn into




"Filter ('BC Orders' Left ('Product Name', 4) =" for children ")"




in its own language Power Fx, which in itself constitutes an example of simplified programming aimed at business users.



Most of these solutions focus on creating applications with very specific purposes and operation, with little scope for customization and, above all, for optimization. In addition, both low-code and no-code suffer from another disadvantage: the potential security issues derived from the fact that companies that implement an application do not know 'the guts'.



A not so revolutionary change



And the very existence of these 'guts' are also a reminder that low-code and no-code they have not landed on the market to expel traditional programmers from itThese will continue to be needed to program the tools that allow 'citizen programmers' to create applications.



On the other hand, if we think about it, For decades now, no-code and low-code tools have played a leading role in our day to day as computer users, only that we have not called them that until now because they did not compete with programming languages, but with markup languages.





Html Low Code


What Power Apps is to corporate applications, CMS has been for the web for years: everything is about making technology accessible to those who do not know how to program.



Thus, without going any further, web content managers such as Wordpress, Drupal, Blospot or Wix would be - depending on the case - low-code or no-code tools compared to traditional web programming (HTML + CSS + Javascript + PHP): an example of 'democratization' in the creation of 'web applications', now available to non-programmers.



And on the other hand,what are - if not non-code solutions - WYSIWYG word processors with respect to technologies such as LaTeX / PostScript, still in force but relegated to use by expert users, when creating documents with layout and graphic elements?