kennethreitz.org / Talks / Python 2 Vs Python 3
Python 2 vs Python 3: A Sacred Love Story
Introduction
- Python 2.7: A Love Story explores the emotional and practical challenges faced by the Python community during the transition from Python 2.7 to Python 3, emphasizing the importance of uniting these two versions.
Evolution of Communication
Historical Context:
- Early human communication was one-to-one, evolving to one-to-many with the advent of the printing press, and eventually to many-to-many with the internet.
- The internet democratized information sharing, allowing anyone to publish and access a vast array of content.
Implications:
- The shift in communication methods parallels the evolution of programming languages, where Python has become a crucial tool in this new era of many-to-many communication.
The Zen of Python
- Core Philosophy:
- Python’s guiding principles, known as "The Zen of Python," emphasize simplicity, readability, and explicitness, making it a beloved language among developers.
The Fear of Python 3
- Division and Fear:
- The transition from Python 2.7 to Python 3 created a division within the community, leading to fear and uncertainty among developers.
- Issues such as differences in string handling and the complexity of Unicode contributed to this fear.
The Great Separation
- Duality in the Community:
- Python 2 and Python 3 coexisted, but this duality required library maintainers to support both versions, doubling their efforts.
- This separation threatened to fragment the community and hinder the language’s progress.
The Call to Action
- Unity and Resolution:
- The document urges the Python community to look within and embrace Python 3, overcoming fears and divisions.
- It calls for direct experience and contribution to bridge the gap between Python 2 and Python 3, ensuring the language’s future.
Conclusion
- The Future of Python:
- The community must come together to prevent Python 2 from becoming just a memory, uniting both versions to preserve the language’s legacy and foster its continued growth.