Clean coding best practices

Programming Language Timeline

  • Plankalkul

    Plankalkul
    Developer: Konrad Zuse
    Purpose: It was designed for engineering purposes.
  • Fortran

    Fortran
    Developer: John Backus
    Purpose: It is a general-purpose language that is used especially for numeric copmutation and scientific computing.
    Acronym: Formula Translating System
  • MATH-MATIC

    MATH-MATIC
    Developer: Charles Katz
    Purpose: It was used as an early programming language for the UNIVAC I and UNIVAC II. It was intended as an improvement over Fortran.
  • Lisp

    Lisp
    Developer: John McCarthy
    Purpose: It was created as a practical mathematical notationfor computer programs.
  • RPG

    RPG
    Developer: IBM
    Purpose: It was used for business applications but its later versions are only available on IBM i or OS/400 based systems.
    Acronym: Report Program Generator
  • COBOL

    COBOL
    Developer: Grace Hopper
    Purpose: It is designed for developing business, typically file-oriented, applications.
    Acronym: COmoon Business Oriented Language
  • BASIC

    BASIC
    Developer: John George Kemeny & Thomas Eugene Kurtz
    Purpose: It was created for general-purpose and it's design emphasizes ease of use.
    Acronym: Beginner's All-purpose Symbolic Instruction Code
  • LOGO

    LOGO
    Developer: Daniel G. Bobrow, Wally Feurzieg, Seymour Papert & Cynthia Solomon
    Purpose: It was originally created to teach concepts of programming related to Lisp and it was later used for "turtle graphics". This was used to make graphics.
  • B

    B
    Developer: Ken Thompson with Dennis Ritchie
    Purpose: It was created for primarily non-numeric applications like system programming.
  • PASCAL

    PASCAL
    Developer: Niklaus Wirth
    Purpose: It was made to teach students structured programming.
  • SQL

    SQL
    Developer: Donald D. Chamberlin & Raymond F. Boyce
    Purpose: It was designed to manipulate and retrieve data stored in IBM's database management system.
    Acronym: Structured Query Language
  • C

    C
    Developer: Dennis M. Ritchie
    Purpose: It was initially used for system development work, especially the programs that make-up the operating system.
  • ML

    ML
    Developer: Robin Milner
    Purpose: It is known for its use of the Hindley-Milner type inference algoritm, which can automatically infer the types of most expressions without requiring explicit type annotations.
    Acronym: Metalanguage
  • ADA

    ADA
    Developer: Dr. Jean Ichbiah
    Purpose: It was created to be a general-purpose language for everything from businesses to rockets. It uses modular techniques that make it easier to build and maintain large systems.
    Acronym: Ada was chosen in honor of Augusta Ada Lovelace.
  • C++

    C++
    Developer: Bjarne Stroustrup
    Purpose: It was originally created to be an enhancement to the C programming language. It is primarily used with system/application software, drivers, client-server applications and embedded firmware.
  • Python

    Python
    Developer: Guido van Rossum
    Purpose: It allows programmers to express concepts in fewer lines of code and emphasizes code readability.
  • Visual Basic

    Visual Basic
    Developer: Microsoft
    Purpose: It was created to move BASIC language to an event driven and object-oriented programming (OOP) language.
  • PHP

    PHP
    Developer: Rasmus Lerdorf
    Purpose: It was designed for web development and also general-purpose prgramming.
    Acronym: Hypertext Preprocessor
  • Delphi

    Delphi
    Developer: Borland Software Corporation
    Purpose: It was designed for console, desktop graphical, web and mobile applications
  • Java

    Java
    Developer: James Gosling and Sun Microsystems
    Purpose: It was created to run on all platforms that support Java without the need for redoing the code.
  • Javascript

    Javascript
    Developer: Brendan Eich
    Purpose: It is a dynamic programming language. It is most commonly used as part of web browsers, to help interact with the user, control the browser, communicate at different times, and alter the content that is displayed.