Small Basic - for those who are just starting

Hello everyone, and special greetings to those who want to start programming and don’t know where to start and which development environment to prefer.
Today I will talk about such a wonderful thing as Small Basic.
And yet, for whom is Small Basic? Logically - for those who want to start programming. In order to start programming, experience is completely unnecessary, but if there is, it is even better.
It would not be very bad if, in passing, at the computer science lessons of high school or students, in addition to Pascal and turbo-BASIC, a clock on Small Basic would be allocated, it would be useful.
First start.

Very nice window, nothing more.
Pleasant moments.

Thanks for that, this is a very convenient thing. Management of arrows, Russian description. Your assigned variables are also supported. The process becomes very enjoyable.
Appendix.
On the microsoft website, and during installation, the initial documentation is also put in, which in a very understandable language will introduce you to Small Basic and the programming process itself.
Unfortunately, SB does not have very big opportunities. But this allows the student, after sufficient mastery of SB, to move to a more professional level.
SB supports the connection of external libraries, which greatly expand the possibilities.
For Russians, there is an official Russian-speaking community of novice programmers. Version 0.8 is also available there.
The advantages are obvious if for everyone the well-known “first application” Hello Word in Small Basic is enough:
TextWindow.WriteLine("hello word")C ++ In pascal
main()
{
cout << "Hello World!" << endl;
return 0;
}program HelloWorld(output);
begin
WriteLn('Hello World!');
end.
Of course you have to choose, but the difference is palpable, although I do not compare C ++ programming with Small Basic, but what to study on
A small example, flying balls.

The most interesting thing is that the program is only 15 lines long:
For i = 1 To 100
balls[i] = Shapes.AddEllipse(10, 10)
EndFor
While "True"
For i = 1 To 100
ball = balls[i]
x = Math.GetRandomNumber(640)
y = Math.GetRandomNumber(480)
Shapes.Animate(ball, x, y, 2000)
EndFor
Program.Delay(1900)
EndWhile
Now, let's analyze the code.
The source code can be divided into 2 parts.
The first For operation is a loop, with the help of this loop we will set our variable to the initial and final value, the growth of the variable will be done automatically by the computer.
In the loop we add a variable, call it “balls”, and inside the variable we give the SB command “Shapes”, it allows you to add, move and rotate shapes, add “AddEllipse” operation to the object (Shapes) which serves to add an ellipse with a given height and the width. The cycle ends with the EndFor command.
In the second part of the code, we again use a loop, but of a different construction. Another construction is necessary if the counter-loop variable is not known in advance, if the For loop is executed as many times as we set, then the While loop is executed until it fulfills the condition.
In the While loop, we include the For loop, in which we create a ball variable equal to balls [i] (i - all values are from 1 to 100).
Add variables for the x and y coordinates. To do this, we use the Math class, which provides many mathematical operations. We assign the GetRandomNumber operation to the class, which gives a random number in the given parameter maxNumber, which in turn we will indicate in brackets.
Then again we give the SB command “Shapes”, but this time we attribute the Animate operation, which moves the figure (ball) with the animation to a new position (x, y) and set the animation time in seconds 2000. End the For loop with the EndFor command.
We use the Program class, which serves to control the application itself, assign the Delay operation to it, which delays the execution of the program by 1900 ms. Finally, we stop the While loop with the EndWhile command.
We start the program with the F5 button. The actions are approximately the following:
Loop cycle from 1 to 100 for the balls variable, which draws a 10x10 ellipse, the end of the cycle. Drawing a bunch of ellipses.
So, drew ellipses, so - program delay (Program.Delay (1900) ms). While loop, which scatters ellipses at x, y coordinates (which are set randomly, recall Math.GetRandomNumber), the animation time is 2000 ms. We are waiting - we repeat. We are waiting - we repeat.
The only problem is the size, the size of even such a small program is 236 KB, but due to the fact that to run * .exe, you need the SmallBasicLibrary.dll dll-library, without it the program size is only 3kb.