<story><title>The Number One Trait of a Great Developer</title><url>http://tammersaleh.com/posts/the-number-one-trait-of-a-great-developer/</url></story><parent_chain><item><author>gfodor</author><text>The catch-22, of course, is that at some point, MySQL &lt;i&gt;was&lt;/i&gt; the &amp;quot;new thing&amp;quot; to Diane, so how did she learn it in the first place?&lt;p&gt;The answer of course is that judgement is less about making decisions upon familiarity per se and more about knowing when unfamiliar technology seems to provide good trade offs given what is known about it. For example, PostgreSQL may be unfamiliar, but choosing it is a wildly different type of decision than choosing another less mature unfamiliar data store, since at a high level PostgreSQL is known to be a well-understood, mature technology that may provide significant leverage over MySQL in certain scenarios. Being able to understand the various dimensions of technology choices and make good ones with limited information and experience is what makes good judgement, not just an outright aversion to unfamiliar things.</text></item></parent_chain><comment><author>raverbashing</author><text>I see this as a 3D optimisation problem.&lt;p&gt;1st dimension: power of the tool&lt;p&gt;2nd dimension: ecosystem of the tool (developers&amp;#x2F;libraries&amp;#x2F;support&amp;#x2F;etc)&lt;p&gt;3rd dimension: developer&amp;#x27;s ability to use the tool (time to learn, current ability, etc)&lt;p&gt;If you think on factors going from 0 to 10, MySql could be [4, 7, 8] and Postgres could be [7, 7, 4] for that developer.&lt;p&gt;Of course the 3rd factor depends on the developer (and on the time available), for example I know Go is very powerful, but I wouldn&amp;#x27;t use it, unless the available options for me are not good enough for a given problem (so the time to learn compensates for the loss that using other technologies would incur)</text></comment>
<story><title>The Number One Trait of a Great Developer</title><url>http://tammersaleh.com/posts/the-number-one-trait-of-a-great-developer/</url></story><parent_chain><item><author>gfodor</author><text>The catch-22, of course, is that at some point, MySQL &lt;i&gt;was&lt;/i&gt; the &amp;quot;new thing&amp;quot; to Diane, so how did she learn it in the first place?&lt;p&gt;The answer of course is that judgement is less about making decisions upon familiarity per se and more about knowing when unfamiliar technology seems to provide good trade offs given what is known about it. For example, PostgreSQL may be unfamiliar, but choosing it is a wildly different type of decision than choosing another less mature unfamiliar data store, since at a high level PostgreSQL is known to be a well-understood, mature technology that may provide significant leverage over MySQL in certain scenarios. Being able to understand the various dimensions of technology choices and make good ones with limited information and experience is what makes good judgement, not just an outright aversion to unfamiliar things.</text></item></parent_chain><comment><author>mwcampbell</author><text>Diane most likely chose MySQL because it was the most popular open-source database. Popularity is often reason enough to choose a particular tool, because it means that that tool is more likely to be supported by other good tools.</text></comment>