title: Polymer defining properties in element
body: <p>While going through Polymer docs, I found two ways of defining properties in custom elements, namely:</p>
  
  <pre><code>Polymer('my-element', {
      myProp: 'someValue'
  });
  </code></pre>
  
  <p>and</p>
  
  <pre><code>Polymer('my-element', {
      ready: function () {
          this.myProp = 'someValue';
      }
  });
  </code></pre>
  
  <p>I understand that the first one passes the object as the prototype to my custom element, so the attribute exists before the element is created, while the other one waits for the element to be initialized before declaring the property.</p>
  
  <p>I am wondering what are the differences between those two (if any), and when one would use over the other? Also are there any other ways of initializing properties/functions?</p>