These are my recent thoughts.
I have attended the RedDotRubyConf in Singapore, a couple of days ago. I realized, everyone in the room is successful. I also realized that everyone's definition of success was rather very different.
When I was in Singapore, I met with a friend of mine who graduated from the same course as I did. We managed to have a long chat at Starbucks, Raffles Mall and made exchanges about our current jobs. She was working as a Tech Support in a big Singaporean company. She recently moved there and was assigned this position because her bosses felt that she was fitting for the role, since she had a very technical background. But this is not how she defined success.
She said that success was actually if and when she works not so hard in a nice company but earns a substantially good amount. Mine was totally different. And, I think that others who sat with me there in the Conference also had different views about their own successes.
I envied those who had the liberty of time as a freelancer because they were able to try on anything and anytime they wanted. Not being tied to a company made them able to soar higher than the rest because they are able to explore everything outside having a "job title". However, they did have other concerns about their successes. Tenureship is one worry.
When I looked around, I felt that I have missed a lot about my techie world. Managing people and wanting to code is something else altogether. Handling difficult people is really another story altogether. Handling messy code and uncohesive process is I think trivial. There are many tools, and many tried on processes around. But who's to say that doing so makes you successful?
In my humble opinion (IMHO- I just wanted to expand it to give it more gravity), being successful as a developer doesn't lie on how many tools and languages you've actually come across with. Its not based on how many projects you've actually deployed it with, but the number of mistakes you've actually done. The number of consults you also make defines you as a learner.
I believe that learners, though they can be coined as "forever students", holds the key to a brighter future. I hate the fact that people can't be "told" or "injected" with ideas. We are always expanding. Everything is an opinion, until you have tried it and experienced it.
Bottom line, a successful developer is one that will always be moved, will always be shifted because he/she adapts to change and is always open to inputs. Be it from the intarwebz, the community one lives in, or even at work.
I wanna be able to solidify my statements with experiences. I want to experience the tools and the coding. I want to be successful.