<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/css" href="/stylesheets/rss.css"?>
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/">
  <channel>
    <title>notkeepingitreal.com: Ben Scofield: Cleanliness Is Next to Domain Specificity</title>
    <link>http://notkeepingitreal.com/articles/2007/11/04/ben-scofield-cleanliness-is-next-to-domain-specificity</link>
    <language>en-us</language>
    <ttl>40</ttl>
    <description></description>
    <item>
      <title>Ben Scofield: Cleanliness Is Next to Domain Specificity</title>
      <description>&lt;p&gt;I. Linguistics&lt;/p&gt;


	&lt;ul&gt;
	&lt;li&gt;We are programming languages &amp;#8211; they can certainly be compared to natural languages&lt;/li&gt;
		&lt;li&gt;Regional dialects are crazy. Can I get a coke? Pop is delicious.&lt;/li&gt;
		&lt;li&gt;Jargons and cants differ not in grammar but in vocabulary. &lt;a href="/language"&gt;Hmmm&lt;/a&gt;.&lt;/li&gt;
		&lt;li&gt;Creoles and pigeons differ in both grammar and vocabulary from their parent languages&lt;/li&gt;
		&lt;li&gt;Getting back to ruby, are domain specific languages (DSLs) really languages? Or are they dialects, or something else?&lt;/li&gt;
		&lt;li&gt;DSLs are really just about changing the words we use&lt;/li&gt;
		&lt;li&gt;Linguistic determinism is crap&lt;/li&gt;
		&lt;li&gt;The eskimos do not have 33 billion words for snow. For one, &amp;#8220;the eskimos&amp;#8221; is not one group of people with one language. Additionally, there may be lots of &lt;strong&gt;snow-related&lt;/strong&gt; words in any given native alaskan language; however, there are lots of &lt;strong&gt;snow-related&lt;/strong&gt; words in English as well.&lt;/li&gt;
		&lt;li&gt;Tests are testing something that is &lt;strong&gt;already there&lt;/strong&gt;. Specifications come &lt;strong&gt;before&lt;/strong&gt; something else &amp;#8211; this leads you in the right &amp;#8211; or at least the test first &amp;#8211; direction&lt;/li&gt;
	&lt;/ul&gt;


	&lt;p&gt;II. Refactoring&lt;/p&gt;


	&lt;ul&gt;
	&lt;li&gt;He showed a bit of shit code to get flight information from &lt;a href="http://kayak.com"&gt;kayak&lt;/a&gt; and refactored it into a class with a more readable &lt;span class="caps"&gt;API&lt;/span&gt;&lt;/li&gt;
		&lt;li&gt;Use symbols instead of strings to avoid using quotes everywhere&lt;/li&gt;
		&lt;li&gt;Avoid parens when that makes things more readable&lt;/li&gt;
		&lt;li&gt;We will never model the domain exactly, so there is always room for improvement&lt;/li&gt;
	&lt;/ul&gt;


	&lt;p&gt;Cool talk!&lt;/p&gt;</description>
      <pubDate>Sun, 04 Nov 2007 12:58:00 -0700</pubDate>
      <guid isPermaLink="false">urn:uuid:fd3a920d-7da2-4c88-91ca-cef4c677bdba</guid>
      <author>Kevin</author>
      <link>http://notkeepingitreal.com/articles/2007/11/04/ben-scofield-cleanliness-is-next-to-domain-specificity</link>
      <category>Rubyconf</category>
      <trackback:ping>http://notkeepingitreal.com/articles/trackback/1869</trackback:ping>
    </item>
  </channel>
</rss>
