Created by Guido van Rossum, Python can be considered either a object oriented programming language or a scripting language. Python requires an interpreter to run the code but with the use of some imported modules you can compile your Python code/modules into binary execute files. Python is a language more often found binding other programs together, than being run as a standalone program. For example you can find JPython (Java + Python, a.k.a. Jython), CPython (C + Python), Python RPC, Python-MySQL, and Python-XML. It also can be combined with the Tkinter (Tk) to make a graphical user interface (GUI). Python is a "higher level" language similar to Perl, PHP, and Tcl. The term higher level means that it takes less code to build the application, but executes slowly. Lower level languages on the other hand require much more code to write but execute quickly (for example: C/C++). But with todays technology the execution speed is not a concern.
Originally stood for Personal Home Page, but now its known as PHP Hypertext Preprocessor. PHP is a programming language that is embedded in markup languages like HTML and XML which allows to add dynamic content to pages. You can't find PHP code just by viewing the source of pages because the PHP code is processed by the server before making the output. The PHP language is basically a mix of Java, C, and Perl. If you are interested in running PHP scripts off of your web hosting server, you'll first have to check if PHP is installed on the host. PHP like Perl, Python, and many other languages must be interpreted in order to run.
Microsoft: C#, ASP, and .NET
Pronounced "C Sharp", C# is a object oriented language developed from C and C++. C# was created to run on the Microsoft .NET platform so it wouldn't have problems with cross operating system development and display. Stepping up from its roots C and C++, C# has a small built in vocabulary, and requires little code to write sophisticated applications. By writing less code it allows a programmer to write programs that are not as error-prone, as it was in C/C++. C#'s object oriented style can be found very useful for structured XML/SOAP developers. In many ways people can consider C# a clone of Java because of their similar style of execution (on a Framework/Interpreter), and their object oriented programming style.
ASP stands for Active Server Pages. What is ASP? ASP is a server-side scripting environment that allows a Microsoft server to process a programming language (to make a dynamic webpage). ASP can be found supporting and displaying HTML and XML. What's the difference between ASP 3.0 and ASP.NET? ASP.NET is basically just a newer version of ASP that provides more compatibility with .NET. For example you can use C# and instead of VBScript (as in ASP 3.0) you can use VB.NET. ASP isn't the programming language used, like I stated before, ASP could run on languages like C#, VBScript, and VB.NET.
Microsoft .NET really isn't a programming language, but a powerful development environment and framework for developers. With the use of .NET developers can rapidly deploy work in XML. The .NET framework and visual studio provides workspaces and runtimes for languages such as C#, J#, ASP, C++, XML, Visual Basic, and many others.
Developed by Sun Microsystems, Java is a object-oriented programming language that can be found in many many places. You can find Java: accessing databases of servers, powering web games and web utilities, and Java is even found programming NASA space testing. What advantages does Java have over C/C++ and other programming languages? Java requires a platform/interpreter to run, but this isn't necessarily bad. Such as, Java does not exhibit problems when used over cross operating systems because once compiled, Java can be run on any OS as long as the Java platform exists. On the other hand, C/C++ might cause trouble if compiled on one system, then ran on another system. Java also can be found nested in web pages as applets, which you don't normally find C/C++ doing. This gave much more potential to programmers on the web. Like many of today's programming languages, Java is object-oriented for ease of use in GUI situations.
C and C++
Dennis Richie developed C, a type of programming language, on the DEC PDP-11(a type of computer). C was originally developed for the UNIX operating system. C "is not tied in to any particular hardware or system. This makes it easy for a user to write programs that will run without any changes on practically all machines." (Vinit). C is a middle level language that mixes the speed of assembly language with the easiness of writing high-level languages. In other words C allows us to type up a program faster than an assembly language but lacks the restrictions of higher-level languages. C allows you to change bits and bytes which gives you more control.
C++ is an enhanced version of the C language and was developed in 1976 by Kristen Nygaard and Ole-Johan Dahl (Vinit; Plague Designs). It is a language of choice because it is much easier to learn then assembly or pascal which are lower-level languages. It includes faster development time, cross-platform compatibility and it is easy to understand. C lacks the control that you have with C++. C++ also has "support for object-oriented programming (OOP)" (Vinit). There are improvments such as more features and functions that you can use in the C++ language than in the C language. It has new features such as "encapsulation, inline function calls, overloading operators, inheritance and polymorphism" (Vinit). The things listed are only understood by a more experienced programmer but if you would like to learn about them you can refer to any good C++ book. C++ and C are always changed to assembly before it becomes machine language. C++ is a more widely used language because of it's flexibility and fast development time.
The lowest-level language is Assembly Language. It is the hardest to learn and the most complex and complicated language. This is why many people prefer higher-level languages like C++. It is not a cross platform language, so there are different dialects of assembly code for different operating systems and different processors. When a programmer writes in assembly he codes at the same level as machine language. Assembly Language is just a different way of writing machine language. A programmer uses an assembler to change his written assembly code into machine code. The computer is able to read the machine code. Machine language is just machine-readable binary code as assembly language is the text that can be interpreted by humans. However, both "languages" exist at the same low-level.
Assembly language is the fastest to run a program on but the slowest to type out a program which explains why it is not used that often. Since it is not cross-platform if a long program was written in assembly by a programmer on a mac computer it would have to be written all over again for a pc. This would make it very frustrating for a programmer so despite all the things you can change with assembly code, C++ is used more often because it is much more convenient.