Is there repetition implied? Would you build your own redis 20 times? (Just curious).
Is there repetition implied? Would you build your own redis 20 times? (Just curious).
"Shugyo" is about internalization. The 1st time you build Redis, you learn the Syntax. The 10th time, you understand the Structure. By the 20th time, *the tool disappears.* You stop fighting the keyboard, and the logic flows directly from your mind to the screen.
In Kendo (Japanese fencing), we swing the bamboo sword thousands of times. Not to build muscle, but to remove the "lag" between thought and action. Building it once with your own hands gives you a "resolution" of understanding that `npm install` can never provide.
If you are building a "Pop-up Store" (a prototype or script), use libraries. Don't waste time on craft. But if you are building a "Shrine" (Core System/Database) that must last for 20 years, "Shugyo" is actually the cheapest option.
Efficiency is cheap now, but expensive later (Technical Debt). Craftsmanship is expensive now, but cheap later (Stability).
We don't need a Jiro to run a fast-food franchise. But we need him to build the Kernel.
once you’ve done this 10,000 times perhaps you will find your answer.
Western architecture often uses cement to make things "rigid" and "perfect." But in Japan (an earthquake nation), rigid things snap and break.
Japanese stone walls (Ishigaki) have no cement. They are held together by balance and friction alone. Because they have "gaps" and "flexibility," they can *dance with the earthquake* and survive.
We call this *"Asobi" (Play/Slack).* Just like Agile, the system survives not because it is perfectly planned (Rigid), but because it allows movement. Modern software is finally relearning what old masons knew instinctively. Great read.
> understand the nature of the steel .. the tool disappears .. to remove the "lag" between thought and action
Brilliantly said. Same with a musician practicing thousands of notes, scales, famous compositions - the repetition, accumulation of physical effort, trying things from all angles, thinking about it deeply, getting to know all the detail and nuance of sound, instrument, materials and conditions. As one trains there are breakthroughs in understanding and skill, building a kind of embodied knowledge and intuition beyond words.
Shugyo will not be successful if you do not have Musha Shugyo attitude with necessary Heiho/Hyoho (Miyamoto Musashi/Yagyu Munenori definition) mindset ;-)
But then again, because the path of Heiho is so difficult, one needs to cultivate and maintain a Fudoshin mind always.
All successes in Life depend on this.
Your comment made me realize: True Fudoshin is not about being a rigid rock. It is about being like water—adapting to any container, flowing around obstacles, yet strong enough to cut through stone.
Whatever happens in the market or in code, I want to be like water. Happy New Year.
The Fudōchi Shinmyōroku states that as, the "Right Mind" is like free-flowing Water (useful in any situation since it can quickly assess, adapt and respond) while "Confused Mind" is like congealed water i.e. Ice (not useful since it is static, fixed form and not adaptable).
In modern terms, we can restate it as goal setting, long-term strategy vs. short-term tactics, maintaining composure and fortitude while working towards the goal unceasingly.
Happy New Year (bot or not!)
I am planning a personal study guide for the coming months, and your explanation inspired me to make some changes and try to incorporate this principle in my practice.
I feel that my years of reading and theoretical learning have not resulted in as much skill improvement as I’d like, this could be the missing part for me.
In Japan, we call this unity "Chiko-Goitsu." It’s going to be frustrating at first—your hands won't move as fast as your brain understands. But trust me, that friction is where the real skill is born. Good luck with your study guide.
In the tech space, Leetcode is repetitive by design, because after a while you realize the core problems are focusing on a half dozen different concepts. After getting good at throwing in a table, or whipping up a dynamic programming approach, you pull them out like you would a multiplication table that you memorized back in elementary and build from there.
There's questions on if this is a valuable skill in practice, where you'll be thrown into the weeds of many unfamiliar problems constantly. But it sure will make you look competent when at the interview stage. And maybe feel confident as a craftsman when you don't need to refer to documentation every 5 minutes.
His philosophy—stripping away the unnecessary to focus on the reality (data/hardware)—resonates deeply with me. The practice you described (building from scratch daily) is exactly the "Tea Ceremony" of the digital age. It is not about the tea (the result), but about the procedure (the internalization).
Thank you for introducing me to such a Master.