11/10/2024

Elite Esports

For the Ultimate Gaming Experience

One Punch Python

One Punch Python

There is a fun anime series called “One Punch Man”. And surprisingly, it has some great lessons for mastering Python.

The story takes place in a slightly more modern world than ours, where heroes defend the modern cityscape from regularly invading monsters. Imagine a parade of mini-Godzilla or Mothra-like critters, but more diverse and colorful and intelligent, and ranging widely in their size and threat level.

This goes on to the point where a formal league of heroes gets formed, with ranks for different perceived skill. Enter the protagonist, named Saitama.

He is not as flashy as the other heroes.

If anything, at first glance he looks harmless.

But it turns out he is so effective as a martial artist, so unparalleled in his skill, he is able to knock out massive powerful beasts with a single punch, every time. Hence the name.

This show is a comedy, filled with hilarious situations created by the hero-managing institutions failing to recognize his super-talent over and over. I am leaving a lot out here – it is worth digging up and watching.

But the show has a powerful lesson for us Pythonistas.

Because the source of Saitama’s mastery is revealed in the first season. Every day, without fail, he did

  • 100 pushups.
  • 100 situps.
  • 100 squats.
  • And then ran ten kilometers.

Notice how SIMPLE this is.

He’s drilling these fundamental exercises with relentless consistency. And somehow, it manages to unlock superhuman skill.

That reminds me of what happens when you deeply master the basics of Python programming.

OOP, for example. Because OOP is the critical foundation ALL complex software is built on. A little OOP knowledge goes a long way… but greater understanding unlocks ENTIRE NEW UNIVERSES of software to you.

Or automated tests, like unit tests. When you master writing those, you can suddenly create shockingly powerful software systems that non-test-writers cannot touch. Writing tests is a legit superpower.

Another interesting point: when you master both, you find they ratchet up the power of each other. OOP amplifying what you can do with tests, and vice versa, in exponential ways that suddenly make the kind programming you did before seem primitive and simple.

And then you have scalability patterns that leverage Python’s memory model… Or the higher-level function abstractions forming the bedrock of a dozen famous Python libraries you use every day… and so on.

Each of these are like the pushups or squats Saitama does religiously.

And all that is just one lesson we can learn from our friend Saitama. There many others: like how he always goes directly for the monster’s weak point (I know you can see a parallel for complex software “beasts”)… Or how he is constantly seeking out a greater challenge to test himself and grow… and quite a few lessons more.

So dig up this show, or read the manga it is based on. And look for what other lessons you can draw on, to improve your coding craft.