There is a fun anime series called “One Punch Man”. And surprisingly, it has excellent lessons for mastering Python.
The story takes place in a world a bit more modern than ours, where the heroes defend the modern cityscape from regularly invading monsters. Imagine a parade of mini-Godzilla or Mothra-like creatures, but more diverse, colorful and intelligent, and ranging widely in size and threat level.
This continues to the point where a formal league of heroes is formed, with ranks for different perceived abilities. Enter the protagonist, named Saitama.
He’s not as flashy as the other heroes.
In any case, at first glance it seems harmless.
But it turns out that he is so effective as a martial artist, so unmatched in his skill, that he is capable of knocking out huge and powerful beasts with a single blow, every time. Hence the name.
This show is a comedy, full of hilarious situations created by hero management institutions that fail to recognize their great talent time and time again. I’m leaving a lot around here – worth digging up and looking at.
But the show has a powerful lesson for us pythonists.
Because the source of Saitama’s dominance is revealed in the first season. Every day, without fail, he did
- 100 push ups.
- 100 abs.
- 100 squats.
- And then he ran ten kilometers.
Notice how SIMPLE this is.
He’s training these foundational exercises with relentless consistency. And somehow, she manages to unlock superhuman abilities.
That reminds me of what happens when you thoroughly master the basics of Python programming.
OOP, for example. Because OOP is the critical foundation on which ALL complex software is built. A little knowledge of object-oriented programming goes a long way… but a greater understanding unlocks WHOLE NEW UNIVERSES of software for you.
Or automated tests, such as unit tests. When you master writing them, you can suddenly create amazingly powerful software systems that non-test writers can’t touch. Test writing is a legitimate superpower.
Another interesting point: when you master both, you find that they increase the power of the other. OOP amplifying what you can do with tests, and vice versa, in an exponential way that suddenly makes the kind of programming you did before seem primitive and simple.
And then you have scalability patterns that take advantage of Python’s memory model… Or the higher-level function abstractions that form the basis of a dozen famous Python libraries you use every day… and so on.
Each of these are like the push-ups or squats that Saitama does religiously.
And all of that is just a lesson we can learn from our friend Saitama. There are many others: like how he always goes straight for the weak point of the monster (I know you can see a parallel with complex software “beasts”)… Or how he is constantly looking for a bigger challenge to test himself and grow… ..and many more lessons.
So research this show or read the manga it’s based on. And look for other lessons you can build on to improve your coding craft.