January 12, 2010
Older: Live From Harmony
Newer: Multiple Domain Page Caching
I Have No Talent
The other day someone sent me an IM and thanked me for my open source contributions. They then said something about wishing they had my gem/code creation talents. I didn’t miss a beat and informed them that I have no talent.
It is true. I have no talent. What I do have is a lot of practice. And I am not talking about occasionally dabbling in Ruby on the weekends. I am talking about the kind of practice where I beat code that isn’t working into submission (though often times the code wins).
The kind of practice where all of a sudden I realize that it is 2am and I’m exhausted physically so I should go to bed, but mentally I feel on fire so I let the code have me for another hour or two (I imagine this state to be like a marathon runner or ironman near the end of their race).
The kind of practice that leads to a GitHub profile stuffed with code I regret (and am embarrassed about, but don’t delete to remind me of where I once was) and code I am proud of (not near as much as I am embarrassed about though).
Intelligence
I am also not very smart. I have a good memory (though my wife will tell you it has some missing pieces) and I work really hard. Really hard. I get that from my dad. He is also not very smart (his words, not mine), with a good memory and works really hard. :)
I am sick of hearing people say, “Oh, I love your code, I wish I could do that.” You can. The only reason you can’t is because you don’t practice enough. I used to think that I wasn’t smart enough. I was jealous of those that did crazy code stuff that I couldn’t even comprehend. Then, one day, I ran into something I did not understand and instead of giving up, I pushed through. I sat there in front of my computer for hours and wrestled with class and class instance variables.
That day was a turning point for me. It was the last time I thought that whether or not I was successful depended on my talent or intelligence. It really comes down to hard work people. Ever since then, I have attacked each thing that I do not understand until I understand it.
I will close with this. I still suck. There are still so many people out there who are far better than I am, but that does not stop me anymore. I do not measure myself against the programming greats, but against those projects on my Github profile from years ago.
143 Comments
Jan 12, 2010
Great article. I feels like this a lot. I still consider myself pretty wet behind the ears with ruby and rails in general but everyday I learn something new and get a little better.
Jan 12, 2010
I was told by a lot of people that I was “smart” growing up. But that doesn’t matter, and certainly don’t tell kids that (it destroys their motivation). I’ve spent years finding that thing that drives me to push just a little more.
You’ve clearly laid out here exactly what it takes to be considered “successful” by your peers, and you’re absolutely right.
It doesn’t matter how smart you are, or how talented you are, all you need to do is be willing to work hard and to keep trying until you figure it out.
Its not about “what you have”, its about “what you bring” and “how you do it” that counts!
Thanks for posting this… I think the community needs it :)
Jan 12, 2010
Well said! I hit the same walls and finally figured out I could get past them just a couple of years ago. Its a great feeling to know you you can tackle anything if you have the drive and patience!
One other note. Sometimes I have to let something go, work on something else, and then come back to it later before a solution presents itself.
Jan 12, 2010
Great post. I’m not a programmer, but I can see how this approach can apply to a person’s field, whatever it is.
Jan 12, 2010
@Jon Hoyt: Totally. Often times I do this at night. If I run into an issue, I go to bed. In the morning it usually only takes me a few minutes to figure it out. Sleeping on a problem always helps.
@Josh: Very true. Hard work helps in any profession.
Jan 12, 2010
Good post. I can relate completely, but without the “you’re so smart” complements :-)
Back in the beginning of Rails I remember putting off learning how to write a plugin, because I thought that was beyond my knowledge. There’s nothing different about a plugin, really, except it has init.rb and install.rb. And like your turning point was the class/instance variables, mine was my first Rails plugin.
From that point on I never put off things because I thought it was over my head. I started diving in head first. Also, I started studying. I studied so much code and libraries written by other people until it seemed second-nature. And now, with GitHub it’s even easier to peruse (and contribute) other people’s code.
It’s never easy to dive into something completely foreign, but learning is the fun part of the challenge. When a day-long problem finally gets solved, there’s no better feeling. And before you know it, it’s no longer a matter of solving the problem, it’s how to solve the problem.
Jan 12, 2010
Amen. That is so well put. I hate my hobby code, I rewrite it over and over, and it gets better. I get better through that. But I still think it’s ugly.
Thanks for writing this, it’s nice to see my sentiments in others, we are not alone. I too love the programming high :-)
Jan 12, 2010
Pretty good article. I must admit I did wonder a little while ago if I was becoming less intelligent recently though. Anyway, while I think that some people are naturally better at somethings than others your point that you really have to work at things is certainly a much more important factor.
I actually think I personally need to work harder at giving more back though and I think that is where the real ‘talent’ lies and often why people praise those who create gems and the like. Taking the time out to actually share what you have done with the rest of the community.
Jan 12, 2010
Refreshing post! Honest and real.
Jan 12, 2010
I’m also not a programmer but this pretty much universally applies to anything and is pretty motivating. Thanks for the post.
Jan 12, 2010
Great article. I have a theory that “aptitude” has more to do with loving something enough to be willing to pound your head against the wall on it until you gain some level of competency. There are some people who are naturally gifted, but those are the exceptions, not the rule. For most of us, the difference between the apprentice and the master is about 10, 000 hours of hard work.
Jan 12, 2010
@Matt Briggs: Good point. Love is all you need. Umm…yes I just said that. Sounds like you’ve read Outliers?
Jan 12, 2010
Absolutely — practice is much, much more important than anything else. I decided to build a small project to force myself to learn Ruby on Rails early last year and, thanks to some hard work and sheer luck, it was acquired just a few months ago.
I’m now starting on this new side project (http://www.snailpad.com) to force myself to get even better with RoR.
If nothing else, I’d encourage you to just start coding — there’s tons of resources out there that can help you when you get stuck and there’s nothing better than building something to solve your own problem. :)
Jan 12, 2010
Great post. Proper home truths there.
I’m reminded me of the old adage about great craftsmanship being 99% perspiration and 1% inspiration…
:)
Jan 12, 2010
Wait, I’m pretty sure there is a rails helper for hard work… :P
I really agree that practice makes it all happen. It also makes for truly enjoyable “ah-ha” moments and allows one to take pride in results which are the culmination of hard work.
Jan 12, 2010
@Adam Anderson: Don’t forget to escape that helper or you’ll end up with XSS vulnerabilities.
Jan 12, 2010
I agree wholeheartedly. It’s all about effort.
And, as an aside, the missing comma in “it’s all about hard work people” makes it so much better. Someone should start a Hard Work People club.
Jan 12, 2010
@Kevin Lawver: Haha! I shall leave the comma out then.
Jan 12, 2010
I believe Kent Beck said it best … “I’m not a great programmer; I’m just a good programmer with great habits.” (Refactoring, Beck Fowler, 1999).
Jan 12, 2010
Surprised noone has mentioned Malcolm Gladwell’s “Outliers” and his 10,000 hours theory… basically he argues that to be truly great at anything, you need to put in about 10,000 hours (and have the opportunity to be able to put in 10,000 hours, which many people don’t have.)
Gladwell makes us think that even “geniuses” were just people with the right opportunity and lots and lots of dedication…
(read the book, it’s good and you can finish it off in a few hours… if you’re smart ;-) cough
Jan 12, 2010
For a more detailed exploration of John as a phenomenon – that what he has is skill as a result of practice and not talent – read The Talent Code.
Jan 12, 2010
Great post.
Jan 12, 2010
Working hard to produce what appears as the work of a great coder assumes you have time and that you started early enough in life to learn to code.
What do you think about starting now?
Jan 12, 2010
You’re awesome!
This post is awesome is so awesome I had to tweet, tumblr, and facebook this for all my friends to see.
Jan 12, 2010
Great Article, I think it comes back to the idea that there are no geniuses. It just comes down to the work you put in.
I feel the same way when people have told me the same. I play piano and work as a programmer. People on occasion are impressed by both, and both are result of hard work and years of practice.
Jan 12, 2010
Wow, speak for yourself buddy! I am awesome!
Jan 12, 2010
I love this post.
Thanks for this…it is very timely for me now.
Jan 12, 2010
Awesome article. I can relate especially to all of it. Work ethic, motivation (make that obsession) for beating the problem and a quest to prove to yourself you can do it are a wicked combination.
Jan 12, 2010
Great article! You’re really an humble and down to earth hacker. You just got me motivated for months. thx
Jan 12, 2010
Well spoken. I appreciate your response because I felt the same way.. not that I’m great, but I’ve really worked hard to know what I know, and as you have seen, it pays off! Now I just need to learn how to do tests ;)
Jan 12, 2010
Thanks for the post, man. I’m from a different field (development, but no ruby so far) and I never stumbled upon your name ‘til today. Anyway – your GitHub profile is impressive and the post is even better.
If you ever end up in the western part of Germany (I’m in Cologne) I’d like to share a beer with you and talk about this kind of mentality.
Thumbs up – this post made my evening.
Jan 12, 2010
This is a very, very good post.
I wish I could write blog posts like this!
Jan 12, 2010
The real issue is to not confuse intelligence with experience. I had a professor who I idolized while getting my degree in Physics and Mathematics years ago as being the most brilliant person I knew. I remember trying to solve a problem and sought his help. He knew I was trying to reduce a hyper-geomtric elliptic integral of the third kind. I was blown away and asked him how he knew that. His reply: “If you had been doing things since before the civil ware, you would know this reduction as well”.
Likewise in graduate school I had a misguided professor intimate to me that I really wasn’t that smart because I had the lowest grade in his Atomic Theory class. The reality was I a 22yo kid with 1 year of Quantum Mechanics. Compare that to the other 8 students in the class who were all had a MS degree from their respective foreign university and in some cases even taught the course their out of the same book! Were they smarter than me? I think not because at the end of the year I scored the highest on the final exam.
So who would you rather have? The smart guy or the experienced one?
I’ll take the experienced, humble one!
Jan 12, 2010
Jon, you’re absolutely correct. I’ve felt this way for many years. It motivated me to learn rails and objected oriented programming in 4 months. It wasn’t until I read “the outliers” that I finally found a source that confirmed what I had discovered.
Intelligence is purely hard work as long as you are smart enough, which 90% of us are.
Jan 12, 2010
Thanks man! Everything I read on the web makes me feel like, “there’s so much to keep up with”. This article validates the fact that EVERYONE has to work at it, not just me.
Jan 12, 2010
This really resonated with me, because I often find myself saying some of the same things. It really is about the hard work and the results that come from that hard work.
One of my favorite quotes that i have always used as ammunition to fuel the fire. (it doesn’t quite match up exactly, but had to share none-the-less)
It is not the critic who counts; not the man who points out how the strong man stumbles, or where the doer of deeds could have done them better. The credit belongs to the man who is actually in the arena, whose face is marred by dust and sweat and blood; who strives valiantly; who errs, who comes short again and again, because there is no effort without error and shortcoming; but who does actually strive to do the deeds; who knows great enthusiasms, the great devotions; who spends himself in a worthy cause; who at the best knows in the end the triumph of high achievement, and who at the worst, if he fails, at least fails while daring greatly, so that his place shall never be with those cold and timid souls who neither know victory nor defeat.
Theodore Roosevelt (April 23, 1910 // “The Man In The Arena” Speech at the Sorbonne Paris, France)
Jan 12, 2010
I have the same feeling, when you sat down and hacked deep into something you thought you would never understand, and finally came up with it, that is a life changing moment.
Jan 12, 2010
@Rich Sturim: Great quote! Thanks for sharing.
@Brendan: Loved Outliers. Great book.
@Allan: Um, no. I coded for the first time in 2001 in college and didn’t really start programming a lot until like 2005.
@Ben: Will do!
@Doug: Holy crap yes! I love that quote. Good old Teddy!
Jan 12, 2010
Intelligence is a talent. But what people don’t realize is that diligence and the ability to work hard is just as much of a talent. In both cases, they are formed by your genetic makeup and the effect of your environment. There are no other inputs! Not unless you believe in a “soul” or “free will” or some such metaphysical phenomenon.
Jan 12, 2010
I’ll second the recommendation of The Talent Code — much better than Outliers for explaining the “phenomenon” of hard work, passion and practice.
Jan 12, 2010
Very true. For me if you are not learning then somethings wrong, or should be lol.
I too stay up way too late… a lot… worth every head bang.
Jan 12, 2010
Phenomenal post. At the end of the day, showing up and doing the work is where it’s at.
@Dave Woodward I don’t necessarily agree with you that telling kids they’re smart destroys their motivation. While it may lead them to slack off, it doesn’t have to work that way. I was told I was smart and given the impression that because I was smart, if I failed, it meant I hadn’t worked hard enough. In my case the result was perfectionist workaholic, not slacker. I don’t know if that’s necessarily a better result, but it’s certainly a more productive one. It all depends on how you frame the discussion, and on the particular kid.
Jan 12, 2010
In the book “Outliers: The Story of Success”, Malcolm Gladwell calls it the “10,000-Hour Rule” of practice. If you look at the ‘great minds’ of the past century – you’ll find a great chance of being more than the average joe with timing, circumstances, some smarts, and 10k hours of practice. Even Bill Gates and Bill Joy couldn’t have been how we know them today without all those hours of practice, learning, tuning, and honing of skills.
If you give any of us a basic set of smarts (which all good programmers have right?) and 10k hours of practice in our field (doesn’t have to be Ruby), then you’ll find some ‘smart people’ capable of tackling some really ‘good problems’ with ‘good solutions’.
Jan 12, 2010
Very well said. The concept of talent tends give a mystical quality when working your ass off is what it’s all about. It’s something I still need to remind myself as I’ve had a lifetime of being told that I’m ‘smart’ and not seeing any worthwhile results until I put in effort instead of trying to be effortless.
Jan 12, 2010
That is the way I am with my music. I’m releasing my eleventh collection this next month for pure love! I produce, mix and master myself just cause I can learn and do great, as anyone else out there! Practice! Practice!
Jan 13, 2010
I agree, but will warn that one should not try to apply this mentality to all other aspects of life. For example, girls don’t like guys who “try too hard”.
Jan 13, 2010
Agree with you. I was decided to do research & development every day in the morning and evening. Day by day, every time I’m trying to be on the edge and it’s pretty good adventure and way to success!
Jan 13, 2010
This is promising given Santa brought me the Ruby on Rails book. I am opting to start with Python as my first dabble into programming (I don’t think Qbasic back in High School counts).
Elbow grease is usually where it’s at for any endeavor. Thank you for this. Oh and well Confucius said find a job you love and you will never work a day in your life! Thomas Edison’s 10,000 experiments getting the light bulb to work says something about practice and intelligence also. Good luck!
Jan 13, 2010
Awesome post…so true
-whenever someone has that attitude towards me I feel the same way. I am not a natural musician by any means…I’ve spent hours and years studying and jammin and performing to become at all competent at what I do. keep up the good words and codes!Jan 13, 2010
@Rod Logic: You are not meant to try hard to get girls. There are thousands of girls out there just waiting for you to use them. Just act like a real man. Acting like a real man often requires many hours of practice though.
Jan 13, 2010
As sshingler mentioned earlier here in the comments. Genious is 1% inspiration and 99% transpiration. Think it is said to be an Edison quote but I’m not sure.
Jan 13, 2010
I applaud your humility and candor.
Jan 13, 2010
Solid post, thanks for this.
Jan 13, 2010
Great post! A straight words like these can really help “newcomers” to apply and study more confidently Ruby (or something else).
Jan 13, 2010
Can’t gree more, no pain no gain – and Ruby made the pain fun as well. =) I know loads of people with high IQ that never made it, aka used it for their advantage by excercising. But to learn you have to have interest or inspiration of some sort (say, a open-source hall-of-famer), it’s a quite fundamental brain rule, brain learns stuff much better that is interesting – noone can learn anything without attention (that is another brain rule I learned when studyign cognitive psycholoy, even though it’s quite obvious). B)
Jan 13, 2010
Talent does not exist and higer IQ statistically proves to be effective only at the beginning of a new activity but not in the long run.
So in fact you are “talented” in the only possible way: you are the sum of your worked hours on your passion over the years.
Check out the book “talent is overrated”, it has pointers to studies and research confirming the theories.
Jan 13, 2010
Thanks, nice article. Nice AJAX comment box, too.
Jan 13, 2010
John, very nice article! As always! But I think you really have a talent: time management. You drive your own company, you have a family (a wife usually is a time-consuming resource :-) ), you speak in conferences, you maintain at least two excellent blogs with nice regularity… Maybe you could please us with some time management tips!!!
Jan 13, 2010
Well said. You don’t suck.
Jan 13, 2010
A really inspiring post. Bookmarked for my down moments. Thank you.
Jan 13, 2010
Inspiring and 100% correct post.
Reminds me of Teach Yourself Programming in Ten Years (http://norvig.com/21-days.html)
Jan 13, 2010
You are definitely right, ‘smartness’ is 99% dedication and passion.( 1% ADN stuff).
Jan 12, 2010
This might be true for the author, but I don’t agree with it as something that is generally true for everyone. Like it or not, intelligence and talent are necessary for a great many successes in life. The key is, they aren’t sufficient. Hard work is also often necessary, and it is very often not sufficient either.
Kudos to the author for finding a field where hard work is often good enough. Although he probably sells himself short in order to spread some happy thoughts.
Jan 13, 2010
I’d like to ask how long you’ve been actively coding, considering the obvious that hardwork is greater than raw talent, I’d like to hope to someday incorporate your ideas into my own lifestyle, how long (per-day) do you practice? what helps with keeping you interested in things? i.e after hours of coding or reading.
Thanks.
Jan 13, 2010
Very Good Post, certainly i have no talent at all.
Jan 13, 2010
Brilliant article! I’ve just come to realize in the last 6 months just how little I know about software development and programming in general. It’s reassuring to know that successful coders have gone through the same thing I am currently!
Jan 13, 2010
Thank you for this, it was beautiful.
Jan 13, 2010
@failed hope: I first got into coding in 2004 and started a job in it in 2005. Not that long. I don’t schedule my practice. It is more inspiration and pure curiosity. I’m constantly reading both articles and code and anytime I have an itch for something I build it.
Jan 13, 2010
This video is very appropriate: “Is Talent all it takes?”
http://www.youtube.com/watch?v=eTJIT12ZCk8
Jan 13, 2010
Great post! I couldn’t agree more. Hard work and persistence trumps talent and intelligence in my experience.
Jan 13, 2010
Excellent article – I’m currently having similar doubts at the moment, and it’s nice to see some positive encouragement. I find I often spend days looking at code where I think “Damn, I simply couldn’t have come up with that!”.
Jan 13, 2010
Good article. Thanks. I having same thoughts about few years. I have no talent. And there is persons around me that more talented in programming. I’ve even considered leaving programming because of that. thinking: “Maybe there is something, I have talent for”. But the truth is – I love what I do, nothing else delivering me such enjoy as programming.
Jan 13, 2010
Great post! I love the idea of only measuring yourself against your own past achievements — comparing the YOU of today to the YOU of yesterday.
It’s great to get motivation from those who are “so much better than us”, but comparing ourselves to them is not a fair comparison; they took a different path to get to where they are.
Jan 13, 2010
You’re exactly right. While I suspect I do have some talent backing me up, any substantial achievement IS just plain hard work. That QuickBooks gem wasn’t made out of clever ideas – it consists of simply a few MONTHS of sweat and persistence every day that no one else would buckle down to do. Learning to program? I laugh at the trivial things I wrestled so much with when I practiced for hours when I wasn’t supposed to on my parents’ computer!
Jan 13, 2010
Shh!! You’re going to give away the secret to being a developer! ;)
Jan 13, 2010
Oh, I wish I could write something like this one day…
:)
nice article, thank you!
Jan 13, 2010
Good and honest post…I agree with basically everything said (in regards to myself, that is) :)
Jan 13, 2010
Well said. Whether or not one can write good code is really up to how much effort they have put.
If you think you can and you keep your curiosity and momentum up, things changed, miracles happen.
Jan 13, 2010
Wow… as many comments mention hard work and motivation are really important and can surmount many obstacles. But I find the rest of the comments sickening – intelligence and an aptitude (aptitudes are often/usually learned/earned) are nothing to be ashamed of. Intelligence is badge that should be worn with pride, not shame. I have no idea what code you’ve written; but clearly it is compliment-able; accept the compliment — don’t make excuses. To all those that think of this as motivational — shame on yourselves, grow a spine and take give credit to your brain where it is due. Everyone writes shitty code (every now and then) – the difference is knowing it; hard work and experience give you that.
Jan 14, 2010
Thanks for that! I totally agree, only had forgotten recently. Been at an all time low morale-wise this week but this has kicked my ass out of feeling sorry for myself. Much appreciated!
Jan 14, 2010
Great post and I couldn’t agree more with it. I’ve never really thought of myself as a very smart guy even if my friends never agree with that. In fact I think I’m quite average.
It’s the not giving up and hard work that keeps one going. And once you’ve solved a hard problem you feel good (and usually want to keep going, even if it’s already 3am), and you’ve become that much better. Next time you won’t even think that long about a similar problem and just do it.
As cliche as it may sound one only needs to give it 110% and it will work out. Eventually.
Jan 14, 2010
Well done that man for being honest and putting it all out there. I too am paranoid about “being crap”.
One problem with being as insecure as I am is that other people’s code really threatens me and I get all anxious “imagine if they could see mine! It’s truly dreadful!”.
None of this matters. As you imply, it doesn’t matter where you’re at now, it’s where you’re headed that matters. The only thing that’s important is to be constantly improving. If you’re better than you were this time last year, you’re making progress and it’s a good thing.
And despite me thinking everything I’m writing right now being crap, thinking back a year ago I wasn’t even able to write code. So that’s a pretty big improvement.
And you’re right – keeping old code is really encouraging.
Thanks so much for an insightful and very honest post.
Jan 14, 2010
Great post! All you need is experience, that’s it!
Jan 14, 2010
Great post – very inspiring!
Jan 14, 2010
Hello there !
I am a CS student feeling a bit down in the dumps right now. This article is indeed motivating.
However, I do consider myself as hard working but I often have the feeling that the way I am practising is highly inefficient.
Do you have any ideas general tips for a smart approach ?
Let’s say I have to do an exercise for my programming class. In case I don’t know how to start, I’d read the textbook. That might be fine so far but let’s assume that reading the pages didn’t help. I am still confused about the exercise. So what now … reading the text again ? I often do this but this is exactly the point where I thing my approach just sucks. I’ve probably already memorised what’s in the book. However, there is a seemingly unbridgeable gap between understanding the concepts and solving the actual problem.
Jan 14, 2010
That’s brilliant. I wish I could write an article like that one. You have real writing talent.
Jan 14, 2010
Great article. You inspired me to fight a php problem. Hopefully I’ll solve it tonight. :)
Jan 14, 2010
I totally agree and relate. It’s all about effort. Being smart is also nice though. The best thing about what you’re saying too is that its a sneaky way of being boastful. Which is great. If you attribute all of your success to being more hard-working you still get to talk about how much better you are than other people and how much they admire you but you’re not doing it in a way that conventionally inspires resentment or admonishment. Brilliant.
Jan 14, 2010
I started studying for the CISSP exam but I lost my motivation after looking the amount of material I had to study. After reading this post I think it helped my motivation to come back. If you want to get anything in this life there is always the easy way or the hard way. For most of us the hard way is the only way. This is how I apply your experience to mine. Thank You
Jan 14, 2010
Great inspirational post John. First I’ve read in a long time that accurately and honestly reflects my life as an entrepreneur and software developer.
Your post reminds me of an oft quoted conversation I had with an older friend nearly 20 years ago. As others derided my friend by attributing his tremendous business success to luck, he replied, “It’s true! And the harder I work, the luckier I get.”
Jan 14, 2010
Agree with what you are saying – all of life is like this; we could all be healthy – thou many of us will not appear on the cover of sports mags. And we could all get involved in government – except we are beat down by the banks and having to work to produce a living that deters from many people’s lives – thou I’m not concerned because eventually – with diligent people like yourself working hard and consistently towards better ends and consistent self-improvement, we will achieve the rational age before too long. Thanks for post – please check out http://www.theorionproject.org/en/index.html
Jan 14, 2010
I was pointed to this post by a friend. Really good stuff. I’m not a programmer, but your outlook here is inspiring enough to make me believe that if I wanted to be, I could. I hope to remember this gem and carry it with me so I can utilize it the next time I feel overwhelmed by something new.
Jan 14, 2010
I wish I had read something like this years ago. I’ve spent a scant 6 months of my 32 years writing code and I’m absolutely in love with it. Am I great at it? No, but I know I will be because I enjoy it, so I spend a lot of time doing it. The reason I never started earlier: I didn’t think I had the “talent”. Unfortunately, I believed the prevalent drivel spouted by coders and designers alike that “not anybody can just DO this web stuff”. Um, sorry. Yeah. Anybody who works at it can. It’s nice to see somebody telling it like it is.
Jan 14, 2010
Cool article. Thanks a lot for you inspiring words. I, for sure, am one of those kind of guys who feel that are not smart enough.
Let’s give your advise a shout :-)
Thanks!
Jan 14, 2010
In summary, you are an empiricist. http://en.wikipedia.org/wiki/Empiricist
Jan 14, 2010
Your advice is actually scientifically accurate, based on recent research on how the mind works.
These two articles below should be required reading for EVERYONE, especially parents.
http://www.pixelpoppers.com/2009/11/awesome-by-proxy-addicted-to-fake.html
http://nymag.com/news/features/27840/index1.html
Jan 15, 2010
Congratulations you missed the boat… whatever it is that PUSHES you to drive like a marathon through insane code sessions – THAT is what they wish they had… they’re giving you a compliment. Be good enough to accept it. Not everyone has this drive that you have.
Jan 15, 2010
Nice article. Though I have been a developer too, I think this applies quite in general. I have been often told that I can grok math very easily, and ppl wish they had my ‘talent’
-the fact of the matter, however is, at some point in my life when I was growing up I had got interested in math, and practiced day in and day out because I found it interesting. Beyond those teething days I have only kept in touch – these are my only ‘talents’.Jan 15, 2010
You make a great mistake in envying me any of my qualities. Very often what you take for some special quality of mind is merely facility arising from constant practice, and you could do as well or better with like practice.
- Wilbur Wright
Jan 15, 2010
My talent
isprogramming, but I’ve never been any good at art.Recently, I realized that with enough practice and dedication, I
candraw, even though I don’t have any innate drawing talent. It was quite a realization!Jan 15, 2010
Hey,
I am speechless after reading this. I was feeling very low about my career since I have failed in many things at the moment. This post from you has come at the moment when I was totally let down and wanted to give up everything since nothing is working. It has increased my motivation level. Thanks for a wonderful post. I have no talent! But I will work hard to get dirty with what I don’t understand well! Thank you again. I cannot express it in words.
Jan 15, 2010
Wow, a Rails developer that isn’t an egomaniac?! I’m hitting the subscribe button. ;)
Great post, and good advice for new programmers. It takes work to get the skill you want…put in the time and ye shall be rewarded.
Jan 15, 2010
Genial!
Jan 15, 2010
@@JaretManuel:
“Oh and well Confucius said find a job you love and you will never work a day in your life!”
That my friend, is very true!!
Great post!… And great comment!
Jan 15, 2010
@@JaretManuel:
“Oh and well Confucius said find a job you love and you will never work a day in your life!”
That my friend, is very true!!
Great post!… And great comment!
Jan 15, 2010
I think one skill we all should strengthen is to actually finish and complete things. Practice is important but doesn’t count much if you don’t put it online somewhere for others.
You shouldn’t be ashamed of any code except the one no one ever reads.
Jan 15, 2010
Wise words. Humility == credibility.
“The only real wisdom is knowing you know nothing”
-paraphrased Socrates
Jan 15, 2010
I felt the same way some time ago: at that point I developed the same attitude as you describe in your article and I’m so grateful that I did, since my skills are improved rapidly.
Jan 15, 2010
I’ve been told that I’m smart. That really helped with the frustration when I produced nothing and therefore was a failure. So I was. I am a hard working person but somehow I didn’t have the habbits, I didn’t know where to start, didn’t have who to ask. I needed something like projecteuler.net to start back then but none was available. In a very non-systematic manner did I pass sleep at night over and over until the things started to make sense.
I still can’t tell that I’m good at this. But programming really changed my way of thinking. Flushed are “you’re smart, you have great potential, I’m not going to ask because I wouldn’t look smart, would I?” and so forth.
I post stupid questions on blogs, answer where I think I can help (humbly if unsure), use netbeans and other tools (I was a do anything in vim for happiness guy), read programming books and seek satisfaction in problem solving, thanks to projecteuler.net.
It is certainly easier now than it was back then if looking from where I am now, but it’s hard none the less. I didn’t have a tutor, I try to be one to anybody asking.
And the story would be glamorous if there was only programming. But practice shows you have to be a good programmer, a good accountant, a good marketing person and so much more in order to succeed. Satisfaction is hard to achieve, but is achievable with hard work. Talent is just a stone on the endless pavement
Jan 15, 2010
I enjoy your blog posts very much :)
Jan 15, 2010
John, thank you. Excellent excellent article. So many of the people who come to me asking for help would be surprised what they could find out on their own if they would just spend 5 minutes in the help file.
I had a similar breakthrough moment, but with a different language. I took a job on a Lotus Notes support desk and was always baffled by LotusScript. That is one messed up language. I dissected countless database and always ended up hitting a wall and banging my head on the desk trying to make sense of it all. Persistence was the answer. I just decided to figure it out no matter what it took. Spent days on end studying examples, trying different things. Finally it all clicked. I went on to develop several databases employing LotusScript functions. I was the ‘Notes Guy’ from then on.
Like you say, all the hard work was worth it. Putting in the time is the only way to get where you want to be, or what you want to know. It’s good to hear such sound advice. This I will subscribe to.
Thanks.
Jan 16, 2010
I relate to your testimonial here, as I do believe it’s the most accurate description of how to achieve proficiency at something.
Another fellow programmer gave his opinion on the matter, and I would like to reproduce one piece of my comment on his post here:
Einstein would be hardly a physics genius without being able to idle at the patent office (a quiet place, you know) thinking about eletromagnets all day and reading Mach and Poincaré with his friends that shared common interests. Similarly, I doubt Picasso would achieve what he did without his father influence, also an artist, motivating him at learning art since the age of 10, ignoring even the traditional education at the time.
The fun fact is that our society tends to ignore that, for each achievement, much frustration and learning had to be overcome. We like to think geniuses were born and then achieved wonders overnight – ideas still reminiscent from ancient Greek semi-god mythologies.
It’s interesting how cultural the “myth of talent” can be, as in oriental cultures, the common sense is quite inverse: that any individual can master anything given enough time, perseverance, and humbleness to learn from his master and understand there’s always more to improve.
Jan 16, 2010
I completely agree with your thoughts, I too work my ass off. Any spare time I have I play with code, trying to build little sites and figure stuff out. By day Im a front-end developer and by night Im all things considered. I really enjoy coding, and you are only as good as you practice to be. Some people expect to only get that far in their 9-5 jobs and dont ever think about practicing outside of work, but its a necessity that you live and breathe work if you are wishing to be great at it.
Jan 16, 2010
This is certainly an excellent and inspiring post, but I think you do have a few talents, namely perserverence and good time management. Now of course both of those can be “learned” in a sense, so maybe they too cannot be called talents. But don’t belittle your ability to continue on despite obstacles. If great men achieved their greatness not simply from genius, the other big important factor was perserverence.
Not everyone will keep banging their head against the wall until they solve a problem. You will, and I will as well. My problem is not practicing enough and in that sense I do appreciate this post.
Jan 16, 2010
Great post. Instantly inspired !
Jan 16, 2010
Here is another very enlightening and related article by Bryan Woods:
Poor, Poor Child. You have no idea.
It’s worth a read.
Jan 17, 2010
Great thoughts John. I have exactly the same opinion. If you want to be good you must practice.
I really like the part about “being almost there, tired, but really wanting to solve the problem, even if it’s dawn” :)
Jan 17, 2010
Without doubt, this is the best post I’ve read on the interwebs within the last 12 months at least.
Thank you for putting it into words.
Jan 16, 2010
I relate to your testimonial here, as I do believe it’s the most accurate description of how to achieve proficiency at something.
Another fellow programmer gave his opinion on the matter, and I would like to reproduce my comment on his post here:
This discussion about “Inate Talent” vs. “Learning” is a recurring topic in the field of psychology. There’s no definitive answer, but some believe that what we call “talent” is the result of different influences, both internal and external, acting on the individual. Factors of influence would range from environment pressure, intrapersonal experiences, education, practice, and of course, “gift”, be it explained by genetic or some other unknown mechanism, which would develop as talent or not, depending on chance.
Personally, I believe all this developmental theory is bullshit.
If you started training basketball at roughly the same age as M. Jordan, and in the same intensity, I wouldn’t doubt you could achieve similar results – in this particular case, considering also that you had favorable genes and health for the practice of the sport, of course.
The main point is: would you be motivated to train, play and learn in the same intensity and quality as M. Jordan? People’s interest on different activites and topics vary greatly, and I believe this is the main influence behind being “talented” or not. Such, I believe there is no thing as “gift”, just training and creativity channeled efficiently to one activity, resulting in above-the-mean outcomes.
Einstein would be hardly a physics genius without being able to idle at the patent office (a quiet place, you know) thinking about eletromagnets all day and reading Mach and Poincaré with his friends that shared common interests. Similarly, I doubt Picasso would achieve what he did without his father influence, also an artist, motivating him at learning art since the age of 10, ignoring even the traditional education at the time.
The fun fact is that our society tends to ignore that, for each achievement, much frustration and learning had to be overcome. We like to think geniuses were born and then achieved wonders overnight – ideas still reminiscent from ancient Greek semi-god mythologies.
It’s interesting how cultural the “myth of talent” can be, as in oriental cultures, the common sense is quite inverse: that any individual can master anything given enough time, perseverance, and humbleness to learn from his master and understand there’s always more to improve.
My hint for you: research about “multiple intelligence” theory by Howard Gardner, and also about the “Tao” philosophy. Great to expand the mind and not get caught on the “I’m more intelligent/talented than others” mud pit. From the wisest characters in human history, none reasoned like this.
Jan 18, 2010
I had been feeling recently that I was not as good a programmer as I used to be. This article made things clear to me: it is because I have not been practicing. I had become complacent, thinking that I am a “natural” at this. Of course, with this attitude, I became duller over time.
Thank you for opening my eyes! Since I read this article about 3 days ago, I am a different person. I am feeling a passion for my art that I hadn’t felt in years. I am taking a keen interest in becoming an expert in my particular niche of programming. I am “beating code into submission”, making good progress in my project, and feeling proud of my work again.
Jan 19, 2010
You need to have a humble heart to make that point :)
Jan 19, 2010
Good post! This applies for all walks of life. It’s good to hear down to earth post. Thanks!
Jan 20, 2010
Wow, still amazed at the response to this article.
Jan 20, 2010
Nice post John,
you really touched on the most sensitive question all humans ask when they’re facing an incomprehensible situation:
“maybe we’re just not smart enough? Or I wish I can one day write something as good as this guy did. He’s a genius!”
And I must say this happens a lot when looking at some genius piece of code, when we right away try to imagine the size of the author’s brain.
Just finished reading “Think Smart” by Richard Restak and it is amazing how our brains work!
Brains don’t get FULL of information, the more you put in the more they want.
By spending those extra hours at 2 AM and sleeping on this new information, you are actually using your brain to its best!
Sleeping on information, as it turns out, actually stores it in the long-term memory how cool is that.
You will be amazed how much practice all known geniuses has put to reach those levels. From Chess players to mathematicians, scientists and so on… Some studies/experiments made, resulted in a person being able to memorize up to 80 digits numbers!!! All with practice!
To better visualize it try to memorize this
98273498273489237423934710234809218340928
340234823048239048204823904829347102348
Which raises the debate are we intelligent by birth! Turns out not!
Thanks John for sharing these personal thoughts!
Jan 21, 2010
Very good post! Many people don’t realise that hard work will surpass any innate intelligence
Jan 22, 2010
Liked it !! Everyday I feel am not good as others. May be I should stop worrying about it and start training on needed things !!
Feb 03, 2010
Buy Endress & Hauser models at up to 20% discount from list price
Endress+Hauser is a leading supplier of measuring instruments and automation solutions for the industrial process engineering industry.
Endress+Hauser is recognized as a leading supplier of industrial measurement and automation equipment, providing services and solutions for industrial processes all over the world. Endress+Hauser offer comprehensive process solutions for flow, level, pressure, analysis, temperature, recording and digital communications across a wide range of industries, optimizing processes in regards to economic efficiency, safety and environmental protection.
As major stockists of many Endress and Hauser level instruments, We official distributor Endress+Hauser in Ukraine, can offer a range of Endress & Hauser models at up to 20% discount from list price – prices usually only available when buying in bulk.
Feel free to contact us.
Feb 05, 2010
I truly believe that we have reached the point where technology has become one with our world, and I am 99% certain that we have passed the point of no return in our relationship with technology.
I don’t mean this in a bad way, of course! Ethical concerns aside… I just hope that as technology further innovates, the possibility of transferring our memories onto a digital medium becomes a true reality. It’s one of the things I really wish I could experience in my lifetime.
(Posted on Nintendo DS running R4i Card DS scPost)
Feb 06, 2010
This is a great article. I have always had a hunch that talent seems a bit too magical, if anything deserves to be labelled talent it should be persistence.
Anyone interested should read “The Talent Code” by Daniel Coyle who demistifies the fluff around talent.
Feb 17, 2010
You know what John? If your wife tells you that your memory leaks, that indeed indicates that you do not have a good memory, but …
… an excellent one ;)
A married reader.
Feb 23, 2010
I’d like to add that it’s commonly thought that an indicator of “smart” is (Joel Spolsky has an article on this) how passionate a person is – a smart person will tend to be passionate about many things, because this passion (willfulness) allows him to work hard at many different things and find solutions. After all, someone who is not passionate will not work hard, hence not become proffient.
Feb 28, 2010
I would like to compliment you on your candour.
I’ve been saddled with “smart” and “creative” as well, the truth is that nine times out of ten it’s just brute force attacks on a problem. Sometimes it isn’t even all me, if I really hit a wall I break out the crayons, big paper, beer and marijuana.
It may seem counter productive but write your biggest problem at the top of a huge sheet of paper and give it a try sometime.
Your preferred combination of drugs, alcohol and writing utensils may vary.
Peter
Apr 05, 2010
awesome article.
robes
Apr 18, 2010
Love it :-)
When I was a kid I used to make ships in bottles and people were always telling me they wished they had my patience. I would get quite annoyed. I have no patience. Just determination. The job gets done because I can’t let it go till I have cracked it. If anyone had actually seen it happen they would have been able to tell by the tourette’s attacks that patience was not part of the process :-)
May 09, 2010
Bullshit, don’t kid yourself.
Hard work won’t get you anywhere, and you need to have talent.
Just stop and be realistic people.
May 14, 2010
Quoting the Dalai Lama ""There isn’t anything that isn’t made easier through constant familiarity and training.
Through training we can change; we can transform ourselves."" :) Great Article!!! Thanks :)
May 28, 2010
Beethovan said, “I don’t have a gift. Anyone can have my ability – you just need to practice 8 hours a day for forty years.”
May 28, 2010
Reading “Outliers” (book), it is interesting to read how many hours a person has to put in practicing to succeed.
May 28, 2010
True, that. When I started OOP I remember thinking: Design Patterns? SCARY!
Now they fascinate. Its all a puzzle to be solved. Mice and Monkeys solve puzzles so why can’t I. I’m vaguely smarter than some monkeys and I have a computer.
Its all about interest and obsession. You’re interested in the process and obsessed with understanding. Thats what passion is, really. If you’re not passionate about something then go find something else!
Jun 02, 2010
great point! thanks for sharing! we definitely have to work hard and keep practicing what we love to do to be good at it. instead of seeing people who are better than you as your competition, consider them as your motivation to work harder and enhance your skills even more.
Jun 03, 2010
I define talent as a person’s ability to be good at task at hand. And, if task at hand, is something you’re passionate about, talent’s throughput increases!
Jun 04, 2010
Really inspirational post! Great read, thanks for the motivation!
Jun 06, 2010
Reminds me of Malcolm Gladwel talent = 10,000 hours of work. Seems you put in your 10,000 hours :)
Sorry, comments are closed for this article to ease the burden of pruning spam.