<html><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; ">
<br><div><div>On 25 Oct 2009, at 08:31, Magnus Therning wrote:</div><div><br class="webkit-block-placeholder"></div><div><br class="webkit-block-placeholder"></div><div><div><blockquote type="cite"><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><font face="Helvetica" size="3" style="font: normal normal normal 12px/normal Helvetica; ">Also, as I'm sure you've found out re libraries, more isn't necessarily</font></div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><font face="Helvetica" size="3" style="font: normal normal normal 12px/normal Helvetica; ">better.  </font></div></blockquote><br></div><div>Definitely. Choice can become a real pain, especially in the face of lacking documentation.</div><div><br class="webkit-block-placeholder"></div><div><br class="webkit-block-placeholder"></div><div><blockquote type="cite"><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><font face="Helvetica" size="3" style="font: normal normal normal 12px/normal Helvetica; ">  I'd argue that many, if not most, commonly used libraries are</font></div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><font face="Helvetica" size="3" style="font: normal normal normal 12px/normal Helvetica; ">excellent for "common" tasks, but as soon as you go into a niche many fall</font></div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><font face="Helvetica" size="3" style="font: normal normal normal 12px/normal Helvetica; ">short of your requirements for scalability, speed, resource usage, etc.  In</font></div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><font face="Helvetica" size="3" style="font: normal normal normal 12px/normal Helvetica; ">the end you're likely to have to put considerable work into writing your own</font></div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><font face="Helvetica" size="3" style="font: normal normal normal 12px/normal Helvetica; ">or modifying other's.</font></div></blockquote><br></div><div>But if someone has already done some of the work, or an app or language is known to have been (at least) partially successful in an area, then this makes it a lot more likely to be picked, right?</div><div><br></div></div><br class="Apple-interchange-newline"><blockquote type="cite"><p style="margin: 0.0px 0.0px 0.0px 0.0px"><font face="Helvetica" size="3" style="font: 12.0px Helvetica">I'm not sure it necessarily means that.<span class="Apple-converted-space">  </span>There is a good case to be made for</font></p> <p style="margin: 0.0px 0.0px 0.0px 0.0px"><font face="Helvetica" size="3" style="font: 12.0px Helvetica">choosing a good, but obscure language, on the basis that the people who have</font></p> <p style="margin: 0.0px 0.0px 0.0px 0.0px"><font face="Helvetica" size="3" style="font: 12.0px Helvetica">bothered to learn it are likely to be self-motivated, enjoy the language, and</font></p> <p style="margin: 0.0px 0.0px 0.0px 0.0px"><font face="Helvetica" size="3" style="font: 12.0px Helvetica">quite likely be clever.<span class="Apple-converted-space">  </span>Having a smaller pool of developers to choose from is</font></p> <p style="margin: 0.0px 0.0px 0.0px 0.0px"><font face="Helvetica" size="3" style="font: 12.0px Helvetica">not necessarily bad, as long as it is offset by a higher ratio of first-rate</font></p> <p style="margin: 0.0px 0.0px 0.0px 0.0px"><font face="Helvetica" size="3" style="font: 12.0px Helvetica">developers.</font></p> </blockquote><br></div><div>You could make the case, but are you saying that programmers of major languages like Java, Perl, Ruby, PHP, C#, C++... aren't self-motivated, don't enjoy their language, and aren't clever? Fact is, you'll get good and bad, self motivated and not, in every pool of developers, in every language - these aren't properties given to people by the language. If you're going to get a higher proportion of the "good" in a smaller language then that isn't necessarily offset by the risks to a project of having a smaller pool to pick from.</div><div><br class="webkit-block-placeholder"></div><div><br class="webkit-block-placeholder"></div><blockquote type="cite"><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><font face="Helvetica" size="3" style="font: normal normal normal 12px/normal Helvetica; ">You get what you pay for, if you have extreme requirements in any area you'll</font></div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><font face="Helvetica" size="3" style="font: normal normal normal 12px/normal Helvetica; ">have to pay well in order to get good developers who can handle the task.</font></div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; font: normal normal normal 12px/normal Helvetica; min-height: 14px; "><br></div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><font face="Helvetica" size="3" style="font: normal normal normal 12px/normal Helvetica; ">In my experience good developers don't produce "fancy pants code", they'll</font></div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><font face="Helvetica" size="3" style="font: normal normal normal 12px/normal Helvetica; ">produce code that is easier to understand and maintain.  The fancy parts are</font></div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><font face="Helvetica" size="3" style="font: normal normal normal 12px/normal Helvetica; ">limited to where it is required.  Cheap, mediocre developers are more likely</font></div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><font face="Helvetica" size="3" style="font: normal normal normal 12px/normal Helvetica; ">to produce fancy-pants-looking code, that is overly complicated, harder to</font></div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><font face="Helvetica" size="3" style="font: normal normal normal 12px/normal Helvetica; ">understand and maintain, and often is buggy.</font></div></blockquote><div><br class="webkit-block-placeholder"></div>I totally agree, you (generally) get what you pay for. What I was referring to by fancy pants code, was the Creator God-like abilities being attributed to Haskell code over other languages. What you said holds true in any language, of course.<div><br class="webkit-block-placeholder"></div><div><br class="webkit-block-placeholder"></div><div>Iain</div><div><br class="webkit-block-placeholder"></div><div><br><div><br></div><div><br></div></div></body></html>