

Ask HN: How do you learn new technologies? - mauz

I&#x27;m relatively new to web development and I&#x27;m currently trying to learn new technologies like Angular.js, Node, etc.<p>I&#x27;m finding myself reading through all the documentation, but I feel like I&#x27;m wasting my time. I don&#x27;t know if I should just jump right in and start coding.<p>What&#x27;s the most efficient way for you to learn new technologies?
======
nostrademons
Jump in and start coding. The type of knowledge you get from reading docs is
very different from the type of knowledge you get from solving problems. The
former may get you a job but is generally pretty useless when it comes to
solving more problems. The latter is harder to do, but once you do, you find
that it compounds and you can solve harder and harder problems.

I usually try to start with a nearly trivial problem and work my way through
it, eg. right now I'm learning Polymer and started by taking the landing page
of my previous startup (written in Django/vanilla-JS) and porting it to
Polymer. It is slow going, partially because Polymer is really bleeding-edge
(still in developer preview) and core functionality changed as recently as a
few hours ago. But I've learned a dozen or more technologies in my career, and
each one of them was through actually building something and wrestling with
the framework enough to grok it.

~~~
swah
Have you looked at React? I wanted to ignore but its getting more and more
popular.

~~~
nostrademons
I've glanced at the website and intro tutorial. I'm familiar with a lot of the
concepts behind it, eg. functional reactive programming. Sometime I mean to do
a small prototype with it, just to try it out and get a sense of what it
offers.

Popularity has never been a significant concern of mine - most people are
sheep who follow the crowd, and so if you have hard data and extensive
experience, you will either a.) set the trend, so that they follow you or b.)
have a big competitive advantage over everyone else. Most great products are
founded by doing what everybody else is not, so if you do what everybody else
is, you're automatically resigning yourself to mediocrity.

------
Lorenzo45
It depends how 'new' you are to it. Personally, if I know nothing about a
technology, I find that trying to figure things out myself is extremely
inefficient and a waste of time. The best things for me in this situation are
watching videos of people coding, or taking an online course if there is one
available. Once you've got a bit of a handle on it, it's much easier to
progress on your own just by using documentation and StackOverflow.

------
insin
Make things.

There's no substitute for having a concrete problem to solve, _then_ hitting
the docs, reading around and implementing a solution.

You'll also find out what it's like when things _don 't_ work, which is
something you rarely get from documentation.

