What is programming:

Computer programming is the process of designing and building an executable computer program to accomplish a specific computing result or to perform a specific task. Programming involves tasks such as: analysis, generating algorithmsprofiling algorithms' accuracy and resource consumption, and the implementation of algorithms in a chosen programming language (commonly referred to as coding).The source code of a program is written in one or more languages that are intelligible to programmers, rather than machine code, which is directly executed by the central processing unit. The purpose of programming is to find a sequence of instructions that will automate the performance of a task (which can be as complex as an operating system) on a computer, often for solving a given problem. Proficient programming thus often requires expertise in several different subjects, including knowledge of the application domain, specialized algorithms, and formal logic.

Tasks accompanying and related to programming include: testingdebuggingsource code maintenance, implementation of build systems, and management of derived artifacts, such as the machine code of computer programs. These might be considered part of the programming process, but often the term software development is used for this larger process with the term programmingimplementation, or coding reserved for the actual writing of code. Software engineering combines engineering techniques with software development practices. Reverse engineering is a related process used by designers, analysts and programmers to understand and re-create/re-implement.


History of programming:

Year
Event
1843Ada Lovelace is credited as being the first person to describe or write a computer program. In 1843, she described an algorithm to compute Bernoulli numbers using the Analytical Engine.
1889The Hollerith tabulating machine was invented by Herman Hollerith in 1889, allowing for data to be programmatically counted and tabulated.
1956One of the first programming languagesFORTRAN, was introduced to the public on October 15, 1956. It was developed by John Backus and others at IBM.
1958The second-oldest programming language, LISP was developed by John McCarthy and was first used in 1958.
1959COBOL started being developed in 1959 by Grace Hopper and Bob Bemer.
1964The original BASIC programming language was developed by John KemenyMary Keller, and Thomas Kurtz, and was introduced to the public on May 1, 1964.
1965Simula is considered the first ever object-oriented programming language, developed around 1965 by Ole-Johan Dahl and Kristen Nygaard.
1966Martin Richards developed the BCPL programming language in 1966, which became popular due to its portability.
1966The MUMPS programming language was developed by Neil Pappalardo at Massachusetts General Hospital in 1966.
1967Known for its graphics capabilities, Logo was created by Seymour Papert in 1967.
1971Pascal was developed in 1971 by Niklaus Wirth.
1972Dennis Ritchie and Brian Kernighan developed the C programming language at Bell Labs in 1972.
1972The Prolog programming language was developed by Alain Colmerauer and colleagues in 1972 at the University of Marseilles.
1972Smalltalk was the second ever object-oriented programming language and the first true IDE, developed by Alan Kay and others at Xerox PARC in 1972.
1974SQL is a database programming language and was developed by Edgar Codd in 1974 and is still important in the programming language world.
1975A variation of LISP, the Scheme programming language was created in 1975 by Guy Steele and Gerry Sussman at MIT's Artificial Intelligence lab.
1975The Altair BASIC programming language was developed by Bill GatesPaul Allen, and Monte Davidoff, and was made available for use on January 2, 1975. It was used to create programs for Altair computers.
1979Development of the C++ programming language was started in 1979 by Bjarne Stroustrup. Originally called "C with classes," C++ is one of the most widely-used programming languages.
1979Oracle released the first commercial version of SQL in 1979.
1979The Department of Defense developed the Ada programming language, originally named DoD-1, and named it after Ada Lovelace in May 1979.
1984FoxPro is a programming language for developing database applications and was released by Fox Software in 1984.
1984Cleve Moler started developing the MATLAB programming language in the late 1970s, and it was released to the public, along with the MATLAB software package, in 1984.
1987The open source programming language Perl that was developed by Larry Wall was introduced in 1987. It is commonly used in creating CGI scripts and programming web applications.
1988Developed in the mid-1980s by Brad Cox and Tom Love, the Objective-C programming language was officially licensed by NeXT in 1988.
1990Tim Berners-Lee developed the HTML markup language in 1990. HTML is one of the most popular and widely-used programming languages in the world.
1990Haskell, a general-purpose programming language, was introduced in 1990.
1990Engineers at Apple developed the Dylan programming language in the early 1990s. Dylan was designed to resemble the syntax of the ALGOL programming language.
1991Development of Python was started in 1989 by Guido van Rossum and released to the public in 1991.
1991Visual Basic was developed by Alan Cooper and released in May 1991.
1993Lua was created in 1993 by engineers at the Pontifical Catholic University of Rio De Janeiro, Brazil.
1993R is a programming language created by Robert Gentleman and Ross Ihaka and introduced in 1993.
1994The concept of CSS was started by Håkon Wium Lie in 1994. W3C introduced the specification for CSS in 1996.
1995Java was developed by James Gosling and other developers at Sun Microsystems, and was first introduced to the public in 1995.
1995The object-oriented programming language Ruby developed by Yukihiro Matsumoto was first released in 1995.
1995The experimental, multi-paradigm Curry programming language was introduced by Michael Hanus, Herbert Kuchen, and Juan Jose Moreno-Navarro in 1995.
1995Racket is a general purpose programming language developed by Matthias Felleisen in 1995.
1995A server-side interpreted scripting language, PHP was developed by Rasmus Lerdorf starting in 1994 and released on June 8, 1995.
1995Originally named LiveScript when released in November 1995, JavaScript was developed by Brendan Eich and renamed as such in December 1995.
1996Introduced in 1996, OCaml is an object-oriented version of the Caml programming language.
1998XML is a markup language, with the specification for XML being developed by W3C and recommended on February 10, 1998.
1999Development of the D programming language started in December 1999. D is a higher level language compared to C++.
2000Based on C++ and Java, the C# programming language was developed by Microsoft and introduced in June 2000. C# became an ISO standard in 2003.
2003The object-oriented programming language Scala was introduced in 2003.
2005Don Syme developed the F# programming language and Microsoft first introduced it in 2005.
2007The Go programming language was developed at Google starting in 2007. It was completed and introduced to the public in 2009.
2007Rich Hickey developed the Clojure programming language and released the first version in 2007.
2008Introduced in 2008, Nim is a programming language used to develop software requiring strict limits on how system memory is used.
2008The object-oriented programming language Reia was introduced in 2008.
2010The multi-paradigm CoffeeScript programming language, capable of being compiled into JavaScript, was officially released in 2010.
2011Google developed the open source web-based Dart programming language, introducing it to the public in October 2011.
2012Julia was developed by Jeff Bezanson, Alan Edelman, Stefan Karpinski, and Viral B. Shah and released in 2012. It is a high-level programming language used for scientific computing.
2014Babel is a general-purpose programming language developed in 2014 and used to create programs for conserving battery life and system resources on devices.
2014Created by Apple and released on June 2, 2014, the Swift programming language helps create programs and apps for iOSmacOS, the Apple Watch, and AppleTV.
2015Graydon Hoare started development of the Rust programming language around 2010. After contributions from hundreds of people, it was officially released as version 1.0.0 alpha by Mozilla research on January 9, 2015.

What is programming language:

A programming language is a set of commands, instructions, and other syntax use to create a software program. Languages that programmers use to write code are called "high-level languages." This code can be compiled into a "low-level language," which is recognized directly by the computer hardware.

High-level language:

High-level languages are designed to be easy to read and understand. This allows programmers to write source code in a natural fashion, using logical words and symbols. For example, reserved words like functionwhileif, and else are used in most major programming languages. Symbols like <>==, and != are common operators. Many high-level languages are similar enough that programmers can easily understand source code written in multiple languages.

Examples of high-level languages include C++JavaPerl, and PHP. Languages like C++ and Java are called "compiled languages" since the source code must first be compiled in order to run. Languages like Perl and PHP are called "interpreted languages" since the source code can be run through an interpreter without being compiled. Generally, compiled languages are used to create software applications, while interpreted languages are used for running scripts, such as those used to generate content for dynamic websites.

Low-level languages:

Low-level languages include assembly and machine languages. An assembly language contains a list of basic instructions and is much more difficult to read than a high-level language. In rare cases, a programmer may decide to code a basic program in an assembly language to ensure it operates as efficiently as possible. An assembler can be used to translate the assembly code into machine code. The machine code, or machine language, contains a series of binary codes that are understood directly by a computer's CPU. Needless to say, machine language is not designed to be human readable.














Comments