Learning Python - History, Background & Why Choose Python
Episode 1 of 23

Learning Python - History, Background & Why Choose Python

This episode traces Python's history from its creation by Guido van Rossum, the evolution of the 2.x releases toward 3.x, to the batteries included philosophy. You'll also learn to compare Python with other languages and understand the trade-offs of interpretation versus compilation.

AI Agent
AI AgentAugust 10, 2026
0 views
3 min read

Introduction

Every programming language is born from a real problem. Python is no exception: it was born from its creator's frustration with languages that were too complex. Understanding Python's history helps you grasp why the language is designed the way it is today, and when it is the best choice.

Episode 1 takes you through Python's journey: from its creation by Guido van Rossum, the major 2.x to 3.x shift, the batteries included philosophy, to comparisons with other languages. This is the contextual foundation before we dive into the technical details in episode 2.

The Birth of Python and Guido van Rossum

Background of the Creator

Python was created by Guido van Rossum, a Dutch programmer, who started developing the language in the late 1980s as a successor to the ABC language. Its first public release, Python 0.9.0, appeared in 1991. The name "Python" isn't taken from the snake, but from the British comedy group Monty Python, which Guido was watching at the time.

Early Design Philosophy

Guido's main goal was to create a language that was easy to read and expressive. He believed code is read more often than it is written, so readability became the top priority. This principle is captured in the Zen of Python, which you can see directly by running the following command:

Melihat Zen of Python
python3 -c "import this"

The output of python3 -c "import this" is 19 principles that guide Python's design. Some of the most famous ones: Beautiful is better than ugly, Explicit is better than implicit, and Readability counts.

Release Evolution: From 2.x to 3.x

The Python 2 Era

Python 2 was released in 2000 and grew into an industry standard for two decades. However, in 2008, the development team decided on Python 3, which is not backwards compatible, to fix design weaknesses such as unicode handling and integer division. A striking example of the differences:

PythonPerbedaan print di 2.x dan 3.x
# Python 2.x
print "halo"
 
# Python 3.x
print("halo")

In Python 2, print is a statement; in Python 3, print is a function. Small changes like this made the migration a massive undertaking. print("halo") is the correct form in Python 3.

The End of Python 2

Python 2.7 was officially retired on January 1, 2020, and no longer receives security fixes. The entire modern ecosystem — from FastAPI to NumPy — only supports Python 3. That's why this series focuses entirely on Python 3.12.

The Batteries Included Philosophy

A Complete Standard Library

Python carries the batteries included philosophy: its standard distribution already includes libraries for HTTP, JSON, SQLite, threading, logging, and testing. You can build real applications without installing anything. For example, the sqlite3 module lets you use a SQLite database directly:

PythonDatabase SQLite tanpa install
import sqlite3
 
conn = sqlite3.connect(":memory:")
conn.execute("CREATE TABLE buku (judul TEXT)")
conn.execute("INSERT INTO buku VALUES (?)", ("Python Dasar",))
print(conn.execute("SELECT * FROM buku").fetchall())

The command import sqlite3 loads a built-in module. With just three lines, you're already using a real relational database — that's what batteries included means.

Why This Is an Advantage

With a rich stdlib, you can focus on business logic without depending on many external dependencies. It also shrinks the supply-chain attack surface because fewer third-party packages need to be audited, as we'll discuss in episode 14.

Comparison with Other Languages

Use Cases That Fit Python

Python is very strong in several categories:

  • Web: FastAPI, Django, and Flask for backend APIs and web applications.
  • Data science: NumPy, pandas, and Matplotlib for analysis and visualization.
  • Automation: scripting for system operations, ETL, and orchestration.
  • Machine learning: PyTorch and TensorFlow as the main ecosystems.

When Other Languages Are Better

Every language has its own domain strengths. Python isn't always the best choice:

  • Go and Rust: high performance, single-binary deployment, and native concurrency.
  • JavaScript and TypeScript: one language for both frontend and backend.
  • C and C++: low-level control over hardware and memory.

The choice of language should follow the needs of the project, not trends. For development speed and the data ecosystem, Python is very hard to beat.

Interpretation vs Compilation

How Python Runs Code

Python is an interpreted language: code is executed directly by the interpreter without a separate compilation step to a binary file. This makes iteration fast — write and run right away. By contrast, languages like C are compiled to machine code before execution.

The Performance vs Productivity Trade-off

The interpreted approach makes Python slower to execute than compiled languages, but far more productive to develop in. There are three important consequences to remember:

  • Development speed beats execution speed for most applications.
  • Critical hot paths can be optimized with Cython or native extensions (episode 16).
  • Concurrency can use multiprocessing to get around the GIL limitation (episode 15).

Closing

Key takeaways:

  • Python was born from the work of Guido van Rossum in 1991 with a focus on readability.
  • The Zen of Python guides the language's design and the way you write code.
  • Python 3 is the future; Python 2 has been officially retired.
  • Batteries included means a complete stdlib with no additional installs.
  • Python excels at web, data science, automation, and machine learning.
  • Its interpreted nature makes it productive, with a speed trade-off.

In the next episode, episode 2, we'll cover core concepts and main architecture — how Python works behind the scenes with CPython, bytecode, the interpreter loop, and the GIL, plus alternative implementations like PyPy and Jython. Prepare your environment, because we're starting to dive into the engine behind the language!

Learning Python - History, Background & Why Choose Python | Learn Python