Evolution of Programming Languages

First Generation

Second Generation

Third Generation

AI Gen: Natural Language Programming

The majority of code is not generated by computers. Programmers describe what they want to do in natural language, and the computer generates the code for them.

The programmer still needs the technical knowledge to accurately describe requirements and understand produced code.

Compiled vs Interpreted Code

All code must be converted to machine code before it can be run. The difference is in when and how this conversion happens.

Compiled Code

A compiler is a program that translates code written in a high-level language to a lower level language ahead of time. Compiled languages cannot be run until the compiler has translated the whole program into machine code.

Advantages

Disadvantages

Examples

Interpreted Code

An interpreter is a program that reads code and executes it line by line at runtime.

Advantages

Disadvantages

Examples

Python, Ruby, JavaScript, PHP, Perl, ...

Language History and Trends

Timeline

https://javaconceptoftheday.com/history-of-programming-languages/

Popularity Metrics

See: TIOBE Index

When considering a language to learn:

Application Domains

In no particular order:

Takeaway for Learning a New Language

Programming languages are easier to learn than ever before.

Learning to code is a valuable skill that helps in any career.