Six things that are more important than learning how to code
Frequently I get asked whether learning how to write code proficiently is a good idea, and how to get started (which I may cover in a lengthy article).
The idea that learning how to code is useful has permeated every field. Having an entry for programming skills on the Curriculum Vitae has become a witty way to differentiate yourself from other applicants.
Is the effort to learn how to code worth it though?
What you won’t learn with coding
Who asks me to teach them coding is often unfamiliar with computers, not knowing what code even looks like except for what they learned from sci-fi hacking scenes in movies and TV series.
You won’t learn:
- how computers work: unless you’re taking a formal course about low level programming and about how systems work, you won’t gain any knowledge about the nitty gritty details of how a computer works.
- how to fix computers and printers: this is “street knowledge” gained by sitting in front of less-than-perfect computers for years. You won’t become an expert in fixing Windows if you learn how to code.
- how to hack: while related, you’d have to focus on hacking. Most programmers can’t even avoid obvious security pitfalls, and we’re all quite far from being hackers unless we studied hacking on purpose.
- problem solving: you will likely find new ways to solve problems, but problem solving is a skill that is nurtured over a very long period even outside the scope of programming.
More important things to learn
My likely answer to the question “should I learn how to code” is “are you that bored?”, as programming is hardly a life-changing skill if not applied routinely on the job. In fact, very often programmers take a long time to develop solutions for issues that would’ve taken less time to handle with human intervention.
It is a skill that doesn’t stick like riding a bicycle. Programmers are the ones that will need a day or two to pick back up a language they used a few months earlier. We will forget the name of functions that we use ten times a day more often than not. We will search on Google pretty much anything, even things we’re completely sure about.
You might actually be looking for some smart fun, in which case learning how to code is a great way to pass some time, yet, if you’re seeking for efficient self-improvement, you may be overthinking the value that being able to code will have on your future.
Here’s a list of things that may be more important than learning how to code.
1. Learn about personal finance
Whenever I talk to people about money— even with my very rudimentary knowledge of personal finance — I am astonished to learn that they don’t really know anything beyond putting money in their bank account. They don’t know how stocks work, how much of a bad idea it is to try to time the markets, and what investing in indexes means, they don’t know anything about tax exemptions for investments.
Even worse, they don’t really understand what it means to have negative values on their credit card. They don’t know the simple rule that is to first extinguish the debts that have the highest percentage in interest.
The less knowledgeable they are about finance, the more issues they have with saving money.
I don’t want to tell people to go investing — ability to handle emotions and understanding of basic maths aren’t granted— but I want them to know their options and understand how wealthy will they be in 10 and 40 years. Learning the basics of personal finance could very well turn the later years of one’s life from miserable to acceptable.
Because this is content that could impact your finances, I ask you to take the content with a grain of salt.
http://monevator.com/category/book-reviews/ Monevator’s page about book reviews has what you need, and I’ll suggest Tim Hale’s Smarter Investing. Monevator itself is a good site for beginners.
2. Get a driving license
An amazing amount of people don’t have one because it doesn’t appear necessary to own one in the place they live in.
One’s life is long, and you may require to drive a car for urgent reasons, or because you moved somewhere where a car is needed, or because you’re on a trip and renting a car is cheaper than going around by taxi.
Even when there will be self-driving cars, laws will still force you to keep your eyes on the street and you will need to have a driving license to be able to control the car in case of emergency.
During your lifetime you will end up needing a driving license. Get one.
3. Read non-fiction books that you can understand
Books are amazing and I don’t read enough myself. Books store more than simple characters. They store characters in a specific order. Order is information.
Thanks to the positioning of these Unicode characters, you will be able to acquire knowledge that people acquired through much harder means, like research (sometimes “bullshit”: keep your eyes open for that).
Why am I suggesting to learn something random instead of coding? Because in the time you will need to have a decent grasp of programming, you’ll have read enough books that you’ll believe your self from a couple months ago was a complete idiot.
Go online, pick some cool book, or go to the library.
4. Join meet-ups in your field or hobby
I can’t stress enough how important it is to have (human) connections you can relate with. The World is full of possibilities and knowledge that you won’t find on websites, so the only way to gather them is through people.
If you’re lucky to live in a huge city, meet-ups will be common around you. There’s meet-ups for most niches. You will be able to listen to experts and people giving a try at giving a presentation talk about what you’re passionate about.
Meet-ups are full of extroverted people who will be glad to speak with you. Furthermore, there’s often free food and drinks sponsored by big brands in the field.
Meetup.com is an amazing site to find meet-ups in your area.
5. Micromanage your life
Learning how to micromanage your life is hard, but we now do have smartphones that will help you writing down as soon as possible all the information you need to store on the long term.
Some things I micromanage myself:
- my diet, I log every thing I eat and check that I’m not eating too much of the same thing, and make sure I get all the nutrients I need to stay energetic.
- my exercise, even if it’s just a random walk, it adds up. I walk just enough every day, and if I don’t, I will take a detour so I do get past my target 12000 steps per day.
- the time for entertainment, even when I need to get something done, I still want to dedicate some time “for myself”. It is like saving money in a bank account: you have so many things you need to buy, but you’ll limit yourself by declaring that some of the money is “untouchable”.
When you micromanage, your performance goes up, your energy will eventually go up, you will feel more disciplined, and soon you will feel like it’s no problem at all to do this.
6. Learn about how to succeed at interviews
Work is the greatest time-waster in one’s life. Unless you’re expecting to work for yourself in the short term, learning how to excel at interviews can be your greatest life-changer. Spending a lot of time preparing for interviews is a good investment.
Every field has its own resources about this. The IT field seems to be very proficient, but in other fields, in which getting a job is much harder of a fight, there’s even paid resources to investigate in what got people hired in first place.
Learn to lose. In general, most interviews will turn out to be a failure. Once this is dealt with, you will improve at a very fast pace, as long as you’re critical about each interviewing experience.
Learn how to code.
Still here? Did most of this? Then… go learning how to code. It’s mostly free!
Here’s some resources I will gladly refer you to:
- https://www.codecademy.com/ (free), the most common site to learn basic development. It doesn’t go nearly as deep as I’d like it to, but it’s a good way to kickstart your programming.
- Stanford’s CS101 https://lagunita.stanford.edu/courses/Engineering/CS101/Summer2014/about (free), because it’s very important to also formally understand what you’re coding. Several other Stanford courses are available.
- https://www.coursera.org/ (paid), the most popular site for online courses. It won’t give you better bang for buck than free options, 5but it will likely have you learn faster with better content.
- @tamagnofabio (free), feel free to bother me if you need specific material of have questions. I’ve been coding for a decade so I am bound to know what you may look for!
Follow me on Medium, or on my twitter account @tamagnofabio.