In general, I've found that almost all success at anything worth doing comes from repeatedly failing until you don't. If you fail the first time and give up, you probably didn't care enough to do it anyway. If you succeed the first time, it probably wasn't that hard. Fail often and fail hard and be proud of it! It's a sign of progress, or at the very least attempted progress.
I prescribe to the "you must try, try and try, try and try" method of failure as described by Mr. Cliff. If it doesn't work out by the 5th time just repeat the cycle as necessary.
Or a sign that you should try something else. Not everyone can succeed at everything. Obviously it is best to recognize that as early as possible in the endeavor.
Not sure the last example the author gives of chess-playing programs is a good one though; a task where it is literally impossible to succeed would just serve to discourage even the most motivated of newcomers, I'd think.
Was easy as a kid - effortless even. If your day job doesn't involve coding then it fades fast though.
The mindset / thinking style thankfully doesn't seem to fade though. Thats why I'm all for making kids learn to code. Yes they'll suck & no they won't become real programmers but it leaves a permanent imprint on the minds of those that take it seriously.
I loved it. I bought my first domain when I was 10, intending to create a game like Neopets. I obviously quickly learned I wasn't going to be able to, but I created a fan site, kept hacking at it, and learning. I learned security, etc. By the time I was out of high school, I was recruited by Barracuda Networks.
Some of those kids will go on to be decent programmers. And it definitely leaves you with a much more analytic way of thinking, for better or worse.
This is very true. I was raised in Redmond, Washington (home of Microsoft and others), and the school curriculum was influenced to some degree by proximity to software companies. There where many lessons that where in some way relatable to programming, and those made learning programming later on much easier.
My interest in computer as a kid (4 or 5) came from watching my dad working/playing on the computer, and he would show me simple commands in DOS and little things (the paint bucket stood out for some reason) he could do with it. It really left an impression and told me that computer was a useful/fun tool that was worth exploring, which I believe eventually led to me trying to figure things out on the computer and making websites/interfaces.
I'm waiting for an article about "How I Failed, Failed, and Am Still Failing" to provide the flip side in contrast to these success stories we are so biased towards
here you go - "So I fired up my IDE and spent an hour, finally getting my C# program to compile. It put out bullshit, I couldn't figure out why. I gave up. Then I fired up my ole' Putty and tried to get into my server to figure out why my database kept giving me an error. I thought about rolling back but couldn't figure out how Chef actually works, even though I set it up. Finally, I had this really cool idea for a javascript game I could code up real quick, and spent an hour in the javascript console trying to figure out why it wouldn't execute. Gave up on that too. I read some forums, there was a cool app to scrape my facebook, I ran it, it just requires Python, but it wouldn't run. Overall I accomplished nothing. Oh, and Chrome is still crashing at the most random times, no idea why."
I think there are a lot of those stories? I know I can't call myself a Programmer yet? I can call myself a website builder though. I can spot errors in other people's Javascript, but I still would never call myself a Programmer.
And even though I can put up websites, I not that proud of it? 95% of the learning process was just following directions?
I have noticed there's a lot of successful people out there whom hang titles behind their names whom aren't very good at what they do, whether it's Programming, Business, or Whatever Expertise claimed?
I sometimes think the key to success is over inflating one's ability, and faking it? I personally know so many extremely wealthy Fakers. Programming is one field I couldn't imagine faking it? I guess my point is I know too many people who literally lied about their abilities, and in the end--Won big time!
I sometimes feel the way I was brought up(every Sunday going to church, and feeling very confused) was detrimental to my wallet?? Plus, as a kid, unless we really/really were great at something; we kept our accomplishments/skills to ourselfs. We never got the chance to brag. If we did(brag), someone would literally, usually verbally, smack us, and we never acted overconfident again? I honestly feel being modest, and not chasing the Dollar--held my generation(born 60's-70's) back? (What I saying, I still can't stomach people who over-inflate their abilities, nor go after money too aggressively--especially money from the poor/middle class! The thought of my filthy Looker sister is enough to get me to stop this post. She did some damage to her family over the almighty Dollar--really weaselly stuff. She's rich though?)
I keep seeing all these programming articles and schools that'll teach you in 3 months and you'll make 70k+. Someone is trying to flood the market to drive wages down.
Notice also that now it's all about "coding" and never programming or software development/engineering. This is deliberate.
And good luck getting respect from non-technical managers, policy makers, or the public at large when your actual job title is "coder" and all of these articles, bootcamps, and CodeCademy type websites have convinced everyone that "coding" (unlike law or medicine) is super easy and anyone can do it!
"Why isn't the ERP system ready yet? It's just coding, after all... I did that on CodeCademy when I was in high school as part of the National Teach Everyone To Code Initiative and it was easy. I already did the hard part by telling you exactly what we need (and telling you again each of the fifty or so times our requirements changed); all you have to do is code out the details. What's the hold up?"
>>Someone is trying to flood the market to drive wages down.
Why resort to such a conspiracy theory? Do you have any evidence?
I subscribe to a much simpler explanation: the market is simply responding to demand for higher-paying jobs. Colleges are obviously failing to train people for such jobs, so vocational schools (i.e. for coding) are picking up the slack.
It's the same as the "scientist shortage" except instead of taking 5 years to churn out PhDs who can't get research jobs, you can churn out "coders" in only 12 weeks!
I am doubtful that one of these boot-campers will be as good as someone with 10+ years of coding experience, so there will still be a wage premium for the most competent of coders
I am curious if project euler teaches you programming. I does teach you mathematics and thinking logically, but software engineering is different and is really learnt on the job. I am always confused when someone says about learning or teaching coding. What is meant by coding here? Writing fizzbuzz? Or writing enterprise software with so many levels in between and around as well.
> I am always confused when someone says about learning or teaching coding. What is meant by coding here? Writing fizzbuzz? Or writing enterprise software with so many levels in between and around as well.
Isn't that like asking, "What is meant by 'learning to write'? Subject-verb sentences? Or the next Great American Novel?" It's possible to learn programming without getting into software engineering.
Many aspects of programming like code readability, patterns, and abstractions could all be taught in a fun interactive way like these problems are done in. This site just focuses more on the math and logical thinking parts.
It took a while before programming really "clicked" with me too, and I started with BASIC on an apple ][. It probably wasn't until a year or two into CS that I could approach a problem in an organized manner.
Now after decades of exposure, as my CS algos professor prophesied, it takes me a week or two to pick up a new language.
Welcome to the New World, the education system in America is broken especially when it comes to teaching evolving topics like programming. Imagine what the world would be like if instead of the 30hrs Americans spend on average watching tv a week, they instead took that time to learn and create.
I imagine it being much more competitive for us if it was the case. I'm actually very happy that not many people know how to code or have the interest in it. It almost feels like we have unfair superpowers.
"In a way, the ORIC-1 was so mesmerizing because it stripped computing down to its most basic form: you typed some instructions; it did something cool. This was the computer's essential magic laid bare. Somehow ten or twenty lines of code became shapes and sounds; somehow the machine breathed life into a block of text."
Oh, yeah. I still remember that feeling from Atari 65xe and then C-64. Now it's much harder to get such instant gratification. While trying to revive my passion and learn new stuff as an adult I also failed several times, because I set my aspirations too high and wasn't able to quickly learn all the necessary stuff at once :) Nowadays the path to "cool things" seems to be much harder, until you adjust your personal definition of cool.
I got that feeling recently learning iOS. I had previously taken many programming courses where everything happened in the console, and to go from that to storyboards and the robust UIKit frameworks got me hooked. I've been teaching myself and have slowly progressed from newb to relatively competent in the last six months. I still have a lot to learn, but I'm enjoying the learning process in a way I never thought I would.
I think today you get that kind of interactive computing with something like the IPython notebook. You can load an image, apply an effect on it and immediately see the result. You can lookup documentation interactively too.
If anything, I think nowadays there are too much cool things, and the challenge is figuring out what can be achieved with them in a small number of steps, instead of getting lost.
I always felt weird about this kind of math, because problem don't have an "API", or an algebra, it's too open. But if you're into creativity and search then it's even more fun. Maybe a psychology thing in the end.
[+] [-] mwfunk|10 years ago|reply
[+] [-] autotune|10 years ago|reply
[+] [-] lqdc13|10 years ago|reply
[+] [-] smitherfield|10 years ago|reply
[+] [-] amenghra|10 years ago|reply
[+] [-] Havoc|10 years ago|reply
The mindset / thinking style thankfully doesn't seem to fade though. Thats why I'm all for making kids learn to code. Yes they'll suck & no they won't become real programmers but it leaves a permanent imprint on the minds of those that take it seriously.
[+] [-] johnmaguire2013|10 years ago|reply
Some of those kids will go on to be decent programmers. And it definitely leaves you with a much more analytic way of thinking, for better or worse.
[1] http://www.screenshots.com/ghostlypets.com/2005-12-15
[+] [-] lelandbatey|10 years ago|reply
[+] [-] na85|10 years ago|reply
I'll use a Linux or BSD because let's face it, proprietary operating systems are pretty shitty platforms to learn to tinker with.
[+] [-] einai|10 years ago|reply
[+] [-] personjerry|10 years ago|reply
[+] [-] logicallee|10 years ago|reply
Not quite the story we like to read.
[+] [-] danso|10 years ago|reply
http://www.theatlantic.com/education/archive/2013/10/should-...
[+] [-] marincounty|10 years ago|reply
I have noticed there's a lot of successful people out there whom hang titles behind their names whom aren't very good at what they do, whether it's Programming, Business, or Whatever Expertise claimed?
I sometimes think the key to success is over inflating one's ability, and faking it? I personally know so many extremely wealthy Fakers. Programming is one field I couldn't imagine faking it? I guess my point is I know too many people who literally lied about their abilities, and in the end--Won big time!
I sometimes feel the way I was brought up(every Sunday going to church, and feeling very confused) was detrimental to my wallet?? Plus, as a kid, unless we really/really were great at something; we kept our accomplishments/skills to ourselfs. We never got the chance to brag. If we did(brag), someone would literally, usually verbally, smack us, and we never acted overconfident again? I honestly feel being modest, and not chasing the Dollar--held my generation(born 60's-70's) back? (What I saying, I still can't stomach people who over-inflate their abilities, nor go after money too aggressively--especially money from the poor/middle class! The thought of my filthy Looker sister is enough to get me to stop this post. She did some damage to her family over the almighty Dollar--really weaselly stuff. She's rich though?)
[+] [-] 0xdeadbeefbabe|10 years ago|reply
[+] [-] happytrails|10 years ago|reply
[+] [-] throwaway838|10 years ago|reply
And good luck getting respect from non-technical managers, policy makers, or the public at large when your actual job title is "coder" and all of these articles, bootcamps, and CodeCademy type websites have convinced everyone that "coding" (unlike law or medicine) is super easy and anyone can do it!
"Why isn't the ERP system ready yet? It's just coding, after all... I did that on CodeCademy when I was in high school as part of the National Teach Everyone To Code Initiative and it was easy. I already did the hard part by telling you exactly what we need (and telling you again each of the fifty or so times our requirements changed); all you have to do is code out the details. What's the hold up?"
[+] [-] enraged_camel|10 years ago|reply
Why resort to such a conspiracy theory? Do you have any evidence?
I subscribe to a much simpler explanation: the market is simply responding to demand for higher-paying jobs. Colleges are obviously failing to train people for such jobs, so vocational schools (i.e. for coding) are picking up the slack.
[+] [-] svisser|10 years ago|reply
[+] [-] gaius|10 years ago|reply
[+] [-] paulpauper|10 years ago|reply
[+] [-] akshat_h|10 years ago|reply
[+] [-] danso|10 years ago|reply
Isn't that like asking, "What is meant by 'learning to write'? Subject-verb sentences? Or the next Great American Novel?" It's possible to learn programming without getting into software engineering.
[+] [-] jtwebman|10 years ago|reply
[+] [-] buckbova|10 years ago|reply
It took a while before programming really "clicked" with me too, and I started with BASIC on an apple ][. It probably wasn't until a year or two into CS that I could approach a problem in an organized manner.
Now after decades of exposure, as my CS algos professor prophesied, it takes me a week or two to pick up a new language.
[+] [-] ZoeZoeBee|10 years ago|reply
[+] [-] lqdc13|10 years ago|reply
[+] [-] ArekDymalski|10 years ago|reply
Oh, yeah. I still remember that feeling from Atari 65xe and then C-64. Now it's much harder to get such instant gratification. While trying to revive my passion and learn new stuff as an adult I also failed several times, because I set my aspirations too high and wasn't able to quickly learn all the necessary stuff at once :) Nowadays the path to "cool things" seems to be much harder, until you adjust your personal definition of cool.
[+] [-] ar_turnbull|10 years ago|reply
[+] [-] andreasvc|10 years ago|reply
If anything, I think nowadays there are too much cool things, and the challenge is figuring out what can be achieved with them in a small number of steps, instead of getting lost.
[+] [-] agumonkey|10 years ago|reply
Took me far too long to find the triangle area.
[+] [-] billrobertson42|10 years ago|reply
[+] [-] jtwebman|10 years ago|reply
[+] [-] fit2rule|10 years ago|reply
[+] [-] rickdale|10 years ago|reply
Samuel Beckett