title: Metaprogramming - self explanatory code - tutorials, articles, books
body: <p>I am looking into improving my programming skils (actually I try to do my best to suck less each year, as our Jeff Atwood put it), so I was thinking into reading stuff about metaprogramming and self explanatory code.</p>
  
  <p>I am looking for something like an idiot's guide to this (free books for download, online resources). Also I want more than your average wiki page and also something language agnostic or preferably with Java examples.</p>
  
  <p>Do you know of such resources that will allow to efficiently put all of it into practice (I know experience has a lot to say in all of this but i kind of want to build experience avoiding the flow bad decisions - experience - good decisions)?</p>
  
  <p><strong>EDIT:</strong></p>
  
  <p>Something of the likes of this example from the <a href="https://rads.stackoverflow.com/amzn/click/com/020161622X" rel="noreferrer" rel="nofollow noreferrer">Pragmatic Programmer</a>:</p>
  
  <p>...implement a mini-language to control a simple drawing package... The language consists of single-letter commands. Some commands are followed by a single number. For example, the following input would draw a rectangle:</p>
  
  <pre><code>P 2 # select pen 2
  D # pen down
  W 2 # draw west 2cm
  N 1 # then north 1
  E 2 # then east 2
  S 1 # then back south
  U # pen up
  </code></pre>
  
  <p>Thank you!</p>