Can you succeed in coding without really trying?
Photo by Sai Kiran Anagani |
“So how does one learn to code?”
“I just want to build an app quickly. What do I need to learn?”
“I want to build a website for my photography business. Can’t be that hard, right?”
“I signed up for a course that says I can learn to code in thirty days. Can I really?”
Almost everyone I speak to when they find out I write code for a living.
A quick Google search of ‘how to code’ or ‘how to code without a computer science degree’ will yield a myriad of step-by-step quick solutions on how to be a coding wizard in a matter of days. There are websites like Lynda and Treehouse in which you can learn to code for a small subscription. Some people spend years at University studying programming. Some people are self-taught. All of them are valid. But what people fail to consider is that no solution is perfect. For some people, they could watch a couple of online tutorials and become a coding master. For most, that’s not necessarily plausible. In my case, while I found Treehouse useful and comprehensive, I couldn’t stand the idea of watching a lot of videos. I like interaction. I hate being ‘talked at’, which is probably why I struggled with attending and paying attention to lectures while at Uni.
Just like in other things in life, we all learn in different ways. Also, nothing comes without a bit of ‘hard yakka’ as the Aussies would say.
My background
I became interested in computer science and programming as an awkward fourteen-year-old. Little did I know that my hobby I indulged in to deal with high school bullying would become my bread-and-butter as an adult.
As a teenager, I started out mastering the front-end languages — HTML, CSS and basic JavaScript. In the last five years I started taking programming more seriously, first learning PHP before eventually focusing more on front-end and CRM development and utilising the countless JavaScript frameworks out there. To this day I continue to expand my skills all the time. It doesn’t stop.
Coding came (and still comes) naturally to me. That’s not unusual for people in my profession. A lot of today’s software engineers were code wizards as children and teenagers, starting out by building web pages — myself included. In summary, yeah you can learn to code in 30 days but just like other disciplines, to master it takes time, patience and dedication.
The industry as it stands (in my experience anyway)
There is a lower barrier of entry for developers, particularly front-end web developers. I can’t speak for the industry as a whole, but thanks to all the access we have to information these days, it is no longer a ‘requirement’ to have a Bachelor’s degree in computer science to become a programmer. Of course, that is up to the discretion of the company that will hire you. You will still find job advertisements that require a minimum of a Bachelor’s degree and fifty million years of experience for an entry-level position, for instance. But I have a sneaking suspicion that a lot of other industries are very similar.
However, there is a high demand for developers and companies are willing to fork out a whole lot of cash. The last time I did a job search for senior Ruby/Rails developers in Sydney, Australia, the salary range for vacant positions at the time of my search ranged from $120K to $150K and that’s not unusual.
But I have some news for you: if you think becoming a web/software developer purely to dig into that gold mine is a good idea, then you’re in for a Bad Time. I know people say this about their jobs all the time, but it really isn’t an easy job. And while there is a high demand for programming jobs, most of the time they won’t hire any person off the street who can print ‘Hello, World!’ You have to demonstrate that you’re competent. That usually comes in the form of demonstrating your code and partaking in coding tests in your job interview. Sure, a million bugs in your code may not be such a big deal, unless the software you wrote is responsible for the safety of astronauts in space.
So can you? Succeed in coding with minimal effort, that is.
In short, no. Unless in exceptional circumstances, you can’t really succeed in coding without really trying.
But people are always going to be naturally curious about what we do, hence all the question statements that kicked off this blog post. By all means, I would encourage it. The world is literally at your fingertips. But if you do decide to embark on this path, here are some starter tips …
1. The Internet is your friend
Furthermore, there are specific websites dedicated to teaching you how to code. Some for free, some for a small subscription fee. They include the following:
- Lynda and Treehouse, as previously mentioned.
- codeacademy.com
- skillcrush.com
Disclaimer: I’ve only every used Treehouse and Code Academy, both of which are good. I couldn’t tell you what Lynda or Skill Crush is like.
2. I’d probably start with HTML and CSS first
Coding, in it’s very essence, is telling the computer what to do. Contrary to what a lot of people would believe, computers are dumb. You have to give it a specific set of instructions in order for it to do something.
While HTML and CSS are mark-up languages and not programming languages per se, both do involve telling the computer (or in this case the web browser) what to do and how to render your input. From there, you can learn JavaScript and dive into the basics of programming.
3. While learning, as much as possible avoid CTRL + C and CTRL + V
Everyone learns differently, but coding is very much practical and the best way you can learn is if you actually ‘do’. While it may be tempting to just copy and paste snippets from online tutorials because it’s convenient, it hinders the learning process.
4. Have something to build
Ashley Baxter explains on her blog post at iamashley.co.uk that she learned Ruby/Rails by having something she wanted to build. She wanted to build an online quotes app for her insurance business, so she learned Ruby/Rails and built Lodger. Your product at this stage of your coding journey doesn’t necessarily have to be as complicated as an online insurance quotes system. If you want to build a website for your photography business, then you better get cracking on the HTML and CSS.
When I was first learning to program, I wanted to build a PHP-driven blogging system that would be similar to WordPress but customised to my liking. And I did!
5. Get talking to people
Twitter in particular can be a hostile place for people starting out, but that's not to say that there isn't a supportive community out there, online and off. For me, what worked best was finding and befriending like-minded people on the Internet and supporting each other.
Attend local meet-ups if they exist in your city/town and if the idea of being in a room with people doesn’t scare you. You’d be able to get some networking done as well as build new friendships.
And finally …
At the risk of sounding like a cliche, best of luck.
Comments
Post a Comment