title: Has anybody managed to teach themself strong OOP skills through mainly developing with JavaScript?
body: <p>I am trying to do this, I'm a full time front-end dev and am aware that I am yet to achieve this. 
  When I am referring to OOP skills I am referring to understanding and being familiar with concepts like inheritance, polymorphism, encapsulation, abstraction.
  I am aware that it may be more likely to achieve what I'm after by focusing on another language in my spare time. This is the plan, but I'd be really intrigued to hear if anybody has managed to achieve this purely through JavaScript and how you did it. </p>
  
  <p>It'd be even better to hear from strong OOP developers from who use different programming languages to know if they have worked with developers who have managed to achieve this.</p>
  
  <h2><strong>Feedback:</strong></h2>
  
  <p>Just in case people are wondering where I went from this - </p>
  
  <ul>
  <li><p>I've taken a closer look at what
  prototypal inheritance means and how
  to use it better. </p></li>
  <li><p>I've decided to spend more time properly 
  learning ruby (could be any language 
  that is class based) in my spare 
  time.</p></li>
  <li><p>I've decided to experiment (nonchalantly) with different
  languages so that I can gain not the 
  intricacies/exact syntax of them, but
  more of an overview of how they 
  approach OOP. I've started with <a href="http://selflanguage.org/" rel="nofollow noreferrer">Self</a>, <a href="http://www.scheme.com/tspl3/" rel="nofollow noreferrer">Scheme</a> is next on my list.</p></li>
  </ul>
  
  <p>Thanks a lot for the really helpful answers. </p>