I mean no disrespect to Erik Trautman, or to any of the fine work he has been doing with the Odin Project. But I seriously disagree with his piece that is going around the internet about why coding is so hard to learn.
The article has some cool graphs and some interesting points, but all in all it left me with a very negative taste in my mouth. I think it paints a very discouraging picture in the minds of all people who are thinking about learning how to code.
I'll acknowledge that coding can be very hard and discouraging at times, but it gets better and better as you progress. I think if you are learning how to code, you should start with why? If you read online somewhere that you can learn to code and 8 weeks from now you'll be making $100K, well then yes, you are in for a very tough frustrating time learning how to code.
Do you enjoy learning? If you are like one of my siblings who's only goal in life is to get a good job where he doesn't have to keep learning new things, then learning how to code is going to suck!
If on the other hand you absolutely love learning new bits of knowledge, making even slow progress then coding is going to be a blast!!!
The truth is that anything that is worth something takes effort, learning to code is no different. If the thought of getting stuck on a coding challenge scares you and makes you want to quit, than I dare say most of life itself is going to suck. Learning to code is like learning anything new, take drawing for example. When I was 19 I auditioned and got hired to be a caricature artist at a major theme park. My artwork was not as good as some of the other artists who had been drawing professionally for the past 10 years. So what? I didn't dwell on that fact, or the fact that I had 26 people rejected my caricature drawings that Summer. I loved drawing and I loved seeing my hand eye coordination improve and my artwork. By the end of the Summer I could draw a Caricature sketch of someone in full color in less then 4 minutes!
So if you are a "take the easy path at all costs" then yes, run for the hills coding will suck. If you enjoy learning, you will have many opportunities to learn everyday!
A couple of things to keep in mind:
We all learn differently: If something is not working for you and you are getting frustrated, then stop! Try another way of learning. Some people like tutorials, some people like reading books and doing the exercises at the end of the chapter. Other people like trying to make a web app and learn as they go.
Take the pressure off: 3 years ago I could hardly text or send emails, I've made a lot of progress since then! However if you compare me to someone else my age who has been coding since they were in 5th grade than I am a total failure! Don't worry about anyone else, if they are further along than you are. You are in charge of your future so focus on what you are doing not someone else.
Any progress is progress! As long as everyday you open your laptop and try to learn and get just 1% better with learning how to code, you will make it eventually! A lot of the people that say they learned to code in 8 weeks, really had been "dabbling" with coding for a little while. If you are truly brand new to learning how to code, it is going to take some time. If you enjoy learning that's no big deal, make small steps of progress everyday that's all that matters!
Struggling is beautiful and necessary! A lot of people try to scare you into thinking, you absolutely must go to a boot camp in order to learn how to code. The truth is that no matter where you go, your brain is going to have to work, and work hard to learn lots of new things. The beauty of learning on your own is that when you are one day hired at a company. If your boss makes a mandate that the dev team will be switching to ractive.js. You won't freak out, you will have the confidence to be able to learn something new on your own. The other benefit of struggling to solve coding related issues on your own, is the fact that you will never forget the lessons you learn. This isn't a horse race, savor the moment and enjoy the learning process!
Getting hired is ultimately up to you: No one can get you hired except you. No one can hold your hand in an interview and give you the answers. I failed my interview at the company I first got hired at. They hired me because I admitted I didn't know the answer but I could "Google" the question and get them the answer. I failed 7 of the 8 interviews till I landed the job I have today. You can learn to code on your own and get hired, every year it will get easier and easier as there are more and more job openings as the demand for developers increases. Boot camps have a network so what, you can make your own network like I do in the next point.
Teach at local meet up groups: The best way to learn something is to teach it. The best way to get hired as a junior self taught developer, is to speak at local meet up groups. Kill 2 birds with 1 stone! I just gave a talk at the Arlington Ruby meet up group on Thursday about making a basic Ruby scraper. I was shaking like a leaf and this is the 6th or 7th talk that I've given like this to local meet up groups. Companies respect someone who has the courage to speak in front of 40 - 80 other developers and share what they know. When I was first trying to get hired I spoke at local meet up groups 4 times. Each time I had people come up to me about possible job opportunities. That's how I recommend getting interviews if you are a young self taught developer.
Don't let fear make your decisions for you! You will never know all of the answers and you will be ignorant in 90% of subjects your whole life. If that bothers you, then life bothers you. Coding is not the problem, gain joy from solving even the smallest coding challenges. Use the momentum to drive your learning forward. There will be dips in the road to learning how to code, so make an online coding group. Pair program with a friend when you get really stuck and can't go on without help.
My advice to people who want to learn how to code is first know your "why" and then never give up on the journey! The more you learn the easier it will get, eventually you will have lots of little coding knowledge hooks in your brain. Little things you've picked up about coding, one day you will notice something coding related will come easier to you. That's how learning to code goes 2 steps forward 1 step back, it's fun!
Don't make a ridiculous goal of making $100K 8 weeks after writing your first "hello world" script.
The key to learning how to code is really quite simple, it's not cramming or studying 16 hours a day. It's finding joy in the learning process. I still get happy when I can remove even 1 line of code and make some code I've written cleaner. I love getting something right the first time, I also like getting something right the 10th time too. Seriously people new to learning how to code, should focus on having fun during the process and less on time lines and getting everything perfect.
Keep coding peeps! :-D
Saturday, February 14, 2015
My rebuttal to: "Why learning to code is so darn hard!"
Follow Me
POPULAR POSTS
-
UPDATE September 2016: We are now inundated with bootcamps and it's getting harder to land a junior developer position. I created a co...
-
Yes, obviously Free Code Camp is popular. It's supposed to make things easier for you to learn how to code. My problem is the length of...
-
I have always promised honesty and transparency with this blog. Last time I gave a review about Free Code Camp, I wasn't super supporti...
-
You need a Regular Expression to validate a phone number or a user's email address, so what do you do? Go onto StackOverflow and copy so...
-
What up peeps ! I feel like every day gets better and better, I just gotta' say life is good, No brag, just fact :-) I thought I woul...