A programming language is comparable to a simple and weird form of a normal language. For example, if you want to tell your friend, Mark, to go to the store and get some bread, you might say “Mark, go to the store and get some bread.” You may even add a condition, such as “Mark, go to the store, and if you find bread, bring some, otherwise just come back.” In a program, the instructions might go something like this: “Goto Store. If isThereBread == True: Bring Bread. Else ComeBack”. So you can think of programming languages as a convoluted form of the language you speak. However, it is this convoluted form that computers may actually understand. The essence of a programming language is that it’s a set of inputted and defined instructions written by humans (for now) for the purpose of producing a specific and desired output. Of course, not all programming languages are the same, nor are they equal. Different programming languages have different syntax (form of the inputted instructions) and may differ in certain behaviors. To illustrate, Python, a programming language, allows a lot of things that might not be possible in other languages. Moreover, different languages also have different usages. Python is a general purpose programming language due to its aforementioned flexibility as opposed to other languages. SQL, on the other hand, is optimal of managing data inside databases. While there is a variety of programming languages, they generally serve the same purpose: Get input, give output.