<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>green galoshes &#187; tools</title>
	<atom:link href="http://greengaloshes.cc/category/tools/feed/" rel="self" type="application/rss+xml" />
	<link>http://greengaloshes.cc</link>
	<description>by Justin D. Henry</description>
	<lastBuildDate>Fri, 16 Jul 2010 22:14:36 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0</generator>
		<item>
		<title>Markdown syntax highlighting and conversion in vim</title>
		<link>http://greengaloshes.cc/2009/12/markdown-syntax-highlighting-and-conversion-in-vim/</link>
		<comments>http://greengaloshes.cc/2009/12/markdown-syntax-highlighting-and-conversion-in-vim/#comments</comments>
		<pubDate>Wed, 23 Dec 2009 01:22:31 +0000</pubDate>
		<dc:creator>Justin D. Henry</dc:creator>
				<category><![CDATA[reference]]></category>
		<category><![CDATA[tools]]></category>
		<category><![CDATA[convert]]></category>
		<category><![CDATA[editor]]></category>
		<category><![CDATA[ide]]></category>
		<category><![CDATA[markdown]]></category>
		<category><![CDATA[syntax]]></category>
		<category><![CDATA[vim]]></category>

		<guid isPermaLink="false">http://greengaloshes.cc/?p=159</guid>
		<description><![CDATA[Recently I&#8217;ve been playing around with vim as an editor. Since I do most of my writing in a text editor, one of the first functions I found myself looking for was a way to do basic markdown syntax highlighting and formatting. Here&#8217;s how I set up my vim environment to do both of that. [...]]]></description>
			<content:encoded><![CDATA[<p>Recently I&#8217;ve been playing around with vim as an editor.   Since I do most of my writing in a text editor, one of the first functions I found myself looking for was a way to do basic <a href="http://daringfireball.net/projects/markdown/">markdown</a> syntax highlighting and formatting.  Here&#8217;s how I set up my vim environment to do both of that.</p>
<h3>Syntax highlighting</h3>
<p><a href="http://plasticboy.com/markdown-vim-mode/">PlasticBoy</a> got me most of the way there when it came to syntax highlighting.  All I had to do was figure out how it fit into my .vim directory structure, which is a <a href="http://github.com/scrooloose/vimfiles">clone</a> of Martin Greffel&#8217;s excellent setup. This turned out to be pretty straightforward </p>
<ul>
<li>Save the <a href="http://github.com/plasticboy/vim-markdown/raw/5693dc9890917399d3177ee5cfb65a550f69c145/mkd.vim">mkd.vim</a> file to <tt>~/.vim/syntax/mkd.vim</tt></li>
<li>Put the following in <tt>~/.vim/ftplugin/mkd.vim</tt>:

<div class="wp_syntax"><div class="code"><pre class="vim" style="font-family:monospace;"><span style="color: #adadad; font-style: italic;">&quot; markdown filetype file</span>
<span style="color: #804040;">if</span> <span style="color: #25BB4D;">exists</span><span style="color: #000000;">&#40;</span><span style="color: #C5A22D;">&quot;did<span style="">\_</span>load<span style="">\_</span>filetypes&quot;</span><span style="color: #000000;">&#41;</span>
 finish
<span style="color: #804040;">endif</span>
augroup markdown
 au<span style="color: #000000;">!</span> BufRead,BufNewFile <span style="color: #000000;">*.</span>mkd   setfiletype mkd
augroup END</pre></div></div>

</li>
<li>For file type auto detection (i.e. if you want syntax highlighting automatically loaded for files with extensions like .markdown and .mdown), add this to <tt>~/.vim/ftdetect/markdown.vim</tt>:

<div class="wp_syntax"><div class="code"><pre class="vim" style="font-family:monospace;"><span style="color: #668080;">autocmd</span> BufNewFile,BufReadPost <span style="color: #000000;">*.</span>mkd,<span style="color: #000000;">*.</span>markdown,<span style="color: #000000;">*.</span>mdown set filetype=mkd</pre></div></div>

</li>
</ul>
<h3>Converting a document or selection from Markdown to HTML</h3>
<p>Converting markdown to html from inside of vim is nice and easy.  In fact, you don&#8217;t even need the syntax files installed.  You do need the markdown script installed somewhere (say, /usr/local/markdown).</p>
<p>We can take advantage of vim&#8217;s <a href="http://www.softpanorama.org/Editors/Vimorama/vim_piping.shtml">command line filtering</a> here, and simply run the markdown command on all or part of the document, right from within vim.  To convert the entire document, use the percent sign:</p>
<pre>:%!/path/to/markdown --html4tags</pre>
<p>If you just want to convert part of a document, say a highlighted visual block, you can just omit the percentage sign:</p>
<pre>:!/path/to/markdown --html4tags</pre>
<p>Bam! Your document is converted. Neat, huh?</p>
]]></content:encoded>
			<wfw:commentRss>http://greengaloshes.cc/2009/12/markdown-syntax-highlighting-and-conversion-in-vim/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Return of the lazy sheep:  auto-tagging delicious posts with greasmonkey</title>
		<link>http://greengaloshes.cc/2008/11/return-of-the-lazy-sheep-auto-tagging-delicious-posts-with-greasmonkey/</link>
		<comments>http://greengaloshes.cc/2008/11/return-of-the-lazy-sheep-auto-tagging-delicious-posts-with-greasmonkey/#comments</comments>
		<pubDate>Sat, 08 Nov 2008 19:20:35 +0000</pubDate>
		<dc:creator>Justin D. Henry</dc:creator>
				<category><![CDATA[tools]]></category>
		<category><![CDATA[bookmarking]]></category>
		<category><![CDATA[greasemonkey]]></category>
		<category><![CDATA[hack]]></category>
		<category><![CDATA[lazysheep]]></category>
		<category><![CDATA[sheep]]></category>
		<category><![CDATA[social]]></category>
		<category><![CDATA[userscript]]></category>

		<guid isPermaLink="false">http://greengaloshes.cc/?p=128</guid>
		<description><![CDATA[I use delicious to bookmark sites of interest. I also use it to send links to friends, since it makes for a much less intrusive way to send links than email. When I save a link, I want to describe it as best as possible so that I can find it again when I return. [...]]]></description>
			<content:encoded><![CDATA[<p>I use <a href="http://delicious.com/" title="Delicious">delicious</a> to bookmark <a href="http://delicious.com/kapowee" title="kapowee's  Bookmarks   on Delicious">sites of interest</a>.  I also use it to send links to <a href="http://delicious.com/network/kapowee" title="kapowee's Network   on Delicious">friends</a>, since it makes for a much less intrusive way to send links than email.   When I save a link, I want to <a href="http://delicious.com/tags/kapowee" title="delicious/tags/kapowee">describe</a> it as best as possible so that I can find it again when I return. To this end, I add as many tags as I can.  </p>
<p>One of the most powerful features of delicious is it&#8217;s ability to suggest tags for sites that other&#8217;s have already saved.  By copying and pasting all these tags, I can be that much more confident of successfully retrieving the link with a search.  However, this makes for a cumbersome workflow, especially when all I want to do is save a bookmark.  </p>
<p>When I came across <a href="http://ejohn.org/" title="John Resig - JavaScript, Programming, and Web Applications">John Resig</a>&#8217;s <a href="http://ejohn.org/apps/sheep/" title="Lazy Sheep Bookmarklet">LazySheep bookmarklet</a>, I was pumped.  Alas, I was too late &#8211; the tool no longer worked due to API changes on del.icio.us.  My excitement turned to disappointment.  It was back to copy-paste or using ill-fitting extensions.</p>
<h3 id="enter_the_auto_tag">Enter the Auto Tag</h3>
<p>Not to long ago, I finally got around to perusing the userscripts archive for a real solution. After all, I can&#8217;t be the only one with this workflow, right?  </p>
<p>Sure enough &#8211; after a few clicks the <a href="http://userscripts.org/scripts/show/31918" title="Del.icio.us AutoTag 2 &ndash; Userscripts.org">AutoTag 2</a> userscript was installed and my hopes were confirmed.  The standard bookmarklet in the browser now pre-fills the tags field, to which I can add or remove as needed.  </p>
<h3 id="sheep_on_safari_but_no_netnewswire">Sheep on Safari, but no NetNewsWire</h3>
<p>I use a few different browsers, including webkit based applications like Safari.  Greasemonkey isn&#8217;t available for webkit browsers, but <a href="http://code.google.com/p/greasekit/" title="greasekit">Greasekit</a> is (you&#8217;ll need <a href="http://culater.net/software/SIMBL/SIMBL.php" title="SIMBL">SIMBL</a>).  </p>
<p>My motivation for installing this for Safari was guided by another desire &#8211; to get the delicious button in NetNewsWire to run the AutoTag 2 userscript.  I still haven&#8217;t figured out how to do this, but I have a few ideas to work around it.  </p>
<p>For example, perhaps there is a way to add a custom <a href="http://fluidapp.com/" title="Fluid - Free Site Specific Browser for Mac OS X Leopard">Fluid</a> app (it has userscript capability built right in)  to the list of apps suggested in the preferences. An easier route might be to just replace one of those apps with a Fluid app, by renaming the Fluid app to something like, say, Pukka or Cocoalicious and dropping it into the Application folder.</p>
<h3 id="bah_bah_bad_sheep">Bah-Bah Bad Sheep?</h3>
<p>It might be worth noting that his idea of &#8220;Lazy Sheep tagging&#8221; hasn&#8217;t been without it&#8217;s detractors.  There has been <a href="http://www.mail-archive.com/ydn-delicious@yahoogroups.com/msg00853.html">some</a> <a href="http://www.hojohnlee.com/weblog/archives/2005/09/01/lazy-sheep-considered-harmful/" title="Ho John Lee&#8217;s Weblog &raquo; Lazy Sheep considered harmful?">discussion</a> as to the impact of this practice on the larger community, and it&#8217;s benefit for the user.  Generally, the concern seems to be centered around the idea that by copying other people&#8217;s tags (being a lazy sheep) you are devaluing the data.  </p>
<p>Part of this appears to be a reaction to how the LazySheep tool worked, in that it didn&#8217;t actually allow you to add your own tags.  Instead, it automatically grabbed all the tags and saved the link without opening the delicious interface.  This in itself offers an interesting look at differing approaches to the user experience &#8211; should the user even need to see the interface?  What should constitute interaction?  </p>
<p>As tempting as it is to delve into these juicy user experience questions, I think I&#8217;ll refrain from joining a 3 year old conversation for now.  In the meantime, happy grazing. </p>
]]></content:encoded>
			<wfw:commentRss>http://greengaloshes.cc/2008/11/return-of-the-lazy-sheep-auto-tagging-delicious-posts-with-greasmonkey/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Fixing Numara Footprint&#8217;s addressbook search with a Greasemonkey Userscript</title>
		<link>http://greengaloshes.cc/2008/10/fixing-numara-footprints-addressbook-search-with-a-greasemonkey-userscript/</link>
		<comments>http://greengaloshes.cc/2008/10/fixing-numara-footprints-addressbook-search-with-a-greasemonkey-userscript/#comments</comments>
		<pubDate>Wed, 22 Oct 2008 04:49:32 +0000</pubDate>
		<dc:creator>Justin D. Henry</dc:creator>
				<category><![CDATA[code]]></category>
		<category><![CDATA[projects]]></category>
		<category><![CDATA[tools]]></category>
		<category><![CDATA[uvm]]></category>
		<category><![CDATA[bug]]></category>
		<category><![CDATA[DOM]]></category>
		<category><![CDATA[footprints]]></category>
		<category><![CDATA[greasemonkey]]></category>
		<category><![CDATA[interface]]></category>
		<category><![CDATA[javascript]]></category>
		<category><![CDATA[ldap]]></category>
		<category><![CDATA[numara]]></category>
		<category><![CDATA[userscript]]></category>

		<guid isPermaLink="false">http://greengaloshes.cc/?p=123</guid>
		<description><![CDATA[UVM uses Numara Footprints to track client support tickets. When creating tickets from client submitted email, the application automatically fills out the contact information for the client, using their email to search against LDAP. This search fails if the address from the incoming ticket is in the format uid@uvm.edu (as opposed to first.last@uvm.edu). This results [...]]]></description>
			<content:encoded><![CDATA[<p>UVM uses <a href="http://www.numarasoftware.com/FootPrints.asp" title="Service Desk Software: Numara FootPrints 8">Numara Footprints</a> to track client support tickets.  When creating tickets from client submitted email, the application automatically fills out the contact information for the client, using their email to search against LDAP.   </p>
<p>This search <a href="http://list.uvm.edu/cgi-bin/wa?A2=FOOTPRINTS;HjfBYw;20080705133136-0400" title="LISTSERV 15.5 - FOOTPRINTS Archives">fails</a> if the address from the incoming ticket is in the format uid@uvm.edu (as opposed to first.last@uvm.edu). This results in a significant number of tickets coming into the system with only an email address in the contact field.  </p>
<p>It seems the only way to fix this is by copying the uid, clearing out the rest of the fields, and searching by uid again.  This needs to be done for every affected ticket.</p>
<h3 id="firebugs_greasemonkies_and_mr_dom">Firebugs, Greasemonkies, and Mr. DOM</h3>
<p>Lately I&#8217;ve found myself spending too much time copying and pasting fields in footprints.  So the other day I took a quick spin through the ticket editing interface with my trusty <a href="http://getfirebug.com/" title="Firebug - Web Development Evolved">Firebug</a>. Minutes later I was able to replicate the functionality needed to fix the problem, using Javascript and the supplied DOM elements.</p>
<p>The next logical step was to encapsulate this into something that can be used outside of the development interface, and triggered automatically. </p>
<p>Enter the Greasemonkey. <a href="http://en.wikipedia.org/wiki/Greasemonkey" title="Greasemonkey - Wikipedia, the free encyclopedia">Greasemonkey</a> is an extension for Mozilla Firefox that allows you to run custom scripts on pages that you are visiting. Think of Greasemonkey as a little mechanic that lives in your browser. It has a bunch of tools that it uses to alter or fix pages that you visit.  These tools are known as <a href="http://userscripts.org/" title="The Greasemonkey Repository &ndash; Userscripts.org">Userscripts</a>.</p>
<p>Turns out it&#8217;s pretty easy to write these Userscripts.  Based on my spelunking in the DOM cave with Firebug, I <a href="http://github.com/jhenry/footprints-fill-contact/" title="jhenry's footprints-fill-contact at master &mdash; GitHub">slapped together a Userscript</a> to fix my address book problem upon opening the ticket.  Now when I load up the ticket editing interface, the contact information is automatically filled out &#8212; even if the ticket was created with an inconveniently formatted email address.</p>
<h3 id="lazyweb_to_the_rescue">Lazyweb to the rescue</h3>
<p>I was in a hurry, and didn&#8217;t feel like digging through my old code or writing new stuff to handle some of the grunt work that this tool needed.  I borrowed a handy <a href="http://www.bennadel.com/index.cfm?dax=blog:207.view" title="Ask Ben: Extracting Parts Of An Email Address In Javascript : Kinky Solutions : A Student's Perspective by Ben Nadel">email address parser</a> from Ben Nadel at Kinky Solutions, and a <a href="http://www.netlobo.com/url_query_string_javascript.html" title="Netlobo.com | Get URL Parameters Using Javascript">url parameter grabbing function</a> from Netlobo.</p>
<h3 id="installation_and_use">Installation and use</h3>
<ol>
<li>You&#8217;ll first need the <a href="https://addons.mozilla.org/en-US/firefox/addon/748">Greasemonkey extension for Firefox</a>.  If you need this (or Userscripts in general) in Safari, I&#8217;d recommend taking a look at <a href="http://culater.net/software/SIMBL/SIMBL.php" title="SIMBL">SIMBL</a> and <a href="http://code.google.com/p/greasekit/" title="greasekit - Google Code">Greasekit</a>.</li>
<li><a href="http://github.com/jhenry/footprints-fill-contact/tree/master/footprints-fill-contact.user.js" title="footprints-fill-contact.user.js at master from jhenry's footprints-fill-contact &mdash; GitHub">Install the Userscript</a>.  </li>
</ol>
]]></content:encoded>
			<wfw:commentRss>http://greengaloshes.cc/2008/10/fixing-numara-footprints-addressbook-search-with-a-greasemonkey-userscript/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>The right tool for the job</title>
		<link>http://greengaloshes.cc/2008/04/the-right-tool-for-the-job/</link>
		<comments>http://greengaloshes.cc/2008/04/the-right-tool-for-the-job/#comments</comments>
		<pubDate>Wed, 23 Apr 2008 10:50:39 +0000</pubDate>
		<dc:creator>Justin D. Henry</dc:creator>
				<category><![CDATA[design]]></category>
		<category><![CDATA[tools]]></category>
		<category><![CDATA[applications]]></category>
		<category><![CDATA[business]]></category>
		<category><![CDATA[development]]></category>
		<category><![CDATA[enlightenment]]></category>
		<category><![CDATA[learning]]></category>
		<category><![CDATA[programs]]></category>
		<category><![CDATA[research]]></category>

		<guid isPermaLink="false">http://greengaloshes.cc/?p=113</guid>
		<description><![CDATA[Sometimes it&#8217;s not that easy to see what a new tool can really do without some level of adoption. Adoption translates into self investment, since you&#8217;re going to end up spending time and energy evaluating a new tool. The tricky part is determining the right level of self investment necessary to evaluate the tool, and [...]]]></description>
			<content:encoded><![CDATA[<p>Sometimes it&#8217;s not that easy to see what a new tool can really do without some level of adoption.  Adoption translates into self investment, since you&#8217;re going to end up spending time and energy evaluating a new tool.  </p>
<p>The tricky part is determining the right level of self investment necessary to evaluate the tool, and then how much more investment the tool is likely to take for full adoption.   </p>
<p>Assuming you can find that line, it&#8217;s worth the expense of the initial investigation.  Even if you end up passing on it, you learn from the experience.  Over time you&#8217;ll begin to recognize patterns that represent what not to look for in a tool, and how to spot a good one. You might even find a tool you&#8217;ll end up keeping in your tool belt, or one that gets stored in the garage to lend out to friends. </p>
<p>The act of actually picking up a tool and taking it for a spin represents a break in inertia &#8211; you&#8217;re doing something differently.  Bucking inertia can be a phenomenal way to grow, and can help lay the groundwork for a constructive change.  Often it forces you to look at a problem or situation from an angle you hadn&#8217;t considered before.  It&#8217;s not going to be easy, but it will make you better for it in the long run.</p>
]]></content:encoded>
			<wfw:commentRss>http://greengaloshes.cc/2008/04/the-right-tool-for-the-job/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Putting Twitter to good use</title>
		<link>http://greengaloshes.cc/2008/04/putting-twitter-to-good-use/</link>
		<comments>http://greengaloshes.cc/2008/04/putting-twitter-to-good-use/#comments</comments>
		<pubDate>Sat, 12 Apr 2008 02:39:21 +0000</pubDate>
		<dc:creator>Justin D. Henry</dc:creator>
				<category><![CDATA[tools]]></category>
		<category><![CDATA[advertising]]></category>
		<category><![CDATA[communication]]></category>
		<category><![CDATA[groups]]></category>
		<category><![CDATA[marketing]]></category>
		<category><![CDATA[networking]]></category>
		<category><![CDATA[team]]></category>
		<category><![CDATA[transparency]]></category>
		<category><![CDATA[twitter]]></category>

		<guid isPermaLink="false">http://greengaloshes.cc/?p=108</guid>
		<description><![CDATA[The other day I was sniffing around for a Portland (Maine) equivalent to the WCAX weather announcer that announces Vermont weather via Twitter. I didn&#8217;t find one. I did however find a post that seemed to echo some of the thoughts and confusion I&#8217;ve heard elsewhere regarding the utility of Twitter. This got me thinking [...]]]></description>
			<content:encoded><![CDATA[<p>The other day I was sniffing around for a Portland (Maine) equivalent to the WCAX <a href="http://twitter.com/wcaxweather" title="Twitter / wcaxweather">weather announcer</a> that announces Vermont weather via <a href="http://twitter.com/" title="Twitter: What are you doing?">Twitter</a>.  I didn&#8217;t find one.  I did however find a <a href="http://www.pemaquid.com/blog/the-tyranny-of-twitter" title="Pemaquid Crunch: Web Design notes from Portland, Maine  &raquo; Blog Archive   &raquo; The Tyranny of Twitter">post</a> that seemed to echo some of the thoughts and confusion I&#8217;ve heard elsewhere regarding the utility of Twitter.  This got me thinking in a few different directions, and what follows is one of them.  </p>
<p>I&#8217;ve been outlining examples to people of various uses for tools like Twitter for a while.  This is the weaving together of a few of those conversational threads.  I&#8217;m focusing on team communication (internal), customer/client/audience communication (external), and individual (that&#8217;s you!) uses.     </p>
<p><span id="more-108"></span></p>
<h3 id="transparency_and_communication_putting_the_8220t8221_back_in_team">Transparency and communication (putting the &#8220;T&#8221; back in Team)</h3>
<p>For teams, something like Twitter can provide a layer of internal transparency between colleagues.  A quick tweet of &#8220;stuck on Y, switching gears to work on X&#8221; can go a long way to grease the wheels of communication.  This is especially true if people are in a distributed environment, or just knee-deep in the zone.  </p>
<p>An emailed or blogged <a href="http://www.randsinrepose.com/archives/2003/11/20/status_reports_20.html" title="Rands In Repose: Status Reports 2.0">status report</a> might not be appropriate, or might take too much away from the task at hand.  The forced brevity, and almost frivolous nature of a tweet can be a perfect way to communicate to your colleagues without demanding their attention or taking too much of yours.  </p>
<p>If the idea of conversing publicly has you feeling a bit exposed, never fear, there are other options.  Prologue is a WordPress theme that provides a <a href="http://wordpress.com/blog/2008/01/28/introducing-prologue/" title="Introducing Prologue &laquo; WordPress.com">private twitterverse</a> for your group.  That way you can have a healthy dose of internal transparency, and not have to worry about the world seeing what you&#8217;re doing.   Alternatively, <a href="http://pownce.com/" title="Pownce">Pownce</a> is a service which has some pretty <a href="http://adactio.com/journal/1316/" title="Adactio: Journal&mdash;Pownce">solid team applications</a> in this area.</p>
<h3 id="advertising_is_the_message">Advertising <em>is</em> the message</h3>
<p>Twitter is a great example of an opt-in network.  You don&#8217;t see much spam there, despite it&#8217;s immense popularity.  The people who follow you, and continue to do so, follow you because you have something to say that interests them.  If what you say has no relevance to them, they can simply un-follow you.  Don&#8217;t have many followers?  Maybe your tweets sound <a href="http://candleboy.com/candleblog/article.php/20080410144334845" title="Candleblog - Friday coffee twittering?">too much like advertisements</a>.  I&#8217;ve said it before, but I really like the way <a href="http://www.scripting.com/stories/2007/11/06/whyGoogleLaunchedOpensocia.html#p5" title="Why Google launched OpenSocial (Scripting News)">Dave Winer puts it</a>:</p>
<blockquote cite="http://www.scripting.com/stories/2007/11/06/whyGoogleLaunchedOpensocia.html#p5"><p>Advertising will get more and more targeted until it disappears, because perfectly targeted advertising is just information.</p></blockquote>
<p><a href="http://www.socializedpr.com/jetblue-engages-in-real-conversation-on-twitter/" title="&raquo; JetBlue engages in real conversation on Twitter">If used right</a>, Twitter can be a valuable means for communicating outside of the organization.  As a micro-blogging platform, it can be employed as an informal way to call attention to news and topics related to your field, or provide updates about your service.  It&#8217;s less than formal nature also lets you to interact with your audience in new ways.  Got something to post that&#8217;s not quite an email, not quite a newsletter heading? Maybe it&#8217;s a tweet.  </p>
<h3 id="what8217s_in_it_for_me">What&#8217;s in it for me?</h3>
<p>On an individual level, you might find yourself scooping up juicy tips and bits of news from those you follow, or using Twitter to keep in touch with old friends in the far corners of the interwebs.  When I first signed up, I realized I could use it to syndicate my away messages, which is something I had wanted to do for a while.  Picking up this service wasn&#8217;t too far of a jump from my existing instant messenger workflow.  Over time, my use has evolved somewhat, as I&#8217;ve found it works well for informal communication, both direct and indirect.</p>
<p>In fact, you can catch all sorts of breaking news there &#8211; often from those close to the source.  The idea of using Twitter as an <a href="http://scobleizer.com/2008/03/23/the-secret-to-twitter/" title="The secret to Twitter &laquo; Scobleizer &#8212; Tech geek blogger">information fire hose</a> is an intriguing one.  </p>
<p>However, I&#8217;m still finding myself wary of following strangers.  Much of the value of a social network fades when you cease to actually know most of the people in your immediate network.  As your circle of contacts expands, you lose context and the information begins to lose value.  It&#8217;s a signal-to-noise thing. At least that&#8217;s my feeling so far &#8211; others have thought more, and written better about this.  I wonder if groups of friends would allow you to prioritize the cacophony of voices so that you can retain the context of your circle of friends.</p>
<p>But I digress.  Don&#8217;t be afraid to try this tool in different contexts &#8211; you might be surprised by the results.</p>
]]></content:encoded>
			<wfw:commentRss>http://greengaloshes.cc/2008/04/putting-twitter-to-good-use/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Burlington PHP Users Group</title>
		<link>http://greengaloshes.cc/2007/12/burlington-php-users-group/</link>
		<comments>http://greengaloshes.cc/2007/12/burlington-php-users-group/#comments</comments>
		<pubDate>Wed, 12 Dec 2007 03:14:51 +0000</pubDate>
		<dc:creator>Justin D. Henry</dc:creator>
				<category><![CDATA[code]]></category>
		<category><![CDATA[events]]></category>
		<category><![CDATA[local]]></category>
		<category><![CDATA[tools]]></category>
		<category><![CDATA[vermont]]></category>
		<category><![CDATA[development]]></category>
		<category><![CDATA[framework]]></category>
		<category><![CDATA[mvc]]></category>
		<category><![CDATA[oop]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[programming]]></category>
		<category><![CDATA[subversion]]></category>
		<category><![CDATA[svn]]></category>
		<category><![CDATA[symfony]]></category>
		<category><![CDATA[usersgroup]]></category>
		<category><![CDATA[zend]]></category>

		<guid isPermaLink="false">http://greengaloshes.cc/2007/12/burlington-php-users-group/</guid>
		<description><![CDATA[Last week saw quite a turnout at the Burlington PHP Users Group meeting. The event featured a talk by Matthew Weier O&#8217;Phinney, from the Zend Framework team at Zend Technologies. The discussion was lively and informative &#8211; there was a really good mix of people there, which made for great conversation. We even had some [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.flickr.com/photos/zappowbang/2089987471/" title="Matthew Weier O'Phinney by zappowbang, on Flickr"><img class="right" src="http://farm3.static.flickr.com/2298/2089987471_13afc4c3df_m.jpg" width="240" height="159" alt="Matthew WeierO'Phinney" /></a> Last week saw quite a turnout at the <a href="http://groups.google.com/group/Burlington-VT-PHP/web/meeting-2007-12-05" title="Meeting 2007-12-05 - Burlington, VT PHP Users Group | Google Groups">Burlington PHP Users Group meeting</a>. The event featured a talk by <a href="http://weierophinney.net/matthew/" title="phly, boy, phly">Matthew Weier O&#8217;Phinney</a>, from the <a href="http://framework.zend.com/" title="Zend Framework">Zend Framework</a> team at <a href="http://www.zend.com/" title="PHP Development &amp; Production Software - PHP Tutorials Training &amp; Certification - Learn PHP -  Zend.com - Zend.com">Zend Technologies</a>.  The discussion was lively and informative &#8211; there was a really good mix of people there, which made for great conversation.    We even had some crossover from the rails group (ok, just me and one other person &#8211; but it was nice to see a familiar face there).  Here are a few tidbits that I took away from the presentation and the various discussions.</p>
<p><span id="more-98"></span></p>
<h3 id="multiple_actions_per_request_with_the_zend_framework">Multiple actions per request with the Zend Framework</h3>
<p>This is one of those features you don&#8217;t think about until you need it and it&#8217;s not there. The documentation for <code>dispatch()</code> <a href="http://framework.zend.com/manual/en/zend.controller.front.html#zend.controller.front.methods.primary.dispatch" title="Zend Framework: Documentation">describes the process</a> pretty well:</p>
<blockquote cite="http://framework.zend.com/manual/en/zend.controller.front.html#zend.controller.front.methods.primary.dispatch"><p>Routing takes place exactly once, using the values in the request object when dispatch() is called. Dispatching takes place in a loop; a request may either indicate multiple actions to dispatch, or the controller or a plugin may reset the request object to force additional actions to dispatch. When all is done, the front controller returns a response.</p></blockquote>
<p>It&#8217;s features like this that add elegance to a set of tools.  </p>
<h3 id="zend_framework8217s_flexible_view_interface_for_portability">Zend Framework&#8217;s flexible view interface for portability</h3>
<p>Some frameworks come with their own template syntax &#8211; by default, Zend just uses PHP.  However with <code>Zend_View_Interface</code> you can roll your own template system, or <a href="http://framework.zend.com/manual/en/zend.view.scripts.html#zend.view.scripts.templates.interface" title="Zend Framework: Documentation">easily build a wrapper</a> for a third party engine like Smarty.  </p>
<p>Some folks commented that over the years they had been through several back-end systems, and having the front-end in smarty was a huge timesaver.  Using <code>Zend_View_Interface</code> you could conceivably even switch template engines if you had to.</p>
<h3 id="deployment_and_subversion">Deployment and Subversion</h3>
<p>All sorts of other information came up out of various conversations we had as a group.  Here are a few off the top of my head.</p>
<ul>
<li>It looks like the <a href="http://www.symfony-project.org/" title="symfony Web PHP Framework">Symfony</a> framework has some <a href="http://www.symfony-project.org/book/1_0/16-Application-Management-Tools#Deploying%20Applications" title="symfony Web PHP Framework     &raquo;   Chapter 16 - Application Management Tools">deployment tools</a> available.</li>
<li>There were a few subversion hosting services suggested, including <a href="http://www.assembla.com/" title="Workspaces for agile teams and rapid application development | Assembla | Assembla">Assembla</a>, which looks impressive (the image annotation feature sounds especially slick).</li>
</ul>
<p>If you&#8217;re in the area, sign up or keep an eye on the <a href="http://groups.google.com/group/Burlington-VT-PHP" title="Burlington, VT PHP Users Group | Google Groups">Burlington PHP Users Group</a> mailing list for word of the next meeting.</p>
]]></content:encoded>
			<wfw:commentRss>http://greengaloshes.cc/2007/12/burlington-php-users-group/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Evolving to Dvorak</title>
		<link>http://greengaloshes.cc/2007/11/evolving-to-dvorak/</link>
		<comments>http://greengaloshes.cc/2007/11/evolving-to-dvorak/#comments</comments>
		<pubDate>Thu, 22 Nov 2007 07:10:29 +0000</pubDate>
		<dc:creator>Justin D. Henry</dc:creator>
				<category><![CDATA[productivity]]></category>
		<category><![CDATA[reference]]></category>
		<category><![CDATA[tools]]></category>
		<category><![CDATA[writing]]></category>
		<category><![CDATA[dvorak]]></category>
		<category><![CDATA[keyboard]]></category>
		<category><![CDATA[qwerty]]></category>
		<category><![CDATA[typing]]></category>

		<guid isPermaLink="false">http://greengaloshes.cc/2007/11/evolving-to-dvorak/</guid>
		<description><![CDATA[I have never learned to touch type. As much as Ma Henry tried, she just couldn&#8217;t get me to spend enough time with Mavis Beacon. Over the years, as my hunt-and-peck style morphed into a jumble of half-memorized keystroke combinations, I began to regret this. Several weeks ago I began to mull over the idea [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.flickr.com/photos/zappowbang/2048547903/" title="peek by zappowbang, on Flickr"><img src="http://farm3.static.flickr.com/2292/2048547903_03e6dd0e3b_m.jpg" width="240" height="159" alt="peek" class="right" /></a>I have never learned to touch type.  As much as Ma Henry tried, she just couldn&#8217;t get me to spend enough time with Mavis Beacon.  Over the years, as my hunt-and-peck style morphed into a jumble of half-memorized keystroke combinations, I began to regret this.  Several weeks ago <a href="http://twitter.com/jhenry/statuses/309807662" title="Twitter / justin: thinking about learning the...">I began to mull over</a> the idea of learning the <a href="http://en.wikipedia.org/wiki/Dvorak_Simplified_Keyboard" title="Dvorak Simplified Keyboard - Wikipedia, the free encyclopedia">Dvorak keyboard layout</a>.  If I was going to spend the time learning to type, why not do it right?</p>
<p><span id="more-92"></span></p>
<p>After a few weeks of letting the thought stew in the back of my mind, I had almost forgotten about it.  Then serendipity and the interwebs teamed up in the form of a <a href="http://www.boingboing.net/2007/11/10/dvorak-funnies-expla.html" title="Dvorak funnies explain why your QWERTY habit needs to go - Boing Boing">Boing Boing post</a> about the Dvorak layout and the wonderful <a href="http://dvzine.org/">DVzine.org</a>. That was enough to give my motivation a kick in the pants.  Not being entirely comfortable with the thought of rearranging the keys on my keyboard (or washing them, for that matter), I purchased a cover for my keyboard. I started practicing and drilling. </p>
<p>By the time my rubber cover had arrived, I was well on my way to a respectable, peck-free typing speed.  I even got a warm, fuzzy morale boost when a colleague indicated his <a href="http://reparent.blog.uvm.edu/archives/2007/11/memories_of_the.html" title="Digital Digressions v2.0: Memories of the Future of Technology">intent to defect from the QWERTY ranks</a> as well.</p>
<h3>Helpful hints</h3>
<p>Every day I can feel my speed and accuracy improve.  The faster I get the easier it is to learn.  Here are a few concepts I have found useful so far.  </p>
<ul>
<li><strong>Relax, and remember to breathe</strong>.  It&#8217;s hard to concentrate if you are focused on beating the clock. Keeping a consistent pace is more important than trying to increase your words-per-minute. Try to find a rhythm.</li>
<li><strong>Don&#8217;t throw away that QWERTY</strong>.  It makes for a slower start, but not being able to look down will help you memorize the new layout. So don&#8217;t start popping off those keys just yet.  Wait until you are more comfortable with the locations of the Dvorak layout so you&#8217;re not tempted to look down &#8211; otherwise you&#8217;ll be back to hunting and pecking.</li>
<li><strong>Keep a printout of the Dvorak layout</strong> stuck to your monitor for easy reference. This will help with the next tip.</li>
<li><strong>Don&#8217;t Panic</strong>.</li>
<li><strong>Practice</strong>.  Every day, several times a day.  Short 15-30 minute bursts are best.    </li>
<li><strong>Just do it</strong>.  I&#8217;ve seen suggestions to go &#8220;cold turkey&#8221; and drop QWERTY all at once, and I don&#8217;t think I could.  It would be too stressful, and take all the fun out of it.  So try typing an email or a blog post (this post was composed in Dvorak) here and there. </li>
</ul>
<h3>Useful tools</h3>
<ul>
<li>I&#8217;ve found <a href="http://www.powertyping.com/" title="Free typing tutor online with free typing lessons.">PowerTyping</a>&#8217;s Dvorak lessons to be the best mix of drills and word review.</li>
<li><a href="http://dvorak.nl/" title="dvorak.nl (aoeu.nl)">dvorak.nl</a> is also nice, although I found myself needing more drills at first to familiarize myself with the keyboard.</li>
<li><a href="http://www.tenthumbstypingtutor.com/" title="Ten Thumbs Typing Tutor - Award Winning Touch Typing Tutor - Free Online Typing Test">Ten Thumbs</a> is a stand-alone app that works well, though I&#8217;m still not convinced it&#8217;s worth that much dough.  We&#8217;ll see.  It does offer tips on finger placement, which is helpful.</li>
<li>KB Covers offers a <a href="http://www.kbcovers.com/servlet/Categories?category=Dvorak" title="Dvorak">thin rubber cover</a> that is an alternative to dissecting your keyboard.  It is nowhere near as useful as the above tools and concepts have been, but it does serve as a sort of mental safety net and confidence builder.  The cover was a <a href="http://www.flickr.com/photos/zappowbang/2048548567/in/photostream/" title="it's thin">bit thinner</a> than I had expected, but it fits well, looks good, and seems durable.    </li>
</ul>
<p>Happy typing!</p>
]]></content:encoded>
			<wfw:commentRss>http://greengaloshes.cc/2007/11/evolving-to-dvorak/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Disability Etiquette</title>
		<link>http://greengaloshes.cc/2007/11/disability-etiquette/</link>
		<comments>http://greengaloshes.cc/2007/11/disability-etiquette/#comments</comments>
		<pubDate>Sun, 11 Nov 2007 20:41:32 +0000</pubDate>
		<dc:creator>Justin D. Henry</dc:creator>
				<category><![CDATA[activism]]></category>
		<category><![CDATA[reference]]></category>
		<category><![CDATA[tools]]></category>
		<category><![CDATA[awareness]]></category>
		<category><![CDATA[communication]]></category>
		<category><![CDATA[disability]]></category>
		<category><![CDATA[etiquette]]></category>

		<guid isPermaLink="false">http://greengaloshes.cc/2007/11/disability-etiquette/</guid>
		<description><![CDATA[The United Spinal Association has a great pamphlet on Disability Etiquette. It&#8217;s light, conversational (plenty of comics with situational examples), and friendly in tone. This goes a long way in increasing awareness about a host of disabilities. It also is a very useful tool in combating the fear that stems from not knowing how to [...]]]></description>
			<content:encoded><![CDATA[<p>The United Spinal Association has a great <a href="http://www.unitedspinal.org/disability-publications-resources/free-disability-awareness-publications/" title="United Spinal Association   &raquo; Awareness Connection">pamphlet on Disability Etiquette</a>.  It&#8217;s light, conversational (plenty of comics with situational examples), and friendly in tone.   </p>
<p>This goes a long way in increasing awareness about a host of disabilities.  It also is a very useful tool in combating the fear that stems from not knowing how to communicate with someone.  How many times have you seen a person completely ignore someone else, for no other than they didn&#8217;t know how to communicate with them? </p>
<p>I found out about it because <a href="http://www.va.gov/opa/vetsday/" title="Veterans Day - November 11 - Public and Intergovernmental Affairs">today is veterans day</a>.  The version I saw, in paper form, was branded with a VA logo instead of the United Spinal brand on the cover.  Whatever form you find it in, grab (or order) a few extra copies to send along to friends and colleagues.</p>
]]></content:encoded>
			<wfw:commentRss>http://greengaloshes.cc/2007/11/disability-etiquette/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>WordPress Greatest Hits widget</title>
		<link>http://greengaloshes.cc/2007/11/wordpress-greatest-hits-widget/</link>
		<comments>http://greengaloshes.cc/2007/11/wordpress-greatest-hits-widget/#comments</comments>
		<pubDate>Sun, 11 Nov 2007 18:44:27 +0000</pubDate>
		<dc:creator>Justin D. Henry</dc:creator>
				<category><![CDATA[blogging]]></category>
		<category><![CDATA[bootstraps]]></category>
		<category><![CDATA[code]]></category>
		<category><![CDATA[tools]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[plugin]]></category>
		<category><![CDATA[tool]]></category>
		<category><![CDATA[widget]]></category>
		<category><![CDATA[wordpress]]></category>

		<guid isPermaLink="false">http://greengaloshes.cc/2007/11/wordpress-greatest-hits-widget/</guid>
		<description><![CDATA[One of my favorite best practices in blogging is the use of a greatest hits list on the home page. I find myself looking for this list every time I come across a new blog. With that in mind, I&#8217;ve been wanting to display a list of my favorite entries from this space for quite [...]]]></description>
			<content:encoded><![CDATA[<p>One of my <a href="http://bokardo.com/archives/9-lessons-for-would-be-bloggers/" title="9 Lessons for Would-be Bloggers - Bokardo">favorite best practices</a> in blogging is the use of a <em>greatest hits</em> list on the home page.  I find myself looking for this list every time I come across a new blog. With that in mind, I&#8217;ve been wanting to display a list of my favorite entries from this space for quite a while.  The end result of this is a modified WordPress widget tool that you can use too.</p>
<p><span id="more-90"></span></p>
<p>I started by looking at the available tools.  I could easily put something like this together with raw <a href="http://codex.wordpress.org/Template_Tags" title="Template Tags &laquo; WordPress Codex">WordPress Template Tags</a> coded into the template, but I wanted something more flexible, and portable.  I find that hard coded modifications to templates get crufty over time &#8211; if you keep your code in plugins and widgets, you&#8217;ll have smoother upgrades, moves, theme changes, etc.</p>
<p>The default recent posts widget that comes with WordPress looked close to what I wanted, but I needed to be able to specify a category to display, and I didn&#8217;t want to build something from scratch.  So after poking around a bit, I found Mike Jolley&#8217;s excellent tutorial and widget, <a href="http://blue-anvil.com/archives/create-a-wordpress-recent-posts-widget" title="Create a WordPress Recent-Posts Widget » Blue Anvil Journal">My Recent Posts</a>.  </p>
<p>From there, I just needed to make a few changes to get what I wanted.  I modified the widget control panel to allow me to specify a category id to show.  I also modified the display code to not use wp_post2cat, which has been deprecated.  You can see the modified plugin here:</p>
<ul>
<li><a href="http://greengaloshes.cc/download/myRecentPosts.phps" title="see the plugin source">My Recent (favorite) Posts widget</a></li>
</ul>
<p><strong>Update</strong>: Hindsight being what it is, a recent look in the <a href="http://wordpress.org/extend/plugins/" title="WordPress &#8250; WordPress Plugins">WordPress plugins directory</a> shows an existing plugin that suits this need.  James Lao built a plugin that <a href="http://jameslao.com/2007/10/21/category-posts-wordpress-widget/" title="Category Posts WordPress Widget &raquo; James Lao">shows posts from a specific category</a>.  From the looks of it, I like his plugin better than my hacked one.</p>
]]></content:encoded>
			<wfw:commentRss>http://greengaloshes.cc/2007/11/wordpress-greatest-hits-widget/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>Standing meetings</title>
		<link>http://greengaloshes.cc/2007/11/standing-meetings/</link>
		<comments>http://greengaloshes.cc/2007/11/standing-meetings/#comments</comments>
		<pubDate>Wed, 07 Nov 2007 02:39:05 +0000</pubDate>
		<dc:creator>Justin D. Henry</dc:creator>
				<category><![CDATA[tools]]></category>
		<category><![CDATA[business]]></category>
		<category><![CDATA[group]]></category>
		<category><![CDATA[groups]]></category>
		<category><![CDATA[interaction]]></category>
		<category><![CDATA[meetings]]></category>
		<category><![CDATA[office]]></category>
		<category><![CDATA[productivity]]></category>
		<category><![CDATA[recurring]]></category>
		<category><![CDATA[standing]]></category>
		<category><![CDATA[template]]></category>

		<guid isPermaLink="false">http://greengaloshes.cc/2007/11/standing-meetings/</guid>
		<description><![CDATA[Think about your last staff or team meeting. How long was it? Was everything captured that needed to be? Did it stay on task? Chances are it could have gone smoother, faster, and been more productive. One way to make recurring meetings more efficient and productive is by reviewing the structure which guides the meeting. [...]]]></description>
			<content:encoded><![CDATA[<p>Think about your last staff or team meeting.  How long was it?  Was everything captured that needed to be?  Did it stay on task?  </p>
<p>Chances are it could have gone smoother, faster, and been more productive.  One way to make recurring meetings more efficient and productive is by reviewing the structure which guides the meeting.  </p>
<p><span id="more-88"></span></p>
<h3 id="why_are_we_here">Why are we here?</h3>
<p><img src="http://greengaloshes.cc/wp-content/uploads/2007/11/agenda.png" alt="agenda.png" class="framed right" />Depending on where you are, you probably (but not necessarily) have an agenda.   The agenda is the backbone of any meeting &#8211; it provides purpose and vision for the hour or more that you are to be spending together as a group.  </p>
<p>Defining an agenda should be the first order of business.  In fact, it starts even before the meeting begins. Your team members have hopefully been collecting items to bring bring since the last meeting.  Speaking of the last meeting, items that got tabled or put aside will also be added to the agenda at the start of the meeting.</p>
<p>A they go up on the board, the agenda items should be recorded in the notes.</p>
<h3 id="staying_on_task">Staying on task</h3>
<p>As you are defining the agenda, you should also be assigning times to each item.  Nothing gets on the board without having a time next to it.  If someone brings an item to be added to the agenda, ask them how long they would like allotted for it.   This may sound overzealous, but it&#8217;s really about setting expectations, and keeping people aware of the larger agenda and of each other.  It also makes you more realistic about the items that get added, since it forces the sponsor of the item to think harder about what they are going to say and envision how discussion around the item should flow.  Assigning times helps keep people, and your meeting, on track.</p>
<p><img src="http://greengaloshes.cc/wp-content/uploads/2007/11/roles-bubble.png" alt="roles_bubble.png" class="framed left" />The next step is to assign roles.  At the least, there should be a facilitator, a time keeper, and a note taker.  Ideally these should rotate from person to person each session, so that one person isn&#8217;t stuck taking notes every time, and everyone has the chance to control the flow of the meeting.  The note taker should be recording the times assigned to each item, as well as the roles and participants for each meeting.</p>
<p>It is the responsibility of the timekeeper to keep the group informed of the time remaining for each agenda item.  If the end of the alloted time is approaching, the timekeeper should make the group aware of this. If the discussion is still going strong, the group (or the facilitator) should agree on an extension, i.e &#8220;do we want to take 5 more minutes to talk about this?&#8221;, decide to let it die, table the discussion for next time, or arrange a separate meeting.   </p>
<h3 id="dealing_with_tangents">Dealing with tangents</h3>
<p><img src="http://greengaloshes.cc/wp-content/uploads/2007/11/parking-lot-bubble.png" alt="parking_lot_bubble.png" class="framed right" />Tangents are fun.  They can keep a meeting light, creative, and generally prevent the numbing of the mind.  They can also make a meeting drag on, push out items that need to be addressed, and, well, numb the mind.  The facilitator needs to provide balance.  They will be watching out for stray tangents and decide how long to let them go and when to cut them off.  </p>
<p>If it&#8217;s not just idle chatter, then the facilitator needs to decide whether the tangent should be dealt with now, or if it should be put in the &#8220;parking lot&#8221; to be revisited at the end of the meeting.  The note taker records the item in the parking lot area of the notes, and at meeting wrap up, the group can revisit it and decide if it should go on the agenda for the next meeting.</p>
<h3 id="tying_it_all_together">Tying it all together</h3>
<p>At the heart of any meeting is the exchange of information.  The person taking notes is responsible for making sure that the information you are trying to collect isn&#8217;t lost.  With standing meetings, they also provide continuity from meeting to meeting by keeping track of the items from the previous and next sessions.</p>
<p>Integral to the job of the note taker is a template that mimics the underlying structure and process of the meeting. Having a structured document provides logical spaces for the information to be stored.  This makes it easier for the person taking notes, since they don&#8217;t have to figure out where to put everything.  Tangents can be recorded  in the parking lot area, or immediately recorded as an agenda item for the next meeting.  Action items can be put in the actions area.     </p>
<p>A templated note taking system also helps provide continuity from meeting to meeting.  Team members don&#8217;t have to decipher someone&#8217;s notes from a week ago.  Everything is in recognizable places, wether the notes are in a text document, word file, or mind map.    </p>
<h3 id="the_goods">The Goods</h3>
<p>To get you started, here is <a href="http://greengaloshes.cc/download/recurring_meeting/Recurring_Meeting.png" title="meeting template in png format">the template</a> we&#8217;ve been using, in a few different formats.</p>
<ul>
<li><a href="http://greengaloshes.cc/download/recurring_meeting/Recurring_Meeting.txt" title="meeting template in OPML format, for import into various mind map or outline tools">Recurring_Meeting.opml</a> (for import into various mind map or outline tools)</li>
<li><a href="http://greengaloshes.cc/download/recurring_meeting/Recurring_Meeting.txt" title="meeting template in text format">Recurring_Meeting.txt</a></li>
<li><a href="http://greengaloshes.cc/download/recurring_meeting/Recurring_Meeting.pdf" title="meeting template in PDF format">Recurring_Meeting.pdf</a></li>
<li><a href="http://greengaloshes.cc/download/recurring_meeting/Recurring_Meeting.mmap" title="meeting template in Mindjet MindManager format">Recurring_Meeting.mmap</a> (Mindjet MindManager format)</li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://greengaloshes.cc/2007/11/standing-meetings/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
	</channel>
</rss>

