Origins of Software
As of 2018, 11.6 million, or 92% of American households reported having access to a computer (NCES). In the modern world, computers are valued as an indispensable resource, used in everyday life to connect with others, browse the web, and even play games. Performing the various tasks asked of a computer requires a system to process input and configure output. However, computers can only process information in machine language or binary consisting of only 1s and 0s. Machine language limits communication complexity with computers. High-Level Languages (HLL) were developed to help translate human language to computer binary. Common programming languages such as Java, C, C++, and Python are all HLLs that compile human source code to binary code the computer understands.
Image of the first programmable computer (ENIAC)
Source: Wikipedia Commons
Common Applications of Software
Over 300 programming languages are used today (source), each with unique advantages and disadvantages. Depending on the project, developers may alternate the language they are writing in to harness the benefits of one language as it relates to their goals. The most common applications of HLL are listed below:
C Language: C is a highly structured language with powerful computing capabilities. It is commonly used in developing software operating systems, mathematical calculations, microcontrollers, and embedded systems. It is one of the most challenging languages to learn, but because many other languages are based in C, after becoming proficient it will be easier to pick up other languages. Learn to code in C for free here.
HyperText Markup Language (HTML): HTML is commonly used in web development and formatting. This language structures content in web pages as paragraphs, bullets, or tables. HTML is a relatively simple language to learn and is the foundation of the web pages you see today. Learn how to code in HTML for free here.
Python: Python is an object-oriented program (OOP) commonly used to automate tasks, run data analyses and build websites. It is an excellent language to learn first as it has very concise syntax with a general purpose. Python is the most common program used in Artificial Intelligence (AI) and Machine Learning (ML) with extensive libraries for Natural Language Processing (NLP). Learn more about creating a neural network with Python here. Learn how to code in Python for free here. Visit NLTK libraries for an introduction to working with human language data here.
Swift: Swift is a program developed by Apple. It is used to develop iOS apps. It has a faster processing ability than Python (8.4x faster) and is an open-source code rising in demand. Learn how to code in Swift for free here.
How to start programming
Beginning to code may seem daunting. Given the mass of available languages, it may be challenging to choose what to learn. Common first languages are Java, C, and Python due to their versatility, but you may want to look into specific advantages of one program over another depending on your development goals. There are many programs available to students interested in coding. Some common resources include CodeAcademy, Coursera, Girls Who Code, Repl. it, GitHub, Khan Academy, and edX (CS50 recommended as an introduction).
Example of a Arduino Project based in C++
Source: Wikipedia Commons
Taking yourself out of your comfort zone when learning to code is crucial, as that is how you will grow! Take classes at school or online involving programming, take on large Arduino projects (see here) that implement coding, and don’t be afraid to make mistakes, as that is how developers learn.
Comments