Learning multiple languages

Learning multiple languages isn’t actually as easy as people think.

Most of the senior developers I know with multiple languages under their belt all have one thing in common.

They all started off with a single language.

They mastered one language.

Then moved to another language.

But still, there’s ONE important detail missing.

Nobody talks about that.

Just because you’ve learned the syntax of a new language you’ve become competent? nop.

There’s a thing that never gets lost, and if you don’t have it, you can’t truly learn a new language.

And that is..

A semi-complex project that can be translated into multiple languages.

Let me give you an example.

If you build an invoicing software to send invoices to the customers.

Multiple users can log in generate invoices and each one can send invoice to their own customers.

Customers can then make the payments.

The app user can see the payments received in their dashboard.

If you managed to build the application in PHP for example, you can definitely build it in Python.

And this is the right way to learn a new language.

All that complexity that you had to face in PHP, all the solutions you had to come up with, custom functions you had to write and API integrations you had to make, the business decisions that you had to take into account…

If you can take all that complexity and translate it into Python, you’ve learned enough Python to call yourself competent.

Because you know HOW you built it in first place, you can easily replicate that in Python.

The only difference will be the syntax of Python programming language.

And that’s the special ingredient that nobody talks about.

So when you want to pick a new language, you can use one of your projects as a building block to learn things in correct context.

Learning a new language isn’t just about learning it’s also about being competent enough.

You can only call yourself competent when you have a proof.

The way to build genuine competency is to build something big, and best way to do that is to rebuild one of your old projects in the new language.

And this is the quickest and most realest way to learn a new language.


Comments

Leave a Reply

Your email address will not be published. Required fields are marked *