Machine code, or simply code, is the language that computers understand and in which they accept instructions. Coding, or developing machine code, is at the heart of computers, robotics, artificial intelligence, websites, apps, games, and more. In step with a burgeoning interest in coding among children and young people across the country, HT Codeathon, a Hindustan Times initiative, offers a stepping stone for success in our technology-run world.
Computers are everywhere and our daily lives are intricately interwoven with their presence. It’s almost impossible to imagine life without computers and technology. Computers impact everything – from communication, science, banking, transport and entertainment to smartphones and smart homes. In the current scenario, it’s important for all students to gain knowledge of computing.
A computer is a device for working with information or data. The information can be numbers, words, pictures, movies, images. Computers can store and display data, as well as process huge amounts of data. ‘Networks’ connect computers to each other.
How computers work
Computers operate in Binary, meaning they store data and perform calculations using only the two numbers 0 and 1, which are essentially ‘on’ or ‘off’. Strings of 0s and 1s stand for letters and all the data, but these patterns may be really big, hence computer software use special programming languages to write instructions for the computer, and the computer turns the programming languages into number patterns.
Computing and Programming
Computing is any activity that uses computers to manage, process, and communicate information. It includes both hardware and software. Programming is writing a group of instructions for a computer to execute. These instructions consist of ‘algorithms’, which are a series of steps used to cut down a problem into small chunks. The instructions tell the computer how to process data.
What is a programming language?
Programming languages are code designed to communicate instructions to a computer using procedures or algorithms. Coders use different programming languages, with each language specialising in a particular aspect of programming.
For instance, JavaScript is great for websites, whereas Python is good for data analysis.
Common programming languages
C++: It is an object-oriented programming. It allows a code to be reused many times and is an efficient language.
C: It is a basic programming language, commonly used for game programming
Java: It is an object-oriented programming. It is a multi-platform language and is very helpful with networking.
Python: It is a general-purpose programming language. It is often employed in fields such as Data Sciences.
JavaScript: This multi-paradigm programming language enables interactive web pages and is an essential part of web applications. Most websites use it for client-side page behaviour.
When can children start?
Nowadays, children learn coding in primary schools. Younger programmers start with ‘block-based’ programming, where the creator issues instructions by dragging and dropping blocks of commands. It’s easy compared to text-based coding as one doesn’t need to remember syntax and can reuse blocks of prewritten instructions.
Scratch, developed by MIT Media Labs, is the most popular block-based language which encourages the sharing and reuse of code, as indicated by the team slogan, ‘Imagine, Program, Share’. Blockly, from Google, is another visual block-based language. Lua is a scripting language which is popular for teaching text based coding to younger children. It is widely used for IOS and Android game and app development as well. The popular Angry Birds game was created using Lua.
Unity is a cross platform gaming engine that can be used to create 3D, virtual reality, and augmented reality games and simulations.
Why is coding beneficial to young minds?
Some students love coding, whereas others fear it, considering it to be too technical. But a student who learns these skills also builds skills in complex problem solving, collaboration, innovation, communication, math concepts, logic, and other skills.
Computers are the way of the future. In addition to career prospects in fields like Software Development, Data Sciences and Statistical Analysis, there are also newly emerging fields such as Artificial Intelligence, Machine Learning, Game Development, App development, Internet of Things (IOT), Augmented Reality (AR), Cyber Security etc. Students especially are very interested in App development, also in coding in conjunction with robotics and coding for 3D design using software such as Tinkercad and Fusion 360.
Why should one learn coding?
A student who learns coding enjoys many advantages, some of which are:
It enables a person to solve complex, challenging problems
As a career option, coding can be very lucrative indeed. Coders are in high demand
It gives opportunities for innovation and creativity
Sharpens one’s math concepts such as variables
Strengthens one’s aptitude in logic such as sequencing as well as cause and effect
Teaches problem-solving techniques
Enhances project design capabilities such as the importance of breaking down big ideas to specific tasks
Instils an ability to take criticism as well as identify and fix errors
Builds perseverance in the face of difficulty
(Written by Mila Mitra, Academic Head, STEM & Space and Netra Hirani, Student, Thapar University. Views expressed here are personal)