During my teens and twenties I spent a lot of time skateboarding. It’s quite a unique sport in the way it influences your life as a whole. For example, you begin to look at architecture in a new creative way. You also fall over, a lot.
In fact you get really good at falling over: jump down ten steps roll across the concrete, hop up and do it again. You actually spend a lot of time “failing” and it doesn’t bother you. You learn that failure is part of the learning process and something that you should not be afraid of.
This attitude can be taken into every aspect of your life and especially something as dynamic as web development. Why not try writing a little app in a new language? If it doesn’t work out it’s not a big deal. What did you learn from it? Did you not enjoy using the new language or was it just not a good fit for what you were trying to do?
Over time the feeling of failure decreases and you’ll gain confidence in the knowledge that you know how to deal with problems. This could even be a huge advantage if a critical problem occurs on a live server for example. If you’ve been playing around and breaking things locally you’ll be calmer and more methodical when fixing critical issues.
When learning tricks on my skateboard I would always start off on the safe flat ground. Once I’d become comfortable I’d try the trick down a curb, adding a bit of risk but knowing it wouldn’t be too catastrophic if I didn’t land it. Then finally, once I’d got very comfortable, I would try it down a set of steps… more risk and more reward. You can carry this analogy into your work by trying out your new idea on a personal project, then maybe on a friend or colleague’s project and finally unleash it on that million dollar website and revel in the excitement!
So next time you think you may fall over, go with it, learn to roll out of it and pop back up and try again. You may even find you start to enjoy it.