The rise of low-code/no-code platforms allow anyone to easily create mobile apps. In the low-code/no-code mobile apps development space, three notable platforms are MIT App Inventor, Thunkable, and Kodular. Both Thunkable and Kodular originated from MIT App Inventor, hence they all have similar interfaces and mechanics on the app building process. MIT App Inventor is maintained by Massachusetts Institute of Technology for educational purposes while the latter two aimed to help users create commercial applications.
All three platforms use Google’s Blockly visual programming language as their foundation for app development. Even though no code needs to be “written” and the complex programming syntax is abstracted away with Blockly, users ought to understand the fundamental concepts of programming in order to achieve different results effectively. Here are some of the fundamental concepts in programming that will help you in your app building process:
You learn these programming concepts with our interactive Blockly programming platform.
Variables & Data Types
In computer programming, a variable or scalar is a storage location (identified by a memory address) paired with an associated symbolic name, which contains some known or unknown quantity of information referred to as a value.
– Wikipedia
You can think of variables as containers used to store information during a program execution. We can retrieve the information and reuse them throughout our program. Different programming languages have different ways of creating variables inside a program. In programming languages such as C, C++, and Java, data type of the variable need to be specified during creation and you will only be able to store the specified data into the variable. However, in Blockly we do not need to specify the data type and variable can be used to store any type of value. This is similar to programming languages such as JavaScript, Python, and PHP. Some of the basic data types in Blockly:
Primitive Data Type
- String
- Number
- Boolean
- null / undefined (special data types)
Composite Data Type
- Object / Dictionary
- Array / List
- Function / Procedure (Not assignable in Blockly)
Examples of creating variables with different data types in Kodular.

Operators
Operators are used to perform mathematical, relational or logical operation. We can combine more than one math operator to perform a more complex calculation. Computation of result follows convention math precedence that is:
- Parentheses
- Exponents
- Multiplication and Division
- Addition and Subtraction
Mathematic Operators

Relational Operators

A relational operator is used to create conditional expression which will return a Boolean – either true or false. Using it with if statements, we will be able to create algorithms where program can make decision to execute different code based on the given conditional expression.
Conditionals
In programming, conditional statements are used to decide different computations at run time. There are several types of conditional statements:
- if statement
- if…else statement
- if…else if…else statement
- switch statement (not available in Blockly)
The if statement checks whether a given conditional expression evaluates to true, if so, the statement will be executed.

If the conditional expression of an if statement evaluates to false, then the else statement will be executed.

The else if statement adds another condition to check when the first if statement is false.

Iteration / Loops
In programming is used to repeat a block of code until a specific condition is met. There are two main types of loop:
- for loop
- while loop
A for loop requires an initialization statement to declare a loop control variable, a test statement to test against the variable and an increment statement to update the variable. The test statement will be evaluated after every loop and if it is true, the process repeat itself. In the example below, the code blocks in the for loop will be executed for 5 times.

A while loop allows code to be executed repeatedly until a given conditional expression is evaluated as false.

Function / Procedure
Even a simple computer program contains hundreds if not thousands of lines of code. Most of the time, part of these codes is repeated. Instead of typing out the same instructions over and over, we can group them into chunks called function or procedure. Value can also be passed into a function as variables, they are also known as parameters.

Function can have return values – the values that a function returns when it has completed.

Conclusion
In order to develop any logic in your mobile app using either Kodular, Thunkable or MIT App Inventor, understanding the basic concepts of programming give you the ability to achieve it effectively. Diving in without the fundamentals is like solving complex equations without know basic algebra. Our interactive block-based coding platform is designed to help students learn the fundamentals so that they have the skill to build more advance application.