Eng:Programming

Programming is a major, complex, and key aspect of project and software creation. It is the process of creating the commands for a project to operate. Scratch is an imperative programming language which uses blocks instead of text. This makes Scratch simpler to learn and easy to use, while still developing the logical reasoning that can be applied to low-level languages.

Programming in Scratch
In Scratch, programming is more commonly referred to as "scripting" because a script is a stack or combination of blocks. The blocks are the code of the project, meaning they tell it what to do. The blocks are represented in JSON, which is interpreted in the ActionScript language.

Scripting is done in the Scripts Area, or the right-most region of the Scratch program when the "Scripts" tab is opened. In the process of programming, blocks are dragged from the block palette and into the scripting area. From there, they can be spread out or adjoined together into a particular formation to meet the project's needs and functions.

Text-Based Programming
Scratch and some other languages are very unique because text-based codes do not need to be written from a syntax for an application or project to be created. In a text-based programming language, coding is done through typing various characters from a syntax, or list of codes readable by a particular language. Some text-based languages include:
 * C++
 * Java
 * ActionScript (Flash)
 * JavaScript
 * Python
 * Common Lisp

Is Advanced Programming Needed?
Scratch, though it is a programming language, does not require the use of advanced programming to make all types of projects. Some projects, such as an art project, may have no scripts at all but be a still image of an artwork created by the user. Scratch is designed to help people program easily as well as convey creativity, in which complicated programming is not always needed.