You’re not a failure, you just haven’t found your passion
When I was 17, I came 3rd in an international Japanese speaking contest. However, I don’t do anything about my Japanese studies now. The year prior, I got the highest marks in the state in my grade 7 piano exams. Now, I don’t play piano. During high school, I did 30-40 hours of maths during my school holidays. I finished the KUMON mathematics programme and got the highest mark possible for maths upon graduation (VHA 10. In my two maths subjects, I dropped just half a mark the entire year). I now hardly do any maths.
So, I had it that I was a failure. I had it that I was a quitter. I had it that I was a free-spirit who couldn’t stick through with anything. I had it that I only did stuff so that I could achieve in that area, and that once I had reached a certain level, I would get bored and quit.
If I’d stuck with my Japanese, maybe I could have been a young international diplomat for the government by now? If I’d stuck through with my piano, maybe I could have been a concert pianist by now. In maths? I could have been one of those crazily-young maths geniuses at universities who become tenured by the time they are 25 and spend their life devoted to the art, becoming a historical figure in that field, like Einstein or Newton.
However, while muling over my complete lack of commitment to sticking through with my hobbies, and while thinking about spending my life as Stephen Hawking has, I came to a realisation.
I never wanted to be a young international diplomat for the government. There was so much more I wanted to offer the world than just my language skills. Being a concert pianist didn’t excite me. I wasn’t passionate enough about music to practice for 15 hours a day. And I don’t want to become a professor and spend the rest of my life at university. I want to explore the world. I want to learn as much as I can and give the world as much of me as I can. I want to live life to the fullest.
This conversation came up for me because of programming.
I’m in my third year of a mechatronics engineering/ computer science degree, and passing countless exams and assignments later, I still don’t think I’m very good at programming.
So, over Summer, I plan to do lots and lots and lots and lots and lots (you get the picture) of programming. When I do something, I like to go all the way. I want to be masterful. If I put my mind to something, I can and do achieve it. So, I know that after Summer, I’m going to be awesome at programming.
However, I was scared. I was scared that if I did programming, then I would stop after I thought I had achieved enough to justify that I was good at it. And, as I want to be the CEO of a robotics company, it wouldn’t bode well with me to stop programming when I’d achieved ‘enough’ to prove to others that I was good at something.
But then I realised the difference between programming and all my other activities. Whereas my mum wanted me to be good at Japanese, piano and maths; I really, really, really, really want to learn and be masterful at programming because it fits with my life goals of being a tech entrepreneur. And while I think my mother is amazing for working so hard to provide me with the opportunities to explore and excel in those areas, I know it will make a lot more of a difference if I am empowered to learn for me.
So now, I’m not scared that I’ll get bored of programming once I get good. I’m not scared that I’ll give it up when I’ve achieved ‘enough’. I’m just really looking forward to it, and I cannot wait until my exams end so that I can start programming the things that I want to program.
I’m not a failure or any of those things. I just hadn’t found my passion yet.
So don’t get disheartened if you keep giving up on things. Just keep searching until you find something that truly ignites you, and that you think is worthy of you committing your time to.



November 19th, 2009 at 10:58 PM
Cool, what a valiant endeavour, nerd it up these hols! :D
I’m guessing that you plan on programming robots eventually… so I wonder, what kind of programming you want to spend your time on?
Do you have any projects in mind? Let me hear them.
I’m guessing that you’re going to want to dominate C, maybe you already do C++ more complicated systems. If you want to borrow “Sam’s Teach Yourself C++ in One Hour a Day” for the summer, you can.
Ops, I’ve got to go, but, please, keep me posted! :D
November 19th, 2009 at 11:35 PM
I kind of think the things that you really love and become good at are those that you dont really plan. But something that happens overtime.
Starting with a small feeling, kind of liking it, and letting it grow and grow.
All this time you are willing to go for it and waiting for it is creating higher and higher expectations that might destroy your love for what you are going to do.
I think higher expectations is what often kills the enjoyment of everything.
November 20th, 2009 at 12:27 AM
I tend to nerd it up every holidays. :)
I’m planning on learning by doing ACM-ICPC problems. http://cm.baylor.edu/welcome.icpc Given that the aim of the competition is to do as many programs as quickly and accurately as possible, and given the huge arsenal of problems they have, I am very motivated at the thought of coding all these different types of algorithms each day. I think practising and getting familiar with lots and lots of algorithms will make me a great programmer all-round. Through uni I’ve already learnt C, Haskell and Java, (and through random stuff, I already know PHP and HTML) and ICPC recommends you write your programs in “C/C++, Java and possibly Pascal”, so I think I’ll be using mainly C and Java to code my programs. As I’ve read and been told countless times, it’s not the number of languages that you know, but the algorithms, or the ability to think in code, that matters (and is that which eludes me now!)
I’ll also be coding up the Nudge web-based service in Python. http://www.nudge.net.au/
I’m very inspired by this document: http://catb.org/~esr/faqs/hacker-howto.html In that document, Eric Raymond recommends: “It’s best, actually, to learn all five of Python, C/C++, Java, Perl, and LISP.”
So after Summer, I hope to be able to tick those first four languages off, and add them to my arsenal of abilities. :)
November 20th, 2009 at 12:31 AM
I think i’ve read Sams’ Teach Yourself C++ in 24 hours, and I didn’t find it terribly helpful, as concepts weren’t really explained very well. i’d try something else.
About the post: very long! Nothing you ever learn is a waste of time. I somewhat doubt it was really the sudden life-changing realization that you made it out as, Marita! Just do whatever you like! If you can’t be bothered to continue with it, it’s too bad, but that’s life! And if it is that you spend 100s of hours trying to master something before you give up, so be it, so long as there was enjoyment to be had in the process.
I don’t think that you can ever ‘master’ something, anyway. The more masterful you become at a skill, you will probably have put in your personal spin on the skill, and you’ll become an innovator.
November 20th, 2009 at 3:40 AM
Very insightful. It’s nice that you’ve thought about this.
Python is a decent language, though my experience is limited mostly to one project (a web-based electrical power usage meter - python was used for the data collecting part of the back-end.) On the other hand, I haven’t heard great things about LISP, it might be useful because it provides a different methodology… but it doesn’t seem to have many real-world applications.
Sam’s Teach Yourself C++ in 24 hours is pretty brief so I can understand it being useless… the reason I got the Sams’ book (as in, the ‘21 days’ one) was because it provides a structured insight into some of the more interesting parts of the language (ie, flip to the back)
I think I best developed my understanding of C by getting into reverse engineering and learning ASM and all about the windows/linux environments - seeing how the language translates into machine code is good, and really set me up for 433-332 (Operating Systems). If you like a mental challenge, CrackMe’s are fun :D - or just rip into some application you like/love and make it better.
There’s a bunch of projects I’ve undertaken in order to teach myself certain things, like COM, DLL Injection, VTable hooking & other kinds of hooking, binary modification, and reverse engineering. Those projects managed to get me motivated enough to explore what I wanted and apply it in a useful way. This is a rant by the way, but it’s not meant to be self-serving… I guess I’m just trying to explain what gets me motivated to learn…. I always start off with something that I want to do, and it just so happens to require me learning something I’ve never heard of - it’s good fun :)
I hope that the ACM competition problems engage you, I’m sure I couldn’t stick to them - I think they’d feel too much like a chore/homework to me, but it seems you’ve got that steel-in-the-belly discipline and determination which I could only dream of.
I salute you.
Hey, take “Operating Systems and Networks” next year in sem 1 if you can, it’ll be fun :D
I’m interested to see what you get up to over the summer - are you and Mark really coming to the US, or is it still on the drawing board at the moment?
Take care, and please accept my apologies for the long-winded, non-lucid post.
November 27th, 2009 at 5:13 PM
The point of learning LISP isn’t for the real-world applications, but according to Eric Raymond, “LISP is worth learning for a different reason — the profound enlightenment experience you will have when you finally get it. That experience will make you a better programmer for the rest of your days, even if you never actually use LISP itself a lot.”
So, software enlightment - sounds good IMO!
I’ll be taking Operating Systems and Networks next year - I’m looking forward to it!
Summer plans are still on the drawing board at the moment, but I’ll let you know when I know. :)
Long-winded, non-lucid post are acceptable!
And Hok, I want to be an innovator!
February 12th, 2010 at 6:22 PM
I like your posts. Meet myself sometimes here and there. :)