
Things I Like about Python
November 13, 2021
I've been using Python a lot lately. Here are some things I like about it.
Things I Like about Python
#
is better than//
for comments- Can call C code
Things I Hate about Python
- Startup time
- PEX compile times
- Runtime performance
- Dynamic typing
- Global interpretter lock
- Garbage collection
- Import system
- Toxic runtime environment
- Error handling
- Exceptions
- kwargs
- List comprehension syntax
- Globals
- Variable scope
- Significant whitespace
- Standard library
- Documentation
- Dependency management
- Environment variables
- Deployment
- Jupyter notebooks

Source: XKCD
Why I'm Forced to Use Python
- Data Science / Machine Learning
- Becaues NumPy. Which is good because it's C.
What Would Make Python Tolerable
- full static typing
- standardized build system
- standardized package manager
- hermetic deployment
- abolish all environment dependencies
- kill the GIL
- add "lite" static lifetime analysis / borrow checker

History of C
Here's a partial overview of the history of C-like languages.
1958 | ALGOL |
1970 | C |
1979 | C++ |
1984 | Objective-C |
1999 | C# |
2001 | D |
2007 | Go |
2010 | Rust |
2013 | Dart |
2014 | Swift |
2015 | Zig |
2016 | Odin |
The computer language design space is infinitely complex. There's no right or wrong, just different trade-offs. New languages are collectively exploring the trade-off space and influencing one another.
After decades of dominance there's finally momentum to create a better C and better C++.
History of Python
Here's a partial overview of the history of Python-like languages.
1969 | SETL |
1987 | ABC |
1991 | Python |
1995 | Ruby |
2000 | Python 2 |
2008 | Python 3 |
2008 | Nim |
2009 | Julia |
The high-level language design space is stagnant and lacks innovation. The transition from Python2 to Python3 was an absolute disaster; and it only made incremental improvements!
The world needs a high-level language that is approachable and powerful. Python is suffocating the space. We can do better.
Ecosystem Inertia
The Python language kinda sucks. The batteries are included, but they're corroded.
(os.path
I'm looking at you.)
Python isn't popular because the language is good. It's popular because the ecosystem is monumental in both size and value.
NumPy
Python is popular because Data Science and Machine Learning are popular. And DS/ML use Python because of NumPy.

Source: Stack Overflow
If NumPy didn't exist then Python wouldn't have quadrupled in popularity. That said, ML would not have advanced so quickly if not for the Python + NumPy + PyTorch wombo combo.
I'm thankful Python was created and accelerated ML. We stand on the shoulders of giants, and Python is a true Titan. Python has earned its place in the Pantheon of Programming Languages. But it's 30 years old and our young industry has advanced significantly.

Programming Language Timelines
It takes ~10 years for a new programming to be invented, stabilized, and for a community to start building ecosystem momentum.
I sincerely hope the world isn't reliant on Python in 20 years. For that to happen then we need to start working on a better Python today.
End Rant
Thanks for listening to my rant. Criticism and nitpicks aren't wrong, but miss the point. Truthiness > Truth
