<?xml version="1.0" encoding="UTF-8"?><!-- generator="wordpress/2.0.1" -->
<rss version="2.0" 
	xmlns:content="http://purl.org/rss/1.0/modules/content/">
<channel>
	<title>Comments on: lesscode &#8230; more docs?</title>
	<link>http://lesscode.org/2005/09/20/lesscode-more-docs/</link>
	<description>AAaaaaahhhhrrrrrrr!</description>
	<pubDate>Mon, 17 Sep 2007 09:12:32 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.0.1</generator>

	<item>
		<title>by: hxa</title>
		<link>http://lesscode.org/2005/09/20/lesscode-more-docs/#comment-563</link>
		<pubDate>Fri, 07 Oct 2005 11:15:33 +0000</pubDate>
		<guid>http://lesscode.org/2005/09/20/lesscode-more-docs/#comment-563</guid>
					<description>&lt;p&gt;Following my advocacy of the Unified Software Development Process with XP, I wrote a short article on a simple documentation format.&lt;/p&gt;

&lt;p&gt;It is a USDP-distilled for eXtreme programming, using markdown text in a single file. If you want something practical and undemanding, but based on good process, this may be one starting point:&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;http://www.hxa7241.org/articles/content/usdp-distilled-doc_hxa7241_2005.html&quot; rel=&quot;nofollow&quot;&gt;http://www.hxa7241.org/articles/content/usdp-distilled-doc_hxa7241_2005.html&lt;/a&gt; (1600 words / 10 min read)&lt;/p&gt;
</description>
		<content:encoded><![CDATA[<p>Following my advocacy of the Unified Software Development Process with XP, I wrote a short article on a simple documentation format.</p>
<p>It is a USDP-distilled for eXtreme programming, using markdown text in a single file. If you want something practical and undemanding, but based on good process, this may be one starting point:</p>
<p><a href="http://www.hxa7241.org/articles/content/usdp-distilled-doc_hxa7241_2005.html">http://www.hxa7241.org/articles/content/usdp-distilled-doc_hxa7241_2005.html</a> (1600 words / 10 min read)</p>
]]></content:encoded>
				</item>
	<item>
		<title>by: Richard Dyce</title>
		<link>http://lesscode.org/2005/09/20/lesscode-more-docs/#comment-453</link>
		<pubDate>Wed, 28 Sep 2005 19:35:08 +0000</pubDate>
		<guid>http://lesscode.org/2005/09/20/lesscode-more-docs/#comment-453</guid>
					<description>&lt;p&gt;Harry, sounds like a plan. I'll see if I can get phpDoctor up and running on 5.0.5 and have a look. (This week my free hour is scheduled for Friday ;-) )&lt;/p&gt;
</description>
		<content:encoded><![CDATA[<p>Harry, sounds like a plan. I&#8217;ll see if I can get phpDoctor up and running on 5.0.5 and have a look. (This week my free hour is scheduled for Friday ;-) )</p>
]]></content:encoded>
				</item>
	<item>
		<title>by: Harry Fuecks</title>
		<link>http://lesscode.org/2005/09/20/lesscode-more-docs/#comment-448</link>
		<pubDate>Tue, 27 Sep 2005 05:48:55 +0000</pubDate>
		<guid>http://lesscode.org/2005/09/20/lesscode-more-docs/#comment-448</guid>
					<description>&lt;p&gt;Richard, I've looked at modifying phpDocumentor to spit out wiki pages using Dokuwiki syntax and... found there was a sharp learning curve before it was even possible to get a simple prototype working. That's not meant as a criticism of phpDocumento but the problem is phpDocumentor is pretty heavyweight these days. And PHP 5.0.5 may be a can of &lt;a href=&quot;http://the-stickman.com/web-development/php/php-505-fatal-error-only-variables-can-be-passed-by-reference/&quot; rel=&quot;nofollow&quot;&gt;worms&lt;/a&gt; for older projects.&lt;/p&gt;

&lt;p&gt;Instead have been looking at &lt;a href=&quot;http://phpdoctor.sourceforge.net/&quot; rel=&quot;nofollow&quot;&gt;phpDoctor&lt;/a&gt; which doesn't do everything phpDocumentor does but the code base is &quot;lighter&quot;, and getting a prototype working is easier. But of course this doesn't have to limited to PHP - Dokuwiki pages are &quot;just text&quot; stored in files.&lt;/p&gt;

&lt;p&gt;Currently stuck on a good way to re-generate wiki pages after the first version, where users may have added comments. Dokuwiki needs some more command line tools as well, for updating pages via it's API - made a start which Andi accepted &lt;a href=&quot;http://dev.splitbrain.org/view/darcs/dokuwiki/bin/dwpage.php&quot; rel=&quot;nofollow&quot;&gt;here&lt;/a&gt;. It might also be worth having some &lt;a href=&quot;http://wiki.splitbrain.org/wiki:plugins&quot; rel=&quot;nofollow&quot;&gt;syntax plugins&lt;/a&gt; specifically for API documentation - tags like &amp;#60;class/&amp;#62; and &amp;#60;method/&amp;#62;.&lt;/p&gt;

&lt;p&gt;There's also a bunch of issues like how to flag comments as potentially outdated, if the class or method they are referring to has changed since the comment was made. Probably the easiest way to go here is to push these kind of problems onto the users, at least to start with.&lt;/p&gt;

&lt;p&gt;Anyway - never enough time.&lt;/p&gt;
</description>
		<content:encoded><![CDATA[<p>Richard, I&#8217;ve looked at modifying phpDocumentor to spit out wiki pages using Dokuwiki syntax and&#8230; found there was a sharp learning curve before it was even possible to get a simple prototype working. That&#8217;s not meant as a criticism of phpDocumento but the problem is phpDocumentor is pretty heavyweight these days. And PHP 5.0.5 may be a can of <a href="http://the-stickman.com/web-development/php/php-505-fatal-error-only-variables-can-be-passed-by-reference/">worms</a> for older projects.</p>
<p>Instead have been looking at <a href="http://phpdoctor.sourceforge.net/">phpDoctor</a> which doesn&#8217;t do everything phpDocumentor does but the code base is &#8220;lighter&#8221;, and getting a prototype working is easier. But of course this doesn&#8217;t have to limited to PHP - Dokuwiki pages are &#8220;just text&#8221; stored in files.</p>
<p>Currently stuck on a good way to re-generate wiki pages after the first version, where users may have added comments. Dokuwiki needs some more command line tools as well, for updating pages via it&#8217;s API - made a start which Andi accepted <a href="http://dev.splitbrain.org/view/darcs/dokuwiki/bin/dwpage.php">here</a>. It might also be worth having some <a href="http://wiki.splitbrain.org/wiki:plugins">syntax plugins</a> specifically for API documentation - tags like &lt;class/&gt; and &lt;method/&gt;.</p>
<p>There&#8217;s also a bunch of issues like how to flag comments as potentially outdated, if the class or method they are referring to has changed since the comment was made. Probably the easiest way to go here is to push these kind of problems onto the users, at least to start with.</p>
<p>Anyway - never enough time.</p>
]]></content:encoded>
				</item>
	<item>
		<title>by: Richard Dyce</title>
		<link>http://lesscode.org/2005/09/20/lesscode-more-docs/#comment-446</link>
		<pubDate>Mon, 26 Sep 2005 09:56:23 +0000</pubDate>
		<guid>http://lesscode.org/2005/09/20/lesscode-more-docs/#comment-446</guid>
					<description>&lt;p&gt;Harry, that looks like a great idea. Still haven't managed to get phpDocumentor running under 5.0.5 on this G5 yet though :-(&lt;/p&gt;
</description>
		<content:encoded><![CDATA[<p>Harry, that looks like a great idea. Still haven&#8217;t managed to get phpDocumentor running under 5.0.5 on this G5 yet though :-(</p>
]]></content:encoded>
				</item>
	<item>
		<title>by: Harry Fuecks</title>
		<link>http://lesscode.org/2005/09/20/lesscode-more-docs/#comment-445</link>
		<pubDate>Mon, 26 Sep 2005 08:16:13 +0000</pubDate>
		<guid>http://lesscode.org/2005/09/20/lesscode-more-docs/#comment-445</guid>
					<description>&lt;p&gt;To me what seems like a good compromise would be integrating generated API docs with a wiki.&lt;/p&gt;

&lt;p&gt;As you mention Dokuwiki, there's been some discussion along that lines, specific to PHP and Dokuwiki, here;&lt;/p&gt;

&lt;p&gt;http://wiki.splitbrain.org/wiki:discussion:integrationwithapidoctool&lt;/p&gt;
</description>
		<content:encoded><![CDATA[<p>To me what seems like a good compromise would be integrating generated API docs with a wiki.</p>
<p>As you mention Dokuwiki, there&#8217;s been some discussion along that lines, specific to PHP and Dokuwiki, here;</p>
<p>http://wiki.splitbrain.org/wiki:discussion:integrationwithapidoctool</p>
]]></content:encoded>
				</item>
	<item>
		<title>by: Paul M. Jones</title>
		<link>http://lesscode.org/2005/09/20/lesscode-more-docs/#comment-426</link>
		<pubDate>Tue, 20 Sep 2005 21:56:34 +0000</pubDate>
		<guid>http://lesscode.org/2005/09/20/lesscode-more-docs/#comment-426</guid>
					<description>&lt;p&gt;Bill and Ryan --&lt;/p&gt;

&lt;p&gt;Preach the Word, my brothers.  I have had the hardest time getting some other developers to believe that lowering barriers to entry on documentation is the number-one way to increase both the quantity and quality of documentation.  One rant in particular sums up my feelings when I say that &lt;a href=&quot;http://paul-m-jones.com/blog/?p=153&quot; rel=&quot;nofollow&quot;&gt;wikis are great for documentation&lt;/a&gt;.&lt;/p&gt;
</description>
		<content:encoded><![CDATA[<p>Bill and Ryan &#8211;</p>
<p>Preach the Word, my brothers.  I have had the hardest time getting some other developers to believe that lowering barriers to entry on documentation is the number-one way to increase both the quantity and quality of documentation.  One rant in particular sums up my feelings when I say that <a href="http://paul-m-jones.com/blog/?p=153">wikis are great for documentation</a>.</p>
]]></content:encoded>
				</item>
	<item>
		<title>by: Ryan Tomayko</title>
		<link>http://lesscode.org/2005/09/20/lesscode-more-docs/#comment-425</link>
		<pubDate>Tue, 20 Sep 2005 20:50:37 +0000</pubDate>
		<guid>http://lesscode.org/2005/09/20/lesscode-more-docs/#comment-425</guid>
					<description>&lt;p&gt;I'm feeling this. &lt;/p&gt;

&lt;p&gt;IMO, what's needed is something like Eric Meyer's &lt;a href=&quot;http://www.meyerweb.com/eric/tools/s5/&quot; rel=&quot;nofollow&quot;&gt;S5&lt;/a&gt; (but for narative doc) or a slightly specialized wiki or something. &lt;/p&gt;

&lt;p&gt;What's had the most impact on my tendency to write doc has unquestinably been Markdown and Restructured Text. When you lower the barrier to writing good doc that far it becomes hard to make excuses for not writing doc or for pushing it off. &lt;/p&gt;

&lt;p&gt;Some tooling around an insanely simple text format that offered some of the features of docbook (let's say the top 20% of docbook features like TOCs, multi and single page output, figures, index of citations, etc..) would probably go a long way.&lt;/p&gt;
</description>
		<content:encoded><![CDATA[<p>I&#8217;m feeling this. </p>
<p>IMO, what&#8217;s needed is something like Eric Meyer&#8217;s <a href="http://www.meyerweb.com/eric/tools/s5/">S5</a> (but for narative doc) or a slightly specialized wiki or something. </p>
<p>What&#8217;s had the most impact on my tendency to write doc has unquestinably been Markdown and Restructured Text. When you lower the barrier to writing good doc that far it becomes hard to make excuses for not writing doc or for pushing it off. </p>
<p>Some tooling around an insanely simple text format that offered some of the features of docbook (let&#8217;s say the top 20% of docbook features like TOCs, multi and single page output, figures, index of citations, etc..) would probably go a long way.</p>
]]></content:encoded>
				</item>
	<item>
		<title>by: Richard Dyce</title>
		<link>http://lesscode.org/2005/09/20/lesscode-more-docs/#comment-424</link>
		<pubDate>Tue, 20 Sep 2005 19:37:11 +0000</pubDate>
		<guid>http://lesscode.org/2005/09/20/lesscode-more-docs/#comment-424</guid>
					<description>&lt;p&gt;Bill, I think that maybe what I'm trying to get at - going from documentation to tests to code rather than having so-called documentation 'show up' from code. The problem with automatic documentation is that it seems to me to be a process of &quot;hey, we can do cross-referencing, so we'll call that documentation, and if people want add other stuff in then we'll let them&quot;. And of course it's the other stuff that's really useful - the docs for System Y that your CTO talks about.
Perhaps I'm talking more about getting an architectural view of the system, rather than documentation per se. Some UML stuff is good for that, but it seems that its an adjunct to XP, rather than a &lt;em&gt;useful&lt;/em&gt; part of the process - so it doesn't get done.
Useful documentation should be comprehensible to the intelligent layman. I may not know how to design a house, but I can get a handle on whether or not the bathroom is in the right place (and how to get there!) if someone shows me the drawings.&lt;/p&gt;
</description>
		<content:encoded><![CDATA[<p>Bill, I think that maybe what I&#8217;m trying to get at - going from documentation to tests to code rather than having so-called documentation &#8217;show up&#8217; from code. The problem with automatic documentation is that it seems to me to be a process of &#8220;hey, we can do cross-referencing, so we&#8217;ll call that documentation, and if people want add other stuff in then we&#8217;ll let them&#8221;. And of course it&#8217;s the other stuff that&#8217;s really useful - the docs for System Y that your CTO talks about.<br />
Perhaps I&#8217;m talking more about getting an architectural view of the system, rather than documentation per se. Some UML stuff is good for that, but it seems that its an adjunct to XP, rather than a <em>useful</em> part of the process - so it doesn&#8217;t get done.<br />
Useful documentation should be comprehensible to the intelligent layman. I may not know how to design a house, but I can get a handle on whether or not the bathroom is in the right place (and how to get there!) if someone shows me the drawings.</p>
]]></content:encoded>
				</item>
	<item>
		<title>by: Bill de hOra</title>
		<link>http://lesscode.org/2005/09/20/lesscode-more-docs/#comment-423</link>
		<pubDate>Tue, 20 Sep 2005 19:24:34 +0000</pubDate>
		<guid>http://lesscode.org/2005/09/20/lesscode-more-docs/#comment-423</guid>
					<description>&lt;p&gt;The thing about software systems in production is that there's so much going on, even if you did document it well, it still takes ages to comprehend and to figure out what's really important. The thing about software systems in design is that there's so much going on, even if you did document it well, it still takes ages to comprehend and to figure out what's really important.&lt;/p&gt;

&lt;p&gt;Self-documenting code is nice, but that still doesn't get to explaining the essence of a system. Martin Fowler has &lt;a href=&quot;http://www.martinfowler.com/distributedComputing/thud.html&quot; rel=&quot;nofollow&quot;&gt;commented in the past&lt;/a&gt; on generated UML documentation in particular. My own CTO recenty captured &lt;a href=&quot;http://www.propylon.com/news/ctoarticles/050823_documentation.html&quot; rel=&quot;nofollow&quot;&gt;the essence of the problem here&lt;/a&gt;. &lt;/p&gt;

&lt;p&gt;I love the idea of what some of us in work call a 'narrative'. It's purpose is to capture in a few pages or diagrams, the essence of what's truly important in a software system. When I was an industrial designer we had technical drawings called general arrangements (GAs) that provided that information. In real architecture, this is essentially what architects drawings and building models provide. The XP/Agile folks notion for this I think is the system metaphor, which tries to cut the essence to a single metaphor or a few sentences - the consensus there seems to be it's very hard to do well. &lt;/p&gt;

&lt;p&gt;Any sucessful system is subject to ongoing change. That means you have to make an economic choice during change; do you put aside time and money for keeping the documentation in sync or do you sink that time and money into executable software? In any case, being able to capture a system essence is a real art form in a place where you would love it to be mechanizable, and not art. I suspect trying to solve it through generated documents alone is Hard AI by stealth.&lt;/p&gt;
</description>
		<content:encoded><![CDATA[<p>The thing about software systems in production is that there&#8217;s so much going on, even if you did document it well, it still takes ages to comprehend and to figure out what&#8217;s really important. The thing about software systems in design is that there&#8217;s so much going on, even if you did document it well, it still takes ages to comprehend and to figure out what&#8217;s really important.</p>
<p>Self-documenting code is nice, but that still doesn&#8217;t get to explaining the essence of a system. Martin Fowler has <a href="http://www.martinfowler.com/distributedComputing/thud.html">commented in the past</a> on generated UML documentation in particular. My own CTO recenty captured <a href="http://www.propylon.com/news/ctoarticles/050823_documentation.html">the essence of the problem here</a>. </p>
<p>I love the idea of what some of us in work call a &#8216;narrative&#8217;. It&#8217;s purpose is to capture in a few pages or diagrams, the essence of what&#8217;s truly important in a software system. When I was an industrial designer we had technical drawings called general arrangements (GAs) that provided that information. In real architecture, this is essentially what architects drawings and building models provide. The XP/Agile folks notion for this I think is the system metaphor, which tries to cut the essence to a single metaphor or a few sentences - the consensus there seems to be it&#8217;s very hard to do well. </p>
<p>Any sucessful system is subject to ongoing change. That means you have to make an economic choice during change; do you put aside time and money for keeping the documentation in sync or do you sink that time and money into executable software? In any case, being able to capture a system essence is a real art form in a place where you would love it to be mechanizable, and not art. I suspect trying to solve it through generated documents alone is Hard AI by stealth.</p>
]]></content:encoded>
				</item>
	<item>
		<title>by: alexbunardzic</title>
		<link>http://lesscode.org/2005/09/20/lesscode-more-docs/#comment-418</link>
		<pubDate>Tue, 20 Sep 2005 16:55:42 +0000</pubDate>
		<guid>http://lesscode.org/2005/09/20/lesscode-more-docs/#comment-418</guid>
					<description>&lt;p&gt;Richard Dyce wrote:&lt;/p&gt;

&lt;p&gt;&quot;Yes, right tool for the right job, but for me ’satisfactory’ includes documentation. As a stakeholder I would be keen to know that the code is maintanable by someone else.&quot;&lt;/p&gt;

&lt;p&gt;I couldn't agree with you more. But I'm questioning the 'one size fits all' attitude. Most of the applications that are going to be written in RoR will be throwaway products. Does it make any sense to bother dressing them up?&lt;/p&gt;

&lt;p&gt;For example, not that long ago I got contracted to write up an analysis report for a company exploring certain options. They consumed my report in about one hour, and put it gently to rest. They will never ever revisit it.&lt;/p&gt;

&lt;p&gt;Now, would it make any sense for them to insist that I document that report? That I put my thought process on paper, all the meta-information surrounding my efforts in writing that report? Why bother, if it's been consumed and disposed off? Who's going to be maintaining the already defunct report?&lt;/p&gt;

&lt;p&gt;Same thing will start happening with business apps that are going to be rapidly built in RoR. I call it 'the Cleenex syndrome'.&lt;/p&gt;
</description>
		<content:encoded><![CDATA[<p>Richard Dyce wrote:</p>
<p>&#8220;Yes, right tool for the right job, but for me ’satisfactory’ includes documentation. As a stakeholder I would be keen to know that the code is maintanable by someone else.&#8221;</p>
<p>I couldn&#8217;t agree with you more. But I&#8217;m questioning the &#8216;one size fits all&#8217; attitude. Most of the applications that are going to be written in RoR will be throwaway products. Does it make any sense to bother dressing them up?</p>
<p>For example, not that long ago I got contracted to write up an analysis report for a company exploring certain options. They consumed my report in about one hour, and put it gently to rest. They will never ever revisit it.</p>
<p>Now, would it make any sense for them to insist that I document that report? That I put my thought process on paper, all the meta-information surrounding my efforts in writing that report? Why bother, if it&#8217;s been consumed and disposed off? Who&#8217;s going to be maintaining the already defunct report?</p>
<p>Same thing will start happening with business apps that are going to be rapidly built in RoR. I call it &#8216;the Cleenex syndrome&#8217;.</p>
]]></content:encoded>
				</item>
</channel>
</rss>

<!-- Dynamic Page Served (once) in 0.368 seconds -->
<!-- Cached page served by WP-Cache -->
