title: How do PStricks and TikZ compare for ease of learning and for quality of API design?
body: <p>My group uses <a href="http://www.literateprogramming.com" rel="noreferrer">Literate Programming</a> for most of our source code---this means that internal documentation is written using LaTeX.  We have been using <a href="http://www.tug.org/PSTricks/" rel="noreferrer">PStricks</a> for fancy technical diagrams of the system, but have recently been recommended to use <a href="http://sourceforge.net/projects/pgf/" rel="noreferrer">TikZ</a>.  I've gathered this information:</p>
  
  <ul>
  <li>TikZ/PGF is new and maintained; PStricks went a long time without a maintainer but has received some maintenance in the last couple of years.</li>
  <li>TikZ works with many back ends, including (for those who care) <code>pdftex</code>.  PStricks works only with <code>dvips</code>.</li>
  <li>PStricks is more powerful and expressive than TikZ.  In a dire emergency you even have the full power of PostScript.</li>
  <li>PStricks has a significant ecology of extra packages that have been built on top of it; TikZ is too new to have many such things.</li>
  <li>TikZ claims to have been designed "with the shortcomings of PStricks in mind."  The author does not specify <em>which</em> shortcomings.</li>
  </ul>
  
  <p>I'm interested in the answers to two questions.  If you wish, feel free to post one answer per question:</p>
  
  <ul>
  <li><p>What is the <strong>learning curve</strong> like for the two tools?  (I consider PStricks to have a steep learning curve; about TikZ I am uninformed.)</p></li>
  <li><p><strong>Considered as programming APIs</strong>, is one of these two packages significantly better designed than the other?  If so, which is the better design, and <em>why</em>?  (What properties does it have that make you consider it better?)</p></li>
  </ul>
  
  <p>To make a compelling argument why one API is better than another, you may want to resort to examples.</p>