Jiro Dreams of Software
I recently went to see Jiro Dreams of Sushi.[1] I love sushi, Japan, and movies so it was a great combination. I really enjoyed the film and if you like any of these things I recommend you go see it if you can. However, it is as a Software Developer that I really connected with the movie and its subject, Jiro Ono.
Jiro Ono is an 85 year-old sushi chef, who runs a small restaurant in Tokyo. He is considered by many to be the world's greatest sushi chef. Jiro is a craftsman. At night he dreams of ways to improve the sushi that he serves in his restaurant. His obsession with perfection extends to his apprentices, who must train for years just to learn how to make rice. Jiro only works with a select few vendors who supply his fish and rice. We meet them and quickly see that they are equally dedicated to delivering only the very best product.
You must dedicate your life to mastering this skill. This is the key to success.
Jiro Ono
Much has been made of the perceived lack of quality and professionalism within the field of Software Development.[2] Jiro's attitude to his craft is very different to how most Software Developers view their work. Every field has its poor performers, but the software industry appears to harbour a lot of mediocre programmers. Imagine if we applied the same rigorous standards as Jiro to Software Development. I'm guessing there would be a lot fewer of us (although to be fair, there must be plenty of bad sushi chefs). However, the industry shows little interest in pursuing this approach, so it's up to the individual to make it happen.
The Manifesto for Software Craftsmanship promotes an alternative view of the Software Developer, one that emphasizes craft, continuous improvement, and professional accountability.[3] Practice is a key aspect of Software Craftsmanship. There is convincing evidence to show that deliberate and continuous practice leads to significant and permanent gains in ability, whether that be playing the piano, taking penalty kicks, mixing cocktails, or writing code.[4] It probably applies to anything you want to do. If you practice writing code every day, even for a short time, your ability to write code quickly and accurately will improve.
The method of putting aside time every day to practice the fundamentals of programming over and over again is referred to as a Code Kata.[5] The key point of a Code Kata is that continuous and repetitive practice every day will make you a better programmer. All it takes is thirty minutes a day. After a few short weeks you will notice an improvement in your ability to write code, from a better understanding of keyboard shortcuts to making more effective use of your chosen editor. Incredible as it may seem, many people have trouble finding even thirty minutes a day to practice whatever it is they wish to improve at.
As Software Developers what can we learn from Jiro? Jiro Ono is passionate about his chosen craft and is continuously seeking new ways to improve on it (even when he is sleeping). He has dedicated his entire life to perfecting the preparation and presentation of sushi, but is still striving to improve.
Even at my age in work, I still haven't reached perfection.
Jiro Ono
If you aspire to be a better Software Developer, then you are likely passionate enough to put in the effort required to improve. You certainly won’t have any trouble finding thirty minutes a day to practice. The feedback you get from continuous practice will spur you on to get even better. However, if you lack the passion to improve, then you might want to consider a different profession. Perhaps you have yet to find your passion in life.
Jiro has sacrificed much for his craft, perhaps too much, as the movie suggests. The point is not to be the very best, just better each day. If you commit to being a better developer than you were yesterday, then you will inevitably contribute to creating better software and inspire others to follow your example.
[1] Jiro Dreams of Sushi Official Movie Site
[2] See for example: Dirty Rotten Scrumdrels
[3] Manifesto for Software Craftsmanship
[4] See Chapter 2 “The 10,000-Hour Rule” in Outliers by Malcolm Gladwell.
[5] See for example: Code Kata at Pragmatic Programmers
Originally published July 13, 2012
blog comments powered by Disqus