Scratch – Learn computer programming
Scratch has been around for quite some time now. I was introduced to this tool by Harvard’s CS50x. Scratch calls itself a block-based visual programming language. The original purpose of the tool was to teach programming concepts to small children, but the tool has been well perceived by adults too. The tool has helped many students understand the basic concepts of computer programming without writing an actual line of code. There are numerous projects already created on Scratch, and the best part is that you can view, play, or even edit existing projects. This gives you a good idea about how the tool works and what are the possibilities it can be used in. Since the tool is intended for beginners and children, it comes with a very simple to use and quite interactive UI. You can create a new project and start working as is; you do not need to sign-up to use Scratch. The most basic element or the actor inside a Scratch project is a Sprite. You can add as many sprites and control them accordingly. There are a lot of Sprites built into the tool, and you can even upload custom ones from your computer. Once you are done adding Sprites, you can choose the background of the stage and customize the visuals of your Scratch project. Now it is time to add the real logic so that your Sprites act as intended. All the code-blocks are available on the left menu, and you can drag a suitable block into the working area. You can connect as many blocks you’d like. The motivation behind this is to create a working logic that guides your Sprite about the rules of the environment. The blocks are well-categorized into Motion, Looks, Sound, Events, Control, Sensing, Operators, and Variables. Motion blocks can help you move around your Sprite. Looks can define how the character appears; you can change a character’s costume or colors programmatically. Sound blocks can play sounds, increase volume, etc. Scratch has plenty of sounds built into it, but you can also upload or record custom sounds. Events block are a good way to make a Sprite react to an event. There are a lot of event blocks available including the most popular When Green Flag Clicked event. Control blocks let you create if-else or looping logic within other blocks. Sensing blocks are again a good way to sense environment and events. Operators give you access to common arithmetic and logical operators. Variables contain all the block that would let you save and access some data to general purpose variables. If the inbuilt blocks don’t seem to solve your purpose, you can create your blocks as well. Custom blocks are available under My Blocks. Scratch is undoubtedly a very good tool to start your computer programming journey. It is a good tool for both children as well as adults. The easy to use interface and the concept of stacking pre-programmed blocks works very well and a result of which, you can see many interesting projects on the Scratch website.