Re: [TFUI] [ANN] Merb Mind Maps - a tutorial on RSpec, GraphViz & a little Merb

Phlip <[email protected]> Mon, 16 Feb 2009 07:10:47 -0800
Newsgroups gmane.comp.programming.test-first-user-interfaces
Message-ID <[email protected]>
--IOOOESIqnMvVKcYBMcQbMbum8Ca4qFyh9jeJGlz
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 7bit

Alan Baljeu wrote:

> Nevertheless, I must quarrel with your use of the term mind-map.

It begins with M, making the title alliterative.

I myself quarrel with the use of "Merb" in the title. There's almost no Merb in 
the content, and I only forced myself to use it because I personally needed to 
learn it before it devours Rails.

 > Did Crispin and Gregory use this term?

If they did, would I be off the hook? That's "appeal to authority", you know...

 > When I saw your letter, I was
> thinking, how could you /possibly/ make a mind map out of a collection 
> of tags?

Posts are the nodes, and tags-in-common are the edges. But...

 > When I saw the example I immediately thought, "oh! you mean
> concept graphs". Because to me, a concept graph is a collection of 
> nodes, each containing a keyword, and linked by lines.
> 
> A mind map is what Tony Buzan invented, and what MindJet implemented 
> (and many others copied): a radially drawn tree with a central concept 
> fleshed out in increasing detail, with pictures and annotations to 
> illustrate and clarify the concept.

Point. I picked up "mind map" because it's a cool term I saw around the 
interthing. There are two remaining issues:

  - if you blog about your favorite topics (such as "sex", "drugs",
     and "rock-n-roll"), then the links between your posts will
     indeed map your mind

  - I auditioned some GraphViz tools that display radial links out
     from a root, but I couldn't briefly get them to look right
     in a bloggable format

The "mind map" I learned in the 1970s might have gone under a different name. I 
don't recall it - obviously. It's a classroom note taking technique looking like 
this:

     +-----------------
    /              +----
   /          /---/____
  +---+------+--------
       \
        +---+-------
             \_______

It's a side-ways outline on paper, formatted to make adding new callouts easy. 
Maybe GraphViz can do that, but it should not require excess directives. I 
wanted to avoid fun like "noderank".

> Sorry to be pedantic, but I think it's a valuable distinction.

Distinct pedantry is where it's at!

-- 
   Phlip

--IOOOESIqnMvVKcYBMcQbMbum8Ca4qFyh9jeJGlz
Content-Type: text/html; charset=ISO-8859-1
Content-Transfer-Encoding: 7bit



<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
</head>




<body style="background-color: #ffffff;">

<!--~-|**|PrettyHtmlStartT|**|-~-->
<div id="ygrp-mlmsg" style="width:655px; position:relative;">
<div id="ygrp-msg" style="width: 470px; margin:0; padding:0 25px 0 0; float:left; z-index:1;">
<!--~-|**|PrettyHtmlEndT|**|-~-->

    <div id="ygrp-text">
            <p>Alan Baljeu wrote:<br>
<br>
&gt; Nevertheless, I must quarrel with your use of the term mind-map.<br>
<br>
It begins with M, making the title alliterative.<br>
<br>
I myself quarrel with the use of &quot;Merb&quot; in the title. There's almost no Merb in <br>
the content, and I only forced myself to use it because I personally needed to <br>
learn it before it devours Rails.<br>
<br>
&gt; Did Crispin and Gregory use this term?<br>
<br>
If they did, would I be off the hook? That's &quot;appeal to authority&quot;, you know...<br>
<br>
&gt; When I saw your letter, I was<br>
&gt; thinking, how could you /possibly/ make a mind map out of a collection <br>
&gt; of tags?<br>
<br>
Posts are the nodes, and tags-in-common are the edges. But...<br>
<br>
&gt; When I saw the example I immediately thought, &quot;oh! you mean<br>
&gt; concept graphs&quot;. Because to me, a concept graph is a collection of <br>
&gt; nodes, each containing a keyword, and linked by lines.<br>
&gt; <br>
&gt; A mind map is what Tony Buzan invented, and what MindJet implemented <br>
&gt; (and many others copied): a radially drawn tree with a central concept <br>
&gt; fleshed out in increasing detail, with pictures and annotations to <br>
&gt; illustrate and clarify the concept.<br>
<br>
Point. I picked up &quot;mind map&quot; because it's a cool term I saw around the <br>
interthing. There are two remaining issues:<br>
<br>
- if you blog about your favorite topics (such as &quot;sex&quot;, &quot;drugs&quot;,<br>
     and &quot;rock-n-roll&quot;<wbr>), then the links between your posts will<br>
     indeed map your mind<br>
<br>
- I auditioned some GraphViz tools that display radial links out<br>
     from a root, but I couldn't briefly get them to look right<br>
     in a bloggable format<br>
<br>
The &quot;mind map&quot; I learned in the 1970s might have gone under a different name. I <br>
don't recall it - obviously. It's a classroom note taking technique looking like <br>
this:<br>
<br>
+-----------<wbr>------<br>
    /              +----<br>
   /          /---/____<br>
  +---+------+<wbr>--------<br>
       \<br>
        +---+-------<br>
             \_______<br>
<br>
It's a side-ways outline on paper, formatted to make adding new callouts easy. <br>
Maybe GraphViz can do that, but it should not require excess directives. I <br>
wanted to avoid fun like &quot;noderank&quot;.<br>
<br>
&gt; Sorry to be pedantic, but I think it's a valuable distinction.<br>
<br>
Distinct pedantry is where it's at!<br>
<br>
-- <br>
   Phlip<br>
</p>
 

    </div>  

    <!--~-|**|PrettyHtmlStart|**|-~-->
    <div width="1" style="color: white; clear: both;">__._,_.___</div>

             
    <!-- Start the section with Message In topic -->
    <div id="ygrp-actbar" style="clear: both; margini-bottom: 25px; white-space:nowrap; color: #666; text-align: right;">
              <span class="left" style="float: left; white-space:nowrap;">
          <a href="http://groups.yahoo.com/group/TestFirstUserInterfaces/message/1029;_ylc=X3oDMTM0NTg5b210BF9TAzk3MzU5NzE0BGdycElkAzg3NDQ3MDQEZ3Jwc3BJZAMxNzA1MDA3MjA3BG1zZ0lkAzEwMzEEc2VjA2Z0cgRzbGsDdnRwYwRzdGltZQMxMjM0Nzk3MDU0BHRwY0lkAzEwMjk-">
            Messages in this topic          </a> (<span class="bld" style="font-weight:bold;">3</span>)
        </span>
        <a href="http://groups.yahoo.com/group/TestFirstUserInterfaces/post;_ylc=X3oDMTJwcDh1bW9lBF9TAzk3MzU5NzE0BGdycElkAzg3NDQ3MDQEZ3Jwc3BJZAMxNzA1MDA3MjA3BG1zZ0lkAzEwMzEEc2VjA2Z0cgRzbGsDcnBseQRzdGltZQMxMjM0Nzk3MDU0?act=reply&messageNum=1031">
          <span class="bld" style="font-weight:bold;">
            Reply          </span> (via web post)
        </a>  | 
        <a href="http://groups.yahoo.com/group/TestFirstUserInterfaces/post;_ylc=X3oDMTJla3M5Y24zBF9TAzk3MzU5NzE0BGdycElkAzg3NDQ3MDQEZ3Jwc3BJZAMxNzA1MDA3MjA3BHNlYwNmdHIEc2xrA250cGMEc3RpbWUDMTIzNDc5NzA1NA--" class="bld" style="font-weight:bold;">
          Start a new topic        </a>
          </div> 
    <!-------     Start Nav Bar  ------>
    <!-- |**|begin egp html banner|**| -->
    <div id="ygrp-vitnav" style="padding-top: 10px; font-family: Verdana; font-size: 77%; margin: 0;">
                <a href="http://groups.yahoo.com/group/TestFirstUserInterfaces/messages;_ylc=X3oDMTJlMTNnMWw3BF9TAzk3MzU5NzE0BGdycElkAzg3NDQ3MDQEZ3Jwc3BJZAMxNzA1MDA3MjA3BHNlYwNmdHIEc2xrA21zZ3MEc3RpbWUDMTIzNDc5NzA1NA--">Messages</a>  
            |    <a href="http://groups.yahoo.com/group/TestFirstUserInterfaces/files;_ylc=X3oDMTJmMmhiMGcyBF9TAzk3MzU5NzE0BGdycElkAzg3NDQ3MDQEZ3Jwc3BJZAMxNzA1MDA3MjA3BHNlYwNmdHIEc2xrA2ZpbGVzBHN0aW1lAzEyMzQ3OTcwNTQ-">Files</a>  
            |    <a href="http://groups.yahoo.com/group/TestFirstUserInterfaces/photos;_ylc=X3oDMTJlbzB2ZGxoBF9TAzk3MzU5NzE0BGdycElkAzg3NDQ3MDQEZ3Jwc3BJZAMxNzA1MDA3MjA3BHNlYwNmdHIEc2xrA3Bob3QEc3RpbWUDMTIzNDc5NzA1NA--">Photos</a>  
            |    <a href="http://groups.yahoo.com/group/TestFirstUserInterfaces/links;_ylc=X3oDMTJmc3BrMjFrBF9TAzk3MzU5NzE0BGdycElkAzg3NDQ3MDQEZ3Jwc3BJZAMxNzA1MDA3MjA3BHNlYwNmdHIEc2xrA2xpbmtzBHN0aW1lAzEyMzQ3OTcwNTQ-">Links</a>  
            |    <a href="http://groups.yahoo.com/group/TestFirstUserInterfaces/database;_ylc=X3oDMTJjaTcyMG1qBF9TAzk3MzU5NzE0BGdycElkAzg3NDQ3MDQEZ3Jwc3BJZAMxNzA1MDA3MjA3BHNlYwNmdHIEc2xrA2RiBHN0aW1lAzEyMzQ3OTcwNTQ-">Database</a>  
            |    <a href="http://groups.yahoo.com/group/TestFirstUserInterfaces/polls;_ylc=X3oDMTJmNWVub2hmBF9TAzk3MzU5NzE0BGdycElkAzg3NDQ3MDQEZ3Jwc3BJZAMxNzA1MDA3MjA3BHNlYwNmdHIEc2xrA3BvbGxzBHN0aW1lAzEyMzQ3OTcwNTQ-">Polls</a>  
            |    <a href="http://groups.yahoo.com/group/TestFirstUserInterfaces/members;_ylc=X3oDMTJldnZjZHFrBF9TAzk3MzU5NzE0BGdycElkAzg3NDQ3MDQEZ3Jwc3BJZAMxNzA1MDA3MjA3BHNlYwNmdHIEc2xrA21icnMEc3RpbWUDMTIzNDc5NzA1NA--">Members</a>  
            |    <a href="http://groups.yahoo.com/group/TestFirstUserInterfaces/calendar;_ylc=X3oDMTJkbjFnNmJvBF9TAzk3MzU5NzE0BGdycElkAzg3NDQ3MDQEZ3Jwc3BJZAMxNzA1MDA3MjA3BHNlYwNmdHIEc2xrA2NhbARzdGltZQMxMjM0Nzk3MDU0">Calendar</a>  
    </div>  
    <!-- |**|end egp html banner|**| -->

                        <div id="ygrp-grft" style="font-family: Verdana; font-size: 77%; padding: 15px 0;">
          

        </div>
      
                  <div id="ygrp-mkp">
      <div id="hd">MARKETPLACE</div>
      <div id="ads">
                  <div class="ad" style="color:#628C2A; font-family:Arial; font-weight:bold;">
            <hr noshade="noshade" size="1"><a href="http://us.ard.yahoo.com/SIG=13rl2fqoh/M=493064.12016295.13271503.10835568/D=groups/S=1705007207:MKP1/Y=YAHOO/EXP=1234804254/L=/B=mjREH0PDhEA-/J=1234797054501088/A=5530388/R=0/SIG=11nuutlas/*http://explore.yahoo.com/groups/kraftmealsmadesimple/">From kitchen basics to easy recipes - join the Group from Kraft Foods
</a>          </div>
                              </div>
    </div>
      
    <!-- yahoo logo -->
    <!-- |**|begin egp html banner|**| -->
    <div id="ygrp-ft" style="font-family: verdana; font-size: 77%; border-top: 1px solid #666; padding: 5px 0;">
      <a href="http://groups.yahoo.com/;_ylc=X3oDMTJkODBrY2U4BF9TAzk3MzU5NzE0BGdycElkAzg3NDQ3MDQEZ3Jwc3BJZAMxNzA1MDA3MjA3BHNlYwNmdHIEc2xrA2dmcARzdGltZQMxMjM0Nzk3MDU0">
      <img src="http://us.i1.yimg.com/us.yimg.com/i/yg/img/logo/ma_grp_160.gif" height="15" width="106" border="0" alt="Yahoo! Groups"></a> <br>
      <a href="http://groups.yahoo.com/group/TestFirstUserInterfaces/join;_ylc=X3oDMTJmdjU1b2RkBF9TAzk3MzU5NzE0BGdycElkAzg3NDQ3MDQEZ3Jwc3BJZAMxNzA1MDA3MjA3BHNlYwNmdHIEc2xrA3N0bmdzBHN0aW1lAzEyMzQ3OTcwNTQ-">Change settings via the Web</a> (Yahoo! ID required) <br>
      Change settings via email: <a href="mailto:TestFirstUserInterfaces-digest-hHKSG33TihhbjbujkaE4pw@public.gmane.org?subject=Email Delivery: Digest">Switch delivery to Daily Digest</a> | <a href = "mailto:TestFirstUserInterfaces-traditional-hHKSG33TihhbjbujkaE4pw@public.gmane.org?subject=Change Delivery Format: Traditional">Switch format to Traditional</a> <br>

      <a href="http://groups.yahoo.com/group/TestFirstUserInterfaces;_ylc=X3oDMTJkY2JpbWRiBF9TAzk3MzU5NzE0BGdycElkAzg3NDQ3MDQEZ3Jwc3BJZAMxNzA1MDA3MjA3BHNlYwNmdHIEc2xrA2hwZgRzdGltZQMxMjM0Nzk3MDU0">
        Visit Your Group 
      </a> |
      <a href="http://docs.yahoo.com/info/terms/">
        Yahoo! Groups Terms of Use      </a> |
      <a href="mailto:TestFirstUserInterfaces-unsubscribe-hHKSG33TihhbjbujkaE4pw@public.gmane.org?subject=">
        Unsubscribe      </a> 
    </div>     <!-- |**|end egp html banner|**| -->
  </div> <!-- ygrp-msg -->

  
  <!-- Sponsor -->
  <!-- |**|begin egp html banner|**| -->
  <div id="ygrp-sponsor" style="width:160px; float:right; clear:none; margin:0 0 25px 0; background: white;">
    <!-- Network content -->
    
<!-- Start Recommendations -->
<div id="ygrp-reco">
     </div>
<!-- End Recommendations -->

	    <!-- Start vitality -->
	    <div id="ygrp-vital" style="background-color: #e0ecee; margin-bottom: 20px; padding: 2px 0 8px 8px;">
	      		<div id="vithd" style="font-size: 77%; font-family: Verdana; font-weight: bold; color: #333; text-transform: uppercase;">Recent Activity</div>
		<ul style="list-style-type:none; padding: 0; margin: 2px 0;">
		    
		    
		    
		    
		    
		    
		</ul>
	      	      <a href="http://groups.yahoo.com/group/TestFirstUserInterfaces;_ylc=X3oDMTJlM3Q1M2Q0BF9TAzk3MzU5NzE0BGdycElkAzg3NDQ3MDQEZ3Jwc3BJZAMxNzA1MDA3MjA3BHNlYwN2dGwEc2xrA3ZnaHAEc3RpbWUDMTIzNDc5NzA1NA--">
		Visit Your Group	      </a>
	    </div> 
	    	    	      
	    <!-- Network content -->
	    	      <div style="background-color:#EEEEEE; margin-bottom:20px; padding:10px 8px;">    <div id="nc">
              <div class="ad" style="color:#628C2A; font-family:Arial; font-weight:bold;">
                      <div id="hd1">Yahoo! Finance</div> 
<p><a href="http://us.ard.yahoo.com/SIG=13oaptur0/M=493064.12016257.12445664.8674578/D=groups/S=1705007207:NC/Y=YAHOO/EXP=1234804254/L=/B=mzREH0PDhEA-/J=1234797054501088/A=4507179/R=0/SIG=12de4rskk/*http://us.rd.yahoo.com/evt=50284/*http://finance.yahoo.com/personal-finance">It's Now Personal</a></p> 
<p>Guides, news,</p> 
<p>advice & more.</p>                   </div>
                    <div class="ad" style="color:#628C2A; font-family:Arial; font-weight:bold;">
                      <div id="hd1">Ads on Yahoo!</div> 
<p><a href="http://us.ard.yahoo.com/SIG=13okubti3/M=493064.12016308.12445700.8674578/D=groups/S=1705007207:NC/Y=YAHOO/EXP=1234804254/L=/B=nDREH0PDhEA-/J=1234797054501088/A=3848643/R=0/SIG=131q47hek/*http://searchmarketing.yahoo.com/arp/srchv2.php?o=US2005&cmp=Yahoo&ctv=Groups4&s=Y&s2=&s3=&b=50">Learn more now.</a></p> 
<p>Reach customers</p> 
<p>searching for you.</p>                  </div>
                    <div class="ad" style="color:#628C2A; font-family:Arial; font-weight:bold;">
                      <div id="hd1">Support Group</div> 
<p><a href="http://us.ard.yahoo.com/SIG=13pd88jhi/M=493064.12016300.12445692.11323196/D=groups/S=1705007207:NC/Y=YAHOO/EXP=1234804254/L=/B=nTREH0PDhEA-/J=1234797054501088/A=5597441/R=0/SIG=11kad247r/*http://advision.webevents.yahoo.com/specialkgroup/">Lose lbs together</a></p> 
<p>Share your weight-</p>
<p>loss successes.</p>                  </div>
          </div>
</div>
	    
	  </div> 	  <!-- |**|end egp html banner|**| -->
	  <div style="clear:both; color: #FFF; font-size:1px;">.</div>
	</div> 		  <img src="http://geo.yahoo.com/serv?s=97359714/grpId=8744704/grpspId=1705007207/msgId=1031/stime=1234797054/nc1=4507179/nc2=3848643/nc3=5597441" width="1" height="1"> <br>
	
	<div style="color: white; clear: both;">__,_._,___</div>
	<!--~-|**|PrettyHtmlEnd|**|-~-->
	</body>
	<!--~-|**|PrettyHtmlStart|**|-~-->
	<head>
<style type="text/css">
<!--
#ygrp-mkp{
  border: 1px solid #d8d8d8;
  font-family: Arial;
  margin: 14px 0px;
  padding: 0px 14px;
}
#ygrp-mkp hr{
  border: 1px solid #d8d8d8;
}
#ygrp-mkp #hd{
  color: #628c2a;
  font-size: 85%;
  font-weight: bold;
  line-height: 122%;
  margin: 10px 0px;
}
#ygrp-mkp #ads{
  margin-bottom: 10px;
}
#ygrp-mkp .ad{
  padding: 0 0;
}
#ygrp-mkp .ad a{
  color: #0000ff;
  text-decoration: none;
}
-->
</style>
</head>
	<head>
<style type="text/css">
<!--
#ygrp-sponsor #ygrp-lc{
  font-family: Arial;
}
#ygrp-sponsor #ygrp-lc #hd{
  margin: 10px 0px;
  font-weight: bold;
  font-size: 78%;
  line-height: 122%;
}
#ygrp-sponsor #ygrp-lc .ad{
  margin-bottom: 10px;
  padding: 0 0;
}
-->
</style>
</head>
	<head>
	<style type="text/css">
	<!--
	#ygrp-mlmsg {font-size:13px; font-family: arial,helvetica,clean,sans-serif;*font-size:small;*font:x-small;}
	#ygrp-mlmsg table {font-size:inherit;font:100%;}
	#ygrp-mlmsg select, input, textarea {font:99% arial,helvetica,clean,sans-serif;}
	#ygrp-mlmsg pre, code {font:115% monospace;*font-size:100%;}
	#ygrp-mlmsg * {line-height:1.22em;}
	#ygrp-text{
	    font-family: Georgia;	
	}
	#ygrp-text p{
	    margin: 0 0 1em 0;
	}

	dd.last p a {
          font-family: Verdana;
          font-weight: bold;
	}

	#ygrp-vitnav{
		padding-top: 10px;
		font-family: Verdana;
		font-size: 77%;
		margin: 0;
	}
	#ygrp-vitnav a{
		padding: 0 1px;
	}
	#ygrp-mlmsg #logo{
	  padding-bottom: 10px;
	}

	#ygrp-reco {
	margin-bottom: 20px;
	padding: 0px;
	}
	#ygrp-reco #reco-head {
		font-weight: bold;
		color: #ff7900;
	}

	#reco-category{
        	font-size: 77%;
	}
	#reco-desc{
        	font-size: 77%;
	}

	#ygrp-vital a{
		text-decoration: none;
	}

	#ygrp-vital a:hover{
	  text-decoration: underline;
	}

	#ygrp-sponsor #ov ul{
		padding: 0 0 0 8px;
		margin: 0;
	}
	#ygrp-sponsor #ov li{
		list-style-type: square;
		padding: 6px 0;
		font-size: 77%;
	}
	#ygrp-sponsor #ov li a{
		text-decoration: none;
		font-size: 130%;
	}
	#ygrp-sponsor #nc{
	  background-color: #eee;
	  margin-bottom: 20px;
	  padding: 0 8px;
	}
	#ygrp-sponsor .ad{
		padding: 8px 0;
	}
	#ygrp-sponsor .ad #hd1{
		font-family: Arial;
		font-weight: bold;
		color: #628c2a;
		font-size: 100%;
		line-height: 122%;
	}
	#ygrp-sponsor .ad a{
		text-decoration: none;
	}
	#ygrp-sponsor .ad a:hover{
		text-decoration: underline;
	}
	#ygrp-sponsor .ad p{
		margin: 0;
	}
	o{font-size: 0; }
	.MsoNormal{
	   margin: 0 0 0 0;
	}
	#ygrp-text tt{
	  font-size: 120%;
	}
	blockquote{margin: 0 0 0 4px;}
	.replbq{margin:4}

dd.last p span {
  margin-right: 10px;
  font-family: Verdana;
  font-weight: bold;
}

dd.last p span.yshortcuts {
  margin-right: 0;
}

div.photo-title a,
div.photo-title a:active,
div.photo-title a:hover,
div.photo-title a:visited {
    text-decoration: none;
}

div.file-title a,
div.file-title a:active,
div.file-title a:hover,
div.file-title a:visited {
    text-decoration: none;
}

#ygrp-msg p {
    clear: both;
    padding: 15px 0 3px 0;
    overflow: hidden;
}

#ygrp-msg p span {
    color: #1E66AE;
    font-weight: bold;
}

div#ygrp-mlmsg #ygrp-msg p a span.yshortcuts {
    font-family: Verdana;
    font-size: 10px;
    font-weight: normal;
}

#ygrp-msg p a {
    font-family: Verdana;
    font-size: 10px;
}

#ygrp-mlmsg a {
    color: #1E66AE;
}

div.attach-table div div a {
    text-decoration: none;
}

div.attach-table {
    width: 400px;
}

	-->
	</style>
	</head>
	<!--~-|**|PrettyHtmlEnd|**|-~-->
	</html><!--End group email -->


--IOOOESIqnMvVKcYBMcQbMbum8Ca4qFyh9jeJGlz--