Sep 25, 2022Liked by Étienne Fortier-Dubois

Yeah, I fully agree. In particular, I'm convinced that "reinventing the wheel" is the strongest way to truly *learn* any domain, and to internalize its wisdom. Nothing else comes close.

Today, I'm a professional game programmer, but during my teenage years, I did hobby game dev at home, to learn by myself. And I had a bit: I would purposefully avoid reusing any third-party code, or helpful components, or even really asking anyone for teaching or advice, in favor of doing everything I could "from scratch". The reasoning back then was: how could I truly learn how to code a game if all I did was to rely on other people's work?

My hobby game dev was hilariously inefficient, of course. I made *all the mistakes*. I visited an embarrassing amount of dead ends. But hot damn, am I glad to have done it this way.

For instance, perhaps the most memorable mistake of wisdom I made back then was about code duplication. Back then, I was coding a one-on-one fighting game, where Player One fights Player Two. And because I didn't know any better, and didn't truly grasp what arrays are for, I literally copy-pasted every single variable, every single code branch that dealt with Player One... over to Player Two, with a "2" appended next to it. Then every single change I made needed to get meticulously copied from the Player One branch to the Player Two branch. And obviously, I wasted a staggering amount of time dealing with bugs from slightly failed copy-pastes.

Endless code duplication! A true nightmare! I still have flashbacks to this, decades later!

So you better believe that now, I *know in my bones* the evils of code duplication. Every time I am even slightly tempted to duplicate code today, I *vividly remember* fighting this war, and I *know* why I should avoid it. It's not some theoretical concept I skimmed over in a stuffy book from the past, it's true lived experience. And it came from reinventing the array, so to speak.

Expand full comment

Great article, very thought-inspiring! I just have one little comment, that perhaps you don't always distinguish clearly between personal creativity and the society's adoption of solutions. These may be different issues. The lack of wheels on suitcases, for instance, might not be due to the lack of inventors who'd thought of adding wheels to suitcases. It might have just been that before the 1950s, there was no need for wheeled luggage. In the 19th and early 20th century, one might perhaps argue, if you traveled and needed a suitcase, then you also had someone to carry it (your butler, the station's porter and so on). Perhaps also the condition of most roads (horse dung lying everywhere, muddy puddles, cobblestones, unpaved country roads) did not suggest that it would be a good idea to drag your clothes through the filth. Then came the world wars, in which not many traveled in private (I'm thinking primarily of Europe here). It was only in the 50s, after the wars, with the newfound prosperity, the creation of airports and clean inner cities, that (a) the infrastructure was there on which to roll a suitcase without either getting stuck or destroying it; (b) the need arose, because now mass tourism began with "lower classes" (ie people without servants) widely traveling; and (c) a diverse transport infrastructure necessitated that travelers change between different means of transport (private car, bus, train, airplane) at specified points, carrying their suitcases along, but now mostly indoors, within the transport hub, where it was possible to wheel a suitcase. What I want to say is that perhaps there might be less of an element of personal genius in the invention of wheeled suitcases than you suggest; instead it may just be that inventions pop up when their time is ripe. -- Of course, what you say about personal creativity and the value of (re-)inventing stuff is still valid. -- Thanks!

Expand full comment
Nov 17, 2022Liked by Étienne Fortier-Dubois

Artists reinvent the wheel all the time. Nature does the same, it's evolution.

Human species is very reluctant to reinvent the wheel, that's why we evolve so slowly .

Excellent post Etienne.

Expand full comment
Oct 28, 2022Liked by Étienne Fortier-Dubois

Hey fellow travelers, here is a link to the Hacker News discussion about this article: https://news.ycombinator.com/item?id=33352241

Expand full comment