<?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>BlackBox : Tag writings</title>
    <link>http://www.warneronstine.com/blog/articles/tag/writings</link>
    <language>en-us</language>
    <ttl>40</ttl>
    <description>Where technology and art disappear</description>
    <item>
      <title>DSL book on hold...unfortunately</title>
      <description>&lt;p&gt;Well we got the first round of reviews back from the technical reviewers and there&amp;#8217;s a lot of work to be done. So much so that we&amp;#8217;ve decided to put the book on hold while we regroup and figure out if/how we are going to address the issues that the reviewers found with the book. In a lot of cases it is going to require a complete rewrite of the example (and hence the chapter itself). Personally I feel the core is there, but maybe the examples weren&amp;#8217;t as fleshed out as they could have been.&lt;/p&gt;

&lt;p&gt;Now of course I&amp;#8217;m a little embarrassed that I announced the book before it was done, but that&amp;#8217;s what happens sometimes. Not sure at this point whether or not the book will continue, taking some time to regroup/rethink things and see if it is something that I want to push forward with.&lt;/p&gt;

&lt;p&gt;I will keep everyone up to date here on the progress of things once I&amp;#8217;ve decided what to do. In the meantime I am going to get back to some of my back-burner projects (a few of which have some DSLs in them ;-).&lt;/p&gt;</description>
      <pubDate>Tue, 30 Oct 2007 10:20:44 -0700</pubDate>
      <guid isPermaLink="false">urn:uuid:d4ecd040-55d5-4524-9606-af4c0b8c2588</guid>
      <author>Warner Onstine</author>
      <link>http://www.warneronstine.com/blog/articles/2007/10/30/dsl-book-on-hold-unfortunately</link>
      <category>programming</category>
      <category>writing</category>
      <category>groovy</category>
      <category>java</category>
      <category>dsl</category>
      <category>writings</category>
      <trackback:ping>http://www.warneronstine.com/blog/articles/trackback/304</trackback:ping>
    </item>
    <item>
      <title>DSL book in progress</title>
      <description>&lt;p&gt;Now that things feel a little bit more final to me I thought I would take this opportunity to announce the book that&amp;#8217;s been keeping me from blogging. The tentative title is Creating DSLs using Java and Groovy and it will be published by &lt;a href="http://www.pragprog.com/"&gt;Pragmatic Programmers&lt;/a&gt;. I started working on this idea after last years &lt;a href="http://nofluffjuststuff.com"&gt;No Fluff Just Stuff&lt;/a&gt; where I saw &lt;a href="http://www.nealford.com/"&gt;Neal Ford&lt;/a&gt; speak on DSLs and I talked to him briefly about a project I was working on. His talk inspired me to push forward with using DSLs for code generation specifically using Groovy.&lt;/p&gt;

&lt;p&gt;The book will cover both Java and Groovy techniques for writing DSLs, as well as have some general guidelines for writing DSLs. We also have a chapter on &lt;a href="http://antlr.org"&gt;ANTLR&lt;/a&gt; and &lt;a href="https://javacc.dev.java.net/"&gt;JavaCC&lt;/a&gt; for writing external DSLs using Java. I tried to cover as much as I could of Groovy meta-programming and some of the additional capabilities of Groovy that make it a good language to write an internal DSL on top of, but there&amp;#8217;s only so much space ;-).&lt;/p&gt;

&lt;p&gt;We just sent off the book for peer review, which means its about half-way finished, maybe a little more. We are currently shooting for a release date sometime early next year, which looks very doable at this point, but I expect a ton of edits to come back from this first review. &lt;/p&gt;

&lt;p&gt;On a final note I just want to say what a pleasure it has been working with the PragProg crew. I love, love, love their &lt;a href="http://www.pragprog.com/write-for-us"&gt;book build system&lt;/a&gt; and my editor Susannah rocks. I have had a blast working with them so far on this book and am looking forward to finishing this up and getting it published.&lt;/p&gt;</description>
      <pubDate>Wed, 10 Oct 2007 09:44:00 -0700</pubDate>
      <guid isPermaLink="false">urn:uuid:0fafb693-2a37-4d0f-9238-18cdea59d12e</guid>
      <author>Warner Onstine</author>
      <link>http://www.warneronstine.com/blog/articles/2007/10/10/dsl-book-in-progress</link>
      <category>programming</category>
      <category>writing</category>
      <category>groovy</category>
      <category>java</category>
      <category>dsl</category>
      <category>writings</category>
      <trackback:ping>http://www.warneronstine.com/blog/articles/trackback/303</trackback:ping>
    </item>
    <item>
      <title>Passionate Programmers</title>
      <description>&lt;p&gt;This post started as a seed from interviews that we are holding for the project I&amp;#8217;m working on for my day job (&lt;a href="http://kuali.org"&gt;Kuali&lt;/a&gt;). The vast majority of the programmers that are working on this project are the cream of the crop from each institution. That isn&amp;#8217;t to say that I&amp;#8217;m one of those or that the rest of the programmers are not excellent, they are, but it&amp;#8217;s a higher standard. This standard makes us that more critical when we choose new programmers that are going to come on to the project. &lt;/p&gt;

&lt;p&gt;One of the qualities that I tend to look for (without really knowing it until recently) is passion. When someone comes in and just does the bare minimum or a little above that to get the job done it tells me that they have no passion for what they do. All of the good or excellent developers that I know all have a passion for programming. To them it isn&amp;#8217;t just a job, it&amp;#8217;s something they enjoy doing and they enjoy expanding their horizons, not because it is a part of their job, but because they truly enjoy it.&lt;/p&gt;

&lt;p&gt;I think that this passion extends further than just this though, most of the good programmers that I know are passionate about other things and aren&amp;#8217;t afraid to share their passion with other people. This of course can lead to either a healthy discourse or heated debate in the office or elsewhere ;-), this is what happens when you get passionate people together. Of course one of the tricks of a truly good developer is to know when to put your passion (and your ego) on the shelf for the betterment of the project or task at hand.&lt;/p&gt;

&lt;p&gt;Further along this line of thinking lies creativity, in his piece &amp;#8221;&lt;a href="http://www.paulgraham.com/hp.html"&gt;Hackers and Painters&lt;/a&gt;&amp;#8221;, Paul Graham describes the commonality between hackers and painters&lt;/p&gt;

&lt;blockquote&gt;
    &lt;p&gt;What hackers and painters have in common is that they&amp;#8217;re both makers. Along with composers, architects, and writers, what hackers and painters are trying to do is make good things. They&amp;#8217;re not doing research per se, though if in the course of trying to make good things they discover some new technique, so much the better.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;And honestly I couldn&amp;#8217;t have said it better myself, but I&amp;#8217;ll elaborate on this idea a little further based on my personal experience. Every really good programmer that I&amp;#8217;ve met has had some other creative bent, most of them have been musicians of one form or another, or they have really been into photography, painting, etc. I think that this derives from the desire to create, to make. One of the reasons why I like programming is because I like to make stuff, for me this has also extended to music, film, and writing (in fact I started out writing fiction way back in grade school). But it is the act of making, the act of getting something to work that fascinates me still. Whenever I hear a problem that needs a solution my mind immediately shifts into &amp;#8220;maker&amp;#8221; mode and I start thinking about how &lt;em&gt;I&lt;/em&gt; could so do that - if only there were like 20 of me all of the cool ideas I&amp;#8217;d ever had would be done ;-).&lt;/p&gt;

&lt;p&gt;This all leads back to passion, if you are truly passionate about what you do then you will do better at it, it really is that simple. But that doesn&amp;#8217;t mean that that is where your passion has to end, I would say that if you are currently playing around with the idea of learning how to draw, or learn how to play an instrument, do it, don&amp;#8217;t wait.&lt;/p&gt;</description>
      <pubDate>Thu, 21 Dec 2006 21:44:32 -0700</pubDate>
      <guid isPermaLink="false">urn:uuid:7dc66783-d3d0-42a0-bbf5-b5ca41cc6bc3</guid>
      <author>Warner Onstine</author>
      <link>http://www.warneronstine.com/blog/articles/2006/12/21/passionate-programmers</link>
      <category>programming</category>
      <category>writings</category>
      <trackback:ping>http://www.warneronstine.com/blog/articles/trackback/230</trackback:ping>
    </item>
  </channel>
</rss>
