Common Programming Languages

Most Common Programming Languages today

Since we've had computers, there has been coding and they have developed over time to a few most common programming languages mostly used today. The first true computer, ENIAC, which took up several large rooms, was interfaced with a lot of cables similar to what old fashioned telephone operators used to use. Later computers used punch cards and other means to input their languages, but as computers have become more complex, the way in which we communicate with computers has evolved as well. We have developed thousands of programming languages to tell the computers what to do. We will touch on the most recent and relevant.

The most Common Coding Languages to DatePie Chart displaying the Most commonly used coding languages to date for Developers

As we said, there are thousands of languages. The most common languages right now are C and C++, Java, JavaScript, Visual Basic, PHP, SQL, and XML.

  • C: An old but very versatile and powerful language. Skip to C 
  • C++: Which means “C plus one” and is a version of C aimed at Object Oriented Programming (OOP) which we will discuss later. Skip to C++ 
  • Objective C: An object-oriented language derived from C that is used for embedded programming especially on iOS devices Skip to Objective C 
  • Swift: An Apple designed version of Objective C designed to be used in Xcode, an IDE for developing iOS applications Skip to Swift 
  • Java: An OOP language designed for Write-Once-Run-Anywhere programming, where programs will run regardless of operating system or version. Some recent additions to Java defeat this goal, but it is still a popular language because of this portability. It is also used to build Web applications. A smaller version known as the Android Software Development Kit is used to program Android apps. Skip to Java 
  • JavaScript: A “light” version of Java designed to be interpreted by a web browser instead of being run on a computer. It provides the capability for dynamic content in otherwise static Web pages. Skip to JavaScript 
  • Python: An English like language that is very versatile, powerful, and easy to learn. Skip to Python 
  • Ruby:, Like Python, is a versatile English like language used primarily for developing server applications. Skip to Ruby 
  • Visual Basic: A version of Basic that is largely graphically generated and then the code behind the graphics is added to perform the function. For example, you make an “OK” button in the visual editor and then tell it to add two to a number every time it is pressed by writing code. Skip to Visual Basic 
  • C#: A modified version of C and C++ developed by Microsoft for their .NET development and optimized for the web and web applications. Skip to C# 
  • SQL: Which stands for Structured Query Language, is a relational database that uses a series of queries and for Web developers has become a language by itself. It is available in both the commercial versions of SQL Server and in MySQL, a lightweight personal SQL server aimed at open-source web development. Skip to SQL
  •  PHP: Personal Home Page, which is a scripting language used to create dynamic Web pages. Much like JavaScript, the code is imbedded in regular web pages and interpreted by the web browser. Skip to PHP 

What is a Programming Language?Explanation of what exactly is code programming language

A computer only knows two things: Off, or zero, and on, or one. The processor in your computer is a silicon chip etched with literally billions of transistors that act as switches and handle the 1's and 0's or bits in bigger chunks, but machines still operate in this binary language, also known as binary code.

A programming language is a set of instructions that you give a computer that it can either directly understand (machine language) or can be turned into machine language (compiled). Old computers were only 8 bit so they could handle one letter at a time—in the old ASCII alphabet (American Standard Code for Information Interchange)—which was developed for an 8 bit computer, only 256 letters could exist. 8 bits is 28-1 or 0-256. Computers became 16 bit, then 32 bit by the 1990s, and today almost all computers and operating systems are 64 bit.

A lot of rules that were developed back when saving a letter meant saving disk space still exist, even though now memory and processing power exceed the needs of the vast majority of computer programs. We refer to these rules as conventions meaning that they are good practice.

 

The Most Common Coding Language: C

One of the most common programming languages out there is C. Developed by Dennis Ritchie from 1969 to 1973 C is probably the oldest programming language that is still extremely relevant today. In fact, if you intend to become a developer of other than Web sites and script development, it is probably one of the first languages recommended to learn because it is like the Latin of programming languages. It is the basis for the syntax, or the way we write, the programs that we do. A sample program in C might look something like this:

# import  
int main (char [] argv) {
     printf (“Hello, World!”);
     return (0);
}

A sample C program that prints the words Hello, World! on the screen. #import means to use a library of pre-made functions called “headers” so you don’t have to write the basic structures and data types of the language from scratch. The main function itself is a numerical function like math! The main() function returns 0 to the system to say, “I am done, and I’m ok.” Other numbers indicate errors.

C is still in extremely heavy use, and is referred to as a “low-level” language, meaning that it’s easy to convert into machine code (1s and 0s). Other low level languages include Fortran, COBOL, and Assembly. Of those, only Assembly is still in much use and is generally only used when a higher level language such as C cannot be used; Fortran was an early language for science and COBOL was designed for business and retail and while it is still in use it is being phased out in favor of more modern languages.

C++: Object-Oriented Programming

C++ is probably the best example of this, but it allows the concept of objects. That is, we manipulate data as though it is a tangible thing. When you write an object-oriented program, objects are just designed-to-order variables using things called “classes”.

class Box
	{
		public:
			double length; 		// Length of a box
			double breadth;	//Breadth of a box
			double height;		//Height of a box
	}

The above class creates an object called Box. This gives us a good look at the way an object mimics a real world object—this is what we would call a container class, and it gives the length, breadth, and depth of a box. These attributes are all put into a cohesive data structure called Box which allows us in the below example to create a virtual Box and modify the dimensions.

Box A; //make a Box named A
Box B; //make a Box named B
Box C; //make a Box named C
A.length = 10; // make A’s length variable 10
A.breadth = 5; // make A’s breadth variable 5
A.depth = 6; // make A’s depth variable 6
B.length = A.length // Set the length of B to A’s length
B.breadth = 2*A.breadth;
B.depth = A.depth -1;
C.length = A.length + B.length // Once again, using relations—we take A and B combined length
C.breadth = A.breadth / B.breadth;
C.depth = A.depth * B.depth;

The first box is declared literally, meaning we just use numbers. The second box uses A’s attributes in the definition, and the third box uses both. The “objects” are still just made up of placeholders called variables that hold numbers, but each Box keeps track of a set of variables. An object can be simple, or endlessly complex, but all we have to do to create it is simply give it a name, like I did by typing “Box A”

 

Objective C and Swift: Embedded iOS ProgrammingC and swift IOS coding Languages for Mobile Development

Like its earlier counterparts, Objective C and its derivative C are based on the C syntax. While Objective C has places outside iOS programming, it is primarily used to write code for embedded devices specifically the iOS series of devices such as the iPhone and iPad. Objective C is typically written either in a text editor or IDE.

Swift, on the other hand, is a version of Objective C specifically streamlined and tailored to the iOS device line, and is primarily written in an Apple only program and IDE called Xcode. Only recently has an unofficial port of Swift been made available to Windows and Linux coders, with a command line compiler for Linux and a plug-in for Virtual Studio.

There are also programs designed to take Objective C code and tailor it into Swift code to make sure that the program is compatible. As Swift is designed specifically for Apple devices and is maintained by Apple, code written in Swift is streamlined for the iOS environment. Realistically, the difference between C++ and these later versions is mainly in the underlying libraries that are used as the syntax is identical.

Java: OOP that’s Write-Once-Run-Anywhere

Java is a language that came into popularity during the 1990s and exploded like a solar flare as it became a desktop language, a web language, and a mobile language. Most phone applications until Android and iOS were written in Java, as well as many desktop and Web applications. Today, many still are. It is also an object-oriented language, and uses classes for everything, not just when it wants to.

We refer to it as a “Write-Once-Run-Anywhere” language because Java is designed to run in what is known as a “runtime environment.” The runtime environment is specific to the computer it is running on, such as Windows or Apple or Linux. However, the same program can be downloaded and used as is on all such computers without having to make any changes. This concept was extremely popular and allowed a lot of cross-platform software. Further developments allowed it to become a robust web language. It uses a lot of C and C++ conventions, but it is its own language based on the concept of inheritance, where every program, and every class, has a parent and child(ren). The programs you write can use the built-in classes, and programs that use your program can use its classes. Java looks tremendously like C++ when written by hand. Integrated Development Environments, or IDEs, which allow you to write, run, and debug your program all in one place, allow for visual development of graphical software with drag and drop.

Import java.lang.*;  // We inherit from the parent… in this case, java.lang is THE parent of all classes.
public class helloworld { // We have now created a child class called hello world
	public static void main(String[] args) { // The main() function is only in classes that execute.
		System.out.println(“Hello, World!”); 	// Using inherited System.out.* functions
		System.exit(0);				// to print our message, then exit.
	}
}

A sample Java class called helloworld that prints just that… Hello, World! This class will run on Windows, Mac, and Linux once made into a program, or “compiled.”

C coding language example 

An IDE called NetBeans that allows you to quickly design desktop and Web applications by dragging and dropping components, then writing the code in the classes behind them.

A version of Java called the Android SDK or Software Development Kit is a stripped down version of the Java language designed for writing Android applications. It also contains libraries to take advantage of the on board hardware such as GPS and motion sensors among others. It is free for download and supports Google Android operating system for mobile devices.

Python

Python came into great popularity as the open source hardware movement took off, and the Internet of Things which is the term for making web accessible devices like home automation and apps to control door locks and light switches, etc. Python is an extremely simple language, almost like BASIC, but it is extremely powerful like C. We refer to this as a “high level” language because it is less like machine code and more like plain English.

A version of Python is used to write scripts for a microprocessor device called Arduino which allows the average person to hook up a microchip to blinking LEDs amongst other devices and control them with a host of inputs like joysticks and touch sensors. Python’s ease of learning and extremely useful nature made it instantly popular to fill the hole left by Pascal, a language in the 1980s-1990s that was powerful and plain-English but died as a teaching language.

# Python Simple Arithmetic Operators
>>> 1  / 2
0.5
>>> 2 ** 3 # That’s two times times three, the equivalent of 2 to the 3rd
8
>>> 17 / 3 # division returns a float or a number with digits after the decimal
5.666666666666667
>>> 17 // 3 # floor division, dividing with no remainder
5

some arithmetic examples…

# For loop on a list
>>>  numbers  = [2,  4, 6, 8] #this is called an array or list
>>> product = 1
>>> for number in numbers:
…	product  = product * number
…
>>> print (‘The product is:’, product)
The product is: 384

…and a simple loop structure. Notice that there aren’t a whole lot of symbols—it looks like plain English with a few things added in. The Python runtime uses green to denote code, grey to denote comments, and the white represents the output in each program. 

Ruby

A relative newcomer, Ruby is a dynamic, open source programming language that is focused on productivity and its syntax is easy to write. Ruby, and its new alter ego Ruby on Rails have become essential for back-end or server side programming for Web Development. Taking its roots in Lisp, Perl, Ada, and Smalltalk, Ruby is a great language to fill a niche once occupied by bulky scripts that were static and written by hand.

Ruby differs from the other hard programming languages in this list because while it is object oriented like C++ and Java, it is a scripting language not a program development language. That is, it is designed to be used in conjunction with HTML and other technologies to make dynamic Web content.

Ruby, like Python, offers English like syntax and is a relatively easy language to learn due to this. A sample program would look like this:

puts ‘Hello World’
puts ‘This is my first Ruby program’

You would download and install the free Ruby software, write the lines of code in a file called “hello.rb” and to execute you would type

C:\...Documents>ruby hello.rb
Hello World
This is my first Ruby program

This shows the execution and the output from the Ruby code. Very simple on the surface, but an extremely robust language for developing for the Web.

Visual Basics

Stemming from the human-readable code of the BASIC language popular in the 1970s and 1980s, Visual Basic has the distinction of being both an event-driven programming language and an integrated development environment (IDE) designed for rapid application development. In addition, Visual Basic has an add-on technology, Visual Basic for Applications which allows programs to use Visual Basic instructions or macros which perform anything from small repetitive tasks to extremely complex arithmetic in programs like Microsoft Office Excel.

As the name states, Visual Basic is primarily a visually-developed language; therefore, like Java under NetBeans and other such languages with visual development capabilities, extremely intricate programs can be put together in a very fast manner. Through WSIWYG graphical user interface programming, and handling the events (such as button clicks), the user only has to fill in the code for the arithmetic or data handling behind the event. For instance, if I have a calculator, and I have entered two numbers in a text field, it will store:

  • Each number entered followed by 
  • An arithmetic operator or, 
  • An equal’s sign.

On the event created by the equals sign it will display the answer. I can create the calculator and buttons visually, set up how the buttons handle being clicked, and then I need only write the code that makes those clicks perform the correct arithmetic. This is just one example—Visual Basic is used to create very robust user applications.

Visual Basic is currently Visual Basic .NET, although there are a die-hard group of followers who have not migrated to .NET and are still using Visual Basic 6.0 because it has what is regarded as an ideal structure. Fortunately, those programmers are not coding in vain as up to Windows 10 and Windows Server 2008 R2 support Visual Basic 6.0 under the “It Just Works” program, allowing the legacy version of Microsoft’s Visual Basic to continue to work. Visual Basic can be written in its older IDE, as a script or macro, or in a later IDE. This example shows a very infant Visual Basic program in Visual Studio 2015.

No Programming language knowledge form Creation

This form was created with no coding required—although it is a basic window, the buttons and their related event handling are set up as well as place holders for the window title and adding content is as simple as dragging and dropping. Adding code to the graphic component can often be done through context menus. 

JavaScript

For those seeking to learn Web Development, no list of programming languages would be complete without this language. Embedded into standard Web code, JavaScript uses Java-like command structures and the idea of Write-Once-Run-Anywhere across browsers to run programs inside the browser or, with Node.js, on the server side and then return it to the browser. JavaScript truly is a scripting language, so it can be as short as a one-liner, or as long as a complete program. Learning to do a few things with JavaScript is easy, but mastery of JavaScript takes time and instead of understanding how your code will work on various operating systems, you must take into account how it will appear in various browsers.

< !-DOCTYPE  HTML>

Header…

	
	  -alert(‘Hello, World!’)

…Footer

<-/body>
<-/html>

The <script> and </script> tags let the browser know that the JavaScript is coming—the script itself will create a browser alert that says, “Hello, World!”

Node.js is a way to create more robust JavaScript objects and programs on the server side—that is, instead of embedding the code inside the program, we create an environment where as the user does certain things, we run scripts based on the actions.

 

Nod.je coding Language Output of Hello World

This program will say “Hello, World” in a browser under the right circumstances. It runs as a node, or running program, on the server, waiting to be accessed. 

PHP: Web Driven Applications

PHP allows easy, script-based web page development and like JavaScript runs in the browser, but in files that end in .php instead of .html. The script is inserted differently. 

<-!DOCTYPE html>

My first PHP page<-/h1>

<-?php
Echo “Hello World!”;
?->

<-/body>
<-/html>

This PHP example shows the code, which will output a hybrid webpage. It will use the h1 tags to print ’My First PHP page’ in large type, then the echo command in the script will dynamically create the words ‘Hello World’ in plain text. The whole thing is wrapped in an HTML document but can be little or all code.

Unlike JavaScript, PHP has its own user-created site packages, and complete hosting installation packages like WAMP (Windows, Apache, MySQL, PHP) or LAMP (Linux, Apache, MySQL, PHP) to set up web hosting, and the PHP setup pages allow you to modify the components on the webpage through the PHP code itself. This allows even novice users the ability to create robust websites with little to no coding experience. However, there is a caveat that these sites are easy to spot and become formulaic looking after a while so knowing how to modify the code to create your own individual website is critical to being proficient in PHP. Since PHP is session based and not reliant on cookies like HTML technologies, it requires a MySQL or SQL Server database in order to function. It uses this data in order to identify the user throughout their session on the website and where they have navigated. Read about the Best php frameworks here.

SQL Server and MySQLSQL as a common Coding Language

SQL, pronounced “sequel,” is a type of relational database and its formal name is Structured Query Language. MySQL is a similar, lightweight package which is an open-source version of SQL Server commonly used for PHP as mentioned above.

When we talk about SQL as a programming language, we are referring to the special-purpose language created to manage the information inside the relational database. Such information requests are referred to as queries. SQL has been a standard since the 1970s, and is the largest database language in use today.

UPDATE country
SET census = census + 1
WHERE country = ‘USA’

A sample SQL query that increments the ‘census’ field of the ‘country’ record USA anywhere it is found. Such queries can be simple like this, or extremely complex and lengthy. Queries become more complex as the size and scope of the relational database they mention become larger and include more data fields.

SQL databases use variables, relational operators such as less than, greater than, and equal to, and the queries look very similar to other programming languages as the conventions for the relational operators were borrowed from other programming languages of the day. The most popular purpose for SQL servers at the moment is Web application back end programming, which can be as simple as handling session data for a PHP site or as complicated as handling an entire corporation’s application database. Those who understand database language well have a good demand in both the Web and development fields.

While we have touched on the hottest languages at the moment, there are literally thousands of languages, new and old, out there. We hope that this provides an insight into the different languages out there and gives some perspective about the different languages and scripts as they exist.

 

Conclusion

While all of these programming options are feasible, its best to choose What programming to learn first based on the skills you already have and what area of coding or programming you want to work in. There is a plethera of resources out there willing to teach you at an affordable rate (like Team Treehouse) and sometimes even free! Go to our next page in this series to read about getting started in Web Design.

 

FOLLOW US ON: