When is cookie cutter good?

One of the complaints I read the most about low-code tools or code generators in general is that they are too “cookie cutter”. I just made a google search to find the advantages and disadvantages of actual cookie cutters and I think they share some with low-code tools. Let us look at some desirable characteristics of cookie cutters:

  • They easily cut complex details
  • They are flexible enough to allow easy cleaning

Of course, the main attractive of cookie cutters is that they allow to make a certain cookie design in a very predictable, easy and reproducible way.

Continue Reading

What is MDE?

In a previous post I presented what low-code is, and also pointed to a paper explaning the difference between low-code and MDE (Model-Driven Engineering). However, I have not presented what is MDE. In this post I want to correct that.

MDE is a well-studied subject, and there are definitions in academia. I will follow the definition given by David Ameller1 and others. There is also the excellent site by Jordi Cabot that also gives a definition for these terms, you can find the relevant posts here and here.

Continue Reading

Low-code development vs. MDE

Today I want to share with you this excellent article about MDE (Model-Driven Engineering) and low-code platforms that I found through Twitter. The article is titled Low-code development and model-driven engineering: Two sides of the same coin?.

The paper explores the commonalities and differences of the two approaches and throws very good insights on the different concepts. I let you read it by yourself.

Let me know what you think!

Continue Reading

The main problem you will face when choosing a low-code platform

Today I found thread on reddit about a programmer being put on a no-code project and having a very bad time with it. The complaint from the OP was that PMs/managers promised things that are not deliverable with the low-code tools. The comments were very interesting and there was some discussion that not all low-code platform are made equal, some are very extensible while other are useful only for a set of use cases.

Continue Reading

How to specify features when dealing with textual DSLs

Today I will be discussing how to do specify features when dealing with textual DSLs. There is nothing more soul draining than a feature that takes forever to implement because the scope is not well defined. The problem is that there is no standard way to specify a language without diving into grammars and formal semantics. Grammars and formal semantics are precise, but precision and clarity are complementary concepts, the more you get of one, the less you get of the other. Contrary to standard applications, you cannot just write a use case for a language feature. However, here I’m a proposing a different way that I explain the following paragraphs. I believe that having a standardized way of specifying features is a big time saver for an organization.

Continue Reading