Bruce Lee was not only a legendary martial artist but also a philosopher who had a lot of wisdom to offer. His teachings go beyond the world of martial arts and can be applied to various aspects of life, including programming. Here are seven lessons from Bruce Lee that can be applied to programming.
“Be like water”
In martial arts, Bruce Lee talked about the importance of being fluid and adaptable. In programming, this means being flexible and open to change. As technology evolves, programming languages and frameworks change. To be successful, you need to be able to adapt to these changes and be willing to learn new things.
“Absorb what is useful, reject what is useless, Add what is uniquely your own”
Bruce Lee believed in testing everything, taking what is useful, and discarding what is not. In order to form his martial art, Jeet Kune Do, he applied boxing, fencing, Wing Chun, and much more, testing each for effectiveness. In programming, this means being selective about the tools and frameworks you use, but not being afraid to try everything. Just because something is popular or trendy doesn’t mean it’s the best fit for your project. Evaluate all your options carefully and choose what will be most effective for your specific needs.
“Simplicity is the key to brilliance”
Bruce greatly believed that simplification was an essential step in forming an efficient and consistent system. Applied to programming, this takes the form of writing clean, concise code that is easy to read and understand, without “clever” tricks that could confuse other developers. Take time to go back through old code and look for ways to simplify and consolidate with more recent code. Simple code is easier to maintain, easier for others to understand, and less prone to bugs than complex code.
“The successful warrior is the average man, with laser-like focus”Bruce Lee believed that focus was an essential part of martial arts. Likewise, in programming, focus can be the difference between an expert and a novice.
“I fear not the man who has practiced 10,000 kicks once, but I fear the man who has practiced one kick 10,000 times.”Focusing on a specific domain, language or technology can make you a very valuable programmer. Five average programmers can take longer to fix a problem than one with a deep knowledge of the issue.
“Using no way as way, having no limitation as limitation”
Bruce Lee believed in breaking down barriers and not being limited by conventional thinking. In programming, this means not being afraid to try new things and thinking outside the box. Look for solutions outside the domain you’re working in. Don’t limit yourself to the way things have always been done. Remember, the biggest change comes from people that forged a new path instead of following others. Look for innovative solutions that can make your code more efficient and effective.
“Mistakes are always forgivable if one has the courage to admit them”Bruce Lee believed that honesty and self-awareness were essential for growth. In programming, this means acknowledging your mistakes and learning from them.
“Don’t fear failure. — Not failure, but low aim, is the crime. In great attempts it is glorious even to fail.”Don’t be afraid to admit when you’re wrong or when you’ve made a mistake, even if it means you have to start over from scratch. In the long run, it will make you a better programmer and it will enhance the project. Use these experiences as opportunities to grow and improve.
“The more we value things, the less we value ourselves”
Bruce Lee believed in the importance of the self. Self-improvement, self-expression, and self-esteem were core to his philosophy. It was his belief that no matter what external circumstances changed, you were the single element that could make the difference between success and failure.
With all of the advancements and technology that we have created to facilitate programming, nothing compares to the human touch. Automated testing, linting, and other tech are lifesavers, but be careful not to rely on them too much. They are great for general broad tasks, but only you have the mental flexibility, knowledge, and attention to detail to make final decisions.
In conclusion, Bruce Lee’s teachings offer valuable lessons that can be applied to many areas of life, including programming. By adopting these principles, you can become a better programmer and achieve greater success in your work. Remember to be flexible, adaptable, and open-minded, while also staying true to yourself.