Before diving any deeper into the topic, I would like to mention that I am speaking as a passionate software developer here and not as some kind of “language-guru”. But I think it doesn’t really matter at this point. Learning a new language (whatever kind of language you are striving for) is not just about syntax and semantics, but also about learning how you can express yourself in a way that suits your needs.
On my journey, having 7+ years’ experience in software development and 10+ years’ experience in English and 2 more languages, I not only learned the languages themselves, but also a lot about myself. So, here are some dos and don’ts for learning languages based on my experience.
Do: Start where you are
Many people tend to throw themselves into a “new” language with an empty mind but let me tell you one thing: You never have to start from zero.
The first step is to search for similarities between the concepts you already know and the new one.
I love to “test the waters” before actually diving in. I browse over the syntactic and semantic features and compare them with the ones I am already familiar with. That way I never really feel overwhelmed by the amount of new information and don’t create lost, disconnected spheres of wisdom in my brain, which I will likely never be able to access again.
This kind of cross-referencing method, if mastered within this domain, can be applied to every other aspect of your life as well, holding lots of advantages in various situations.
Don’t: Focus on one thing at a time
Imaging studying vocabulary or keywords for hours and hours. You may know a lot of words at the end of the day, but you can’t apply that knowledge in any way.
Especially at the beginning I would focus on having a healthy blend of everything on your plate, don’t choke on one tiny piece of it. Set yourself achievable goals containing a tidbit of everything.
I will write an essay with 100 Words about my last weekend.
Or the developer Version:
I will write a program for counting my daily coffee intake.
You not only confront yourself with a tangible real-life example you are also able to define your tasks even more in detail after you did them once.
I will write an essay with 100 Words about my last weekend with a detailed description of the places I have been to.
Really try to get one – maybe small – thing which is usable as a reference for future projects. You then do have an example for an essay about a weekend experience or a user interface providing the implementation of a button. You can always write another paragraph or add a new feature and spice your code up with some syntax sugar – But finish it.
Do: Finish it
Yes, continuing with that thought – Don’t quit (unless you want to quit completely).
Many people start doing or learning something new, but only a few really build up enough skill to actually be good at what they do. Of course, I have to say this in this context: Consistency.
No one has become a master on anything over night. Don’t start implementing something, quitting as soon as it gets hard and starting a new project. All you do is getting stuck on the same skill level (or maybe even falling a little) and ending up with a bunch of unfinished business. Trust me I have been down that rabbit hole several times.
Concerning this matter I would love to mention Seth Godin – a very inspiring personality – who wrote the insight giving book “The Dip: A Little Book That Teaches You When to Quit (and When to Stick)”, because you want to be the best in the world, don’t you?
So, what are your tips on how to learn a new language? What are the greatest pitfalls you fell into? Feel free to let me know!