<?xml version="1.0" encoding="utf-8"?>
<!-- generator="FeedCreator 1.7.2-ppt DokuWiki" -->
<?xml-stylesheet href="http://www.kirkdorffer.com/wiki/lib/exe/css.php?s=feed" type="text/css"?>
<rss version="2.0">
    <channel>
        <title>DanKWiki</title>
        <description></description>
        <link>http://www.kirkdorffer.com/wiki/</link>
        <lastBuildDate>Sun, 03 May 2026 09:45:25 -0400</lastBuildDate>
        <generator>FeedCreator 1.7.2-ppt DokuWiki</generator>
        <image>
            <url>http://www.kirkdorffer.com/wiki/lib/tpl/dankwiki/images/favicon.ico</url>
            <title>DanKWiki</title>
            <link>http://www.kirkdorffer.com/wiki/</link>
        </image>
        <item>
            <title>build-pipeline-plugin Notes</title>
            <link>http://www.kirkdorffer.com/wiki/build-pipeline-plugin_notes</link>
            <description>
&lt;h0 class=&quot;sectionedit1&quot;&gt;&lt;a name=&quot;build-pipeline-plugin_notes&quot; id=&quot;build-pipeline-plugin_notes&quot;&gt;build-pipeline-plugin Notes&lt;/a&gt;&lt;/h0&gt;
&lt;div class=&quot;level0&quot;&gt;

&lt;/div&gt;
&lt;!-- EDIT1 SECTION &quot;build-pipeline-plugin Notes&quot; [1-650] --&gt;
&lt;h1 class=&quot;sectionedit2&quot;&gt;&lt;a name=&quot;build-pipeline-plugin_notes1&quot; id=&quot;build-pipeline-plugin_notes1&quot;&gt;build-pipeline-plugin Notes&lt;/a&gt;&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://code.google.com/p/build-pipeline-plugin/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://code.google.com/p/build-pipeline-plugin/&quot;  rel=&quot;nofollow&quot;&gt;Jenkins build-pipeline-plugin - Google Code Page&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;https://wiki.jenkins-ci.org/display/JENKINS/Build+Pipeline+Plugin&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;https://wiki.jenkins-ci.org/display/JENKINS/Build+Pipeline+Plugin&quot;  rel=&quot;nofollow&quot;&gt;Build Pipeline Plugin - Jenkins Wiki&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://wiki.hudson-ci.org/display/HUDSON/Build+Pipeline+Plugin&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://wiki.hudson-ci.org/display/HUDSON/Build+Pipeline+Plugin&quot;  rel=&quot;nofollow&quot;&gt;Build Pipeline Plugin - Hudson Wiki&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;https://wiki.jenkins-ci.org/display/JENKINS/Build+Pipeline+Plugin+-+Roadmap&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;https://wiki.jenkins-ci.org/display/JENKINS/Build+Pipeline+Plugin+-+Roadmap&quot;  rel=&quot;nofollow&quot;&gt;Build Pipeline Plugin - Roadmap - Jenkins Wiki&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;https://wiki.jenkins-ci.org/display/JENKINS/Build+Pipeline+Plugin+-+How+to+Contribute&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;https://wiki.jenkins-ci.org/display/JENKINS/Build+Pipeline+Plugin+-+How+to+Contribute&quot;  rel=&quot;nofollow&quot;&gt;Build Pipeline Plugin - How to Contribute - Jenkins Wiki&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;/div&gt;
&lt;!-- EDIT2 SECTION &quot;build-pipeline-plugin Notes&quot; [651-864] --&gt;
&lt;h2 class=&quot;sectionedit3&quot;&gt;&lt;a name=&quot;plugin_development_references&quot; id=&quot;plugin_development_references&quot;&gt;Plugin Development References&lt;/a&gt;&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;https://wiki.jenkins-ci.org/display/JENKINS/Plugin+tutorial&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;https://wiki.jenkins-ci.org/display/JENKINS/Plugin+tutorial&quot;  rel=&quot;nofollow&quot;&gt;Plugin tutorial - Jenkins Wiki&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;
Building:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;mvn install&lt;/pre&gt;

&lt;p&gt;
Testing:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;mvn hpi:run -Djetty.port=8090&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT3 SECTION &quot;Plugin Development References&quot; [865-1054] --&gt;
&lt;h2 class=&quot;sectionedit4&quot;&gt;&lt;a name=&quot;build-pipeline-plugin_code_references&quot; id=&quot;build-pipeline-plugin_code_references&quot;&gt;build-pipeline-plugin Code References&lt;/a&gt;&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://javadoc.jenkins-ci.org/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://javadoc.jenkins-ci.org/&quot;  rel=&quot;nofollow&quot;&gt;Jenkins API Javadoc&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://handlebarsjs.com/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://handlebarsjs.com/&quot;  rel=&quot;nofollow&quot;&gt;Handlebars.js: Minimal Templating on Steroids&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;/div&gt;
&lt;!-- EDIT4 SECTION &quot;build-pipeline-plugin Code References&quot; [1055-1222] --&gt;
&lt;h2 class=&quot;sectionedit5&quot;&gt;&lt;a name=&quot;mercurial&quot; id=&quot;mercurial&quot;&gt;Mercurial&lt;/a&gt;&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://mercurial.selenic.com/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://mercurial.selenic.com/&quot;  rel=&quot;nofollow&quot;&gt;Mercurial SCM&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://tortoisehg.bitbucket.org/manual/2.4/index.html&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://tortoisehg.bitbucket.org/manual/2.4/index.html&quot;  rel=&quot;nofollow&quot;&gt;TortoiseHg v2.4 documentation&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;/div&gt;
&lt;!-- EDIT5 SECTION &quot;Mercurial&quot; [1223-] --&gt;</description>
            <pubDate>Fri, 28 Sep 2012 01:31:54 -0400</pubDate>
        </item>
        <item>
            <title>Conference Notes</title>
            <link>http://www.kirkdorffer.com/wiki/conference_notes</link>
            <description>
&lt;h0 class=&quot;sectionedit6&quot;&gt;&lt;a name=&quot;conference_notes&quot; id=&quot;conference_notes&quot;&gt;Conference Notes&lt;/a&gt;&lt;/h0&gt;
&lt;div class=&quot;level0&quot;&gt;

&lt;/div&gt;
&lt;!-- EDIT6 SECTION &quot;Conference Notes&quot; [1-166] --&gt;
&lt;h1 class=&quot;sectionedit7&quot;&gt;&lt;a name=&quot;conference_notes1&quot; id=&quot;conference_notes1&quot;&gt;Conference Notes&lt;/a&gt;&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
Notes from various conferences or training events I&amp;#039;ve attended.
&lt;/p&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.kirkdorffer.com/wiki/javaone_-_may_2008&quot; class=&quot;wikilink1&quot; title=&quot;javaone_-_may_2008&quot;&gt;JavaOne 2008 Notes&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.kirkdorffer.com/wiki/no_fluff_just_stuff_-_fall_2008&quot; class=&quot;wikilink1&quot; title=&quot;no_fluff_just_stuff_-_fall_2008&quot;&gt;No Fluff Just Stuff - September 2008 Notes&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;/div&gt;
&lt;!-- EDIT7 SECTION &quot;Conference Notes&quot; [167-] --&gt;</description>
            <pubDate>Wed, 24 Sep 2008 01:06:45 -0400</pubDate>
        </item>
        <item>
            <title>CVS Notes</title>
            <link>http://www.kirkdorffer.com/wiki/cvs_notes</link>
            <description>
&lt;h0 class=&quot;sectionedit8&quot;&gt;&lt;a name=&quot;cvs_notes&quot; id=&quot;cvs_notes&quot;&gt;CVS Notes&lt;/a&gt;&lt;/h0&gt;
&lt;div class=&quot;level0&quot;&gt;

&lt;/div&gt;
&lt;!-- EDIT8 SECTION &quot;CVS Notes&quot; [1-227] --&gt;
&lt;h1 class=&quot;sectionedit9&quot;&gt;&lt;a name=&quot;cvs_notes1&quot; id=&quot;cvs_notes1&quot;&gt;CVS Notes&lt;/a&gt;&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://commons.oreilly.com/wiki/index.php/Essential_CVS&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://commons.oreilly.com/wiki/index.php/Essential_CVS&quot;  rel=&quot;nofollow&quot;&gt;Essential CVS&lt;/a&gt; (free online book)&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://commons.oreilly.com/wiki/index.php/Essential_CVS/CVS_Quick_Reference&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://commons.oreilly.com/wiki/index.php/Essential_CVS/CVS_Quick_Reference&quot;  rel=&quot;nofollow&quot;&gt;CVS Quick Reference&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;/div&gt;
&lt;!-- EDIT9 SECTION &quot;CVS Notes&quot; [228-315] --&gt;
&lt;h2 class=&quot;sectionedit10&quot;&gt;&lt;a name=&quot;cvsrc_file&quot; id=&quot;cvsrc_file&quot;&gt;.cvsrc File&lt;/a&gt;&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
Common &lt;code&gt;.csvrc&lt;/code&gt; settings:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;cvs -q
update -dP
diff -uN&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT10 SECTION &quot;.cvsrc File&quot; [316-337] --&gt;
&lt;h2 class=&quot;sectionedit11&quot;&gt;&lt;a name=&quot;branches&quot; id=&quot;branches&quot;&gt;Branches&lt;/a&gt;&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;/div&gt;
&lt;!-- EDIT11 SECTION &quot;Branches&quot; [338-778] --&gt;
&lt;h3 class=&quot;sectionedit12&quot;&gt;&lt;a name=&quot;create_a_new_branch&quot; id=&quot;create_a_new_branch&quot;&gt;Create a new Branch&lt;/a&gt;&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
Creating a branchpoint from something other than head:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt; cvs rtag -r &amp;lt;TAG TO BRANCH FROM&amp;gt; &amp;lt;BRANCH POINT TAG&amp;gt; cvs_project_name&lt;/pre&gt;

&lt;p&gt;
then
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt; cvs rtag -b -r &amp;lt;BRANCH POINT TAG&amp;gt; &amp;lt;BRANCH TAG&amp;gt; cvs_project_name&lt;/pre&gt;

&lt;p&gt;
e.g. 
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt; cvs rtag -r MYPROJECT_1_2 MYPROJECT_1_2_BP myproject&lt;/pre&gt;
&lt;pre class=&quot;code&quot;&gt; cvs rtag -b -r MYPROJECT_1_2_BP MYPROJECT_NEW_WORK_BR myproject&lt;/pre&gt;

&lt;p&gt;
or just
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt; cvs rtag -b -r MYPROJECT_1_2 MYPROJECT_NEW_WORK_BR myproject&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT12 SECTION &quot;Create a new Branch&quot; [779-886] --&gt;
&lt;h3 class=&quot;sectionedit13&quot;&gt;&lt;a name=&quot;update_a_branch_from_head&quot; id=&quot;update_a_branch_from_head&quot;&gt;Update a Branch from HEAD&lt;/a&gt;&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
To update a branch with the latest from HEAD:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt; cvs update -j HEAD&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT13 SECTION &quot;Update a Branch from HEAD&quot; [887-958] --&gt;
&lt;h3 class=&quot;sectionedit14&quot;&gt;&lt;a name=&quot;merge_from_a_branch_to_head&quot; id=&quot;merge_from_a_branch_to_head&quot;&gt;Merge from a Branch to HEAD&lt;/a&gt;&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;
&lt;pre class=&quot;code&quot;&gt; cvs update -dj &amp;lt;BRANCH TAG&amp;gt;&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT14 SECTION &quot;Merge from a Branch to HEAD&quot; [959-2306] --&gt;
&lt;h3 class=&quot;sectionedit15&quot;&gt;&lt;a name=&quot;merge_from_a_branch_to_another_branch&quot; id=&quot;merge_from_a_branch_to_another_branch&quot;&gt;Merge from a Branch to another Branch&lt;/a&gt;&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
Merging a project branch to HEAD:
&lt;/p&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; place an end point (EP) tag on project branch&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; update target branch (or HEAD), and optionally set a pre-merge tag&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; go to target branch (or HEAD) root&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;code&gt;cvs update -dj &amp;lt;BRANCH POINT TAG&amp;gt; -j &amp;lt;END POINT TAG&amp;gt;&lt;/code&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;
Assuming a branch point tag (ordinary tag) has been created:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt; cvs update -dj &amp;lt;BRANCH POINT TAG&amp;gt; -j &amp;lt;MERGE POINT ON HEAD TAG&amp;gt;&lt;/pre&gt;

&lt;p&gt;
Examples:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt; cvs update -dj MYPROJECT_BP -j MYPROJECT_1_3
 
 cvs update -P -dj MYPROJECT_1_2 -j MYPROJECT_1_3&lt;/pre&gt;

&lt;p&gt;
If no branch point tag (ordinary tag) has been created (at target root):
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt; cvs update -j &amp;lt;BRANCH TAG&amp;gt;&lt;/pre&gt;

&lt;p&gt;
Example:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt; cvs update -j MYPROJECT_BR
                                                                        &lt;/pre&gt;

&lt;p&gt;
To do a run through without making changes use -n:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt; cvs -n update -dj &amp;lt;BRANCH POINT TAG&amp;gt; -j &amp;lt;MERGE POINT ON HEAD TAG&amp;gt;&lt;/pre&gt;

&lt;p&gt;
To prune empty directories:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;                                                                        
 cvs update -P -dj &amp;lt;BRANCH POINT TAG&amp;gt; -j &amp;lt;MERGE POINT ON HEAD TAG&amp;gt;&lt;/pre&gt;
&lt;pre class=&quot;code&quot;&gt; cvs update -P -dj MYPROJECT_BP -j MYPROJECT_EP&lt;/pre&gt;

&lt;p&gt;
To ignore $id$ tag differences use the -kk option:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt; cvs update -P -kk -dj MYPROJECT_BP -j MYPROJECT_EP&lt;/pre&gt;

&lt;p&gt;
But this creates a sticky tag situation &lt;em&gt;if you&amp;#039;re on HEAD&lt;/em&gt;, so you need to then remove the sticky tag:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt; cvs update -A&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT15 SECTION &quot;Merge from a Branch to another Branch&quot; [2307-2464] --&gt;
&lt;h3 class=&quot;sectionedit16&quot;&gt;&lt;a name=&quot;remove_a_branch&quot; id=&quot;remove_a_branch&quot;&gt;Remove a Branch&lt;/a&gt;&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
Note: only do this if it was just created and there has been no activity on it!
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt; cvs rtag -d -B &amp;lt;BRANCH TAG&amp;gt; cvs_project_name&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT16 SECTION &quot;Remove a Branch&quot; [2465-2483] --&gt;
&lt;h2 class=&quot;sectionedit17&quot;&gt;&lt;a name=&quot;diffs&quot; id=&quot;diffs&quot;&gt;Diffs&lt;/a&gt;&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;/div&gt;
&lt;!-- EDIT17 SECTION &quot;Diffs&quot; [2484-2630] --&gt;
&lt;h3 class=&quot;sectionedit18&quot;&gt;&lt;a name=&quot;diff_two_tags&quot; id=&quot;diff_two_tags&quot;&gt;Diff Two Tags&lt;/a&gt;&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;
&lt;pre class=&quot;code&quot;&gt; cvs diff -u -r &amp;lt;BRANCH POINT TAG&amp;gt; -r &amp;lt;MERGE POINT ON HEAD TAG&amp;gt;&lt;/pre&gt;

&lt;p&gt;
or 
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt; cvs diff -u -r MYPROJECT_1_2 -r MYPROJECT_1_3&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT18 SECTION &quot;Diff Two Tags&quot; [2631-3233] --&gt;
&lt;h3 class=&quot;sectionedit19&quot;&gt;&lt;a name=&quot;changes_made_in_branch&quot; id=&quot;changes_made_in_branch&quot;&gt;Changes made in Branch&lt;/a&gt;&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
Requires a branch point tag to compare against (-kk: ignore &lt;acronym title=&quot;Concurrent Versions System&quot;&gt;CVS&lt;/acronym&gt; id tags).
&lt;/p&gt;

&lt;p&gt;
List files changed (rdiff -s: summary change report):
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt; cvs -q rdiff -s -kk -r MYPROJECT_BP -r MYPROJECT_BR myproject&lt;/pre&gt;
&lt;pre class=&quot;code&quot;&gt; cvs -q rdiff -s -kk -r MYPROJECT_VERSION_1 -r MYPROJECT_VERSION_2 myproject&lt;/pre&gt;
&lt;pre class=&quot;code&quot;&gt; cvs -q rdiff -s -kk -r MYPROJECT_VERSION_1 -r MYPROJECT_VERSION_2 myproject/folder&lt;/pre&gt;

&lt;p&gt;
List files and changes:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt; cvs -q rdiff -u -kk -r MYPROJECT_BP -r MYPROJECT_BR myproject&lt;/pre&gt;

&lt;p&gt;
Details on one file:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt; cvs -q rdiff -kk -r MYPROJECT_VERSION_1 -r MYPROJECT_VERSION_2 myproject/folder/file.ext&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT19 SECTION &quot;Changes made in Branch&quot; [3234-] --&gt;</description>
            <pubDate>Mon, 20 Dec 2010 01:59:48 -0400</pubDate>
        </item>
        <item>
            <title>Data Structures And Algorithm Notes</title>
            <link>http://www.kirkdorffer.com/wiki/data_structures_and_algorithm_notes</link>
            <description>
&lt;h0 class=&quot;sectionedit20&quot;&gt;&lt;a name=&quot;data_structures_and_algorithm_notes&quot; id=&quot;data_structures_and_algorithm_notes&quot;&gt;Data Structures And Algorithm Notes&lt;/a&gt;&lt;/h0&gt;
&lt;div class=&quot;level0&quot;&gt;

&lt;/div&gt;
&lt;!-- EDIT20 SECTION &quot;Data Structures And Algorithm Notes&quot; [1-202] --&gt;
&lt;h1 class=&quot;sectionedit21&quot;&gt;&lt;a name=&quot;data_structures_and_algorithm_notes1&quot; id=&quot;data_structures_and_algorithm_notes1&quot;&gt;Data Structures And Algorithm Notes&lt;/a&gt;&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.brpreiss.com/books/opus5/html/page9.html&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.brpreiss.com/books/opus5/html/page9.html&quot;  rel=&quot;nofollow&quot;&gt;Data Structures and Algorithms with Object-Oriented Design Patterns in Java&lt;/a&gt; (Online Book)&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;/div&gt;
&lt;!-- EDIT21 SECTION &quot;Data Structures And Algorithm Notes&quot; [203-1089] --&gt;
&lt;h2 class=&quot;sectionedit22&quot;&gt;&lt;a name=&quot;data_structures&quot; id=&quot;data_structures&quot;&gt;Data Structures&lt;/a&gt;&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.topcoder.com/tc?module=Static&amp;amp;d1=tutorials&amp;amp;d2=dataStructures&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.topcoder.com/tc?module=Static&amp;amp;d1=tutorials&amp;amp;d2=dataStructures&quot;  rel=&quot;nofollow&quot;&gt;Data Structures&lt;/a&gt; - Overview&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;https://web.archive.org/web/20100317134525/http://www.interviewpattern.com/post/Linked-List-Interview-Questions-Part-I.aspx&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;https://web.archive.org/web/20100317134525/http://www.interviewpattern.com/post/Linked-List-Interview-Questions-Part-I.aspx&quot;  rel=&quot;nofollow&quot;&gt;Linked List Interview Questions - Part I&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;https://web.archive.org/web/20100305075616/http://www.interviewpattern.com:80/post/Linked-List-Interview-Questions-Part-II.aspx&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;https://web.archive.org/web/20100305075616/http://www.interviewpattern.com:80/post/Linked-List-Interview-Questions-Part-II.aspx&quot;  rel=&quot;nofollow&quot;&gt;Linked List Interview Questions - Part II&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://javarevisited.blogspot.com/2013/03/top-15-data-structures-algorithm-interview-questions-answers-java-programming.html&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://javarevisited.blogspot.com/2013/03/top-15-data-structures-algorithm-interview-questions-answers-java-programming.html&quot;  rel=&quot;nofollow&quot;&gt;Top 15 Data Structures and Algorithm Interview Questions for Java programmer - Answers&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://en.wikipedia.org/wiki/Heap_%28data_structure%29&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://en.wikipedia.org/wiki/Heap_%28data_structure%29&quot;  rel=&quot;nofollow&quot;&gt;Heap&lt;/a&gt; (Wikipedia)&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.cs.usfca.edu/~galles/visualization/Algorithms.html&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.cs.usfca.edu/~galles/visualization/Algorithms.html&quot;  rel=&quot;nofollow&quot;&gt;Data Structure Visualization&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;/div&gt;
&lt;!-- EDIT22 SECTION &quot;Data Structures&quot; [1090-2096] --&gt;
&lt;h2 class=&quot;sectionedit23&quot;&gt;&lt;a name=&quot;algorithms&quot; id=&quot;algorithms&quot;&gt;Algorithms&lt;/a&gt;&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://xlinux.nist.gov/dads/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://xlinux.nist.gov/dads/&quot;  rel=&quot;nofollow&quot;&gt;Dictionary of Algorithms and Data Structures&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.topcoder.com/tc?d1=tutorials&amp;amp;d2=alg_index&amp;amp;module=Static&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.topcoder.com/tc?d1=tutorials&amp;amp;d2=alg_index&amp;amp;module=Static&quot;  rel=&quot;nofollow&quot;&gt;Top Coder Algorithm Tutorials&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://blog.notdot.net/2007/4/Damn-Cool-Algorithms-Part-1-BK-Trees&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://blog.notdot.net/2007/4/Damn-Cool-Algorithms-Part-1-BK-Trees&quot;  rel=&quot;nofollow&quot;&gt;Damn Cool Algorithms, Part 1: BK-Trees&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://en.wikipedia.org/wiki/Search_algorithm&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://en.wikipedia.org/wiki/Search_algorithm&quot;  rel=&quot;nofollow&quot;&gt;Search algorithm&lt;/a&gt; (Wikipedia)&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://en.wikipedia.org/wiki/Sorting_algorithm&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://en.wikipedia.org/wiki/Sorting_algorithm&quot;  rel=&quot;nofollow&quot;&gt;Sorting algorithm&lt;/a&gt; (Wikipedia)&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://en.wikipedia.org/wiki/NP-complete&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://en.wikipedia.org/wiki/NP-complete&quot;  rel=&quot;nofollow&quot;&gt;NP-complete&lt;/a&gt; (Wikipedia)&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://en.wikipedia.org/wiki/Traveling_salesman_problem&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://en.wikipedia.org/wiki/Traveling_salesman_problem&quot;  rel=&quot;nofollow&quot;&gt;Travelling salesman problem&lt;/a&gt; (Wikipedia)&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://en.wikipedia.org/wiki/Knapsack_problem&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://en.wikipedia.org/wiki/Knapsack_problem&quot;  rel=&quot;nofollow&quot;&gt;Knapsack problem&lt;/a&gt; (Wikipedia)&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://en.wikipedia.org/wiki/Graph_theory&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://en.wikipedia.org/wiki/Graph_theory&quot;  rel=&quot;nofollow&quot;&gt;Graph theory&lt;/a&gt; (Wikipedia)&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://en.wikipedia.org/wiki/Breadth-first_search&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://en.wikipedia.org/wiki/Breadth-first_search&quot;  rel=&quot;nofollow&quot;&gt;Breadth-first search&lt;/a&gt; (Wikipedia)&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://en.wikipedia.org/wiki/Depth-first_search&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://en.wikipedia.org/wiki/Depth-first_search&quot;  rel=&quot;nofollow&quot;&gt;Depth-first search&lt;/a&gt; (Wikipedia)&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;/div&gt;
&lt;!-- EDIT23 SECTION &quot;Algorithms&quot; [2097-2470] --&gt;
&lt;h3 class=&quot;sectionedit24&quot;&gt;&lt;a name=&quot;big-o_notation&quot; id=&quot;big-o_notation&quot;&gt;Big-O Notation&lt;/a&gt;&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.perlmonks.org/?node_id=227909&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.perlmonks.org/?node_id=227909&quot;  rel=&quot;nofollow&quot;&gt;An informal introduction to O(N) notation&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.perlmonks.org/?node_id=573138&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.perlmonks.org/?node_id=573138&quot;  rel=&quot;nofollow&quot;&gt;Big-O Notation - What is it good for?&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://discrete.gr/complexity/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://discrete.gr/complexity/&quot;  rel=&quot;nofollow&quot;&gt;A Gentle Introduction to Algorithm Complexity Analysis&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://bigocheatsheet.com/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://bigocheatsheet.com/&quot;  rel=&quot;nofollow&quot;&gt;Big-O Algorithm Complexity Cheat Sheet&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;/div&gt;
&lt;!-- EDIT24 SECTION &quot;Big-O Notation&quot; [2471-13655] --&gt;
&lt;h2 class=&quot;sectionedit25&quot;&gt;&lt;a name=&quot;questions_and_topics&quot; id=&quot;questions_and_topics&quot;&gt;Questions and Topics&lt;/a&gt;&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
Q. &lt;a href=&quot;http://en.wikipedia.org/wiki/Bitwise_operation&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://en.wikipedia.org/wiki/Bitwise_operation&quot;  rel=&quot;nofollow&quot;&gt;Bitwise Operations&lt;/a&gt; and &lt;a href=&quot;http://vipan.com/htdocs/bitwisehelp.html&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://vipan.com/htdocs/bitwisehelp.html&quot;  rel=&quot;nofollow&quot;&gt;Bitwise AND, OR, XOR and NOT Operators and Bit Masks&lt;/a&gt;
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;NOT - Bits that are 0 become 1, and those that are 1 become 0.  Used to unset/turn off bit flags.
AND - Multiplication of bits; i.e., 1 × 0 = 0 and 1 × 1 = 1.  Used to check state of a bit flag.
OR  - 1 if either bit is 1, otherwise 0.  Used to set/turn on bit flags regardless of whether already on or not.
XOR - 1 if both bits are different, 0 if they are the same.  Used to toggle flag bits of a mask.

Arithmetic Shifts: left &amp;lt;&amp;lt; (multiplies by 2, 0 shifted on as least significant bit), right &amp;gt;&amp;gt; (divides by 2, left-most sign bit is retained)
Logical Shift: right &amp;gt;&amp;gt;&amp;gt; (divides by 2, 0 shifted on as most significant bit)&lt;/pre&gt;

&lt;p&gt;
Q. What&amp;#039;s the difference between a LinkedList and an ArrayList (or between a linked list and an array/vector)?
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;An ArrayList is a List implementation backed by a Java array. With a LinkedList, the List implementation is backed by a 
doubly linked list data structure.&lt;/pre&gt;

&lt;p&gt;
Q. How can you detect a cycle in a linked list?
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;Turtle and Rabbit: The idea is to have two references to the list and move them at different speeds. Move one forward by 1  
node and the other by 2 nodes. If the linked list has a loop they will meet. If there is no loop either of the references 
will become null when it reaches the end of the list. O(n)&lt;/pre&gt;

&lt;p&gt;
Q. What is a weighted round robin load balancing algorithm?
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;Round robin distribution is used by DNS servers, peer-to-peer networks, and many other multiple-node clusters/networks.  
In a weighted round-robin algorithm, each destination (in this case, server) is assigned a value that signifies, relative 
to the other servers in the list, how that server performs. This &amp;quot;weight&amp;quot; determines how many more (or fewer) requests are 
sent that server&amp;#039;s way; compared to the other servers on the list.  &lt;/pre&gt;

&lt;p&gt;
Q. &lt;a href=&quot;http://en.wikipedia.org/wiki/Breadth_first_search&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://en.wikipedia.org/wiki/Breadth_first_search&quot;  rel=&quot;nofollow&quot;&gt;Breadth first search&lt;/a&gt;
&lt;br/&gt;
&lt;a href=&quot;http://www.kirkdorffer.com/wiki/lib/exe/fetch.php?hash=b16010&amp;amp;media=http%3A%2F%2Fupload.wikimedia.org%2Fwikipedia%2Fcommons%2Fthumb%2F3%2F33%2FBreadth-first-tree.svg%2F200px-Breadth-first-tree.svg.png&quot; class=&quot;media&quot; title=&quot;http://upload.wikimedia.org/wikipedia/commons/thumb/3/33/Breadth-first-tree.svg/200px-Breadth-first-tree.svg.png&quot;&gt;&lt;img src=&quot;http://www.kirkdorffer.com/wiki/lib/exe/fetch.php?hash=b16010&amp;amp;media=http%3A%2F%2Fupload.wikimedia.org%2Fwikipedia%2Fcommons%2Fthumb%2F3%2F33%2FBreadth-first-tree.svg%2F200px-Breadth-first-tree.svg.png&quot; class=&quot;media&quot; alt=&quot;&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;root, children (enqueue/add), children of children (dequeue/remove first and enqueue), etc... Use a fifo queue

Typical applications:
- Shortest path between two vertices.&lt;/pre&gt;

&lt;p&gt;
&lt;pre name=&quot;code&quot; class=&quot;java:showcontrols&quot;&gt;
public class BreadthFirstPaths {

    private boolean[] marked;
    private int[] edgeTo;

    ...
    
    private void bfs(Graph G, int s) {
        Queue&amp;lt;Integer&amp;gt; q = new Queue&amp;lt;Integer&amp;gt;();
        q.enqueue(s);
        marked[s] = true;
        while (!q.isEmpty()) {
            int v = q.dequeue();
            for (int w : G.adj(v)) {
                if (!marked[w]) {
                    q.enqueue(w);
                    marked[w] = true;
                    edgeTo[w] = v;
                }
            }
        }
    }
}
&lt;/pre&gt;
&lt;/p&gt;

&lt;p&gt;
Q. &lt;a href=&quot;http://en.wikipedia.org/wiki/Depth-first_search&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://en.wikipedia.org/wiki/Depth-first_search&quot;  rel=&quot;nofollow&quot;&gt;Depth first search&lt;/a&gt;
&lt;br/&gt;
&lt;a href=&quot;http://www.kirkdorffer.com/wiki/lib/exe/fetch.php?hash=d3d242&amp;amp;media=http%3A%2F%2Fupload.wikimedia.org%2Fwikipedia%2Fcommons%2Fthumb%2F1%2F1f%2FDepth-first-tree.svg%2F200px-Depth-first-tree.svg.png&quot; class=&quot;media&quot; title=&quot;http://upload.wikimedia.org/wikipedia/commons/thumb/1/1f/Depth-first-tree.svg/200px-Depth-first-tree.svg.png&quot;&gt;&lt;img src=&quot;http://www.kirkdorffer.com/wiki/lib/exe/fetch.php?hash=d3d242&amp;amp;media=http%3A%2F%2Fupload.wikimedia.org%2Fwikipedia%2Fcommons%2Fthumb%2F1%2F1f%2FDepth-first-tree.svg%2F200px-Depth-first-tree.svg.png&quot; class=&quot;media&quot; alt=&quot;&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;root, children (push) to leaf nodes, left, then up (pop) and right... Use a stack
    +
  3   4
preorder/prefix (Polish notation, e.g. + 3 4), postorder/postfix (reverse Polish notation, e.g. 3 4 +), 
inorder/infix (e.g. 3 + 4) - expression tree

Recursive algorithm.

Typical applications:
- Find all vertices connected to a given source vertex.
- Find a path between two vertices.

After DFS, should be able to:
- Find vertices connected to root/source in constant time
- Find a path back to root/source in time proportional to its length&lt;/pre&gt;

&lt;p&gt;
&lt;pre name=&quot;code&quot; class=&quot;java:showcontrols&quot;&gt;
public class DepthFirstPaths {

    private boolean[] marked;
    private int[] edgeTo;
    private int s;

    public DepthFirstSearch(Graph G, int s) {
        ...
        dfs(G, s);
    }

    private void dfs(Graph G, int v) {
        marked[v] = true;
        for (int w : G.adj(v))
            if (!marked[w]) {
                dfs(G, w);
                edgeTo[w] = v;
            }
    }
}
&lt;/pre&gt;
&lt;/p&gt;

&lt;p&gt;
Q. Name some self balancing binary trees
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;Red/black tree, splay tree, AVL tree&lt;/pre&gt;

&lt;p&gt;
Q. What is Big-O Notation?
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;Defines worst case performance of an algorithm (ex: O(N)).  There is also Omega (best case - ex: Ω(N)) and Theta (average case - ex: Θ(N)).
Given N we might have, N, N log N, N^2 performance, for example.&lt;/pre&gt;

&lt;p&gt;
Q. &lt;a href=&quot;http://en.wikipedia.org/wiki/Merge_sort&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://en.wikipedia.org/wiki/Merge_sort&quot;  rel=&quot;nofollow&quot;&gt;Merge sort&lt;/a&gt;
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;Split in 2, recurse left, recurse right, merge sorted halves.

Can be &amp;quot;stable&amp;quot; - i.e. retains existing sorts if order of equal items is not changed, and no long distance exchanges are made.

Java sorts Objects with a merge sort algorithm.  N log N.&lt;/pre&gt;

&lt;p&gt;
&lt;pre name=&quot;code&quot; class=&quot;java:showcontrols&quot;&gt;
public class MergeSort {

    public static void sort(Object[] a, Comparator comparator) {
        Object[] aux = new Object[a.length];
        sort(a, aux, comparator, 0, a.length - 1);
    }

    private static void sort(Object[] a, Object[] aux, Comparator c, int lo, int hi) {
        // Optimize sort for small subarrays (CUTOFF = 7 perhaps):
        if (hi &amp;lt;= lo + CUTOFF - 1) {
            Insertion.sort(a, c, lo, hi);
            return;
        }

        int mid = lo + (hi - lo) / 2;
        sort(a, aux, c, lo, mid);
        sort(a, aux, c, mid + 1, hi);

        // Optimize if already sorted:
        if (!less(c, a[mid + 1], a[mid])) return;

        merge(a, aux, c, lo, mid, hi);
    }

    private static void merge(Object[] a, Object[] aux, Comparator c, int lo, int mid, int hi) {
        assert isSorted(a, c, lo, mid);      // precondition: a[lo..mid] sorted
        assert isSorted(a, c, mid + 1, hi);  // precondition: a[mid+1..hi] sorted

        // Copy to working array:
        for (int k = lo; k &amp;lt;= hi; k++)
            aux[k] = a[k];

        // Merge two arrays:
        int i = lo, j = mid + 1;
        for (int k = lo; k &amp;lt;= hi; k++) {
            if (i &amp;gt; mid)                      a[k] = aux[j++];
            else if (j &amp;gt; hi)                  a[k] = aux[i++];
            else if (less(c, aux[j], aux[i])) a[k] = aux[j++];
            else                              a[k] = aux[i++];
        }

        assert isSorted(a, c, lo, hi);       // postcondition: a[lo..hi] sorted
    }

    ...

}
&lt;/pre&gt;
&lt;/p&gt;

&lt;p&gt;
Q. &lt;a href=&quot;http://en.wikipedia.org/wiki/Quick_sort&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://en.wikipedia.org/wiki/Quick_sort&quot;  rel=&quot;nofollow&quot;&gt;Quick sort&lt;/a&gt;
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;Randomly shuffle array to prep process and avoid worst case comparisons (~1/2 * N^2) which becomes very unlikely to happen (if shuffle actually 
sorted the array!)
Then pick a partitioning element as a divide/pivot point, less vs. greater, exchange elements that are out of place, recurse.

Is not &amp;quot;stable&amp;quot;.

Faster than Merge sort because less movement of items even though more compares in average case.  N log N.  Too many duplicate keys can also 
affect efficiency.

Java sorts primitive types with a quick sort algorithm.&lt;/pre&gt;

&lt;p&gt;
&lt;pre name=&quot;code&quot; class=&quot;java:showcontrols&quot;&gt;
public class QuickSort {

    private static int partition(Comparable[] a, int lo, int hi) {
        int i = lo, j = hi + 1;
        while (true) {
            while (less(a[++i], a[lo])) // find item on left to swap
                if (i == hi) break;

            while (less(a[lo], a[--j])) // find item on right to swap
                if (j == lo) break;

            if (i &amp;gt;= j) break;          // check if pointers cross
            exch(a, i, j);              // swap items
        }
        exch(a, lo, j);                 // swap with partitioning item
        return j;                       // return index of item now known to be in place
    }

    public static void sort(Comparable[] a) {
        StdRandom.shuffle(a);  // shuffle ensures performance is good
        sort(a, 0, a.length - 1);
    }

    private static void sort(Comparable[] a, int lo, int hi) {
        // Optimize sort for small subarrays (CUTOFF between 10 and 20):
        if (hi &amp;lt;= lo + CUTOFF - 1) {
            Insertion.sort(a, lo, hi);
            return;
        }
        
        int j = partition(a, lo, hi);
        sort(a, lo, j - 1);
        sort(a, j + 1, hi);
    }
}
&lt;/pre&gt;
&lt;/p&gt;

&lt;p&gt;
Q. Sorting Summary
&lt;br/&gt;
&lt;img src=&quot;http://www.kirkdorffer.com/wiki/_media/wiki:sortsummary.png&quot; class=&quot;media&quot; alt=&quot;&quot; /&gt;
&lt;/p&gt;

&lt;p&gt;
Q. Implement a hashtable (dictionary)
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;An array of linked lists, indexed by a hash, where hash collisions are placed in buckets in the linked list.&lt;/pre&gt;

&lt;p&gt;
Q. &lt;a href=&quot;http://en.wikipedia.org/wiki/Binary_search_trees&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://en.wikipedia.org/wiki/Binary_search_trees&quot;  rel=&quot;nofollow&quot;&gt;Binary search trees&lt;/a&gt;
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;left subtree nodes &amp;lt; parent node &amp;lt;= right subtree nodes.  Efficient for sorting, searching in-order.&lt;/pre&gt;

&lt;p&gt;
&lt;pre name=&quot;code&quot; class=&quot;java:showcontrols&quot;&gt;
public class BST&amp;lt;Key extends Comparable&amp;lt;Key&amp;gt;, Value&amp;gt; {
    private Node root;             // root of BST

    private class Node {
        private Key key;           // sorted by key
        private Value val;         // associated data
        private Node left, right;  // left and right subtrees

        public Node(Key key, Value val, int N) {
            this.key = key;
            this.val = val;
            this.N = N;
        }
    }

    // return value associated with the given key, or null if no such key exists
    public Value get(Key key) {
        return get(root, key);
    }

    private Value get(Node x, Key key) {
        if (x == null) return null;

        int cmp = key.compareTo(x.key);

        if      (cmp &amp;lt; 0) return get(x.left, key);
        else if (cmp &amp;gt; 0) return get(x.right, key);
        else              return x.val;
    }


    /***********************************************************************
    *  Insert key-value pair into BST
    *  If key already exists, update with new value
    ***********************************************************************/
    public void put(Key key, Value val) {
        root = put(root, key, val);
    }

    private Node put(Node x, Key key, Value val) {
        if (x == null) return new Node(key, val, 1);

        int cmp = key.compareTo(x.key);

        if      (cmp &amp;lt; 0) x.left  = put(x.left,  key, val);
        else if (cmp &amp;gt; 0) x.right = put(x.right, key, val);
        else              x.val   = val;

        return x;
    }
}
&lt;/pre&gt;
&lt;/p&gt;

&lt;p&gt;
Q. Heap (priority queue)
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;Complete binary tree (i.e. only bottom level might not be complete, left to right), 
heap ordered (i.e. parent values &amp;gt; children values)&lt;/pre&gt;

&lt;p&gt;
Q. Graphs
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;trees with interconnecting nodes&lt;/pre&gt;

&lt;p&gt;
Q. Graph algorithms, such as Dijkstra and A*
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;Best-first search is a search algorithm which explores a graph by expanding the most promising node chosen 
according to a specified rule.  A* uses a best-first search and finds the least-cost path from a given initial
node to one goal node (out of one or more possible goals).  It uses a distance-plus-cost heuristic  function 
(usually denoted f(x)) to determine the order in which the search visits nodes in the tree.
  
Dijkstra&amp;#039;s algorithm, conceived by Dutch computer scientist Edsger Dijkstra in 1959,[1]  is a graph search 
algorithm that solves the single-source shortest path problem for a graph with nonnegative edge path costs, 
producing a shortest path tree. This algorithm is often used in routing.&lt;/pre&gt;

&lt;p&gt;
Q. NP-complete problems, such as traveling salesman and the knapsack problem 
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;Traveling Salesman problem: Given a list of cities and their pairwise distances, the task is to find a shortest 
possible tour that visits each city exactly once.

Knapsack problem: Given a set of items, each with a weight and a value, determine the number of each item to 
include in a collection so that the total weight is less than a given limit and the total value is as large as 
possible.&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT25 SECTION &quot;Questions and Topics&quot; [13656-] --&gt;</description>
            <pubDate>Wed, 15 Apr 2020 20:40:59 -0400</pubDate>
        </item>
        <item>
            <title>DokuWiki Notes</title>
            <link>http://www.kirkdorffer.com/wiki/dokuwiki_notes</link>
            <description>
&lt;h0 class=&quot;sectionedit26&quot;&gt;&lt;a name=&quot;dokuwiki_notes&quot; id=&quot;dokuwiki_notes&quot;&gt;DokuWiki Notes&lt;/a&gt;&lt;/h0&gt;
&lt;div class=&quot;level0&quot;&gt;

&lt;/div&gt;
&lt;!-- EDIT26 SECTION &quot;DokuWiki Notes&quot; [1-30] --&gt;
&lt;h1 class=&quot;sectionedit27&quot;&gt;&lt;a name=&quot;dokuwiki_notes1&quot; id=&quot;dokuwiki_notes1&quot;&gt;DokuWiki Notes&lt;/a&gt;&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;/div&gt;
&lt;!-- EDIT27 SECTION &quot;DokuWiki Notes&quot; [31-182] --&gt;
&lt;h2 class=&quot;sectionedit28&quot;&gt;&lt;a name=&quot;general_documentation&quot; id=&quot;general_documentation&quot;&gt;General Documentation&lt;/a&gt;&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.dokuwiki.org/manual&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.dokuwiki.org/manual&quot;  rel=&quot;nofollow&quot;&gt;The DokuWiki Manual&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.dokuwiki.org/syntax&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.dokuwiki.org/syntax&quot;  rel=&quot;nofollow&quot;&gt;Formatting Syntax&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;/div&gt;
&lt;!-- EDIT28 SECTION &quot;General Documentation&quot; [183-264] --&gt;
&lt;h2 class=&quot;sectionedit29&quot;&gt;&lt;a name=&quot;plugins&quot; id=&quot;plugins&quot;&gt;Plugins&lt;/a&gt;&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
Plugins can be found at &lt;a href=&quot;http://www.dokuwiki.org/plugins&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.dokuwiki.org/plugins&quot;  rel=&quot;nofollow&quot;&gt;http://www.dokuwiki.org/plugins&lt;/a&gt;
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT29 SECTION &quot;Plugins&quot; [265-2233] --&gt;
&lt;h3 class=&quot;sectionedit30&quot;&gt;&lt;a name=&quot;blockquotes&quot; id=&quot;blockquotes&quot;&gt;blockquotes&lt;/a&gt;&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
&lt;em&gt;Plugin Documentation&lt;/em&gt;: &lt;a href=&quot;http://foosel.org/snippets/dokuwiki/blockquote&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://foosel.org/snippets/dokuwiki/blockquote&quot;  rel=&quot;nofollow&quot;&gt;http://foosel.org/snippets/dokuwiki/blockquote&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
&lt;em&gt;Example usage&lt;/em&gt;:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;&amp;lt;blockquote&amp;gt;This is a sample of blockquoted text. This is a sample of blockquoted text. This is a sample of blockquoted text. 
This is a sample of blockquoted text. This is a sample of blockquoted text. This is a sample of blockquoted text. 
This is a sample of blockquoted text. This is a sample of blockquoted text. This is a sample of blockquoted text. 
This is a sample of blockquoted text. This is a sample of blockquoted text. This is a sample of blockquoted text. 
This is a sample of blockquoted text. This is a sample of blockquoted text. This is a sample of blockquoted text. 
This is a sample of blockquoted text. This is a sample of blockquoted text.&amp;lt;/blockquote&amp;gt;&lt;/pre&gt;

&lt;p&gt;
which produces: &lt;br/&gt;
&lt;br/&gt;

&lt;/p&gt;
&lt;/p&gt;&lt;blockquote class=&quot;blockquote-plugin&quot;&gt;
&lt;p&gt;
This is a sample of blockquoted text. This is a sample of blockquoted text. This is a sample of blockquoted text. 
This is a sample of blockquoted text. This is a sample of blockquoted text. This is a sample of blockquoted text. 
This is a sample of blockquoted text. This is a sample of blockquoted text. This is a sample of blockquoted text. 
This is a sample of blockquoted text. This is a sample of blockquoted text. This is a sample of blockquoted text. 
This is a sample of blockquoted text. This is a sample of blockquoted text. This is a sample of blockquoted text. 
This is a sample of blockquoted text. This is a sample of blockquoted text.
&lt;/p&gt;

&lt;/blockquote&gt;&lt;p&gt;
&lt;p&gt;
&lt;em&gt;Example usage&lt;/em&gt;:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;&amp;lt;blockquote J. Random Hacker&amp;gt;Test with a cite attribute...&amp;lt;/blockquote&amp;gt;&lt;/pre&gt;

&lt;p&gt;
which produces: &lt;br/&gt;
&lt;br/&gt;

&lt;/p&gt;
&lt;/p&gt;&lt;blockquote cite=&quot;J. Random Hacker&quot; class=&quot;blockquote-plugin&quot;&gt;
&lt;p&gt;
Test with a cite attribute…
&lt;/p&gt;

&lt;/blockquote&gt;&lt;p&gt;
&lt;p&gt;
&lt;em&gt;Example usage&lt;/em&gt;:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;&amp;lt;blockquote&amp;gt;Test with a cite command...&amp;lt;cite&amp;gt;J. Random Hacker, [[http://localhost/~jrhacker]]&amp;lt;/cite&amp;gt;&amp;lt;/blockquote&amp;gt;&lt;/pre&gt;

&lt;p&gt;
which produces: &lt;br/&gt;
&lt;br/&gt;

&lt;/p&gt;
&lt;/p&gt;&lt;blockquote class=&quot;blockquote-plugin&quot;&gt;
&lt;p&gt;
Test with a cite command…
&lt;/p&gt;
&lt;cite class=&quot;blockquote-plugin&quot;&gt;J. Random Hacker, &lt;a href=&quot;http://localhost/~jrhacker&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://localhost/~jrhacker&quot;  rel=&quot;nofollow&quot;&gt;http://localhost/~jrhacker&lt;/a&gt;
&lt;/cite&gt;
&lt;/blockquote&gt;&lt;p&gt;
&lt;/div&gt;
&lt;!-- EDIT30 SECTION &quot;blockquotes&quot; [2234-2505] --&gt;
&lt;h3 class=&quot;sectionedit31&quot;&gt;&lt;a name=&quot;color&quot; id=&quot;color&quot;&gt;color&lt;/a&gt;&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
&lt;em&gt;Plugin Documentation&lt;/em&gt;: &lt;a href=&quot;http://www.dokuwiki.org/plugin:color&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.dokuwiki.org/plugin:color&quot;  rel=&quot;nofollow&quot;&gt;http://www.dokuwiki.org/plugin:color&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
&lt;em&gt;Example usage&lt;/em&gt;:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;&amp;lt;color green&amp;gt;Green text&amp;lt;/color&amp;gt;
&amp;lt;color #C67636&amp;gt;#C67636 text&amp;lt;/color&amp;gt;&lt;/pre&gt;

&lt;p&gt;
which produces: &lt;br/&gt;
&lt;br/&gt;

&lt;span style='color:green; '&gt;Green text&lt;/span&gt; &lt;br/&gt;

&lt;span style='color:#C67636; '&gt;#C67636 text&lt;/span&gt;
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT31 SECTION &quot;color&quot; [2506-2796] --&gt;
&lt;h3 class=&quot;sectionedit32&quot;&gt;&lt;a name=&quot;comment&quot; id=&quot;comment&quot;&gt;comment&lt;/a&gt;&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
&lt;em&gt;Plugin Documentation&lt;/em&gt;: &lt;a href=&quot;http://wiki.splitbrain.org/plugin:comment&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://wiki.splitbrain.org/plugin:comment&quot;  rel=&quot;nofollow&quot;&gt;http://wiki.splitbrain.org/plugin:comment&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
&lt;em&gt;Example usage&lt;/em&gt;:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;&amp;lt;color red&amp;gt;Visible Text /* can&amp;#039;t see this */ surrounding hidden text&amp;lt;/color&amp;gt;&lt;/pre&gt;

&lt;p&gt;
which produces: &lt;br/&gt;
&lt;br/&gt;

&lt;span style='color:red; '&gt;Visible Text surrounding hidden text&lt;/span&gt;
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT32 SECTION &quot;comment&quot; [2797-4431] --&gt;
&lt;h3 class=&quot;sectionedit33&quot;&gt;&lt;a name=&quot;syntaxhighlighter&quot; id=&quot;syntaxhighlighter&quot;&gt;syntaxhighlighter&lt;/a&gt;&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
&lt;em&gt;Plugin Documentation&lt;/em&gt;: &lt;a href=&quot;http://www.dokuwiki.org/plugin:syntaxhighlighter&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.dokuwiki.org/plugin:syntaxhighlighter&quot;  rel=&quot;nofollow&quot;&gt;http://www.dokuwiki.org/plugin:syntaxhighlighter&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
&lt;em&gt;Example usage&lt;/em&gt;:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;&amp;lt;code java::showcontrols&amp;gt;
public void sampleMethod(String inputString) {
  String setMe = &amp;quot;The String Setting&amp;quot;;
  int index = 0;
  while (index &amp;lt; 10) {
    System.out.println(setMe);
    index++;
  }
  System.out.println(&amp;quot;The original string inputted was: &amp;quot; + inputString);
}
&amp;lt;/code&amp;gt;&lt;/pre&gt;

&lt;p&gt;
which produces:&lt;pre name=&quot;code&quot; class=&quot;java:showcontrols&quot;&gt;
  public void sampleMethod(String inputString) {
    String setMe = &amp;quot;The String Setting&amp;quot;;
    int index = 0;
    while (index &amp;lt; 10) {
      System.out.println(setMe);
      index++;
    }
    System.out.println(&amp;quot;The original string inputted was: &amp;quot; + inputString);
  }
&lt;/pre&gt;
&lt;/p&gt;

&lt;p&gt;
&lt;em&gt;Language Aliases&lt;/em&gt; - The following languages are supported:
&lt;/p&gt;
&lt;div class=&quot;table sectionedit34&quot;&gt;&lt;table class=&quot;inline&quot;&gt;
	&lt;tr class=&quot;row0&quot;&gt;
		&lt;th class=&quot;col0 leftalign&quot;&gt;Language 	 &lt;/th&gt;&lt;th class=&quot;col1 leftalign&quot;&gt;Aliases      &lt;/th&gt;
	&lt;/tr&gt;
	&lt;tr class=&quot;row1&quot;&gt;
		&lt;td class=&quot;col0 leftalign&quot;&gt;C++ 	&lt;/td&gt;&lt;td class=&quot;col1&quot;&gt;cpp, c, c++&lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr class=&quot;row2&quot;&gt;
		&lt;td class=&quot;col0 leftalign&quot;&gt;C# 	&lt;/td&gt;&lt;td class=&quot;col1&quot;&gt;c#, c-sharp, csharp&lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr class=&quot;row3&quot;&gt;
		&lt;td class=&quot;col0 leftalign&quot;&gt;&lt;acronym title=&quot;Cascading Style Sheets&quot;&gt;CSS&lt;/acronym&gt; 	&lt;/td&gt;&lt;td class=&quot;col1&quot;&gt;css&lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr class=&quot;row4&quot;&gt;
		&lt;td class=&quot;col0&quot;&gt;Delphi &lt;/td&gt;&lt;td class=&quot;col1&quot;&gt;delphi, pascal&lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr class=&quot;row5&quot;&gt;
		&lt;td class=&quot;col0 leftalign&quot;&gt;Java 	&lt;/td&gt;&lt;td class=&quot;col1&quot;&gt;java&lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr class=&quot;row6&quot;&gt;
		&lt;td class=&quot;col0 leftalign&quot;&gt;Java Script 	&lt;/td&gt;&lt;td class=&quot;col1&quot;&gt;js, jscript, javascript&lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr class=&quot;row7&quot;&gt;
		&lt;td class=&quot;col0 leftalign&quot;&gt;&lt;acronym title=&quot;Hypertext Preprocessor&quot;&gt;PHP&lt;/acronym&gt; 	&lt;/td&gt;&lt;td class=&quot;col1&quot;&gt;php&lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr class=&quot;row8&quot;&gt;
		&lt;td class=&quot;col0&quot;&gt;Python &lt;/td&gt;&lt;td class=&quot;col1&quot;&gt;py, python&lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr class=&quot;row9&quot;&gt;
		&lt;td class=&quot;col0 leftalign&quot;&gt;Ruby 	&lt;/td&gt;&lt;td class=&quot;col1&quot;&gt;rb, ruby, rails, ror&lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr class=&quot;row10&quot;&gt;
		&lt;td class=&quot;col0 leftalign&quot;&gt;Sql 	&lt;/td&gt;&lt;td class=&quot;col1&quot;&gt;sql&lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr class=&quot;row11&quot;&gt;
		&lt;td class=&quot;col0 leftalign&quot;&gt;&lt;acronym title=&quot;Visual Basic&quot;&gt;VB&lt;/acronym&gt; 	&lt;/td&gt;&lt;td class=&quot;col1&quot;&gt;vb, vb.net&lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr class=&quot;row12&quot;&gt;
		&lt;td class=&quot;col0 leftalign&quot;&gt;&lt;acronym title=&quot;Extensible Markup Language&quot;&gt;XML&lt;/acronym&gt;/&lt;acronym title=&quot;HyperText Markup Language&quot;&gt;HTML&lt;/acronym&gt; 	&lt;/td&gt;&lt;td class=&quot;col1&quot;&gt;xml, html, xhtml, xslt&lt;/td&gt;
	&lt;/tr&gt;
&lt;/table&gt;&lt;/div&gt;
&lt;!-- EDIT34 TABLE [3610-3904] --&gt;
&lt;p&gt;
&lt;em&gt;Configuration Options&lt;/em&gt; - The options are passed together with the language alias and are separated by a colon character.
&lt;/p&gt;

&lt;p&gt;
For example: &lt;code&gt;&amp;lt;code java:showcontrols:firstline[5]&amp;gt; … &amp;lt;/code&amp;gt;&lt;/code&gt;
&lt;/p&gt;
&lt;div class=&quot;table sectionedit35&quot;&gt;&lt;table class=&quot;inline&quot;&gt;
	&lt;tr class=&quot;row0&quot;&gt;
		&lt;th class=&quot;col0 centeralign&quot; colspan=&quot;2&quot;&gt;   Options    &lt;/th&gt;
	&lt;/tr&gt;
	&lt;tr class=&quot;row1&quot;&gt;
		&lt;td class=&quot;col0 leftalign&quot;&gt;lang           &lt;/td&gt;&lt;td class=&quot;col1&quot;&gt;Language Alias (see above).&lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr class=&quot;row2&quot;&gt;
		&lt;td class=&quot;col0 leftalign&quot;&gt;nogutter 	&lt;/td&gt;&lt;td class=&quot;col1&quot;&gt;Will display no gutter.&lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr class=&quot;row3&quot;&gt;
		&lt;td class=&quot;col0 leftalign&quot;&gt;showcontrols   &lt;/td&gt;&lt;td class=&quot;col1&quot;&gt;Will display controls at the top.&lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr class=&quot;row4&quot;&gt;
		&lt;td class=&quot;col0 leftalign&quot;&gt;collapse 	&lt;/td&gt;&lt;td class=&quot;col1&quot;&gt;Will collapse the block by default.&lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr class=&quot;row5&quot;&gt;
		&lt;td class=&quot;col0&quot;&gt;firstline[value] &lt;/td&gt;&lt;td class=&quot;col1&quot;&gt;Will begin line count at value. Default value is 1.&lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr class=&quot;row6&quot;&gt;
		&lt;td class=&quot;col0 leftalign&quot;&gt;showcolumns 	&lt;/td&gt;&lt;td class=&quot;col1&quot;&gt;Will show row columns in the first line. &lt;/td&gt;
	&lt;/tr&gt;
&lt;/table&gt;&lt;/div&gt;
&lt;!-- EDIT35 TABLE [4098-4429] --&gt;
&lt;/div&gt;
&lt;!-- EDIT33 SECTION &quot;syntaxhighlighter&quot; [4432-] --&gt;</description>
            <pubDate>Fri, 26 Apr 2013 15:02:12 -0400</pubDate>
        </item>
        <item>
            <title>Git Notes</title>
            <link>http://www.kirkdorffer.com/wiki/git_notes</link>
            <description>
&lt;h0 class=&quot;sectionedit36&quot;&gt;&lt;a name=&quot;git_notes&quot; id=&quot;git_notes&quot;&gt;Git Notes&lt;/a&gt;&lt;/h0&gt;
&lt;div class=&quot;level0&quot;&gt;

&lt;/div&gt;
&lt;!-- EDIT36 SECTION &quot;Git Notes&quot; [1-450] --&gt;
&lt;h1 class=&quot;sectionedit37&quot;&gt;&lt;a name=&quot;git_notes1&quot; id=&quot;git_notes1&quot;&gt;Git Notes&lt;/a&gt;&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://gitref.org/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://gitref.org/&quot;  rel=&quot;nofollow&quot;&gt;Git Reference&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://gitimmersion.com/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://gitimmersion.com/&quot;  rel=&quot;nofollow&quot;&gt;Git Immersion&lt;/a&gt; - Guided tour through Git&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://think-like-a-git.net/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://think-like-a-git.net/&quot;  rel=&quot;nofollow&quot;&gt;Think Like (a) Git&lt;/a&gt; - A Guide for the Perplexed&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://en.wikipedia.org/wiki/File:Git_data_flow_simplified.svg#&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://en.wikipedia.org/wiki/File:Git_data_flow_simplified.svg#&quot;  rel=&quot;nofollow&quot;&gt;Git data flow diagram&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://osteele.com/archives/2008/05/my-git-workflow&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://osteele.com/archives/2008/05/my-git-workflow&quot;  rel=&quot;nofollow&quot;&gt;A Git Workflow&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://git-scm.com/book&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://git-scm.com/book&quot;  rel=&quot;nofollow&quot;&gt;Pro Git&lt;/a&gt; (Free &lt;acronym title=&quot;HyperText Markup Language&quot;&gt;HTML&lt;/acronym&gt; Book)&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;/div&gt;
&lt;!-- EDIT37 SECTION &quot;Git Notes&quot; [451-537] --&gt;
&lt;h2 class=&quot;sectionedit38&quot;&gt;&lt;a name=&quot;git&quot; id=&quot;git&quot;&gt;Git&lt;/a&gt;&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;https://code.google.com/p/msysgit/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;https://code.google.com/p/msysgit/&quot;  rel=&quot;nofollow&quot;&gt;msysgit - Git for Windows&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;/div&gt;
&lt;!-- EDIT38 SECTION &quot;Git&quot; [538-950] --&gt;
&lt;h2 class=&quot;sectionedit39&quot;&gt;&lt;a name=&quot;training&quot; id=&quot;training&quot;&gt;Training&lt;/a&gt;&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://teach.github.com/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://teach.github.com/&quot;  rel=&quot;nofollow&quot;&gt;Teaching Materials for Git and GitHub&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;https://gist.github.com/3761691&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;https://gist.github.com/3761691&quot;  rel=&quot;nofollow&quot;&gt;2012-09-21 Git and GitHub Foundations Online Notes&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://teach.github.com/classnotes/2013-02-26-git-github-foundations-online.html&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://teach.github.com/classnotes/2013-02-26-git-github-foundations-online.html&quot;  rel=&quot;nofollow&quot;&gt;2013-02-26 Git and GitHub Foundations Online Notes&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;https://speakerdeck.com/u/matthewmccullough&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;https://speakerdeck.com/u/matthewmccullough&quot;  rel=&quot;nofollow&quot;&gt;Presentations by Matthew McCullough&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;/div&gt;
&lt;!-- EDIT39 SECTION &quot;Training&quot; [951-1332] --&gt;
&lt;h2 class=&quot;sectionedit40&quot;&gt;&lt;a name=&quot;github&quot; id=&quot;github&quot;&gt;GitHub&lt;/a&gt;&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;https://github.com/defunkt/hub&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;https://github.com/defunkt/hub&quot;  rel=&quot;nofollow&quot;&gt;defunkt/hub&lt;/a&gt; - Command line tool that wraps git in order to extend it with extra features and commands that make working with GitHub easier.&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.emoji-cheat-sheet.com/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.emoji-cheat-sheet.com/&quot;  rel=&quot;nofollow&quot;&gt;Emoji cheat sheet for Campfire and GitHub&lt;/a&gt; (Emoticons)&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://scottchacon.com/2011/08/31/github-flow.html&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://scottchacon.com/2011/08/31/github-flow.html&quot;  rel=&quot;nofollow&quot;&gt;GitHub Flow&lt;/a&gt; (vs. git-flow)&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;/div&gt;
&lt;!-- EDIT40 SECTION &quot;GitHub&quot; [1333-1915] --&gt;
&lt;h2 class=&quot;sectionedit41&quot;&gt;&lt;a name=&quot;tools&quot; id=&quot;tools&quot;&gt;Tools&lt;/a&gt;&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://eclipse.github.com/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://eclipse.github.com/&quot;  rel=&quot;nofollow&quot;&gt;Git in Eclipse&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.vogella.com/articles/EGit/article.html&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.vogella.com/articles/EGit/article.html&quot;  rel=&quot;nofollow&quot;&gt;Git with Eclipse (EGit) - Tutorial&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;https://github.com/github/gitpad&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;https://github.com/github/gitpad&quot;  rel=&quot;nofollow&quot;&gt;github/GitPad&lt;/a&gt; - EXE to make Notepad the Git editor (commits, interactive rebase, etc).&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://stackoverflow.com/questions/10564/how-can-i-set-up-an-editor-to-work-with-git-on-windows&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://stackoverflow.com/questions/10564/how-can-i-set-up-an-editor-to-work-with-git-on-windows&quot;  rel=&quot;nofollow&quot;&gt;Setting up a Windows editor for commit messages&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://stackoverflow.com/questions/255202/how-do-i-view-git-diff-output-with-a-visual-diff-program&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://stackoverflow.com/questions/255202/how-do-i-view-git-diff-output-with-a-visual-diff-program&quot;  rel=&quot;nofollow&quot;&gt;Setting up an external diff tool&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;/div&gt;
&lt;!-- EDIT41 SECTION &quot;Tools&quot; [1916-2090] --&gt;
&lt;h2 class=&quot;sectionedit42&quot;&gt;&lt;a name=&quot;git_svn&quot; id=&quot;git_svn&quot;&gt;Git &amp;amp; SVN&lt;/a&gt;&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;https://speakerdeck.com/u/matthewmccullough/p/migrating-from-subversion-to-git-and-github&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;https://speakerdeck.com/u/matthewmccullough/p/migrating-from-subversion-to-git-and-github&quot;  rel=&quot;nofollow&quot;&gt;Migrating from Subversion to Git and GitHub&lt;/a&gt; (Slides)&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;/div&gt;
&lt;!-- EDIT42 SECTION &quot;Git &amp; SVN&quot; [2091-2297] --&gt;
&lt;h2 class=&quot;sectionedit43&quot;&gt;&lt;a name=&quot;vim_editor&quot; id=&quot;vim_editor&quot;&gt;VIM Editor&lt;/a&gt;&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://yannesposito.com/Scratch/en/blog/Learn-Vim-Progressively/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://yannesposito.com/Scratch/en/blog/Learn-Vim-Progressively/&quot;  rel=&quot;nofollow&quot;&gt;Learn Vim Progressively&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.tuxfiles.org/linuxhelp/vimcheat.html&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.tuxfiles.org/linuxhelp/vimcheat.html&quot;  rel=&quot;nofollow&quot;&gt;The Vim commands cheat sheet&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;/div&gt;
&lt;!-- EDIT43 SECTION &quot;VIM Editor&quot; [2298-5969] --&gt;
&lt;h2 class=&quot;sectionedit44&quot;&gt;&lt;a name=&quot;various_git_commands&quot; id=&quot;various_git_commands&quot;&gt;Various Git Commands&lt;/a&gt;&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;
&lt;pre class=&quot;code&quot;&gt;  git diff           &amp;lt; diff of what is changed but not staged
  git diff --staged  &amp;lt; diff of what is staged but not committed
  git diff HEAD      &amp;lt; diff of the current state of the files as compared against the most recent commit
  
  git show &amp;lt;hash&amp;gt;    &amp;lt; diff of a specific commit
  
  git log origin/master..master             &amp;lt; lists unpushed commits
  git log origin/master..master --oneline
  
  
  git commit --amend  &amp;lt; change last commit message
  git rebase -i       &amp;lt; choose and mark the commit to &amp;quot;reword&amp;quot;
  
  git reset --hard HEAD  &amp;lt; Restore working to last committed state
  git reset --hard       &amp;lt; same
  git reset --hard MYTAG &amp;lt; Restore working to MYTAG tag reference point
  
  
  git log --stat -M                    &amp;lt; shows &amp;quot;renames&amp;quot; instead of deletes and adds
  
  git log --stat -C -C                 &amp;lt; shows &amp;quot;copies&amp;quot; if that&amp;#039;s likely what happened
  git log --stat --find-copies-harder  &amp;lt; same
  
  git log -- deletedFile.txt           &amp;lt; find a deleted file in log history
  
  git add -u .     &amp;lt; Add tracked files in the staging area rather than the working tree
  git add -A .     &amp;lt; Add files in the working tree in addition to the staging area
  git add --all .  &amp;lt; same
  
  git fetch        &amp;lt; retrieval without merging to work in progress
  git merge        &amp;lt; merges what has been fetched in to working files
  git pull         &amp;lt; retrieval with merge into work in progress
  
  git log --graph --pretty=oneline --abbrev-commit --decorate --all -5
  
  git branch           &amp;lt; local branches
  git branch -r        &amp;lt; local remote branches
  git branch -a        &amp;lt; local and local remote branches
  git ls-remote origin &amp;lt; remote branches
  git ls-remote        &amp;lt; same
  
  git branch &amp;lt;branchname&amp;gt;           &amp;lt; create new local branch &amp;lt;branchname&amp;gt;
  git checkout &amp;lt;branchname&amp;gt;         &amp;lt; switch to local branch &amp;lt;branchname&amp;gt;
  git checkout -b &amp;lt;branchname&amp;gt;      &amp;lt; create and switch to new local branch &amp;lt;branchname&amp;gt;
  git push -u origin &amp;lt;branchname&amp;gt;   &amp;lt; publishes local branch to remote origin
  
  git checkout master
  git merge &amp;lt;branchname&amp;gt;  &amp;lt; merges local branch to checked out branch (master in this case)
  
  git stash                      &amp;lt; push onto a local stash stack
  git stash pop                  &amp;lt; pop the local stash stack
  git stash apply                &amp;lt; same
  git stash branch &amp;lt;branchname&amp;gt;  &amp;lt; create branch &amp;lt;branchname&amp;gt; from top of local stash stack
  
  git branch &amp;lt;branchname&amp;gt; THETAGNAME  &amp;lt; create branch &amp;lt;branchname&amp;gt; from tag THETAGNAME
  
  git config --get-regexp alias  &amp;lt; list aliases
  
  Alias examples:
  git config --global alias.aliases &amp;quot;config --get-regexp &amp;#039;alias.*&amp;#039;&amp;quot;
  git config --global alias.s &amp;quot;status -u -s&amp;quot;
  git config --global alias.logfive &amp;quot;log --graph --pretty=oneline --abbrev-commit --decorate --all -5&amp;quot; 
   
  [alias]
  hist = log --pretty=format:\&amp;quot;%h %ad | %s%d [%an]\&amp;quot; --graph --date=short
  aliases = config --get-regexp \&amp;quot;alias.*\&amp;quot;
  unpushed-commits = log origin/master..master --date=\&amp;quot;local\&amp;quot; --pretty=format:\&amp;quot;%H %cd - %s\&amp;quot;
  statii = &amp;quot;!f() { echo \&amp;quot;Unpushed Commits:\&amp;quot;; echo; git unpushed-commits; echo; echo \&amp;quot;Status of Tracked Files:\&amp;quot;; echo; git status -uno; }; f&amp;quot;
  unpushed = &amp;quot;!f() { git log origin/$1..$1 --date=\&amp;quot;local\&amp;quot; --pretty=format:\&amp;quot;%H %cd - %s\&amp;quot;; }; f&amp;quot;
  pullr = &amp;quot;!f() { echo \&amp;quot;Stashing uncommitted work...\&amp;quot;; echo; git stash clear; git stash; echo; echo \&amp;quot;Pulling latest changes with rebase...\&amp;quot;; echo; git pull --rebase; echo; echo \&amp;quot;Applying previously stashed work...\&amp;quot;; echo; git stash apply; }; f&amp;quot;
  &lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT44 SECTION &quot;Various Git Commands&quot; [5970-] --&gt;</description>
            <pubDate>Tue, 07 Mar 2017 14:36:05 -0400</pubDate>
        </item>
        <item>
            <title>Gradle Notes</title>
            <link>http://www.kirkdorffer.com/wiki/gradle_notes</link>
            <description>
&lt;h0 class=&quot;sectionedit45&quot;&gt;&lt;a name=&quot;gradle_notes&quot; id=&quot;gradle_notes&quot;&gt;Gradle Notes&lt;/a&gt;&lt;/h0&gt;
&lt;div class=&quot;level0&quot;&gt;

&lt;/div&gt;
&lt;!-- EDIT45 SECTION &quot;Gradle Notes&quot; [1-446] --&gt;
&lt;h1 class=&quot;sectionedit46&quot;&gt;&lt;a name=&quot;gradle_notes1&quot; id=&quot;gradle_notes1&quot;&gt;Gradle Notes&lt;/a&gt;&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://gradle.org/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://gradle.org/&quot;  rel=&quot;nofollow&quot;&gt;Gradle.org&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://gradle.org/docs/current/dsl/index.html&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://gradle.org/docs/current/dsl/index.html&quot;  rel=&quot;nofollow&quot;&gt;Gradle Build Language Reference&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://gradle.org/docs/current/userguide/userguide.html&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://gradle.org/docs/current/userguide/userguide.html&quot;  rel=&quot;nofollow&quot;&gt;Gradle User Guide&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://shop.oreilly.com/product/0636920019909.do&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://shop.oreilly.com/product/0636920019909.do&quot;  rel=&quot;nofollow&quot;&gt;Building and Testing with Gradle&lt;/a&gt; (Book site)&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;https://github.com/gradleware/oreilly-gradle-book-examples&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;https://github.com/gradleware/oreilly-gradle-book-examples&quot;  rel=&quot;nofollow&quot;&gt;gradleware  / oreilly-gradle-book-examples&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;/div&gt;
&lt;!-- EDIT46 SECTION &quot;Gradle Notes&quot; [447-] --&gt;</description>
            <pubDate>Fri, 07 Sep 2012 23:47:40 -0400</pubDate>
        </item>
        <item>
            <title>Home</title>
            <link>http://www.kirkdorffer.com/wiki/home</link>
            <description>
&lt;h0 class=&quot;sectionedit47&quot;&gt;&lt;a name=&quot;home&quot; id=&quot;home&quot;&gt;Home&lt;/a&gt;&lt;/h0&gt;
&lt;div class=&quot;level0&quot;&gt;

&lt;/div&gt;
&lt;!-- EDIT47 SECTION &quot;Home&quot; [1-418] --&gt;
&lt;h1 class=&quot;sectionedit48&quot;&gt;&lt;a name=&quot;home1&quot; id=&quot;home1&quot;&gt;Home&lt;/a&gt;&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
Welcome to this wiki page powered by &lt;a href=&quot;http://www.dokuwiki.org/dokuwiki&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.dokuwiki.org/dokuwiki&quot;  rel=&quot;nofollow&quot;&gt;DokuWiki&lt;/a&gt;.  This is a repository of notes, thoughts and information regarding various things, mostly technical and Java related.  This is not a publicly editable wiki though - it is just a place I can capture info for easy access on the intertubes.
&lt;/p&gt;

&lt;p&gt;
Here is a little bit &lt;a href=&quot;http://www.kirkdorffer.com/resume.html&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.kirkdorffer.com/resume.html&quot;  rel=&quot;nofollow&quot;&gt;about me&lt;/a&gt;.
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT48 SECTION &quot;Home&quot; [419-2575] --&gt;
&lt;h2 class=&quot;sectionedit49&quot;&gt;&lt;a name=&quot;table_of_contents&quot; id=&quot;table_of_contents&quot;&gt;Table of Contents&lt;/a&gt;&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
&lt;strong&gt;General&lt;/strong&gt;
&lt;/p&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.kirkdorffer.com/wiki/conference_notes&quot; class=&quot;wikilink1&quot; title=&quot;conference_notes&quot;&gt;Notes from Conferences and Symposiums&lt;/a&gt; - JavaOne, No Fluff Just Stuff&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.kirkdorffer.com/besttechwriting2008.html&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.kirkdorffer.com/besttechwriting2008.html&quot;  rel=&quot;nofollow&quot;&gt;The Best of Technology Writing 2008&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.kirkdorffer.com/wiki/other_articles&quot; class=&quot;wikilink1&quot; title=&quot;other_articles&quot;&gt;Other articles of interest&lt;/a&gt; - Computing, Clouds, JIRA &amp;amp; Confluence, SSO, CSV, Development &lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.kirkdorffer.com/wiki/data_structures_and_algorithm_notes&quot; class=&quot;wikilink1&quot; title=&quot;data_structures_and_algorithm_notes&quot;&gt;Data Structures And Algorithm Notes&lt;/a&gt; - Definitions, Q&amp;amp;A&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.thoughtworks.com/radar&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.thoughtworks.com/radar&quot;  rel=&quot;nofollow&quot;&gt;ThoughtWorks Technology Radar&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.kirkdorffer.com/wiki/wingding_notes&quot; class=&quot;wikilink1&quot; title=&quot;wingding_notes&quot;&gt;Seattle WingDing Notes&lt;/a&gt; - Notes and links for study iterations since 2008&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;
&lt;strong&gt;Projects&lt;/strong&gt;
&lt;/p&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.kirkdorffer.com/wiki/build-pipeline-plugin_notes&quot; class=&quot;wikilink1&quot; title=&quot;build-pipeline-plugin_notes&quot;&gt;Jenkins build-pipeline-plugin&lt;/a&gt; - Open Source Project I&amp;#039;ve contributed to.&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;
&lt;strong&gt;Languages&lt;/strong&gt;
&lt;/p&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; Comparisons: &lt;a href=&quot;http://rosettacode.org/wiki/Welcome_to_Rosetta_Code&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://rosettacode.org/wiki/Welcome_to_Rosetta_Code&quot;  rel=&quot;nofollow&quot;&gt;Rosetta Code&lt;/a&gt;, Posters: &lt;a href=&quot;http://oreilly.com/pub/a/oreilly/news/languageposter_0504.html&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://oreilly.com/pub/a/oreilly/news/languageposter_0504.html&quot;  rel=&quot;nofollow&quot;&gt;O&amp;#039;Reilly - The History of Programming Languages&lt;/a&gt;, &lt;a href=&quot;http://www.levenez.com/lang/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.levenez.com/lang/&quot;  rel=&quot;nofollow&quot;&gt;Levenez - Computer Languages History&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.kirkdorffer.com/wiki/java_notes&quot; class=&quot;wikilink1&quot; title=&quot;java_notes&quot;&gt;Java&lt;/a&gt; - General Documentation, JSP and TagLibs, Hibernate, Ant Tools, Code Analyzers, Design Patterns, VM Memory, Q&amp;amp;A&lt;/div&gt;
&lt;ul&gt;
&lt;li class=&quot;level2&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.kirkdorffer.com/wiki/spring_notes&quot; class=&quot;wikilink1&quot; title=&quot;spring_notes&quot;&gt;Spring&lt;/a&gt; - General Documentation, Sprint Security, Acegi&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.kirkdorffer.com/wiki/python_notes&quot; class=&quot;wikilink1&quot; title=&quot;python_notes&quot;&gt;Python&lt;/a&gt; - General Documentation and References&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.kirkdorffer.com/wiki/ruby_notes&quot; class=&quot;wikilink1&quot; title=&quot;ruby_notes&quot;&gt;Ruby&lt;/a&gt; - Rails, General Documentation and References&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.kirkdorffer.com/wiki/sql_notes&quot; class=&quot;wikilink1&quot; title=&quot;sql_notes&quot;&gt;SQL&lt;/a&gt; - General Documentation, MySQL, Oracle, Explain Plans, Q&amp;amp;A&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.kirkdorffer.com/wiki/web_notes&quot; class=&quot;wikilink1&quot; title=&quot;web_notes&quot;&gt;Web Based&lt;/a&gt; -  Testing, Design, JavaScript, Ajax, &lt;acronym title=&quot;Cascading Style Sheets&quot;&gt;CSS&lt;/acronym&gt;, &lt;acronym title=&quot;HyperText Markup Language&quot;&gt;HTML&lt;/acronym&gt; 5&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;
&lt;strong&gt;Other&lt;/strong&gt;
&lt;/p&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.kirkdorffer.com/wiki/web_services_notes&quot; class=&quot;wikilink1&quot; title=&quot;web_services_notes&quot;&gt;Web Services&lt;/a&gt; - General Documentation, SOA, ESB, Jersey, RESTEasy&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.kirkdorffer.com/wiki/regular_expressions&quot; class=&quot;wikilink1&quot; title=&quot;regular_expressions&quot;&gt;Regular Expressions&lt;/a&gt; - General Documentation, Testing Tools and Analyzers&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;
&lt;strong&gt;Platforms&lt;/strong&gt;
&lt;/p&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.kirkdorffer.com/wiki/linux_notes&quot; class=&quot;wikilink1&quot; title=&quot;linux_notes&quot;&gt;Linux&lt;/a&gt; (also includes UNIX Notes) - Samba, &lt;acronym title=&quot;Secure Shell&quot;&gt;SSH&lt;/acronym&gt;, VNC&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.kirkdorffer.com/wiki/windows_notes&quot; class=&quot;wikilink1&quot; title=&quot;windows_notes&quot;&gt;Windows&lt;/a&gt; - Tools&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;
&lt;strong&gt;Development&lt;/strong&gt;
&lt;/p&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.kirkdorffer.com/wiki/cvs_notes&quot; class=&quot;wikilink1&quot; title=&quot;cvs_notes&quot;&gt;CVS&lt;/a&gt; - Quick Reference, Branching, Diffs&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.kirkdorffer.com/wiki/git_notes&quot; class=&quot;wikilink1&quot; title=&quot;git_notes&quot;&gt;Git&lt;/a&gt; - General Documentation and References&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.kirkdorffer.com/wiki/maven_notes&quot; class=&quot;wikilink1&quot; title=&quot;maven_notes&quot;&gt;Maven&lt;/a&gt; -  Public Repos, pom.xml, Build Phases, Common Commands&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.kirkdorffer.com/wiki/gradle_notes&quot; class=&quot;wikilink1&quot; title=&quot;gradle_notes&quot;&gt;Gradle&lt;/a&gt; - Documentation and References&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;
&lt;strong&gt;Wiki&lt;/strong&gt;
&lt;/p&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.kirkdorffer.com/wiki/dokuwiki_notes&quot; class=&quot;wikilink1&quot; title=&quot;dokuwiki_notes&quot;&gt;DokuWiki Notes&lt;/a&gt; - Information about syntax for using installed plugins&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;/div&gt;
&lt;!-- EDIT49 SECTION &quot;Table of Contents&quot; [2576-] --&gt;</description>
            <pubDate>Mon, 01 Dec 2014 22:59:08 -0400</pubDate>
        </item>
        <item>
            <title>Java Notes</title>
            <link>http://www.kirkdorffer.com/wiki/java_notes</link>
            <description>
&lt;h0 class=&quot;sectionedit50&quot;&gt;&lt;a name=&quot;java_notes&quot; id=&quot;java_notes&quot;&gt;Java Notes&lt;/a&gt;&lt;/h0&gt;
&lt;div class=&quot;level0&quot;&gt;

&lt;/div&gt;
&lt;!-- EDIT50 SECTION &quot;Java Notes&quot; [1-26] --&gt;
&lt;h1 class=&quot;sectionedit51&quot;&gt;&lt;a name=&quot;java_notes1&quot; id=&quot;java_notes1&quot;&gt;Java Notes&lt;/a&gt;&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;/div&gt;
&lt;!-- EDIT51 SECTION &quot;Java Notes&quot; [27-1029] --&gt;
&lt;h2 class=&quot;sectionedit52&quot;&gt;&lt;a name=&quot;general_documentation&quot; id=&quot;general_documentation&quot;&gt;General Documentation&lt;/a&gt;&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://download.oracle.com/docs/cd/E17409_01/javase/tutorial/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://download.oracle.com/docs/cd/E17409_01/javase/tutorial/&quot;  rel=&quot;nofollow&quot;&gt;The Java Tutorials&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.javapractices.com/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.javapractices.com/&quot;  rel=&quot;nofollow&quot;&gt;Collected Java Practices&lt;/a&gt; - Concise presentations of Java practices, tasks, and designs, illustrated with syntax-highlighted code examples.&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.java2s.com/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.java2s.com/&quot;  rel=&quot;nofollow&quot;&gt;Java2s.com&lt;/a&gt; - Programming tutorials and source code examples&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.ibm.com/developerworks/java/library/j-math2.html?ca=dgr-jw22JavaMath2&amp;amp;S_TACT=105AGX59&amp;amp;S_CMP=grsitejw22&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.ibm.com/developerworks/java/library/j-math2.html?ca=dgr-jw22JavaMath2&amp;amp;S_TACT=105AGX59&amp;amp;S_CMP=grsitejw22&quot;  rel=&quot;nofollow&quot;&gt;Java&amp;#039;s new math, Part 2: Floating-point numbers&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.javaperformancetuning.com/news/newtips096.shtml&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.javaperformancetuning.com/news/newtips096.shtml&quot;  rel=&quot;nofollow&quot;&gt;Java Performance Tuning Tips November 2008&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.ibm.com/developerworks/java/library/j-javaresources.html?ca=dgr-jw22JavaList&amp;amp;S_TACT=105AGX59&amp;amp;S_CMP=grsitejw22&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.ibm.com/developerworks/java/library/j-javaresources.html?ca=dgr-jw22JavaList&amp;amp;S_TACT=105AGX59&amp;amp;S_CMP=grsitejw22&quot;  rel=&quot;nofollow&quot;&gt;Essential Java resources: A comprehensive listing of must-have books, sites, blogs, events, and more&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.techempower.com/blog/2013/03/26/everything-about-java-8/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.techempower.com/blog/2013/03/26/everything-about-java-8/&quot;  rel=&quot;nofollow&quot;&gt;Everything about Java 8&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;/div&gt;
&lt;!-- EDIT52 SECTION &quot;General Documentation&quot; [1030-1147] --&gt;
&lt;h2 class=&quot;sectionedit53&quot;&gt;&lt;a name=&quot;jsp_and_taglibs&quot; id=&quot;jsp_and_taglibs&quot;&gt;JSP and TagLibs&lt;/a&gt;&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://jakarta.apache.org/taglibs/doc/xtags-doc/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://jakarta.apache.org/taglibs/doc/xtags-doc/&quot;  rel=&quot;nofollow&quot;&gt;Jakarta Project: XTags Library&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;/div&gt;
&lt;!-- EDIT53 SECTION &quot;JSP and TagLibs&quot; [1148-1239] --&gt;
&lt;h2 class=&quot;sectionedit54&quot;&gt;&lt;a name=&quot;jpa&quot; id=&quot;jpa&quot;&gt;JPA&lt;/a&gt;&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.infoq.com/news/2007/09/jpa-dao&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.infoq.com/news/2007/09/jpa-dao&quot;  rel=&quot;nofollow&quot;&gt;Has JPA Killed the DAO?&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;/div&gt;
&lt;!-- EDIT54 SECTION &quot;JPA&quot; [1240-1447] --&gt;
&lt;h3 class=&quot;sectionedit55&quot;&gt;&lt;a name=&quot;hibernate&quot; id=&quot;hibernate&quot;&gt;Hibernate&lt;/a&gt;&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://mkblog.exadel.com/events/webcast-recording-hibernate-performance-and-scalability-out-of-the-box/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://mkblog.exadel.com/events/webcast-recording-hibernate-performance-and-scalability-out-of-the-box/&quot;  rel=&quot;nofollow&quot;&gt;Hibernate Performance and Scalability Out of the Box&lt;/a&gt; (Webcast recording)&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;/div&gt;
&lt;!-- EDIT55 SECTION &quot;Hibernate&quot; [1448-1542] --&gt;
&lt;h2 class=&quot;sectionedit56&quot;&gt;&lt;a name=&quot;ant_tools&quot; id=&quot;ant_tools&quot;&gt;Ant Tools&lt;/a&gt;&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://ant.apache.org/manual/index.html&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://ant.apache.org/manual/index.html&quot;  rel=&quot;nofollow&quot;&gt;Apache Ant User Manual&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;/div&gt;
&lt;!-- EDIT56 SECTION &quot;Ant Tools&quot; [1543-1631] --&gt;
&lt;h3 class=&quot;sectionedit57&quot;&gt;&lt;a name=&quot;ascii_art&quot; id=&quot;ascii_art&quot;&gt;ASCII Art&lt;/a&gt;&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://patorjk.com/software/taag/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://patorjk.com/software/taag/&quot;  rel=&quot;nofollow&quot;&gt;Text Ascii Art Generator&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;/div&gt;
&lt;!-- EDIT57 SECTION &quot;ASCII Art&quot; [1632-2074] --&gt;
&lt;h3 class=&quot;sectionedit58&quot;&gt;&lt;a name=&quot;build_visualization&quot; id=&quot;build_visualization&quot;&gt;Build Visualization&lt;/a&gt;&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://vizant.sourceforge.net/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://vizant.sourceforge.net/&quot;  rel=&quot;nofollow&quot;&gt;Vizant&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://ant-script-visualizer.googlecode.com/svn/trunk/webstart/index.html&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://ant-script-visualizer.googlecode.com/svn/trunk/webstart/index.html&quot;  rel=&quot;nofollow&quot;&gt;Ant Script Visualizer&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.softwaresecretweapons.com/jspwiki/linguinemapsforapacheant&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.softwaresecretweapons.com/jspwiki/linguinemapsforapacheant&quot;  rel=&quot;nofollow&quot;&gt;Linguine Maps For Apache Ant&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://ant2dot.sourceforge.net/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://ant2dot.sourceforge.net/&quot;  rel=&quot;nofollow&quot;&gt;ant2dot.xsl&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;
These all use &lt;a href=&quot;http://www.graphviz.org&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.graphviz.org&quot;  rel=&quot;nofollow&quot;&gt;Graphviz&lt;/a&gt; to render graphics from generated &lt;code&gt;.dot&lt;/code&gt; files.
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT58 SECTION &quot;Build Visualization&quot; [2075-2533] --&gt;
&lt;h2 class=&quot;sectionedit59&quot;&gt;&lt;a name=&quot;code_analyzers&quot; id=&quot;code_analyzers&quot;&gt;Code Analyzers&lt;/a&gt;&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.panopticode.org/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.panopticode.org/&quot;  rel=&quot;nofollow&quot;&gt;Panopticode&lt;/a&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li class=&quot;level2&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://blog.stelligent.com/integrate-button/2009/07/code-metrics-in-minutes-using-panopticode.html&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://blog.stelligent.com/integrate-button/2009/07/code-metrics-in-minutes-using-panopticode.html&quot;  rel=&quot;nofollow&quot;&gt;Code Metrics in Minutes using Panopticode&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.xdepend.com/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.xdepend.com/&quot;  rel=&quot;nofollow&quot;&gt;XDepend&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.inf.usi.ch/phd/wettel/codecity.html&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.inf.usi.ch/phd/wettel/codecity.html&quot;  rel=&quot;nofollow&quot;&gt;CodeCity&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://xray.inf.usi.ch/xray.php&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://xray.inf.usi.ch/xray.php&quot;  rel=&quot;nofollow&quot;&gt;X-Ray 1.0.4.1&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.inf.usi.ch/faculty/lanza/codecrawler.html&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.inf.usi.ch/faculty/lanza/codecrawler.html&quot;  rel=&quot;nofollow&quot;&gt;CodeCrawler&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;/div&gt;
&lt;!-- EDIT59 SECTION &quot;Code Analyzers&quot; [2534-2690] --&gt;
&lt;h2 class=&quot;sectionedit60&quot;&gt;&lt;a name=&quot;design_patterns&quot; id=&quot;design_patterns&quot;&gt;Design Patterns&lt;/a&gt;&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.netobjectives.com/PatternRepository/index.php?title=Main_Page&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.netobjectives.com/PatternRepository/index.php?title=Main_Page&quot;  rel=&quot;nofollow&quot;&gt;The Net Objectives Design Patterns Repository&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;/div&gt;
&lt;!-- EDIT60 SECTION &quot;Design Patterns&quot; [2691-3003] --&gt;
&lt;h2 class=&quot;sectionedit61&quot;&gt;&lt;a name=&quot;vm_memory_management&quot; id=&quot;vm_memory_management&quot;&gt;VM Memory Management&lt;/a&gt;&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://java.sun.com/j2se/reference/whitepapers/memorymanagement_whitepaper.pdf&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://java.sun.com/j2se/reference/whitepapers/memorymanagement_whitepaper.pdf&quot;  rel=&quot;nofollow&quot;&gt;Memory Management in the Java HotSpot Virtual Machine&lt;/a&gt; (&lt;acronym title=&quot;Portable Document Format&quot;&gt;PDF&lt;/acronym&gt;)&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.oracle.com/technetwork/java/gc-tuning-5-138395.html&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.oracle.com/technetwork/java/gc-tuning-5-138395.html&quot;  rel=&quot;nofollow&quot;&gt;Tuning Garbage Collection with the 5.0 Java Virtual Machine&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;/div&gt;
&lt;!-- EDIT61 SECTION &quot;VM Memory Management&quot; [3004-7167] --&gt;
&lt;h2 class=&quot;sectionedit62&quot;&gt;&lt;a name=&quot;questions_and_topics&quot; id=&quot;questions_and_topics&quot;&gt;Questions and Topics&lt;/a&gt;&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
Q. &lt;a href=&quot;http://javadude.com/articles/passbyvalue.htm&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://javadude.com/articles/passbyvalue.htm&quot;  rel=&quot;nofollow&quot;&gt;Is Java Pass by Value or Pass by Reference?&lt;/a&gt; (See also: &lt;a href=&quot;http://www.youtube.com/watch?v=dk3Iiqof6jA&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.youtube.com/watch?v=dk3Iiqof6jA&quot;  rel=&quot;nofollow&quot;&gt;http://www.youtube.com/watch?v=dk3Iiqof6jA&lt;/a&gt;)
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;With primitives it is simple pass by value.  
Objects references are passed by value. &lt;/pre&gt;

&lt;p&gt;
Q. Composition vs. Aggregation
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;Aggregation is a specialization of association, specifying a whole-part relationship between two objects. Composition is a stronger form of
aggregation where the whole and parts have coincident lifetimes, and it is very common for the whole to manage the lifecycle of its parts.&lt;/pre&gt;

&lt;p&gt;
Q. What&amp;#039;s the difference between using synchronized on a &lt;a href=&quot;http://download.oracle.com/javase/tutorial/essential/concurrency/syncmeth.html&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://download.oracle.com/javase/tutorial/essential/concurrency/syncmeth.html&quot;  rel=&quot;nofollow&quot;&gt;method&lt;/a&gt; or in a &lt;a href=&quot;http://download.oracle.com/javase/tutorial/essential/concurrency/locksync.html&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://download.oracle.com/javase/tutorial/essential/concurrency/locksync.html&quot;  rel=&quot;nofollow&quot;&gt;block&lt;/a&gt;?
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;The main difference is that if you use a synchronized block you may lock on an object other than &amp;quot;this&amp;quot; which is a more flexible approach.&lt;/pre&gt;

&lt;p&gt;
Q. &lt;a href=&quot;http://download.oracle.com/javase/tutorial/essential/concurrency/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://download.oracle.com/javase/tutorial/essential/concurrency/&quot;  rel=&quot;nofollow&quot;&gt;Threads&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
Q. What is the Java volatile keyword?
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;Essentially, volatile is used to indicate that a variable&amp;#039;s value will be modified by different threads.
Declaring a volatile Java variable means:
- The value of this variable will never be cached thread-locally: all reads and writes will go straight to &amp;quot;main memory&amp;quot;;
- Access to the variable acts as though it is enclosed in a synchronized block, synchronized on itself. &lt;/pre&gt;

&lt;p&gt;
Q. When would you use non-public modifiers on a class?
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;To make an inner class private.&lt;/pre&gt;

&lt;p&gt;
Q. &lt;a href=&quot;http://download.oracle.com/javase/tutorial/collections/interfaces/set.html&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://download.oracle.com/javase/tutorial/collections/interfaces/set.html&quot;  rel=&quot;nofollow&quot;&gt;Set&lt;/a&gt; vs. &lt;a href=&quot;http://download.oracle.com/javase/tutorial/collections/interfaces/list.html&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://download.oracle.com/javase/tutorial/collections/interfaces/list.html&quot;  rel=&quot;nofollow&quot;&gt;List&lt;/a&gt; vs. &lt;a href=&quot;http://download.oracle.com/javase/tutorial/collections/interfaces/map.html&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://download.oracle.com/javase/tutorial/collections/interfaces/map.html&quot;  rel=&quot;nofollow&quot;&gt;Map&lt;/a&gt;
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;A Set is a collection that has no duplicate elements.
A List is a collection that has an order associated with its elements.
A Map is a way of storing key/value pairs. A Map is similar to two-column table.&lt;/pre&gt;

&lt;p&gt;
Q. What are the benefits of immutable objects? (From &lt;a href=&quot;http://www.ibm.com/developerworks/java/library/j-jtp02183/index.html&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.ibm.com/developerworks/java/library/j-jtp02183/index.html&quot;  rel=&quot;nofollow&quot;&gt;Brian Goetz: To mutate or not to mutate?&lt;/a&gt;)
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;Immutable classes, when used properly, can greatly simplify programming. They can only be in one state, so as long as they are properly 
constructed, they can never get into an inconsistent state. You can freely share and cache references to immutable objects without having 
to copy or clone them; you can cache their fields or the results of their methods without worrying about the values becoming stale or 
inconsistent with the rest of the object&amp;#039;s state. Immutable classes generally make the best map keys. And they are inherently thread-safe, 
so you don&amp;#039;t have to synchronize access to them across threads.&lt;/pre&gt;

&lt;p&gt;
Q. How do you &lt;a href=&quot;http://www.javapractices.com/topic/TopicAction.do?Id=29&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.javapractices.com/topic/TopicAction.do?Id=29&quot;  rel=&quot;nofollow&quot;&gt;make a class immutable&lt;/a&gt;? (&lt;a href=&quot;http://download.oracle.com/javase/tutorial/essential/concurrency/imstrat.html&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://download.oracle.com/javase/tutorial/essential/concurrency/imstrat.html&quot;  rel=&quot;nofollow&quot;&gt;See also...&lt;/a&gt;)
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;&amp;gt; Ensure the class cannot be overridden - make the class final, or use static factories and keep constructors private.
&amp;gt; Make the fields private and final.
&amp;gt; Force callers to construct an object completely in a single step, instead of using a no-argument constructor combined with subsequent calls to setXXX methods (that is, avoid the Java Beans convention).
&amp;gt; Do not provide any methods which can change the state of the object in any way - not just setXXX methods, but any method which can change state.
&amp;gt; If the class has any mutable object fields, then they must be defensively copied when passed between the class and its caller.&lt;/pre&gt;

&lt;p&gt;
Q. Statements vs. &lt;a href=&quot;http://download.oracle.com/javase/tutorial/jdbc/basics/prepared.html&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://download.oracle.com/javase/tutorial/jdbc/basics/prepared.html&quot;  rel=&quot;nofollow&quot;&gt;PreparedStatements&lt;/a&gt;
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;Prepared statements make formatting a non-issue, adds some security against SQL injection, and are pre-compiled.&lt;/pre&gt;

&lt;p&gt;
Q. &lt;a href=&quot;http://download.oracle.com/javase/tutorial/collections/interfaces/order.html&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://download.oracle.com/javase/tutorial/collections/interfaces/order.html&quot;  rel=&quot;nofollow&quot;&gt;Comparators and Sorting&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
Q. &lt;a href=&quot;http://download.oracle.com/docs/cd/E17802_01/webservices/webservices/docs/1.6/tutorial/doc/SJSXP2.html&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://download.oracle.com/docs/cd/E17802_01/webservices/webservices/docs/1.6/tutorial/doc/SJSXP2.html&quot;  rel=&quot;nofollow&quot;&gt;SAX (push), DOM, StAX (pull)&lt;/a&gt;
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT62 SECTION &quot;Questions and Topics&quot; [7168-] --&gt;</description>
            <pubDate>Mon, 06 Jun 2022 00:34:31 -0400</pubDate>
        </item>
        <item>
            <title>JavaOne 2008 Notes</title>
            <link>http://www.kirkdorffer.com/wiki/javaone_-_may_2008</link>
            <description>
&lt;h0 class=&quot;sectionedit63&quot;&gt;&lt;a name=&quot;javaone_2008_notes&quot; id=&quot;javaone_2008_notes&quot;&gt;JavaOne 2008 Notes&lt;/a&gt;&lt;/h0&gt;
&lt;div class=&quot;level0&quot;&gt;

&lt;/div&gt;
&lt;!-- EDIT63 SECTION &quot;JavaOne 2008 Notes&quot; [1-374] --&gt;
&lt;h1 class=&quot;sectionedit64&quot;&gt;&lt;a name=&quot;javaone_2008_notes1&quot; id=&quot;javaone_2008_notes1&quot;&gt;JavaOne 2008 Notes&lt;/a&gt;&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://java.sun.com/javaone/sf/index.jsp&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://java.sun.com/javaone/sf/index.jsp&quot;  rel=&quot;nofollow&quot;&gt;JavaOne Web Site&lt;/a&gt; - All the keynotes (recommended: Sun General Sessions from Tuesday afternoon, May 6th - Java Technical Roadmap Overview, and Friday, May 9th - Cool Stuff with Java), and access to &lt;a href=&quot;http://developers.sun.com/learning/javaoneonline/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://developers.sun.com/learning/javaoneonline/&quot;  rel=&quot;nofollow&quot;&gt;Technical Session Pdfs and Multimedia&lt;/a&gt;.&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;/div&gt;
&lt;!-- EDIT64 SECTION &quot;JavaOne 2008 Notes&quot; [375-409] --&gt;
&lt;h2 class=&quot;sectionedit65&quot;&gt;&lt;a name=&quot;stuff_of_interest&quot; id=&quot;stuff_of_interest&quot;&gt;Stuff of Interest...?&lt;/a&gt;&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;/div&gt;
&lt;!-- EDIT65 SECTION &quot;Stuff of Interest...?&quot; [410-1543] --&gt;
&lt;h3 class=&quot;sectionedit66&quot;&gt;&lt;a name=&quot;testing_coverage_tools&quot; id=&quot;testing_coverage_tools&quot;&gt;Testing Coverage Tools&lt;/a&gt;&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://cobertura.sourceforge.net/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://cobertura.sourceforge.net/&quot;  rel=&quot;nofollow&quot;&gt;Cobertura&lt;/a&gt; - Cobertura is a free Java tool that calculates the percentage of code accessed by tests. It can be used to identify which parts of your Java program are lacking test coverage. It is based on jcoverage.&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.eclemma.org/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.eclemma.org/&quot;  rel=&quot;nofollow&quot;&gt;EclEmma&lt;/a&gt; - EclEmma is a free Java code coverage tool for Eclipse, available under the Eclipse Public License. Internally it is based on the &lt;a href=&quot;http://emma.sourceforge.net/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://emma.sourceforge.net/&quot;  rel=&quot;nofollow&quot;&gt;EMMA&lt;/a&gt; Java code coverage tool, trying to adopt EMMA&amp;#039;s philosophy for the Eclipse workbench.&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://emma.sourceforge.net/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://emma.sourceforge.net/&quot;  rel=&quot;nofollow&quot;&gt;EMMA&lt;/a&gt;- EMMA is an open-source toolkit for measuring and reporting Java code coverage. EMMA distinguishes itself from other tools by going after a unique feature combination: support for large-scale enterprise software development while keeping individual developer&amp;#039;s work fast and iterative. &lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.crap4j.org/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.crap4j.org/&quot;  rel=&quot;nofollow&quot;&gt;Crap4j&lt;/a&gt; - Crap4j is a Java implementation of the CRAP (Change Risk Analysis and Predictions) software metric – a mildly offensive metric name to help protect you from truly offensive code.&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;/div&gt;
&lt;!-- EDIT66 SECTION &quot;Testing Coverage Tools&quot; [1544-1934] --&gt;
&lt;h3 class=&quot;sectionedit67&quot;&gt;&lt;a name=&quot;testing_apis&quot; id=&quot;testing_apis&quot;&gt;Testing APIs&lt;/a&gt;&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://sourceforge.net/projects/junit/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://sourceforge.net/projects/junit/&quot;  rel=&quot;nofollow&quot;&gt;JUnit 4.x&lt;/a&gt; - JUnit is a simple framework for writing and running automated tests.  Version 4 expands and simplifies with Annotations.&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://testng.org/doc/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://testng.org/doc/&quot;  rel=&quot;nofollow&quot;&gt;TestNG&lt;/a&gt; - TestNG is a testing framework inspired from JUnit and NUnit but introducing some new functionalities that make it more powerful and easier to use.&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;/div&gt;
&lt;!-- EDIT67 SECTION &quot;Testing APIs&quot; [1935-2610] --&gt;
&lt;h3 class=&quot;sectionedit68&quot;&gt;&lt;a name=&quot;continuous_integration&quot; id=&quot;continuous_integration&quot;&gt;Continuous Integration&lt;/a&gt;&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;https://hudson.dev.java.net/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;https://hudson.dev.java.net/&quot;  rel=&quot;nofollow&quot;&gt;Hudson&lt;/a&gt; - Hudson monitors executions of repeated jobs, such as building a software project or jobs run by cron.  In a nutshell, Hudson provides an easy-to-use so-called continuous integration system, making it easier for developers to integrate changes to the project, and making it easier for users to obtain a fresh build.  It also provides for monitoring the execution of externally-run jobs, such as cron jobs and procmail jobs, even those that are run on a remote machine.&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://continuum.apache.org/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://continuum.apache.org/&quot;  rel=&quot;nofollow&quot;&gt;Continuum&lt;/a&gt; - Continuum is a continuous integration server for building Java based projects.&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;/div&gt;
&lt;!-- EDIT68 SECTION &quot;Continuous Integration&quot; [2611-3217] --&gt;
&lt;h3 class=&quot;sectionedit69&quot;&gt;&lt;a name=&quot;automated_code_quality_tools&quot; id=&quot;automated_code_quality_tools&quot;&gt;Automated Code Quality Tools&lt;/a&gt;&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://checkstyle.sourceforge.net/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://checkstyle.sourceforge.net/&quot;  rel=&quot;nofollow&quot;&gt;CheckStyle&lt;/a&gt; - Checkstyle is a development tool to help programmers write Java code that adheres to a coding standard. It automates the process of checking Java code to spare humans of this boring (but important) task. This makes it ideal for projects that want to enforce a coding standard.&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://pmd.sourceforge.net/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://pmd.sourceforge.net/&quot;  rel=&quot;nofollow&quot;&gt;PMD&lt;/a&gt; - PMD scans Java source code and looks for potential problems.&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://findbugs.sourceforge.net/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://findbugs.sourceforge.net/&quot;  rel=&quot;nofollow&quot;&gt;Findbugs&lt;/a&gt; - FindBugs is a program that uses static analysis to look for bugs in Java code.&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;/div&gt;
&lt;!-- EDIT69 SECTION &quot;Automated Code Quality Tools&quot; [3218-3730] --&gt;
&lt;h3 class=&quot;sectionedit70&quot;&gt;&lt;a name=&quot;automated_documentation&quot; id=&quot;automated_documentation&quot;&gt;Automated Documentation&lt;/a&gt;&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.umlgraph.org/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.umlgraph.org/&quot;  rel=&quot;nofollow&quot;&gt;UMLGraph&lt;/a&gt; - UMLGraph allows the declarative specification and drawing of UML class and sequence diagrams.  The UMLGraphDoc doclet automatically adds UML diagrams to JavaDoc documentation.&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;https://docweb.dev.java.net/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;https://docweb.dev.java.net/&quot;  rel=&quot;nofollow&quot;&gt;DocWeb&lt;/a&gt; - DocWeb is a set of servlets that are essentially equivalent to the JavaDoc tool that is distributed with the &lt;acronym title=&quot;Java Development Kit&quot;&gt;JDK&lt;/acronym&gt;. The key difference is that it is designed to be internationalized cooperatively by the community.&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;/div&gt;
&lt;!-- EDIT70 SECTION &quot;Automated Documentation&quot; [3731-4855] --&gt;
&lt;h3 class=&quot;sectionedit71&quot;&gt;&lt;a name=&quot;debug_tools&quot; id=&quot;debug_tools&quot;&gt;Debug Tools&lt;/a&gt;&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://linuxcommand.org/man_pages/mpstat1.html&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://linuxcommand.org/man_pages/mpstat1.html&quot;  rel=&quot;nofollow&quot;&gt;mpstat&lt;/a&gt; - Report processors related statistics.&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://linuxcommand.org/man_pages/vmstat8.html&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://linuxcommand.org/man_pages/vmstat8.html&quot;  rel=&quot;nofollow&quot;&gt;vmstat&lt;/a&gt; - Report virtual memory statistics.&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://linuxcommand.org/man_pages/iostat1.html&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://linuxcommand.org/man_pages/iostat1.html&quot;  rel=&quot;nofollow&quot;&gt;iostat&lt;/a&gt; - Report CPU statistics and input/output statistics for devices and partitions.&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://freshmeat.net/projects/charles/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://freshmeat.net/projects/charles/&quot;  rel=&quot;nofollow&quot;&gt;Charles&lt;/a&gt; - Charles is a Web debugging tool, &lt;acronym title=&quot;Hyper Text Transfer Protocol&quot;&gt;HTTP&lt;/acronym&gt; monitor, and reverse &lt;acronym title=&quot;Hyper Text Transfer Protocol&quot;&gt;HTTP&lt;/acronym&gt; proxy for Web developers that includes plain text debugging of HTTPS/&lt;acronym title=&quot;Secure Sockets Layer&quot;&gt;SSL&lt;/acronym&gt;. It is built in Java Swing, and runs on all Java platforms. It is an &lt;acronym title=&quot;Hyper Text Transfer Protocol&quot;&gt;HTTP&lt;/acronym&gt; proxy server that displays requests and responses, complete with &lt;acronym title=&quot;Hyper Text Transfer Protocol&quot;&gt;HTTP&lt;/acronym&gt; headers. This enables the developer to examine the exact content of &lt;acronym title=&quot;Hyper Text Transfer Protocol&quot;&gt;HTTP&lt;/acronym&gt; exchanges, including cookies, caching, and redirects. It can also throttle your connection in order to simulate modem conditions. It is a valuable tool for all Web developers and is especially useful for debugging &lt;acronym title=&quot;Extensible Markup Language&quot;&gt;XML&lt;/acronym&gt; RCP, &lt;acronym title=&quot;Simple Object Access Protocol&quot;&gt;SOAP&lt;/acronym&gt;, Web services, &lt;acronym title=&quot;Asynchronous JavaScript and XML&quot;&gt;AJAX&lt;/acronym&gt;/XMLHTTP, and Macromedia Flash client-server traffic including AMF, AMF 3, LoadVars, and &lt;acronym title=&quot;Extensible Markup Language&quot;&gt;XML&lt;/acronym&gt; Sockets.&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;/div&gt;
&lt;!-- EDIT71 SECTION &quot;Debug Tools&quot; [4856-5277] --&gt;
&lt;h3 class=&quot;sectionedit72&quot;&gt;&lt;a name=&quot;security_tools&quot; id=&quot;security_tools&quot;&gt;Security Tools&lt;/a&gt;&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.cirt.net/nikto2&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.cirt.net/nikto2&quot;  rel=&quot;nofollow&quot;&gt; Nikto&lt;/a&gt; - Nikto is an Open Source (&lt;acronym title=&quot;GNU General Public License&quot;&gt;GPL&lt;/acronym&gt;) web server scanner which performs comprehensive tests against web servers for multiple items, including over 3500 potentially dangerous files/CGIs, versions on over 900 servers, and version specific problems on over 250 servers. Scan items and plugins are frequently updated and can be automatically updated (if desired).&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;/div&gt;
&lt;!-- EDIT72 SECTION &quot;Security Tools&quot; [5278-5404] --&gt;
&lt;h3 class=&quot;sectionedit73&quot;&gt;&lt;a name=&quot;web_sites&quot; id=&quot;web_sites&quot;&gt;Web Sites&lt;/a&gt;&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://thedailywtf.com/Default.aspx&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://thedailywtf.com/Default.aspx&quot;  rel=&quot;nofollow&quot;&gt;The Daily WTF&lt;/a&gt; - Curious Perversions in Information Technology&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;/div&gt;
&lt;!-- EDIT73 SECTION &quot;Web Sites&quot; [5405-11119] --&gt;
&lt;h3 class=&quot;sectionedit74&quot;&gt;&lt;a name=&quot;dynamic_scripting_languages&quot; id=&quot;dynamic_scripting_languages&quot;&gt;Dynamic Scripting Languages&lt;/a&gt;&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://groovy.codehaus.org/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://groovy.codehaus.org/&quot;  rel=&quot;nofollow&quot;&gt;Groovy&lt;/a&gt; - Groovy is like a super version of Java. It can leverage Java&amp;#039;s enterprise capabilities but also has cool productivity features like closures, builders and dynamic typing.&lt;/div&gt;
&lt;ul&gt;
&lt;li class=&quot;level2&quot;&gt;&lt;div class=&quot;li&quot;&gt; is an agile and dynamic language for the Java Virtual Machine&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level2&quot;&gt;&lt;div class=&quot;li&quot;&gt; builds upon the strengths of Java but has additional power features inspired by languages like Python, Ruby and Smalltalk&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level2&quot;&gt;&lt;div class=&quot;li&quot;&gt; makes modern programming features available to Java developers with almost-zero learning curve&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level2&quot;&gt;&lt;div class=&quot;li&quot;&gt; supports Domain-Specific Languages and other compact syntax so your code becomes easy to read and maintain&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level2&quot;&gt;&lt;div class=&quot;li&quot;&gt; makes writing shell and build scripts easy with its powerful processing primitives, OO abilities and an Ant DSL&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level2&quot;&gt;&lt;div class=&quot;li&quot;&gt; increases developer productivity by reducing scaffolding code when developing web, &lt;acronym title=&quot;Graphical User Interface&quot;&gt;GUI&lt;/acronym&gt;, database or console applications&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level2&quot;&gt;&lt;div class=&quot;li&quot;&gt; simplifies testing by supporting unit testing and mocking out-of-the-box&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level2&quot;&gt;&lt;div class=&quot;li&quot;&gt; seamlessly integrates with all existing Java objects and libraries&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level2&quot;&gt;&lt;div class=&quot;li&quot;&gt; compiles straight to Java bytecode so you can use it anywhere you can use Java&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level2&quot;&gt;&lt;div class=&quot;li&quot;&gt; Also see: &lt;a href=&quot;http://grails.codehaus.org/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://grails.codehaus.org/&quot;  rel=&quot;nofollow&quot;&gt;Grails&lt;/a&gt; - Grails aims to bring the “coding by convention” paradigm to Groovy. It&amp;#039;s an open-source web application framework that leverages the Groovy language and complements Java Web development. You can use Grails as a standalone development environment that hides all configuration details or integrate your Java business logic.&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://jruby.codehaus.org/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://jruby.codehaus.org/&quot;  rel=&quot;nofollow&quot;&gt;JRuby&lt;/a&gt; - JRuby is an 100% pure-Java implementation of the Ruby programming language.&lt;/div&gt;
&lt;ul&gt;
&lt;li class=&quot;level2&quot;&gt;&lt;div class=&quot;li&quot;&gt; A 1.8.6 compatible Ruby interpreter written in 100% pure Java&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level2&quot;&gt;&lt;div class=&quot;li&quot;&gt; Most builtin Ruby classes provided&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level2&quot;&gt;&lt;div class=&quot;li&quot;&gt; Support for interacting with and defining java classes from within ruby&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level2&quot;&gt;&lt;div class=&quot;li&quot;&gt; Bean Scripting Framework (BSF) support&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level2&quot;&gt;&lt;div class=&quot;li&quot;&gt; Distributed under a tri-license (CPL/&lt;acronym title=&quot;GNU General Public License&quot;&gt;GPL&lt;/acronym&gt;/&lt;acronym title=&quot;GNU Lesser General Public License&quot;&gt;LGPL&lt;/acronym&gt;)&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.jython.org/Project/index.html&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.jython.org/Project/index.html&quot;  rel=&quot;nofollow&quot;&gt;Jython&lt;/a&gt; - Jython is an implementation of the high-level, dynamic, object-oriented language Python seamlessly integrated with the Java platform. The predecessor to Jython, JPython, is certified as 100% Pure Java. Jython is freely available for both commercial and non-commercial use and is distributed with source code. Jython is complementary to Java and is especially suited for the following tasks:&lt;/div&gt;
&lt;ul&gt;
&lt;li class=&quot;level2&quot;&gt;&lt;div class=&quot;li&quot;&gt; Embedded scripting - Java programmers can add the Jython libraries to their system to allow end users to write simple or complicated scripts that add functionality to the application.&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level2&quot;&gt;&lt;div class=&quot;li&quot;&gt; Interactive experimentation - Jython provides an interactive interpreter that can be used to interact with Java packages or with running Java applications. This allows programmers to experiment and debug any Java system using Jython.&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level2&quot;&gt;&lt;div class=&quot;li&quot;&gt; Rapid application development - Python programs are typically 2-10X shorter than the equivalent Java program. This translates directly to increased programmer productivity. The seamless interaction between Python and Java allows developers to freely mix the two languages both during development and in shipping products.&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level2&quot;&gt;&lt;div class=&quot;li&quot;&gt; Dynamic compilation to Java bytecodes - leads to highest possible performance without sacrificing interactivity.&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level2&quot;&gt;&lt;div class=&quot;li&quot;&gt; Ability to extend existing Java classes in Jython - allows effective use of abstract classes.&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level2&quot;&gt;&lt;div class=&quot;li&quot;&gt; Optional static compilation - allows creation of applets, servlets, beans, …&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level2&quot;&gt;&lt;div class=&quot;li&quot;&gt; Bean Properties - make use of Java packages much easier.&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level2&quot;&gt;&lt;div class=&quot;li&quot;&gt; Python Language - combines remarkable power with very clear syntax. It also supports a full object-oriented programming model which makes it a natural fit for Java&amp;#039;s OO design.&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.scala-lang.org/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.scala-lang.org/&quot;  rel=&quot;nofollow&quot;&gt;Scala&lt;/a&gt; - Scala is a general purpose programming language designed to express common programming patterns in a concise, elegant, and type-safe way. It smoothly integrates features of object-oriented and functional languages. It is also fully interoperable with Java.&lt;/div&gt;
&lt;ul&gt;
&lt;li class=&quot;level2&quot;&gt;&lt;div class=&quot;li&quot;&gt; Scala is a pure object-oriented language in the sense that every value is an object. Types and behavior of objects are described by classes and traits. Class abstractions are extended by subclassing  and a flexible mixin-based composition mechanism as a clean replacement for multiple inheritance.&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level2&quot;&gt;&lt;div class=&quot;li&quot;&gt; Scala is also a functional language in the sense that every function is a value. Scala provides a lightweight syntax for defining anonymous functions, it supports higher-order functions, it allows functions to be nested, and supports currying. Scala&amp;#039;s case classes and its built-in support for pattern matching model algebraic types used in many functional programming languages.&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level2&quot;&gt;&lt;div class=&quot;li&quot;&gt; Furthermore, Scala&amp;#039;s notion of pattern matching naturally extends to the processing of &lt;acronym title=&quot;Extensible Markup Language&quot;&gt;XML&lt;/acronym&gt; data with the help of right-ignoring sequence patterns. In this context, sequence comprehensions are useful for formulating queries. These features make Scala ideal for developing applications like web services (external link).&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level2&quot;&gt;&lt;div class=&quot;li&quot;&gt; Scala is equipped with an expressive type system that enforces statically that abstractions are used in a safe and coherent manner.&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level2&quot;&gt;&lt;div class=&quot;li&quot;&gt; Scala provides a unique combination of language mechanisms that make it easy to smoothly add new language constructs in form of libraries.&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level2&quot;&gt;&lt;div class=&quot;li&quot;&gt; Scala is designed to interoperate well with popular programming environments like the Java 2 Runtime Environment (JRE) and the .NET Framework (CLR). In particular, the interaction with mainstream object-oriented languages like Java and C# is as smooth as possible. Scala has the same compilation model (separate compilation, dynamic class loading) like Java and C# and allows access to thousands of high-quality libraries. &lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;/div&gt;
&lt;!-- EDIT74 SECTION &quot;Dynamic Scripting Languages&quot; [11120-12901] --&gt;
&lt;h3 class=&quot;sectionedit75&quot;&gt;&lt;a name=&quot;ajax_javascript_libraries&quot; id=&quot;ajax_javascript_libraries&quot;&gt;Ajax JavaScript Libraries&lt;/a&gt;&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://ui.jquery.com/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://ui.jquery.com/&quot;  rel=&quot;nofollow&quot;&gt;jQuery User Interface&lt;/a&gt; - jQuery UI is a set of themable widgets and interactions, built on top of the jQuery JavaScript Library, that you can use to build highly interactive web applications.&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://extjs.com/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://extjs.com/&quot;  rel=&quot;nofollow&quot;&gt;ExtJS&lt;/a&gt; - Ext &lt;acronym title=&quot;JavaScript&quot;&gt;JS&lt;/acronym&gt; is a cross-browser JavaScript library for building rich internet applications.&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://dojotoolkit.org/projects/dijit&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://dojotoolkit.org/projects/dijit&quot;  rel=&quot;nofollow&quot;&gt;dijit&lt;/a&gt; - Skinnable, template-driven widgets with accessibility and localization built right in—the way you want it. From accordions to tabs, we have you covered.&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://script.aculo.us/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://script.aculo.us/&quot;  rel=&quot;nofollow&quot;&gt;script.aculo.us&lt;/a&gt; - script.aculo.us provides you with easy-to-use, cross-browser user interface JavaScript libraries to make your web sites and web applications fly.&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://gears.google.com/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://gears.google.com/&quot;  rel=&quot;nofollow&quot;&gt;Google Gears&lt;/a&gt; - Google Gears is an open source project that enables more powerful web applications, by adding new features to your web browser, such as worker pools to mimic threading in JavaScript.&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://labs.mozilla.com/2007/10/prism/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://labs.mozilla.com/2007/10/prism/&quot;  rel=&quot;nofollow&quot;&gt;Mozilla Prism&lt;/a&gt; - Prism is an application that lets users split web applications out of their browser and run them directly on their desktop.&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.adobe.com/products/air/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.adobe.com/products/air/&quot;  rel=&quot;nofollow&quot;&gt;Adobe Air&lt;/a&gt; - The Adobe AIR runtime lets developers use proven web technologies to build rich Internet applications that deploy to the desktop and run across operating systems.&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.aptana.com/jaxer&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.aptana.com/jaxer&quot;  rel=&quot;nofollow&quot;&gt;Aptana Jaxer&lt;/a&gt; - Jaxer is the world&amp;#039;s first true Ajax server. &lt;acronym title=&quot;HyperText Markup Language&quot;&gt;HTML&lt;/acronym&gt;, JavaScript, and &lt;acronym title=&quot;Cascading Style Sheets&quot;&gt;CSS&lt;/acronym&gt; are native to Jaxer, as are XMLHttpRequests, JSON, &lt;acronym title=&quot;Document Object Model&quot;&gt;DOM&lt;/acronym&gt; scripting, etc. And as a server it offers access to databases, files, and networking, as well as logging, process management, scalability, security, integration APIs, and extensibility.&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;/div&gt;
&lt;!-- EDIT75 SECTION &quot;Ajax JavaScript Libraries&quot; [12902-13576] --&gt;
&lt;h3 class=&quot;sectionedit76&quot;&gt;&lt;a name=&quot;the_buzz&quot; id=&quot;the_buzz&quot;&gt;The Buzz&lt;/a&gt;&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;https://glassfish.dev.java.net/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;https://glassfish.dev.java.net/&quot;  rel=&quot;nofollow&quot;&gt;Glassfish&lt;/a&gt; - GlassFish is a free, open source application server which implements the newest features in the Java EE 5 platform. The Java EE 5 platform includes the latest versions of technologies such as such as JavaServer Pages(JSP) 2.1, JavaServer Faces(JSF) 1.2, Servlet 2.5, Enterprise JavaBeans 3.0, Java &lt;acronym title=&quot;Application Programming Interface&quot;&gt;API&lt;/acronym&gt; for Web Services(JAX-WS) 2.0, Java Architecture for &lt;acronym title=&quot;Extensible Markup Language&quot;&gt;XML&lt;/acronym&gt; Binding(JAXB) 2.0, Web Services Metadata for the Java Platform 1.0, and many other new  technologies. &lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.sun.com/software/javafx/index.jsp&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.sun.com/software/javafx/index.jsp&quot;  rel=&quot;nofollow&quot;&gt;JavaFx&lt;/a&gt; - JavaFX is a powerful client technology for creating rich Internet applications.&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;/div&gt;
&lt;!-- EDIT76 SECTION &quot;The Buzz&quot; [13577-14638] --&gt;
&lt;h3 class=&quot;sectionedit77&quot;&gt;&lt;a name=&quot;cloud_computing&quot; id=&quot;cloud_computing&quot;&gt;Cloud Computing&lt;/a&gt;&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.amazon.com/gp/browse.html?node=201590011&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.amazon.com/gp/browse.html?node=201590011&quot;  rel=&quot;nofollow&quot;&gt;Amazon EC2&lt;/a&gt; - Amazon EC2 presents a true virtual computing environment, allowing you to use web service interfaces to requisition machines for use, load them with your custom application environment, manage your network&amp;#039;s access permissions, and run your image using as many or few systems as you desire.&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://code.google.com/appengine/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://code.google.com/appengine/&quot;  rel=&quot;nofollow&quot;&gt;Google App Engine&lt;/a&gt; - Google App Engine enables you to build web applications on the same scalable systems that power Google applications.&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.aptana.com/cloud&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.aptana.com/cloud&quot;  rel=&quot;nofollow&quot;&gt;Aptana Cloud&lt;/a&gt; - Aptana Cloud is a scalable Elastic Application Cloud featuring the most popular and widely adopted Web infrastructure, ready to use and ready to scale as you need it. Aptana Cloud also plugs right into your IDE to provide instant deployment, smart synchronization, and seamless migration as you scale. Aptana Cloud is ideal for developers who use scripting languages to create Ajax, Facebook, mySpace and all other sorts of Web applications.&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;/div&gt;
&lt;!-- EDIT77 SECTION &quot;Cloud Computing&quot; [14639-] --&gt;</description>
            <pubDate>Tue, 23 Sep 2008 18:39:28 -0400</pubDate>
        </item>
        <item>
            <title>Linux Notes</title>
            <link>http://www.kirkdorffer.com/wiki/linux_notes</link>
            <description>
&lt;h0 class=&quot;sectionedit78&quot;&gt;&lt;a name=&quot;linux_notes&quot; id=&quot;linux_notes&quot;&gt;Linux Notes&lt;/a&gt;&lt;/h0&gt;
&lt;div class=&quot;level0&quot;&gt;

&lt;/div&gt;
&lt;!-- EDIT78 SECTION &quot;Linux Notes&quot; [1-27] --&gt;
&lt;h1 class=&quot;sectionedit79&quot;&gt;&lt;a name=&quot;linux_notes1&quot; id=&quot;linux_notes1&quot;&gt;Linux Notes&lt;/a&gt;&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;/div&gt;
&lt;!-- EDIT79 SECTION &quot;Linux Notes&quot; [28-716] --&gt;
&lt;h2 class=&quot;sectionedit80&quot;&gt;&lt;a name=&quot;general_documentation&quot; id=&quot;general_documentation&quot;&gt;General Documentation&lt;/a&gt;&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.linux.org/docs/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.linux.org/docs/&quot;  rel=&quot;nofollow&quot;&gt;Linux Online Documentation&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://tldp.org/LDP/abs/html/dosbatch.html&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://tldp.org/LDP/abs/html/dosbatch.html&quot;  rel=&quot;nofollow&quot;&gt;Converting DOS Batch Files to Shell Scripts&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://chrysaor.info/?page=images&amp;amp;filter=Ubuntu&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://chrysaor.info/?page=images&amp;amp;filter=Ubuntu&quot;  rel=&quot;nofollow&quot;&gt;Ubuntu VMware images&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://downloads.vmware.com/d/info/desktop_downloads/vmware_player/3_0&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://downloads.vmware.com/d/info/desktop_downloads/vmware_player/3_0&quot;  rel=&quot;nofollow&quot;&gt;VMware Player&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;
&lt;strong&gt;Unix&lt;/strong&gt;
&lt;/p&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://cb.vu/unixtoolbox.xhtml&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://cb.vu/unixtoolbox.xhtml&quot;  rel=&quot;nofollow&quot;&gt;Unix Toolbox&lt;/a&gt; - A collection of useful Unix/Linux/BSD commands and tasks&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.tablespace.net/quicksheet/solaris-quicksheet.pdf&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.tablespace.net/quicksheet/solaris-quicksheet.pdf&quot;  rel=&quot;nofollow&quot;&gt;Solaris QuickSheet&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.sunfreeware.com/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.sunfreeware.com/&quot;  rel=&quot;nofollow&quot;&gt;Sunfreeware - Free and Open Source Software (FOSS) for Sun Microsystem&amp;#039;s Solaris&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;/div&gt;
&lt;!-- EDIT80 SECTION &quot;General Documentation&quot; [717-2582] --&gt;
&lt;h2 class=&quot;sectionedit81&quot;&gt;&lt;a name=&quot;samba&quot; id=&quot;samba&quot;&gt;Samba&lt;/a&gt;&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
Samba can be installed by running:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt; apt-get install samba&lt;/pre&gt;

&lt;p&gt;
Samba allows you to share a directory on your Linux filesystem with your Windows machine. In the &lt;code&gt;/etc/samba&lt;/code&gt; directory, there is an &lt;code&gt;smb.conf.user&lt;/code&gt; file that is used for any Samba extensions that you&amp;#039;d like to make to share additional directories. By default, you should have your home directory set up as a samba share in &lt;code&gt;smb.conf&lt;/code&gt;. It&amp;#039;s in there as the &lt;code&gt;[homes]&lt;/code&gt; clause, but the actual share name is the same as your username (ex. &lt;code&gt;\\mylinuxservername\dkirkdorffer&lt;/code&gt;). If you are connecting for the first time, you will have to set the samba password using following command:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt; sudo smbpasswd -a dkirkdorffer&lt;/pre&gt;

&lt;p&gt;
You will be prompted to enter a new password; this will be the password to use when connecting to your Linux box from your Windows box.
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt; [dkirkdorffer]
    path = /home/dkirkdorffer
    read only = no
    valid users = dkirkdorffer
    create mask = 0644
    browsable = no&lt;/pre&gt;

&lt;p&gt;
If you want to have access to the root of your linux drive, you can edit the &lt;code&gt;/etc/samba/smb.conf.user&lt;/code&gt; file and add this snippet (modify the username to your username):
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt; [root]
    path = /
    read only = no
    valid users = dkirkdorffer
    create mask = 0644
    browsable = no&lt;/pre&gt;

&lt;p&gt;
This will enable you to access the root of your linux drive using the alias “root” (ex: &lt;code&gt;\\mylinuxservername\root&lt;/code&gt;) 
&lt;/p&gt;

&lt;p&gt;
Start (or stop and restart) the &lt;code&gt;smbd&lt;/code&gt; daemon (at &lt;code&gt;/usr/sbin&lt;/code&gt; or possibly at &lt;code&gt;/etc/init.d&lt;/code&gt;) like so:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt; /usr/sbin/smbd start
 
 /usr/sbin/smbd stop
 
 /usr/sbin/smbd restart&lt;/pre&gt;

&lt;p&gt;
For troubleshooting info read the ”&lt;a href=&quot;http://www.samba.org/samba/docs/man/Samba-HOWTO-Collection/diagnosis.html&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.samba.org/samba/docs/man/Samba-HOWTO-Collection/diagnosis.html&quot;  rel=&quot;nofollow&quot;&gt;The Samba Checklist&lt;/a&gt;”.
&lt;/p&gt;

&lt;p&gt;
To determine the IP address of the Samba server run:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;nmblookup -B BIGSERVER __SAMBA__&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT81 SECTION &quot;Samba&quot; [2583-3098] --&gt;
&lt;h3 class=&quot;sectionedit82&quot;&gt;&lt;a name=&quot;unix&quot; id=&quot;unix&quot;&gt;UNIX&lt;/a&gt;&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
Additional UNIX resources of use:
&lt;/p&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;https://blogs.oracle.com/timthomas/entry/enabling_and_configuring_samba_as&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;https://blogs.oracle.com/timthomas/entry/enabling_and_configuring_samba_as&quot;  rel=&quot;nofollow&quot;&gt;Enabling and configuring SAMBA as shipped with Solaris 10&lt;/a&gt; or &lt;a href=&quot;http://blogs.oracle.com/timthomas/entry/samba_and_swat_in_solaris&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://blogs.oracle.com/timthomas/entry/samba_and_swat_in_solaris&quot;  rel=&quot;nofollow&quot;&gt;SAMBA and SWAT in Solaris 10 Update 4 (Solaris 10 8/07)&lt;/a&gt;.&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;
Start and stop alternatives:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt; /usr/sfw/sbin/smbd start
 
 /usr/sfw/sbin/smbd stop
 
 /usr/sfw/sbin/smbd restart
 &lt;/pre&gt;

&lt;p&gt;
or
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt; svcadm enable samba wins
 
 svcadm disable samba wins&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT82 SECTION &quot;UNIX&quot; [3099-3733] --&gt;
&lt;h2 class=&quot;sectionedit83&quot;&gt;&lt;a name=&quot;ssh&quot; id=&quot;ssh&quot;&gt;SSH&lt;/a&gt;&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.andremolnar.com/how_to_set_up_ssh_keys_with_putty_and_not_get_server_refused_our_key&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.andremolnar.com/how_to_set_up_ssh_keys_with_putty_and_not_get_server_refused_our_key&quot;  rel=&quot;nofollow&quot;&gt;How to set up SSH keys&lt;/a&gt; - i.e. generate the keys on the server (UNIX, Linux, BSD etc.) instead of the client (i.e. in Windows).&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; Special instructions for &lt;a href=&quot;http://cervisia.kde.org/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://cervisia.kde.org/&quot;  rel=&quot;nofollow&quot;&gt;Cervisia&lt;/a&gt; - Before doing a check-out for the first time, make sure that the key for the &lt;acronym title=&quot;Concurrent Versions System&quot;&gt;CVS&lt;/acronym&gt; server is in your &lt;code&gt;.ssh/known_hosts&lt;/code&gt; file. One way to do this is: &lt;code&gt;&amp;#039;ssh &amp;lt;user&amp;gt;@&amp;lt;cvs_hostname&amp;gt;&lt;/code&gt;&amp;#039;. Failing to do this will make Cervisia ask for a password and then terminate the checkout with the error “Host key verification failed”.&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;/div&gt;
&lt;!-- EDIT83 SECTION &quot;SSH&quot; [3734-5084] --&gt;
&lt;h2 class=&quot;sectionedit84&quot;&gt;&lt;a name=&quot;vnc&quot; id=&quot;vnc&quot;&gt;VNC&lt;/a&gt;&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
You can start the VNC Server by running &lt;code&gt;./startvnc.sh&lt;/code&gt; or &lt;code&gt;./startvnc4.sh&lt;/code&gt;. VNC Viewer can then be installed on your Windows system, allowing you full access to your Linux system from Windows (or another Linux system). You can override the default geometry of the VNC window created by the server by altering the shell script like this: 
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt; #!/bin/sh
 vncserver -geometry 1580x1100 -depth 24
 nohup vncconfig -nowin &amp;gt; /dev/null 2&amp;gt;&amp;amp;1 &amp;amp;&lt;/pre&gt;

&lt;p&gt;
or
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt; #!/bin/sh
 /usr/bin/vnc4server -geometry 1220x830 -depth 24
 nohup /usr/bin/vnc4config -nowin &amp;gt; /dev/null 2&amp;gt;&amp;amp;1 &amp;amp;&lt;/pre&gt;

&lt;p&gt;
An &lt;code&gt;.vnc/xstartup&lt;/code&gt; file is also used and if using &lt;a href=&quot;http://www.kde.org/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.kde.org/&quot;  rel=&quot;nofollow&quot;&gt;KDE&lt;/a&gt; can be setup as so
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt; #!/bin/sh
 vncconfig -nowin &amp;amp;
 startkde &amp;amp;&lt;/pre&gt;

&lt;p&gt;
Set the password by running &lt;code&gt;vncpasswd&lt;/code&gt;, &lt;code&gt;vnc4passwd&lt;/code&gt; or  &lt;code&gt;tightvncpasswd&lt;/code&gt;, depending on your version of VNC.
&lt;/p&gt;

&lt;p&gt;
The default starting port for VNC is 5901 (or 5801 through a web browser), additional instances of VNC will increment this number by 1 (so 5902 for the second one). You can find what port it&amp;#039;s currently running on by running: 
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt; ps -ef | grep vnc&lt;/pre&gt;

&lt;p&gt;
and looking for the ”&lt;code&gt;rfbport&lt;/code&gt;” parameter. Alternatively, look in the &lt;code&gt;~/.vnc&lt;/code&gt; directory at the log file. 
&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;http://www.tightvnc.com/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.tightvnc.com/&quot;  rel=&quot;nofollow&quot;&gt;TightVNC&lt;/a&gt; and &lt;a href=&quot;http://www.realvnc.com/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.realvnc.com/&quot;  rel=&quot;nofollow&quot;&gt;RealVNC&lt;/a&gt; are both provide good client viewers, and VNC servers.
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT84 SECTION &quot;VNC&quot; [5085-5789] --&gt;
&lt;h3 class=&quot;sectionedit85&quot;&gt;&lt;a name=&quot;unix1&quot; id=&quot;unix1&quot;&gt;UNIX&lt;/a&gt;&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
See: &lt;a href=&quot;http://www.softpanorama.org/Xwindows/VNC/vnc_on_solaris.shtml#The_vncserver_modification&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.softpanorama.org/Xwindows/VNC/vnc_on_solaris.shtml#The_vncserver_modification&quot;  rel=&quot;nofollow&quot;&gt;VNC on Solaris&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
On Solaris, the &lt;code&gt;./startvnc.sh&lt;/code&gt; might look like this:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt; #!/bin/ksh
 PATH=$PATH:/usr/dt/bin:/usr/openwin/bin:/usr/X11/bin
 cd ~
 vncserver -depth 24 -geometry 1500x768 :1&lt;/pre&gt;

&lt;p&gt;
&lt;code&gt;./killvnc.sh&lt;/code&gt; might look like this:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt; #!/bin/ksh
 PATH=$PATH:/usr/dt/bin:/usr/openwin/bin:/usr/X11/bin
 cd ~
 vncserver -kill :1&lt;/pre&gt;

&lt;p&gt;
and the &lt;code&gt;.vnc/xstartup&lt;/code&gt; file might look like this:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt; #!/bin/sh
 [ -r $HOME/.Xresources ] &amp;amp;&amp;amp; xrdb $HOME/.Xresources
 xsetroot -solid grey
 vncconfig -iconic &amp;amp;
 xterm -geometry 80x24+10+10 -ls -title &amp;quot;$VNCDESKTOP Desktop&amp;quot; &amp;amp;
 gnome-session &amp;amp;&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT85 SECTION &quot;UNIX&quot; [5790-] --&gt;</description>
            <pubDate>Sat, 14 Mar 2020 17:29:13 -0400</pubDate>
        </item>
        <item>
            <title>Maven Notes</title>
            <link>http://www.kirkdorffer.com/wiki/maven_notes</link>
            <description>
&lt;h0 class=&quot;sectionedit86&quot;&gt;&lt;a name=&quot;maven_notes&quot; id=&quot;maven_notes&quot;&gt;Maven Notes&lt;/a&gt;&lt;/h0&gt;
&lt;div class=&quot;level0&quot;&gt;

&lt;/div&gt;
&lt;!-- EDIT86 SECTION &quot;Maven Notes&quot; [1-27] --&gt;
&lt;h1 class=&quot;sectionedit87&quot;&gt;&lt;a name=&quot;maven_notes1&quot; id=&quot;maven_notes1&quot;&gt;Maven Notes&lt;/a&gt;&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;/div&gt;
&lt;!-- EDIT87 SECTION &quot;Maven Notes&quot; [28-309] --&gt;
&lt;h2 class=&quot;sectionedit88&quot;&gt;&lt;a name=&quot;general&quot; id=&quot;general&quot;&gt;General&lt;/a&gt;&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://cvs.peopleware.be/training/maven/maven2/index.html&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://cvs.peopleware.be/training/maven/maven2/index.html&quot;  rel=&quot;nofollow&quot;&gt;Working with maven  2&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://maven.apache.org/articles.html&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://maven.apache.org/articles.html&quot;  rel=&quot;nofollow&quot;&gt;Articles on Maven&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://cvs.peopleware.be/training/maven/maven2/standardDirLayout.html&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://cvs.peopleware.be/training/maven/maven2/standardDirLayout.html&quot;  rel=&quot;nofollow&quot;&gt;The Standard Directory Layout&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;/div&gt;
&lt;!-- EDIT88 SECTION &quot;General&quot; [310-630] --&gt;
&lt;h2 class=&quot;sectionedit89&quot;&gt;&lt;a name=&quot;searchable_public_repositories&quot; id=&quot;searchable_public_repositories&quot;&gt;Searchable Public Repositories&lt;/a&gt;&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://repo1.maven.org/maven2/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://repo1.maven.org/maven2/&quot;  rel=&quot;nofollow&quot;&gt;http://repo1.maven.org/maven2/&lt;/a&gt; - Default Maven Repository&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://repository.apache.org&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://repository.apache.org&quot;  rel=&quot;nofollow&quot;&gt;http://repository.apache.org&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.artifact-repository.org&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.artifact-repository.org&quot;  rel=&quot;nofollow&quot;&gt;http://www.artifact-repository.org&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://mvnrepository.com&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://mvnrepository.com&quot;  rel=&quot;nofollow&quot;&gt;http://mvnrepository.com&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.mvnbrowser.com&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.mvnbrowser.com&quot;  rel=&quot;nofollow&quot;&gt;http://www.mvnbrowser.com&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.jarvana.com&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.jarvana.com&quot;  rel=&quot;nofollow&quot;&gt;http://www.jarvana.com&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://mavensearch.net&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://mavensearch.net&quot;  rel=&quot;nofollow&quot;&gt;http://mavensearch.net&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;/div&gt;
&lt;!-- EDIT89 SECTION &quot;Searchable Public Repositories&quot; [631-913] --&gt;
&lt;h2 class=&quot;sectionedit90&quot;&gt;&lt;a name=&quot;pomxml&quot; id=&quot;pomxml&quot;&gt;pom.xml&lt;/a&gt;&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://maven.apache.org/guides/introduction/introduction-to-the-pom.html&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://maven.apache.org/guides/introduction/introduction-to-the-pom.html&quot;  rel=&quot;nofollow&quot;&gt;Introduction to the POM&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://maven.apache.org/ref/2.2.1/maven-model/maven.html&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://maven.apache.org/ref/2.2.1/maven-model/maven.html&quot;  rel=&quot;nofollow&quot;&gt;Project Descriptor Reference&lt;/a&gt; - A reference for the Maven project descriptor used in Maven&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;/div&gt;
&lt;!-- EDIT90 SECTION &quot;pom.xml&quot; [914-1983] --&gt;
&lt;h2 class=&quot;sectionedit91&quot;&gt;&lt;a name=&quot;build_phases&quot; id=&quot;build_phases&quot;&gt;Build Phases&lt;/a&gt;&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
Build lifecycles are defined by a different list of build phases, wherein a build phase represents a stage in the lifecycle.  The default lifecycle has the following build phases:
&lt;/p&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; validate - validate the project is correct and all necessary information is available&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; compile - compile the source code of the project&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; test - test the compiled source code using a suitable unit testing framework. These tests should not require the code be packaged or deployed&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; package - take the compiled code and package it in its distributable format, such as a JAR.&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; integration-test - process and deploy the package if necessary into an environment where integration tests can be run&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; verify - run any checks to verify the package is valid and meets quality criteria&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; install - install the package into the local repository, for use as a dependency in other projects locally&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; deploy - done in an integration or release environment, copies the final package to the remote repository for sharing with other developers and projects.&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;/div&gt;
&lt;!-- EDIT91 SECTION &quot;Build Phases&quot; [1984-2357] --&gt;
&lt;h2 class=&quot;sectionedit92&quot;&gt;&lt;a name=&quot;common_commands&quot; id=&quot;common_commands&quot;&gt;Common Commands&lt;/a&gt;&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; mvn archetype:create&lt;br/&gt;
-DarchetypeGroupId=org.apache.maven.archetypes&lt;br/&gt;
-DarchetypeArtifactId=maven-archetype-webapp&lt;br/&gt;
-DgroupId=com.mycompany.app&lt;br/&gt;
-DartifactId=my-webapp&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; mvn compile&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; mvn test           &lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; mvn test-compile&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; mvn package&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; mvn install&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; mvn site&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; mvn clean&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; mvn eclipse:eclipse&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; mvn process-resources&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;/div&gt;
&lt;!-- EDIT92 SECTION &quot;Common Commands&quot; [2358-] --&gt;</description>
            <pubDate>Thu, 21 Oct 2021 03:31:32 -0400</pubDate>
        </item>
        <item>
            <title>No Fluff Just Stuff - September 2008 Notes</title>
            <link>http://www.kirkdorffer.com/wiki/no_fluff_just_stuff_-_fall_2008</link>
            <description>
&lt;h0 class=&quot;sectionedit93&quot;&gt;&lt;a name=&quot;no_fluff_just_stuff_-_september_2008_notes&quot; id=&quot;no_fluff_just_stuff_-_september_2008_notes&quot;&gt;No Fluff Just Stuff - September 2008 Notes&lt;/a&gt;&lt;/h0&gt;
&lt;div class=&quot;level0&quot;&gt;

&lt;/div&gt;
&lt;!-- EDIT93 SECTION &quot;No Fluff Just Stuff - September 2008 Notes&quot; [1-230] --&gt;
&lt;h1 class=&quot;sectionedit94&quot;&gt;&lt;a name=&quot;no_fluff_just_stuff_-_september_2008_notes1&quot; id=&quot;no_fluff_just_stuff_-_september_2008_notes1&quot;&gt;No Fluff Just Stuff - September 2008 Notes&lt;/a&gt;&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
This builds on top of &lt;a href=&quot;http://www.kirkdorffer.com/wiki/javaone_-_may_2008&quot; class=&quot;wikilink1&quot; title=&quot;javaone_-_may_2008&quot;&gt;JavaOne 2008 Notes&lt;/a&gt; previously attended.
&lt;/p&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.nofluffjuststuff.com/conference/seattle/2008/09/index.html&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.nofluffjuststuff.com/conference/seattle/2008/09/index.html&quot;  rel=&quot;nofollow&quot;&gt;No Fluff Just Stuff site&lt;/a&gt;.&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;/div&gt;
&lt;!-- EDIT94 SECTION &quot;No Fluff Just Stuff - September 2008 Notes&quot; [231-1295] --&gt;
&lt;h2 class=&quot;sectionedit95&quot;&gt;&lt;a name=&quot;suggested_books_reading&quot; id=&quot;suggested_books_reading&quot;&gt;Suggested Books / Reading&lt;/a&gt;&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.topazproject.org/trac/attachment/wiki/MavenInfo/BetterBuildsWithMaven.pdf?format=raw&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.topazproject.org/trac/attachment/wiki/MavenInfo/BetterBuildsWithMaven.pdf?format=raw&quot;  rel=&quot;nofollow&quot;&gt;Better Builds with Maven - A How-To Guide for Maven 2.0&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.sonatype.com/book/pdf/maven-definitive-guide.pdf&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.sonatype.com/book/pdf/maven-definitive-guide.pdf&quot;  rel=&quot;nofollow&quot;&gt;Maven: The Definitive Guide&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://oreilly.com/catalog/9780596510046/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://oreilly.com/catalog/9780596510046/&quot;  rel=&quot;nofollow&quot;&gt;Beautiful Code&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; Stuart Halloway&amp;#039;s multi-part blog series comparing &lt;a href=&quot;http://clojure.org/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://clojure.org/&quot;  rel=&quot;nofollow&quot;&gt;Clojure&lt;/a&gt;, &lt;a href=&quot;http://groovy.codehaus.org/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://groovy.codehaus.org/&quot;  rel=&quot;nofollow&quot;&gt;Groovy&lt;/a&gt;, &lt;a href=&quot;http://jruby.codehaus.org/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://jruby.codehaus.org/&quot;  rel=&quot;nofollow&quot;&gt;JRuby&lt;/a&gt;, and &lt;a href=&quot;http://www.scala-lang.org/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.scala-lang.org/&quot;  rel=&quot;nofollow&quot;&gt;Scala&lt;/a&gt;:&lt;/div&gt;
&lt;ul&gt;
&lt;li class=&quot;level2&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://blog.thinkrelevance.com/2008/8/4/java-next-common-ground&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://blog.thinkrelevance.com/2008/8/4/java-next-common-ground&quot;  rel=&quot;nofollow&quot;&gt;Java.next #1: Common Ground&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level2&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://blog.thinkrelevance.com/2008/8/12/java-next-2-java-interop&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://blog.thinkrelevance.com/2008/8/12/java-next-2-java-interop&quot;  rel=&quot;nofollow&quot;&gt;Java.next #2: Java Interop&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level2&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://blog.thinkrelevance.com/2008/8/26/java-next-3-dispatch-2&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://blog.thinkrelevance.com/2008/8/26/java-next-3-dispatch-2&quot;  rel=&quot;nofollow&quot;&gt;Java.next #3: Dispatch&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level2&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://blog.thinkrelevance.com/2008/9/10/java-next-4-immutability&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://blog.thinkrelevance.com/2008/9/10/java-next-4-immutability&quot;  rel=&quot;nofollow&quot;&gt;Java.next #4: Immutability&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level2&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://blog.thinkrelevance.com/2008/9/24/java-next-overview&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://blog.thinkrelevance.com/2008/9/24/java-next-overview&quot;  rel=&quot;nofollow&quot;&gt;Java.next: Overview&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;/div&gt;
&lt;!-- EDIT95 SECTION &quot;Suggested Books / Reading&quot; [1296-2427] --&gt;
&lt;h2 class=&quot;sectionedit96&quot;&gt;&lt;a name=&quot;languages&quot; id=&quot;languages&quot;&gt;Languages&lt;/a&gt;&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://clojure.org/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://clojure.org/&quot;  rel=&quot;nofollow&quot;&gt;Clojure&lt;/a&gt; - Clojure is a dialect of Lisp that runs on the Java Virtual Machine. It is a general purpose language sporting interactive development, and it encourages a functional programming style that enables simplified multithreaded programming. Clojure honors the code-as-data philosophy and has a sophisticated Macro system with features such as automatic gensyms. &lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.erlang.org/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.erlang.org/&quot;  rel=&quot;nofollow&quot;&gt;Erlang&lt;/a&gt; - Erlang is a programming language which has many features more commonly associated with an operating system than with a programming language: concurrent processes, scheduling, memory management, distribution, networking, etc.&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.fandev.org/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.fandev.org/&quot;  rel=&quot;nofollow&quot;&gt;Fan&lt;/a&gt; - Fan is a general purpose object-oriented programming language that runs on both JRE and .NET CLR. The language is also a functional programming language in the sense that it supports functions as first-class objects. Concurrency is supported by implementing the Actor Model as used by Erlang. Fan uses static typing but has also support for dynamic typing. Fan uses a curly brace syntax similar to C# and Java.&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;/div&gt;
&lt;!-- EDIT96 SECTION &quot;Languages&quot; [2428-2713] --&gt;
&lt;h2 class=&quot;sectionedit97&quot;&gt;&lt;a name=&quot;groovy&quot; id=&quot;groovy&quot;&gt;Groovy&lt;/a&gt;&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://groovy.codehaus.org/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://groovy.codehaus.org/&quot;  rel=&quot;nofollow&quot;&gt;Groovy home page&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://groovy.codehaus.org/groovy-jdk/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://groovy.codehaus.org/groovy-jdk/&quot;  rel=&quot;nofollow&quot;&gt;Groovy JDK API Specification&lt;/a&gt; - Javadoc documentation of the methods added to the &lt;acronym title=&quot;Java Development Kit&quot;&gt;JDK&lt;/acronym&gt; to make it more groovy.&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://groovy.codehaus.org/gapi/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://groovy.codehaus.org/gapi/&quot;  rel=&quot;nofollow&quot;&gt;Groovy 1.5 API&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;/div&gt;
&lt;!-- EDIT97 SECTION &quot;Groovy&quot; [2714-2917] --&gt;
&lt;h2 class=&quot;sectionedit98&quot;&gt;&lt;a name=&quot;grails&quot; id=&quot;grails&quot;&gt;Grails&lt;/a&gt;&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://grails.org/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://grails.org/&quot;  rel=&quot;nofollow&quot;&gt;Grails home page&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; Versions:&lt;/div&gt;
&lt;ul&gt;
&lt;li class=&quot;level2&quot;&gt;&lt;div class=&quot;li&quot;&gt; 1.0.3 - Now (Sept 2008)&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level2&quot;&gt;&lt;div class=&quot;li&quot;&gt; 1.0.4 - October 2008&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level2&quot;&gt;&lt;div class=&quot;li&quot;&gt; 1.1 - End of 2008 (See &lt;a href=&quot;http://grails.org/Roadmap&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://grails.org/Roadmap&quot;  rel=&quot;nofollow&quot;&gt;roadmap&lt;/a&gt;)&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;/div&gt;
&lt;!-- EDIT98 SECTION &quot;Grails&quot; [2918-3182] --&gt;
&lt;h2 class=&quot;sectionedit99&quot;&gt;&lt;a name=&quot;regular_expressions&quot; id=&quot;regular_expressions&quot;&gt;Regular Expressions&lt;/a&gt;&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.bastian-bergerhoff.com/eclipse/features/web/QuickREx/toc.html&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.bastian-bergerhoff.com/eclipse/features/web/QuickREx/toc.html&quot;  rel=&quot;nofollow&quot;&gt;QuickREx&lt;/a&gt; - Regex Tester Eclipse plugin.  Also has a standalone app.&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.brosinski.com/regex/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.brosinski.com/regex/&quot;  rel=&quot;nofollow&quot;&gt;Regex&lt;/a&gt; - Eclipse Regular Expression Tester&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;/div&gt;
&lt;!-- EDIT99 SECTION &quot;Regular Expressions&quot; [3183-3768] --&gt;
&lt;h2 class=&quot;sectionedit100&quot;&gt;&lt;a name=&quot;google_web_toolkit&quot; id=&quot;google_web_toolkit&quot;&gt;Google Web Toolkit&lt;/a&gt;&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://code.google.com/webtoolkit/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://code.google.com/webtoolkit/&quot;  rel=&quot;nofollow&quot;&gt;Google Web Toolkit home page&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.instantiations.com/gwtdesigner/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.instantiations.com/gwtdesigner/&quot;  rel=&quot;nofollow&quot;&gt;GWT Designer&lt;/a&gt; - GWT Designer™ is a &lt;acronym title=&quot;Graphical User Interface&quot;&gt;GUI&lt;/acronym&gt; creator that supports GWT. Use GWT Designer&amp;#039;s visual tools and wizards, and Java code will be generated for you. You don&amp;#039;t need to write any lines of Java code, but you can fully edit the resulting Java if you wish.&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://coolandusefulgwt.com/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://coolandusefulgwt.com/&quot;  rel=&quot;nofollow&quot;&gt;Google Web Toolkit Solutions&lt;/a&gt; - David Geary book site.&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.dotemplate.com/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.dotemplate.com/&quot;  rel=&quot;nofollow&quot;&gt;dotemplate.com&lt;/a&gt; - Quick &lt;acronym title=&quot;HyperText Markup Language&quot;&gt;HTML&lt;/acronym&gt; templates with &lt;acronym title=&quot;Cascading Style Sheets&quot;&gt;CSS&lt;/acronym&gt;.&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;/div&gt;
&lt;!-- EDIT100 SECTION &quot;Google Web Toolkit&quot; [3769-3899] --&gt;
&lt;h2 class=&quot;sectionedit101&quot;&gt;&lt;a name=&quot;open_source_tools&quot; id=&quot;open_source_tools&quot;&gt;Open Source Tools&lt;/a&gt;&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
For a list of hundreds of open source Java tools go to &lt;a href=&quot;http://java-source.net/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://java-source.net/&quot;  rel=&quot;nofollow&quot;&gt;Java-Source.net&lt;/a&gt;.
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT101 SECTION &quot;Open Source Tools&quot; [3900-4288] --&gt;
&lt;h2 class=&quot;sectionedit102&quot;&gt;&lt;a name=&quot;build_systems&quot; id=&quot;build_systems&quot;&gt;Build Systems&lt;/a&gt;&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
For more tools than the ones listed below go to &lt;a href=&quot;http://java-source.net/open-source/build-systems&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://java-source.net/open-source/build-systems&quot;  rel=&quot;nofollow&quot;&gt;Java-Source.net&lt;/a&gt;.
&lt;/p&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://ant.apache.org/ivy/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://ant.apache.org/ivy/&quot;  rel=&quot;nofollow&quot;&gt;Ivy&lt;/a&gt; - Ivy is a free java based dependency manager, with powerful features such as transitive dependencies, ant integration, maven repository compatibility, continuous integration, html reports and many more.&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;/div&gt;
&lt;!-- EDIT102 SECTION &quot;Build Systems&quot; [4289-8047] --&gt;
&lt;h2 class=&quot;sectionedit103&quot;&gt;&lt;a name=&quot;code_analyzers&quot; id=&quot;code_analyzers&quot;&gt;Code Analyzers&lt;/a&gt;&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
For more tools than the ones listed below go to &lt;a href=&quot;http://java-source.net/open-source/code-analyzers&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://java-source.net/open-source/code-analyzers&quot;  rel=&quot;nofollow&quot;&gt;Java-Source.net&lt;/a&gt;.
&lt;/p&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://pmd.sourceforge.net/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://pmd.sourceforge.net/&quot;  rel=&quot;nofollow&quot;&gt;PMD/CPD&lt;/a&gt; - PMD scans Java source code and looks for potential problems.  Includes a copy+paste code detector.&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://artho.com/jlint/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://artho.com/jlint/&quot;  rel=&quot;nofollow&quot;&gt;JLint&lt;/a&gt; - Jlint will check your Java code and find bugs, inconsistencies and synchronization problems by doing data flow analysis and building the lock graph.&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://condenser.sourceforge.net/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://condenser.sourceforge.net/&quot;  rel=&quot;nofollow&quot;&gt;Condenser&lt;/a&gt; - Condenser is a tool for finding and removing duplicated Java code. Unlike tools that only locate duplicated code, the aim of Condenser is to also automatically remove duplicated code where it is safe to do so.&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://qjpro.sourceforge.net/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://qjpro.sourceforge.net/&quot;  rel=&quot;nofollow&quot;&gt;QJ-Pro&lt;/a&gt; - Developers can automatically inspect their Java source code and improve their Java programming skills as they write their programs. QJ-Pro provides descriptive Java patterns explaining error prone code constructs and providing solutions for it.&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.hammurapi.biz/hammurapi-biz/ef/xmenu/hammurapi-group/products/hammurapi/index.html&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.hammurapi.biz/hammurapi-biz/ef/xmenu/hammurapi-group/products/hammurapi/index.html&quot;  rel=&quot;nofollow&quot;&gt;Hammurapi&lt;/a&gt; - Hammurapi 5 is a versatile automated code review solution. It allows you to establish code governance processes in your organization by injecting automated code review “hooks” into development and build processes.&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.clarkware.com/software/JDepend.html&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.clarkware.com/software/JDepend.html&quot;  rel=&quot;nofollow&quot;&gt;JDepend&lt;/a&gt; - JDepend traverses Java class file directories and generates design quality metrics for each Java package. JDepend allows you to automatically measure the quality of a design in terms of its extensibility, reusability, and maintainability to manage package dependencies effectively.&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.kirkk.com/main/Main/JarAnalyzer&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.kirkk.com/main/Main/JarAnalyzer&quot;  rel=&quot;nofollow&quot;&gt;JarAnalyzer&lt;/a&gt; - JarAnalyzer is a dependency management utility for jar files. It&amp;#039;s primary purpose is to traverse through a directory, parse each of the jar files in that directory, and identify the dependencies between the jar files. The output is an xml file representing the PhysicalDependencies between the jar files.&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://innig.net/macker/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://innig.net/macker/&quot;  rel=&quot;nofollow&quot;&gt;Macker&lt;/a&gt; - Macker is a build-time architectural rule checking utility for Java developers. It&amp;#039;s meant to model the architectural ideals programmers always dream up for their projects, and then break – it helps keep code clean and consistent. You can tailor a rules file to suit a specific project&amp;#039;s structure, or write some general “good practice” rules for your code. Macker doesn&amp;#039;t try to shove anybody else&amp;#039;s rules down your throat; it&amp;#039;s flexible, and writing a rules file is part of the development process for each unique project.&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.kclee.de/clemens/java/javancss/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.kclee.de/clemens/java/javancss/&quot;  rel=&quot;nofollow&quot;&gt;JavaNCSS&lt;/a&gt; - JavaNCSS is a simple command line utility which measures two standard source code metrics for the Java programming language. The metrics are collected globally, for each class and/or for each function.&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.incava.org/projects/java/doctorj/index.html&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.incava.org/projects/java/doctorj/index.html&quot;  rel=&quot;nofollow&quot;&gt;DoctorJ&lt;/a&gt; - Beyond the level of what Javadoc does, DoctorJ compares documentation against code.&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://xradar.sourceforge.net/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://xradar.sourceforge.net/&quot;  rel=&quot;nofollow&quot;&gt;XRadar&lt;/a&gt; - The XRadar is an open extensible code report tool currently supporting all Java based systems.&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.incava.org/projects/java/diffj/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.incava.org/projects/java/diffj/&quot;  rel=&quot;nofollow&quot;&gt;diffj&lt;/a&gt; - DiffJ is a command-line program based on diff (from Unix), but is designed specifically for Java code. It compares only Java source code, not whitespace nor comments. It also handles reorganization of Java code, so that, for example, methods that have been moved within the same class – but have not otherwise changed – are not considered to be different.&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://csdl.ics.hawaii.edu/Plone/research/jupiter/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://csdl.ics.hawaii.edu/Plone/research/jupiter/&quot;  rel=&quot;nofollow&quot;&gt;Jupiter&lt;/a&gt; - Jupiter is an Eclipse IDE Plug-In for doing code reviews.&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;/div&gt;
&lt;!-- EDIT103 SECTION &quot;Code Analyzers&quot; [8048-] --&gt;</description>
            <pubDate>Fri, 26 Sep 2008 14:59:56 -0400</pubDate>
        </item>
        <item>
            <title>Other Articles</title>
            <link>http://www.kirkdorffer.com/wiki/other_articles</link>
            <description>
&lt;h0 class=&quot;sectionedit104&quot;&gt;&lt;a name=&quot;other_articles&quot; id=&quot;other_articles&quot;&gt;Other Articles&lt;/a&gt;&lt;/h0&gt;
&lt;div class=&quot;level0&quot;&gt;

&lt;/div&gt;
&lt;!-- EDIT104 SECTION &quot;Other Articles&quot; [1-306] --&gt;
&lt;h1 class=&quot;sectionedit105&quot;&gt;&lt;a name=&quot;other_articles1&quot; id=&quot;other_articles1&quot;&gt;Other Articles&lt;/a&gt;&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; Links to a number of free books can be found &lt;a href=&quot;http://www.e-booksdirectory.com/listing.php?category=9&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.e-booksdirectory.com/listing.php?category=9&quot;  rel=&quot;nofollow&quot;&gt;here&lt;/a&gt;.  O&amp;#039;Reilly also has a site, &lt;a href=&quot;http://commons.oreilly.com/wiki/index.php/O%27Reilly_Commons&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://commons.oreilly.com/wiki/index.php/O%27Reilly_Commons&quot;  rel=&quot;nofollow&quot;&gt;O&amp;#039;Reilly Commons&lt;/a&gt;, that has a number of their books in a wiki format.&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;/div&gt;
&lt;!-- EDIT105 SECTION &quot;Other Articles&quot; [307-508] --&gt;
&lt;h2 class=&quot;sectionedit106&quot;&gt;&lt;a name=&quot;computer_history&quot; id=&quot;computer_history&quot;&gt;Computer History&lt;/a&gt;&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://lowendmac.com/orchard/index.html&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://lowendmac.com/orchard/index.html&quot;  rel=&quot;nofollow&quot;&gt;Tom Hormby&amp;#039;s Orchard&lt;/a&gt; - Articles on the history of the people and decisions behind the evolution of the personal computer. &lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;/div&gt;
&lt;!-- EDIT106 SECTION &quot;Computer History&quot; [509-691] --&gt;
&lt;h2 class=&quot;sectionedit107&quot;&gt;&lt;a name=&quot;general_programming&quot; id=&quot;general_programming&quot;&gt;General Programming&lt;/a&gt;&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.tiobe.com/index.php/content/paperinfo/tpci/index.html&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.tiobe.com/index.php/content/paperinfo/tpci/index.html&quot;  rel=&quot;nofollow&quot;&gt;TIOBE Programming Community Index&lt;/a&gt; - Programming language&amp;#039;s popularity index&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;/div&gt;
&lt;!-- EDIT107 SECTION &quot;General Programming&quot; [692-1467] --&gt;
&lt;h2 class=&quot;sectionedit108&quot;&gt;&lt;a name=&quot;clouds&quot; id=&quot;clouds&quot;&gt;Clouds&lt;/a&gt;&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://aws.amazon.com/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://aws.amazon.com/&quot;  rel=&quot;nofollow&quot;&gt;Amazon Web Services&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://aws.amazon.com/s3/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://aws.amazon.com/s3/&quot;  rel=&quot;nofollow&quot;&gt;Amazon Simple Storage Service (S3)&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://aws.amazon.com/ec2/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://aws.amazon.com/ec2/&quot;  rel=&quot;nofollow&quot;&gt;Amazon Elastic Compute Cloud (EC2)&lt;/a&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li class=&quot;level2&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://sourceforge.net/projects/elasticfox/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://sourceforge.net/projects/elasticfox/&quot;  rel=&quot;nofollow&quot;&gt;Firefox Extension for Amazon EC2&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level2&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://thediscoblog.com/2009/11/02/ec2-is-easier-than-you-think/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://thediscoblog.com/2009/11/02/ec2-is-easier-than-you-think/&quot;  rel=&quot;nofollow&quot;&gt;EC2 is easier than you think&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level2&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.ibm.com/developerworks/java/library/j-javadev2-4/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.ibm.com/developerworks/java/library/j-javadev2-4/&quot;  rel=&quot;nofollow&quot;&gt;Java development 2.0: Easy EC2&lt;/a&gt;&lt;br/&gt;
Summary:  Provisioning an EC2 instance for hosting a Java™ Web application is a snap. In this Java development 2.0 column, you&amp;#039;ll quickly build a Web application that leverages Groovy, Spring, and Hibernate (via the Grails framework) and deploy it on an EC2 instance.&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;/div&gt;
&lt;!-- EDIT108 SECTION &quot;Clouds&quot; [1468-1768] --&gt;
&lt;h2 class=&quot;sectionedit109&quot;&gt;&lt;a name=&quot;jira_and_confluence&quot; id=&quot;jira_and_confluence&quot;&gt;JIRA and Confluence&lt;/a&gt;&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://blogs.atlassian.com/developer/2009/04/confluence_and_jira_5_users_for_5.html&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://blogs.atlassian.com/developer/2009/04/confluence_and_jira_5_users_for_5.html&quot;  rel=&quot;nofollow&quot;&gt;Confluence and JIRA - 5 users for $5&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://blogs.atlassian.com/developer/2009/04/setting_up_jira_and_confluence.html&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://blogs.atlassian.com/developer/2009/04/setting_up_jira_and_confluence.html&quot;  rel=&quot;nofollow&quot;&gt;Setting up JIRA and Confluence in minutes on EC2&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;/div&gt;
&lt;!-- EDIT109 SECTION &quot;JIRA and Confluence&quot; [1769-1990] --&gt;
&lt;h2 class=&quot;sectionedit110&quot;&gt;&lt;a name=&quot;single_sign_on&quot; id=&quot;single_sign_on&quot;&gt;Single Sign On&lt;/a&gt;&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://developers.sun.com/learning/javaoneonline/j1sessn.jsp?sessn=TS-4604&amp;amp;yr=2007&amp;amp;track=3&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://developers.sun.com/learning/javaoneonline/j1sessn.jsp?sessn=TS-4604&amp;amp;yr=2007&amp;amp;track=3&quot;  rel=&quot;nofollow&quot;&gt;Fast and Free SSO: A Survey of Open-Source Solutions to Single Sign-on&lt;/a&gt; (JavaOne Presentation)&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;/div&gt;
&lt;!-- EDIT110 SECTION &quot;Single Sign On&quot; [1991-2125] --&gt;
&lt;h2 class=&quot;sectionedit111&quot;&gt;&lt;a name=&quot;csv_application_support&quot; id=&quot;csv_application_support&quot;&gt;CSV Application Support&lt;/a&gt;&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://en.wikipedia.org/wiki/CSV_application_support&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://en.wikipedia.org/wiki/CSV_application_support&quot;  rel=&quot;nofollow&quot;&gt;CSV Application Support&lt;/a&gt; (Java APIs)&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;/div&gt;
&lt;!-- EDIT111 SECTION &quot;CSV Application Support&quot; [2126-2276] --&gt;
&lt;h2 class=&quot;sectionedit112&quot;&gt;&lt;a name=&quot;development_topics&quot; id=&quot;development_topics&quot;&gt;Development Topics&lt;/a&gt;&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://blogs.atlassian.com/developer/2009/03/20_percent_continuing.html&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://blogs.atlassian.com/developer/2009/03/20_percent_continuing.html&quot;  rel=&quot;nofollow&quot;&gt;Atlassian&amp;#039;s 20% Time now out of Beta&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;/div&gt;
&lt;!-- EDIT112 SECTION &quot;Development Topics&quot; [2277-] --&gt;</description>
            <pubDate>Wed, 11 Apr 2012 15:24:26 -0400</pubDate>
        </item>
        <item>
            <title>Python Notes</title>
            <link>http://www.kirkdorffer.com/wiki/python_notes</link>
            <description>
&lt;h0 class=&quot;sectionedit113&quot;&gt;&lt;a name=&quot;python_notes&quot; id=&quot;python_notes&quot;&gt;Python Notes&lt;/a&gt;&lt;/h0&gt;
&lt;div class=&quot;level0&quot;&gt;

&lt;/div&gt;
&lt;!-- EDIT113 SECTION &quot;Python Notes&quot; [1-28] --&gt;
&lt;h1 class=&quot;sectionedit114&quot;&gt;&lt;a name=&quot;python_notes1&quot; id=&quot;python_notes1&quot;&gt;Python Notes&lt;/a&gt;&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;/div&gt;
&lt;!-- EDIT114 SECTION &quot;Python Notes&quot; [29-316] --&gt;
&lt;h2 class=&quot;sectionedit115&quot;&gt;&lt;a name=&quot;general_documentation&quot; id=&quot;general_documentation&quot;&gt;General Documentation&lt;/a&gt;&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://docs.python.org/contents.html&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://docs.python.org/contents.html&quot;  rel=&quot;nofollow&quot;&gt;Python 2.6.1 Documentation&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.scottklarr.com/topic/105/python-cheat-sheets/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.scottklarr.com/topic/105/python-cheat-sheets/&quot;  rel=&quot;nofollow&quot;&gt;Various Cheat Sheets&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.addedbytes.com/cheat-sheets/python-cheat-sheet/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.addedbytes.com/cheat-sheets/python-cheat-sheet/&quot;  rel=&quot;nofollow&quot;&gt;Another Python Cheat Sheet&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;/div&gt;
&lt;!-- EDIT115 SECTION &quot;General Documentation&quot; [317-893] --&gt;
&lt;h2 class=&quot;sectionedit116&quot;&gt;&lt;a name=&quot;additional_references&quot; id=&quot;additional_references&quot;&gt;Additional References&lt;/a&gt;&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; Biased towards Python, but see the strong vs. weak section at the end:  &lt;a href=&quot;http://www.ferg.org/projects/python_java_side-by-side.html&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.ferg.org/projects/python_java_side-by-side.html&quot;  rel=&quot;nofollow&quot;&gt;http://www.ferg.org/projects/python_java_side-by-side.html&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; side by side attempt to point out equivalents and differences: &lt;a href=&quot;http://www.razorvine.net/python/PythonComparedToJava&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.razorvine.net/python/PythonComparedToJava&quot;  rel=&quot;nofollow&quot;&gt;http://www.razorvine.net/python/PythonComparedToJava&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; dive into Python: &lt;a href=&quot;http://www.diveintopython.org/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.diveintopython.org/&quot;  rel=&quot;nofollow&quot;&gt;http://www.diveintopython.org/&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; Wing IDE (not free): &lt;a href=&quot;http://www.wingware.com/products&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.wingware.com/products&quot;  rel=&quot;nofollow&quot;&gt;http://www.wingware.com/products&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; Python plugin for Eclipse: &lt;a href=&quot;http://pydev.sourceforge.net/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://pydev.sourceforge.net/&quot;  rel=&quot;nofollow&quot;&gt;http://pydev.sourceforge.net/&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://sourceforge.net/projects/pycrust/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://sourceforge.net/projects/pycrust/&quot;  rel=&quot;nofollow&quot;&gt;pycrust&lt;/a&gt; - enhanced shell, with some completion&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;/div&gt;
&lt;!-- EDIT116 SECTION &quot;Additional References&quot; [894-] --&gt;</description>
            <pubDate>Thu, 29 Jan 2009 16:26:25 -0400</pubDate>
        </item>
        <item>
            <title>Regular Expressions</title>
            <link>http://www.kirkdorffer.com/wiki/regular_expressions</link>
            <description>
&lt;h0 class=&quot;sectionedit117&quot;&gt;&lt;a name=&quot;regular_expressions&quot; id=&quot;regular_expressions&quot;&gt;Regular Expressions&lt;/a&gt;&lt;/h0&gt;
&lt;div class=&quot;level0&quot;&gt;

&lt;/div&gt;
&lt;!-- EDIT117 SECTION &quot;Regular Expressions&quot; [1-35] --&gt;
&lt;h1 class=&quot;sectionedit118&quot;&gt;&lt;a name=&quot;regular_expressions1&quot; id=&quot;regular_expressions1&quot;&gt;Regular Expressions&lt;/a&gt;&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;/div&gt;
&lt;!-- EDIT118 SECTION &quot;Regular Expressions&quot; [36-162] --&gt;
&lt;h2 class=&quot;sectionedit119&quot;&gt;&lt;a name=&quot;general_documentation&quot; id=&quot;general_documentation&quot;&gt;General Documentation&lt;/a&gt;&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.regular-expressions.info/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.regular-expressions.info/&quot;  rel=&quot;nofollow&quot;&gt;The Premier website about Regular Expressions&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;/div&gt;
&lt;!-- EDIT119 SECTION &quot;General Documentation&quot; [163-306] --&gt;
&lt;h2 class=&quot;sectionedit120&quot;&gt;&lt;a name=&quot;testing_regular_expressions&quot; id=&quot;testing_regular_expressions&quot;&gt;Testing Regular Expressions&lt;/a&gt;&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.regexplanet.com/simple/index.html&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.regexplanet.com/simple/index.html&quot;  rel=&quot;nofollow&quot;&gt;RegexPlanet: Regular Expression Test Page&lt;/a&gt; (Java)&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;/div&gt;
&lt;!-- EDIT120 SECTION &quot;Testing Regular Expressions&quot; [307-946] --&gt;
&lt;h2 class=&quot;sectionedit121&quot;&gt;&lt;a name=&quot;regular_expressions_analyzers&quot; id=&quot;regular_expressions_analyzers&quot;&gt;Regular Expressions Analyzers&lt;/a&gt;&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.strfriend.com/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.strfriend.com/&quot;  rel=&quot;nofollow&quot;&gt;strfriend&lt;/a&gt; - Visualize regular expressions simply&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://xenon.stanford.edu/~xusch/regexp/analyzer.html&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://xenon.stanford.edu/~xusch/regexp/analyzer.html&quot;  rel=&quot;nofollow&quot;&gt;Regular Expression Analyzer&lt;/a&gt; (Java, JavaScript, &lt;acronym title=&quot;Practical Extraction and Report Language&quot;&gt;Perl&lt;/acronym&gt;)&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://perladvent.pm.org/2010/1/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://perladvent.pm.org/2010/1/&quot;  rel=&quot;nofollow&quot;&gt;YAPE::Regex::Explain Module&lt;/a&gt; (&lt;acronym title=&quot;Practical Extraction and Report Language&quot;&gt;Perl&lt;/acronym&gt;)&lt;/div&gt;
&lt;ul&gt;
&lt;li class=&quot;level2&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://icfun.blogspot.com/2009/07/perl-explanation-of-your-regular.html&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://icfun.blogspot.com/2009/07/perl-explanation-of-your-regular.html&quot;  rel=&quot;nofollow&quot;&gt;Further info on usage&lt;/a&gt;.&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level2&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://search.cpan.org/~gsullivan/YAPE-Regex-Explain-4.01/Explain.pm&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://search.cpan.org/~gsullivan/YAPE-Regex-Explain-4.01/Explain.pm&quot;  rel=&quot;nofollow&quot;&gt;CPAN&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level2&quot;&gt;&lt;div class=&quot;li&quot;&gt; Command line example: &lt;code&gt;perl -MYAPE::Regex::Explain -e &amp;quot;print YAPE::Regex::Explain-&amp;gt;new(qr/(\d+)/)-&amp;gt;explain;&amp;quot;&lt;/code&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;/div&gt;
&lt;!-- EDIT121 SECTION &quot;Regular Expressions Analyzers&quot; [947-] --&gt;</description>
            <pubDate>Wed, 01 Dec 2010 22:52:40 -0400</pubDate>
        </item>
        <item>
            <title>Ruby Notes</title>
            <link>http://www.kirkdorffer.com/wiki/ruby_notes</link>
            <description>
&lt;h0 class=&quot;sectionedit122&quot;&gt;&lt;a name=&quot;ruby_notes&quot; id=&quot;ruby_notes&quot;&gt;Ruby Notes&lt;/a&gt;&lt;/h0&gt;
&lt;div class=&quot;level0&quot;&gt;

&lt;/div&gt;
&lt;!-- EDIT122 SECTION &quot;Ruby Notes&quot; [1-26] --&gt;
&lt;h1 class=&quot;sectionedit123&quot;&gt;&lt;a name=&quot;ruby_notes1&quot; id=&quot;ruby_notes1&quot;&gt;Ruby Notes&lt;/a&gt;&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;/div&gt;
&lt;!-- EDIT123 SECTION &quot;Ruby Notes&quot; [27-447] --&gt;
&lt;h2 class=&quot;sectionedit124&quot;&gt;&lt;a name=&quot;general_documentation&quot; id=&quot;general_documentation&quot;&gt;General Documentation&lt;/a&gt;&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://ruby-doc.org/core/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://ruby-doc.org/core/&quot;  rel=&quot;nofollow&quot;&gt;RDoc Documentation [ruby-doc.org]&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://rubydoc.info/stdlib/core/1.9.2/frames&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://rubydoc.info/stdlib/core/1.9.2/frames&quot;  rel=&quot;nofollow&quot;&gt;Standard Core Library&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.tutorialspoint.com/ruby/index.htm&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.tutorialspoint.com/ruby/index.htm&quot;  rel=&quot;nofollow&quot;&gt;Ruby Tutorial&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.techotopia.com/index.php/Ruby_Essentials&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.techotopia.com/index.php/Ruby_Essentials&quot;  rel=&quot;nofollow&quot;&gt;Ruby Essentials - Techotopia&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.humblelittlerubybook.com/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.humblelittlerubybook.com/&quot;  rel=&quot;nofollow&quot;&gt;Mr. Neighborly&amp;#039;s Humble Little Ruby Book&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;/div&gt;
&lt;!-- EDIT124 SECTION &quot;General Documentation&quot; [448-720] --&gt;
&lt;h2 class=&quot;sectionedit125&quot;&gt;&lt;a name=&quot;ruby_tutorials&quot; id=&quot;ruby_tutorials&quot;&gt;Ruby Tutorials&lt;/a&gt;&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://tryruby.org/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://tryruby.org/&quot;  rel=&quot;nofollow&quot;&gt;Try Ruby!&lt;/a&gt; - Online Tutorial&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://skim.la/2010/03/29/ruby-koans-is-awesome/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://skim.la/2010/03/29/ruby-koans-is-awesome/&quot;  rel=&quot;nofollow&quot;&gt;Ruby Koans&lt;/a&gt; - Teaching tests&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.ruby-lang.org/en/documentation/ruby-from-other-languages/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.ruby-lang.org/en/documentation/ruby-from-other-languages/&quot;  rel=&quot;nofollow&quot;&gt;Ruby From Other Languages&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;/div&gt;
&lt;!-- EDIT125 SECTION &quot;Ruby Tutorials&quot; [721-1197] --&gt;
&lt;h2 class=&quot;sectionedit126&quot;&gt;&lt;a name=&quot;ruby_on_rails&quot; id=&quot;ruby_on_rails&quot;&gt;Ruby on Rails&lt;/a&gt;&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://rubyonrails.org/documentation&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://rubyonrails.org/documentation&quot;  rel=&quot;nofollow&quot;&gt;Ruby on Rails: Documentation&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://wiki.rubyonrails.org/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://wiki.rubyonrails.org/&quot;  rel=&quot;nofollow&quot;&gt;Rails Wiki&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://blog.envylabs.com/Rails_3_Cheat_Sheets.pdf&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://blog.envylabs.com/Rails_3_Cheat_Sheets.pdf&quot;  rel=&quot;nofollow&quot;&gt;Rails 3 Cheat Sheets&lt;/a&gt; (&lt;acronym title=&quot;Portable Document Format&quot;&gt;PDF&lt;/acronym&gt;)&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.kirkdorffer.com/rails/Rails ActiveRecord Data Type Mappings.pdf&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.kirkdorffer.com/rails/Rails ActiveRecord Data Type Mappings.pdf&quot;  rel=&quot;nofollow&quot;&gt;Rails ActiveRecord Data Type Mappings&lt;/a&gt; (&lt;acronym title=&quot;Portable Document Format&quot;&gt;PDF&lt;/acronym&gt;)&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.kirkdorffer.com/rails/Rails ActiveRecord Associations.pdf&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.kirkdorffer.com/rails/Rails ActiveRecord Associations.pdf&quot;  rel=&quot;nofollow&quot;&gt;Rails ActiveRecord Associations&lt;/a&gt; (&lt;acronym title=&quot;Portable Document Format&quot;&gt;PDF&lt;/acronym&gt;)&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;/div&gt;
&lt;!-- EDIT126 SECTION &quot;Ruby on Rails&quot; [1198-1457] --&gt;
&lt;h3 class=&quot;sectionedit127&quot;&gt;&lt;a name=&quot;tutorials&quot; id=&quot;tutorials&quot;&gt;Tutorials&lt;/a&gt;&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://guides.rubyonrails.org/index.html&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://guides.rubyonrails.org/index.html&quot;  rel=&quot;nofollow&quot;&gt;Ruby on Rails Guides&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://railsforzombies.org/labs&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://railsforzombies.org/labs&quot;  rel=&quot;nofollow&quot;&gt;Rails for Zombies Tutorial&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://railstutorial.org/ruby-on-rails-tutorial-book&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://railstutorial.org/ruby-on-rails-tutorial-book&quot;  rel=&quot;nofollow&quot;&gt;Ruby on Rails Tutorial by Michael Hartl&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;/div&gt;
&lt;!-- EDIT127 SECTION &quot;Tutorials&quot; [1458-1652] --&gt;
&lt;h3 class=&quot;sectionedit128&quot;&gt;&lt;a name=&quot;api&quot; id=&quot;api&quot;&gt;API&lt;/a&gt;&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://api.rubyonrails.org/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://api.rubyonrails.org/&quot;  rel=&quot;nofollow&quot;&gt;Ruby on Rails API Documentation&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://apidock.com/rails&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://apidock.com/rails&quot;  rel=&quot;nofollow&quot;&gt;Ruby on Rails - APIdock&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://railsapi.com/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://railsapi.com/&quot;  rel=&quot;nofollow&quot;&gt;Rails Searchable API Doc&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;/div&gt;
&lt;!-- EDIT128 SECTION &quot;API&quot; [1653-1891] --&gt;
&lt;h3 class=&quot;sectionedit129&quot;&gt;&lt;a name=&quot;authentication&quot; id=&quot;authentication&quot;&gt;Authentication&lt;/a&gt;&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;https://github.com/plataformatec/devise&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;https://github.com/plataformatec/devise&quot;  rel=&quot;nofollow&quot;&gt;devise - flexible authentication solution for Rails&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://railscasts.com/episodes/250-authentication-from-scratch&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://railscasts.com/episodes/250-authentication-from-scratch&quot;  rel=&quot;nofollow&quot;&gt;Railscasts - Authentication from Scratch&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;/div&gt;
&lt;!-- EDIT129 SECTION &quot;Authentication&quot; [1892-4275] --&gt;
&lt;h2 class=&quot;sectionedit130&quot;&gt;&lt;a name=&quot;p2pu_resources&quot; id=&quot;p2pu_resources&quot;&gt;P2PU Resources&lt;/a&gt;&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://p2pu.org/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://p2pu.org/&quot;  rel=&quot;nofollow&quot;&gt;P2PU&lt;/a&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li class=&quot;level2&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://p2pu.org/webcraft/introduction-ruby-and-rails&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://p2pu.org/webcraft/introduction-ruby-and-rails&quot;  rel=&quot;nofollow&quot;&gt;Introduction to Ruby and Rails&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level2&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;strong&gt;Resources:&lt;/strong&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li class=&quot;level3&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://alindeman.github.com/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://alindeman.github.com/&quot;  rel=&quot;nofollow&quot;&gt;Andy Lindeman&amp;#039;s Blog&lt;/a&gt; - Instructor&amp;#039;s Blog&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level3&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.balwiki.com/w/index.php/P2PURubyRails&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.balwiki.com/w/index.php/P2PURubyRails&quot;  rel=&quot;nofollow&quot;&gt;BalWiki&lt;/a&gt; - Student run wiki of course related resources&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li class=&quot;level2&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;strong&gt;Course Instructor/Student Interaction Tools:&lt;/strong&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li class=&quot;level3&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://groups.google.com/group/p2pu-rubyrails-jan2011&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://groups.google.com/group/p2pu-rubyrails-jan2011&quot;  rel=&quot;nofollow&quot;&gt;p2pu-rubyrails-jan2011 Google Group&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level3&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;irc://irc.freenode.net#p2pu-rubyrails&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;irc://irc.freenode.net#p2pu-rubyrails&quot;  rel=&quot;nofollow&quot;&gt;irc.freenode.net#p2pu-rubyrails&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level3&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://pad.p2pu.org/p2pu-rubyrails&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://pad.p2pu.org/p2pu-rubyrails&quot;  rel=&quot;nofollow&quot;&gt;Public Pad: p2pu-rubyrails&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level3&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://p2pu-bbb.osuosl.org/bigbluebutton/demo/create.jsp?action=invite&amp;amp;meetingID=Andy+Lindeman%27s+meeting&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://p2pu-bbb.osuosl.org/bigbluebutton/demo/create.jsp?action=invite&amp;amp;meetingID=Andy+Lindeman%27s+meeting&quot;  rel=&quot;nofollow&quot;&gt;BigBlueButton Shared Meeting&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level3&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;https://join.me/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;https://join.me/&quot;  rel=&quot;nofollow&quot;&gt;join.me&lt;/a&gt; - Another free screen sharing tool&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level3&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.screencast-o-matic.com/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.screencast-o-matic.com/&quot;  rel=&quot;nofollow&quot;&gt;Screencast-O-Matic&lt;/a&gt; - Screen recorder&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li class=&quot;level2&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;strong&gt;Code Tools:&lt;/strong&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li class=&quot;level3&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;https://github.com/dankirkd/coursework&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;https://github.com/dankirkd/coursework&quot;  rel=&quot;nofollow&quot;&gt;dankirkd/coursework - GitHub&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level3&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;https://gist.github.com/gists/new&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;https://gist.github.com/gists/new&quot;  rel=&quot;nofollow&quot;&gt;Gist - GitHub&lt;/a&gt; - For posting code snippets&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li class=&quot;level2&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;strong&gt;Project Hosting&lt;/strong&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li class=&quot;level3&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://heroku.com/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://heroku.com/&quot;  rel=&quot;nofollow&quot;&gt;Heroku&lt;/a&gt; - Cloud application platform for Ruby (&lt;a href=&quot;http://docs.heroku.com/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://docs.heroku.com/&quot;  rel=&quot;nofollow&quot;&gt;Docs&lt;/a&gt;)&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level3&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://localhost:3033/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://localhost:3033/&quot;  rel=&quot;nofollow&quot;&gt;localhost&lt;/a&gt; - Running on my local Vagrant VM&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li class=&quot;level2&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;strong&gt;Course Syllabus:&lt;/strong&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li class=&quot;level3&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://alindeman.github.com/p2pu-rubyrails/signup-task.html&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://alindeman.github.com/p2pu-rubyrails/signup-task.html&quot;  rel=&quot;nofollow&quot;&gt;Sign Up Task&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level3&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://alindeman.github.com/p2pu-rubyrails/week1.html&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://alindeman.github.com/p2pu-rubyrails/week1.html&quot;  rel=&quot;nofollow&quot;&gt;P2PU Ruby/Rails — Week 1&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level3&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://alindeman.github.com/p2pu-rubyrails/week2.html&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://alindeman.github.com/p2pu-rubyrails/week2.html&quot;  rel=&quot;nofollow&quot;&gt;P2PU Ruby/Rails — Week 2&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level3&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://alindeman.github.com/p2pu-rubyrails/week3.html&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://alindeman.github.com/p2pu-rubyrails/week3.html&quot;  rel=&quot;nofollow&quot;&gt;P2PU Ruby/Rails — Week 3&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level3&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://alindeman.github.com/p2pu-rubyrails/week4.html&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://alindeman.github.com/p2pu-rubyrails/week4.html&quot;  rel=&quot;nofollow&quot;&gt;P2PU Ruby/Rails — Week 4&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li class=&quot;level2&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;strong&gt;Course Apps:&lt;/strong&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li class=&quot;level3&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://blazing-sunset-380.heroku.com/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://blazing-sunset-380.heroku.com/&quot;  rel=&quot;nofollow&quot;&gt;P2PU Introduction to Ruby and Rails Blog&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level3&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://ribbit.heroku.com/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://ribbit.heroku.com/&quot;  rel=&quot;nofollow&quot;&gt;Ribbet! (A P2PU Introduction to Ruby and Rails App)&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;strong&gt;VM Environment:&lt;/strong&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li class=&quot;level2&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://vagrantup.com/docs/getting-started/index.html&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://vagrantup.com/docs/getting-started/index.html&quot;  rel=&quot;nofollow&quot;&gt;Vagrant: Getting Started&lt;/a&gt; - Virtual Machine&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level2&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.virtualbox.org/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.virtualbox.org/&quot;  rel=&quot;nofollow&quot;&gt;VirtualBox&lt;/a&gt; - Virtualization Environment&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level2&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://download.virtualbox.org/virtualbox/UserManual.pdf&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://download.virtualbox.org/virtualbox/UserManual.pdf&quot;  rel=&quot;nofollow&quot;&gt;VirtualBox User Manual&lt;/a&gt; (&lt;acronym title=&quot;Portable Document Format&quot;&gt;PDF&lt;/acronym&gt;)&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;/div&gt;
&lt;!-- EDIT130 SECTION &quot;P2PU Resources&quot; [4276-] --&gt;</description>
            <pubDate>Sun, 08 May 2011 02:57:22 -0400</pubDate>
        </item>
        <item>
            <title>Spring Notes</title>
            <link>http://www.kirkdorffer.com/wiki/spring_notes</link>
            <description>
&lt;h0 class=&quot;sectionedit131&quot;&gt;&lt;a name=&quot;spring_notes&quot; id=&quot;spring_notes&quot;&gt;Spring Notes&lt;/a&gt;&lt;/h0&gt;
&lt;div class=&quot;level0&quot;&gt;

&lt;/div&gt;
&lt;!-- EDIT131 SECTION &quot;Spring Notes&quot; [1-28] --&gt;
&lt;h1 class=&quot;sectionedit132&quot;&gt;&lt;a name=&quot;spring_notes1&quot; id=&quot;spring_notes1&quot;&gt;Spring Notes&lt;/a&gt;&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;/div&gt;
&lt;!-- EDIT132 SECTION &quot;Spring Notes&quot; [29-368] --&gt;
&lt;h2 class=&quot;sectionedit133&quot;&gt;&lt;a name=&quot;general_documentation&quot; id=&quot;general_documentation&quot;&gt;General Documentation&lt;/a&gt;&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.springsource.org/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.springsource.org/&quot;  rel=&quot;nofollow&quot;&gt;SpringSource.org&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.springbyexample.org/pdf/SpringByExample.pdf&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.springbyexample.org/pdf/SpringByExample.pdf&quot;  rel=&quot;nofollow&quot;&gt;Spring by Example&lt;/a&gt; (&lt;acronym title=&quot;Portable Document Format&quot;&gt;PDF&lt;/acronym&gt;)&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.baeldung.com/2011/12/08/simplifying-the-data-access-layer-with-spring-and-java-generics/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.baeldung.com/2011/12/08/simplifying-the-data-access-layer-with-spring-and-java-generics/&quot;  rel=&quot;nofollow&quot;&gt;Simplyfing the DAO layer with Spring and Java Generics&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;/div&gt;
&lt;!-- EDIT133 SECTION &quot;General Documentation&quot; [369-749] --&gt;
&lt;h3 class=&quot;sectionedit134&quot;&gt;&lt;a name=&quot;x&quot; id=&quot;x&quot;&gt;3.x&lt;/a&gt;&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://static.springsource.org/spring/docs/3.0.x/spring-framework-reference/html/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://static.springsource.org/spring/docs/3.0.x/spring-framework-reference/html/&quot;  rel=&quot;nofollow&quot;&gt;Spring Framework Reference Documentation 3.0&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://blog.springsource.com/2009/12/21/mvc-simplifications-in-spring-3-0/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://blog.springsource.com/2009/12/21/mvc-simplifications-in-spring-3-0/&quot;  rel=&quot;nofollow&quot;&gt;MVC Simplifications in Spring 3.0&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://blog.springsource.com/2010/06/15/spring-framework-3-0-3-released/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://blog.springsource.com/2010/06/15/spring-framework-3-0-3-released/&quot;  rel=&quot;nofollow&quot;&gt;Spring Framework 3.0.3 released&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;/div&gt;
&lt;!-- EDIT134 SECTION &quot;3.x&quot; [750-1011] --&gt;
&lt;h3 class=&quot;sectionedit135&quot;&gt;&lt;a name=&quot;x1&quot; id=&quot;x1&quot;&gt;2.x&lt;/a&gt;&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://static.springsource.org/spring/docs/2.0.x/spring-reference.pdf&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://static.springsource.org/spring/docs/2.0.x/spring-reference.pdf&quot;  rel=&quot;nofollow&quot;&gt;Spring 2.0 Reference Manual&lt;/a&gt; (&lt;acronym title=&quot;Portable Document Format&quot;&gt;PDF&lt;/acronym&gt;)&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://static.springsource.org/docs/Spring-MVC-step-by-step/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://static.springsource.org/docs/Spring-MVC-step-by-step/&quot;  rel=&quot;nofollow&quot;&gt;Developing a Spring Framework MVC application step-by-step&lt;/a&gt; (2.5)&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;/div&gt;
&lt;!-- EDIT135 SECTION &quot;2.x&quot; [1012-1933] --&gt;
&lt;h2 class=&quot;sectionedit136&quot;&gt;&lt;a name=&quot;spring_security&quot; id=&quot;spring_security&quot;&gt;Spring Security&lt;/a&gt;&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://static.springsource.org/spring-security/site/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://static.springsource.org/spring-security/site/&quot;  rel=&quot;nofollow&quot;&gt;Spring Security Website&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://static.springsource.org/spring-security/site/apidocs/index.html&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://static.springsource.org/spring-security/site/apidocs/index.html&quot;  rel=&quot;nofollow&quot;&gt;Spring Security 2.0.4 API &lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://static.springframework.org/spring-security/site/docs/2.0.x/reference/springsecurity.pdf&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://static.springframework.org/spring-security/site/docs/2.0.x/reference/springsecurity.pdf&quot;  rel=&quot;nofollow&quot;&gt; Spring Security Reference Documentation 2.0.x&lt;/a&gt; (&lt;acronym title=&quot;Portable Document Format&quot;&gt;PDF&lt;/acronym&gt;)&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.mularien.com/blog/2008/07/07/5-minute-guide-to-spring-security/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.mularien.com/blog/2008/07/07/5-minute-guide-to-spring-security/&quot;  rel=&quot;nofollow&quot;&gt;5 Minute Guide to Spring Security&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.mularien.com/blog/2008/11/11/rerouting-spring-security-2-login-page-through-a-spring-controller/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.mularien.com/blog/2008/11/11/rerouting-spring-security-2-login-page-through-a-spring-controller/&quot;  rel=&quot;nofollow&quot;&gt;Rerouting Spring Security 2 Login Page Through a Spring Controller&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.mularien.com/blog/2008/02/26/5-minute-guide-to-spring-and-simpler-jdbc/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.mularien.com/blog/2008/02/26/5-minute-guide-to-spring-and-simpler-jdbc/&quot;  rel=&quot;nofollow&quot;&gt;5 Minute Guide to Spring and Simple[r!] JDBC&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://java.dzone.com/tips/pathway-acegi-spring-security-&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://java.dzone.com/tips/pathway-acegi-spring-security-&quot;  rel=&quot;nofollow&quot;&gt;Pathway from ACEGI to Spring Security 2.0&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;/div&gt;
&lt;!-- EDIT136 SECTION &quot;Spring Security&quot; [1934-2165] --&gt;
&lt;h2 class=&quot;sectionedit137&quot;&gt;&lt;a name=&quot;acegi&quot; id=&quot;acegi&quot;&gt;Acegi&lt;/a&gt;&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.javaworld.com/javaworld/jw-10-2007/jw-10-acegi2.html&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.javaworld.com/javaworld/jw-10-2007/jw-10-acegi2.html&quot;  rel=&quot;nofollow&quot;&gt;Acegi Security in one hour&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.javalobby.org/java/forums/t91426.html&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.javalobby.org/java/forums/t91426.html&quot;  rel=&quot;nofollow&quot;&gt;Implementing Application-Specific User Details in Acegi &lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;/div&gt;
&lt;!-- EDIT137 SECTION &quot;Acegi&quot; [2166-] --&gt;</description>
            <pubDate>Tue, 30 Apr 2013 19:54:57 -0400</pubDate>
        </item>
        <item>
            <title>SQL Notes</title>
            <link>http://www.kirkdorffer.com/wiki/sql_notes</link>
            <description>
&lt;h0 class=&quot;sectionedit138&quot;&gt;&lt;a name=&quot;sql_notes&quot; id=&quot;sql_notes&quot;&gt;SQL Notes&lt;/a&gt;&lt;/h0&gt;
&lt;div class=&quot;level0&quot;&gt;

&lt;/div&gt;
&lt;!-- EDIT138 SECTION &quot;SQL Notes&quot; [1-25] --&gt;
&lt;h1 class=&quot;sectionedit139&quot;&gt;&lt;a name=&quot;sql_notes1&quot; id=&quot;sql_notes1&quot;&gt;SQL Notes&lt;/a&gt;&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;/div&gt;
&lt;!-- EDIT139 SECTION &quot;SQL Notes&quot; [26-207] --&gt;
&lt;h2 class=&quot;sectionedit140&quot;&gt;&lt;a name=&quot;general_documentation&quot; id=&quot;general_documentation&quot;&gt;General Documentation&lt;/a&gt;&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
&lt;strong&gt;A Visual Explanation of &lt;acronym title=&quot;Structured Query Language&quot;&gt;SQL&lt;/acronym&gt; Joins&lt;/strong&gt;
&lt;br/&gt;
&lt;a href=&quot;http://www.kirkdorffer.com/wiki/_media/wiki:explainselectstatement.gif&quot; class=&quot;media&quot; title=&quot;wiki:explainselectstatement.gif&quot;&gt;&lt;img src=&quot;http://www.kirkdorffer.com/wiki/_media/wiki:explainselectstatement.gif?w=500&quot; class=&quot;media&quot; title=&quot;A Visual Explanation of SQL Joins (click for full size)&quot; alt=&quot;A Visual Explanation of SQL Joins (click for full size)&quot; width=&quot;500&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT140 SECTION &quot;General Documentation&quot; [208-529] --&gt;
&lt;h2 class=&quot;sectionedit141&quot;&gt;&lt;a name=&quot;mysql&quot; id=&quot;mysql&quot;&gt;MySQL&lt;/a&gt;&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.kirkdorffer.com/wiki/images/ExplainSelectStatement.gif&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.kirkdorffer.com/wiki/images/ExplainSelectStatement.gif&quot;  rel=&quot;nofollow&quot;&gt;Understanding Explain Select Statement Results&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://dev.mysql.com/doc/refman/4.1/en/index.html&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://dev.mysql.com/doc/refman/4.1/en/index.html&quot;  rel=&quot;nofollow&quot;&gt;MySQL 3.23, 4.0, 4.1 Reference Manual&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://dev.mysql.com/doc/refman/5.1/en/index.html&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://dev.mysql.com/doc/refman/5.1/en/index.html&quot;  rel=&quot;nofollow&quot;&gt;MySQL 5.1 Reference Manual&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;/div&gt;
&lt;!-- EDIT141 SECTION &quot;MySQL&quot; [530-948] --&gt;
&lt;h2 class=&quot;sectionedit142&quot;&gt;&lt;a name=&quot;oracle&quot; id=&quot;oracle&quot;&gt;Oracle&lt;/a&gt;&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.oracle.com/technetwork/index.html&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.oracle.com/technetwork/index.html&quot;  rel=&quot;nofollow&quot;&gt;Oracle Technology Network&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.oracle.com/pls/xe102/homepage&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.oracle.com/pls/xe102/homepage&quot;  rel=&quot;nofollow&quot;&gt;Oracle Database Express Edition Online Documentation 10g Release 2 (10.2)&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://ss64.com/ora/syntax-sqlplus-set.html&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://ss64.com/ora/syntax-sqlplus-set.html&quot;  rel=&quot;nofollow&quot;&gt;SQL*Plus Set Commands&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.oracle-base.com/articles/10g/OracleDataPump10g.php&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.oracle-base.com/articles/10g/OracleDataPump10g.php&quot;  rel=&quot;nofollow&quot;&gt;Oracle 10g Data Pump&lt;/a&gt; (Advanced Exports and Imports)&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;/div&gt;
&lt;!-- EDIT142 SECTION &quot;Oracle&quot; [949-1443] --&gt;
&lt;h3 class=&quot;sectionedit143&quot;&gt;&lt;a name=&quot;explain_plans&quot; id=&quot;explain_plans&quot;&gt;Explain Plans&lt;/a&gt;&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.evolt.org/node/2986&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.evolt.org/node/2986&quot;  rel=&quot;nofollow&quot;&gt;Producing and Reading Explain Plans&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;
To produce an Explain Plan:
&lt;/p&gt;

&lt;p&gt;
&lt;pre name=&quot;code&quot; class=&quot;sql:showcontrols&quot;&gt;
explain plan set statement_id = &amp;#039;&amp;lt;SOME_IDENTIFIER&amp;gt;&amp;#039; for
/* ------ Your SQL here ------ */
&lt;/pre&gt;
&lt;/p&gt;

&lt;p&gt;
To read an Explain Plan:
&lt;/p&gt;

&lt;p&gt;
&lt;pre name=&quot;code&quot; class=&quot;sql:showcontrols&quot;&gt;
select operation, options, object_name
from plan_table
where statement_id = &amp;#039;&amp;lt;SOME_IDENTIFIER&amp;gt;&amp;#039;
start with id = 0
connect by prior id=parent_id and prior statement_id = statement_id;
&lt;/pre&gt;
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT143 SECTION &quot;Explain Plans&quot; [1444-1721] --&gt;
&lt;h2 class=&quot;sectionedit144&quot;&gt;&lt;a name=&quot;questions_and_topics&quot; id=&quot;questions_and_topics&quot;&gt;Questions and Topics&lt;/a&gt;&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
Q. How can you find an orphan row in a join?
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;Do a Left Join (= Left Outer Join) and look for nulls.&lt;/pre&gt;

&lt;p&gt;
&lt;pre name=&quot;code&quot; class=&quot;sql:showcontrols&quot;&gt;
select * 
from TABLE_A
  left outer join TABLE_B
    on TABLE_A.NAME = TABLE_B.NAME 
where TABLE_B.ID is null
&lt;/pre&gt;
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT144 SECTION &quot;Questions and Topics&quot; [1722-] --&gt;</description>
            <pubDate>Thu, 02 May 2013 19:35:06 -0400</pubDate>
        </item>
        <item>
            <title>Home</title>
            <link>http://www.kirkdorffer.com/wiki/start</link>
            <description>
&lt;h0 class=&quot;sectionedit145&quot;&gt;&lt;a name=&quot;home&quot; id=&quot;home&quot;&gt;Home&lt;/a&gt;&lt;/h0&gt;
&lt;div class=&quot;level0&quot;&gt;

&lt;/div&gt;
&lt;!-- EDIT145 SECTION &quot;Home&quot; [1-418] --&gt;
&lt;h1 class=&quot;sectionedit146&quot;&gt;&lt;a name=&quot;home1&quot; id=&quot;home1&quot;&gt;Home&lt;/a&gt;&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
Welcome to this wiki page powered by &lt;a href=&quot;http://www.dokuwiki.org/dokuwiki&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.dokuwiki.org/dokuwiki&quot;  rel=&quot;nofollow&quot;&gt;DokuWiki&lt;/a&gt;.  This is a repository of notes, thoughts and information regarding various things, mostly technical and Java related.  This is not a publicly editable wiki though - it is just a place I can capture info for easy access on the intertubes.
&lt;/p&gt;

&lt;p&gt;
Here is a little bit &lt;a href=&quot;http://www.kirkdorffer.com/resume.html&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.kirkdorffer.com/resume.html&quot;  rel=&quot;nofollow&quot;&gt;about me&lt;/a&gt;.
&lt;/p&gt;

&lt;/div&gt;

&lt;h4&gt;&lt;a name=&quot;table_of_contents&quot; id=&quot;table_of_contents&quot;&gt;Table of Contents&lt;/a&gt;&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.kirkdorffer.com/wiki/conference_notes&quot; class=&quot;wikilink1&quot; title=&quot;conference_notes&quot;&gt;Notes from conferences and symposiums&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.kirkdorffer.com/besttechwriting2008.html&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.kirkdorffer.com/besttechwriting2008.html&quot;  rel=&quot;nofollow&quot;&gt;The Best of Technology Writing 2008&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.kirkdorffer.com/wiki/other_articles&quot; class=&quot;wikilink1&quot; title=&quot;other_articles&quot;&gt;Other articles of interest&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.kirkdorffer.com/wiki/python_notes&quot; class=&quot;wikilink1&quot; title=&quot;python_notes&quot;&gt;Python Notes&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.kirkdorffer.com/wiki/sql_notes&quot; class=&quot;wikilink1&quot; title=&quot;sql_notes&quot;&gt;SQL Notes&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.kirkdorffer.com/wiki/regular_expressions&quot; class=&quot;wikilink1&quot; title=&quot;regular_expressions&quot;&gt;Regular Expressions&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.kirkdorffer.com/wiki/linux_notes&quot; class=&quot;wikilink1&quot; title=&quot;linux_notes&quot;&gt;Linux Notes&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.kirkdorffer.com/wiki/wingding_notes&quot; class=&quot;wikilink1&quot; title=&quot;wingding_notes&quot;&gt;Seattle WingDing Notes&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.kirkdorffer.com/wiki/dokuwiki_notes&quot; class=&quot;wikilink1&quot; title=&quot;dokuwiki_notes&quot;&gt;DokuWiki Notes&lt;/a&gt; (Includes information about syntax for using installed plugins)&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;/div&gt;
&lt;!-- EDIT146 SECTION &quot;Home&quot; [419-] --&gt;</description>
            <pubDate>Sat, 21 Feb 2009 04:10:07 -0400</pubDate>
        </item>
        <item>
            <title>Web Notes</title>
            <link>http://www.kirkdorffer.com/wiki/web_notes</link>
            <description>
&lt;h0 class=&quot;sectionedit147&quot;&gt;&lt;a name=&quot;web_notes&quot; id=&quot;web_notes&quot;&gt;Web Notes&lt;/a&gt;&lt;/h0&gt;
&lt;div class=&quot;level0&quot;&gt;

&lt;/div&gt;
&lt;!-- EDIT147 SECTION &quot;Web Notes&quot; [1-25] --&gt;
&lt;h1 class=&quot;sectionedit148&quot;&gt;&lt;a name=&quot;web_notes1&quot; id=&quot;web_notes1&quot;&gt;Web Notes&lt;/a&gt;&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;/div&gt;
&lt;!-- EDIT148 SECTION &quot;Web Notes&quot; [26-237] --&gt;
&lt;h2 class=&quot;sectionedit149&quot;&gt;&lt;a name=&quot;general&quot; id=&quot;general&quot;&gt;General&lt;/a&gt;&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://developer.yahoo.com/performance/rules.html&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://developer.yahoo.com/performance/rules.html&quot;  rel=&quot;nofollow&quot;&gt;Best Practices for Speeding Up Your Web Site&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.caniuse.com/#&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.caniuse.com/#&quot;  rel=&quot;nofollow&quot;&gt;When can I use... Support tables for HTML5, CSS3, etc&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;/div&gt;
&lt;!-- EDIT149 SECTION &quot;General&quot; [238-408] --&gt;
&lt;h2 class=&quot;sectionedit150&quot;&gt;&lt;a name=&quot;testing&quot; id=&quot;testing&quot;&gt;Testing&lt;/a&gt;&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.spoon.net/browsers/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.spoon.net/browsers/&quot;  rel=&quot;nofollow&quot;&gt;Browser Sandbox - Run any browser from the web&lt;/a&gt; - Supports testing of pages on various browsers via a plug-in.&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;/div&gt;
&lt;!-- EDIT150 SECTION &quot;Testing&quot; [409-630] --&gt;
&lt;h2 class=&quot;sectionedit151&quot;&gt;&lt;a name=&quot;design&quot; id=&quot;design&quot;&gt;Design&lt;/a&gt;&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; Nifty &lt;a href=&quot;http://colorschemedesigner.com/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://colorschemedesigner.com/&quot;  rel=&quot;nofollow&quot;&gt;Color Scheme Designer&lt;/a&gt; tool&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; Useful &lt;a href=&quot;http://www.generateit.net/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.generateit.net/&quot;  rel=&quot;nofollow&quot;&gt;Generate It&lt;/a&gt; online tools (Mod Rewrite, Favicons, Rounded Corners, &lt;acronym title=&quot;Cascading Style Sheets&quot;&gt;CSS&lt;/acronym&gt; Layout, etc…)&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;/div&gt;
&lt;!-- EDIT151 SECTION &quot;Design&quot; [631-1490] --&gt;
&lt;h2 class=&quot;sectionedit152&quot;&gt;&lt;a name=&quot;javascript&quot; id=&quot;javascript&quot;&gt;JavaScript&lt;/a&gt;&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;https://www.youtube.com/playlist?list=PLEzQf147-uEpvTa1bHDNlxUL2klHUMHJu&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;https://www.youtube.com/playlist?list=PLEzQf147-uEpvTa1bHDNlxUL2klHUMHJu&quot;  rel=&quot;nofollow&quot;&gt;Douglas Crockford on Javascript&lt;/a&gt; - 5 video presentations (and others) about JavaScript&lt;/div&gt;
&lt;ul&gt;
&lt;li class=&quot;level2&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;https://www.youtube.com/watch?v=JxAXlJEmNMg&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;https://www.youtube.com/watch?v=JxAXlJEmNMg&quot;  rel=&quot;nofollow&quot;&gt;Volume 1: The Early Years&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level2&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;https://www.youtube.com/watch?v=RO1Wnu-xKoY&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;https://www.youtube.com/watch?v=RO1Wnu-xKoY&quot;  rel=&quot;nofollow&quot;&gt;Chapter 2: And Then There Was JavaScript&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level2&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;https://www.youtube.com/watch?v=ya4UHuXNygM&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;https://www.youtube.com/watch?v=ya4UHuXNygM&quot;  rel=&quot;nofollow&quot;&gt;Act III: Function the Ultimate&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level2&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;https://www.youtube.com/watch?v=Fv9qT9joc0M&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;https://www.youtube.com/watch?v=Fv9qT9joc0M&quot;  rel=&quot;nofollow&quot;&gt;Episode IV: The Metamorphosis of Ajax&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level2&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;https://www.youtube.com/watch?v=47Ceot8yqeI&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;https://www.youtube.com/watch?v=47Ceot8yqeI&quot;  rel=&quot;nofollow&quot;&gt;Part 5: The End of All Things&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.youtube.com/watch?v=v2ifWcnQs6M&amp;amp;list=PL5586336C26BDB324&amp;amp;feature=plcp&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.youtube.com/watch?v=v2ifWcnQs6M&amp;amp;list=PL5586336C26BDB324&amp;amp;feature=plcp&quot;  rel=&quot;nofollow&quot;&gt;Douglas Crockford: &amp;quot;Advanced JavaScript&amp;quot;&lt;/a&gt; - 3 video presentations&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://jconsole.com/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://jconsole.com/&quot;  rel=&quot;nofollow&quot;&gt;jconsole&lt;/a&gt; - Web-based interactive JavaScript shell&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;/div&gt;
&lt;!-- EDIT152 SECTION &quot;JavaScript&quot; [1491-1719] --&gt;
&lt;h3 class=&quot;sectionedit153&quot;&gt;&lt;a name=&quot;about_prototype_and_inheritance&quot; id=&quot;about_prototype_and_inheritance&quot;&gt;About Prototype and Inheritance&lt;/a&gt;&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://helephant.com/2009/08/javascript-prototype-chaining/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://helephant.com/2009/08/javascript-prototype-chaining/&quot;  rel=&quot;nofollow&quot;&gt;Javascript prototype chaining&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://mckoss.com/jscript/object.htm&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://mckoss.com/jscript/object.htm&quot;  rel=&quot;nofollow&quot;&gt;Object Oriented Programming in JavaScript&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;/div&gt;
&lt;!-- EDIT153 SECTION &quot;About Prototype and Inheritance&quot; [1720-1882] --&gt;
&lt;h3 class=&quot;sectionedit154&quot;&gt;&lt;a name=&quot;testing1&quot; id=&quot;testing1&quot;&gt;Testing&lt;/a&gt;&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://code.google.com/p/js-test-driver/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://code.google.com/p/js-test-driver/&quot;  rel=&quot;nofollow&quot;&gt;js-test-driver&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://monket.net/blog/2009/06/autotest-and-js-test-driver/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://monket.net/blog/2009/06/autotest-and-js-test-driver/&quot;  rel=&quot;nofollow&quot;&gt;jsautotest&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;/div&gt;
&lt;!-- EDIT154 SECTION &quot;Testing&quot; [1883-2086] --&gt;
&lt;h3 class=&quot;sectionedit155&quot;&gt;&lt;a name=&quot;jslint&quot; id=&quot;jslint&quot;&gt;JSLint&lt;/a&gt;&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.jslint.com/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.jslint.com/&quot;  rel=&quot;nofollow&quot;&gt;JSLint, The JavaScript Code Quality Tool&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.javascriptlint.com/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.javascriptlint.com/&quot;  rel=&quot;nofollow&quot;&gt;JavaScript Lint&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://code.google.com/p/jslint4java/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://code.google.com/p/jslint4java/&quot;  rel=&quot;nofollow&quot;&gt;jslint4java&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;/div&gt;
&lt;!-- EDIT155 SECTION &quot;JSLint&quot; [2087-2255] --&gt;
&lt;h3 class=&quot;sectionedit156&quot;&gt;&lt;a name=&quot;yui&quot; id=&quot;yui&quot;&gt;YUI&lt;/a&gt;&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.yuiblog.com/blog/2010/10/27/jquery-and-yui-3-a-tale-of-two-javascript-libraries/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.yuiblog.com/blog/2010/10/27/jquery-and-yui-3-a-tale-of-two-javascript-libraries/&quot;  rel=&quot;nofollow&quot;&gt;jQuery and YUI 3: A Tale of Two JavaScript Libraries&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;/div&gt;
&lt;!-- EDIT156 SECTION &quot;YUI&quot; [2256-2506] --&gt;
&lt;h2 class=&quot;sectionedit157&quot;&gt;&lt;a name=&quot;jquery&quot; id=&quot;jquery&quot;&gt;JQuery&lt;/a&gt;&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://jqfundamentals.com/book/index.html&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://jqfundamentals.com/book/index.html&quot;  rel=&quot;nofollow&quot;&gt;jQuery Fundamentals&lt;/a&gt; - Online book&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://addyosmani.com/blog/jq143offlinelearningkit/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://addyosmani.com/blog/jq143offlinelearningkit/&quot;  rel=&quot;nofollow&quot;&gt;jQuery 1.5.1 Offline Learning Kit&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://visualjquery.com/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://visualjquery.com/&quot;  rel=&quot;nofollow&quot;&gt;Visual jQuery 1.2.6&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;/div&gt;
&lt;!-- EDIT157 SECTION &quot;JQuery&quot; [2507-2592] --&gt;
&lt;h2 class=&quot;sectionedit158&quot;&gt;&lt;a name=&quot;ajax&quot; id=&quot;ajax&quot;&gt;Ajax&lt;/a&gt;&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://alexbosworth.backpackit.com/pub/67688&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://alexbosworth.backpackit.com/pub/67688&quot;  rel=&quot;nofollow&quot;&gt;Ajax Mistakes&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;/div&gt;
&lt;!-- EDIT158 SECTION &quot;Ajax&quot; [2593-2931] --&gt;
&lt;h2 class=&quot;sectionedit159&quot;&gt;&lt;a name=&quot;css&quot; id=&quot;css&quot;&gt;CSS&lt;/a&gt;&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://centricle.com/ref/css/filters/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://centricle.com/ref/css/filters/&quot;  rel=&quot;nofollow&quot;&gt;Browser Specific Syntax Rules Support&lt;/a&gt; (Chart)&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://msdn.microsoft.com/en-us/library/cc351024(VS.85).aspx&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://msdn.microsoft.com/en-us/library/cc351024(VS.85).aspx&quot;  rel=&quot;nofollow&quot;&gt;CSS Compatibility and Internet Explorer&lt;/a&gt; (&lt;acronym title=&quot;Internet Explorer&quot;&gt;IE&lt;/acronym&gt; 5 through &lt;acronym title=&quot;Internet Explorer&quot;&gt;IE&lt;/acronym&gt; 8)&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.yuiblog.com/blog/2010/12/14/the-css-position-property/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.yuiblog.com/blog/2010/12/14/the-css-position-property/&quot;  rel=&quot;nofollow&quot;&gt;The CSS Position Property&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;/div&gt;
&lt;!-- EDIT159 SECTION &quot;CSS&quot; [2932-3415] --&gt;
&lt;h2 class=&quot;sectionedit160&quot;&gt;&lt;a name=&quot;html_5&quot; id=&quot;html_5&quot;&gt;HTML 5&lt;/a&gt;&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://developer.yahoo.com/yui/theater/video.php?v=neuberg-html5&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://developer.yahoo.com/yui/theater/video.php?v=neuberg-html5&quot;  rel=&quot;nofollow&quot;&gt;Video: Introduction to HTML 5 - Brad Neuberg (Developer Programs, Google)&lt;/a&gt;, &lt;a href=&quot;http://codinginparadise.org/presentations/intro_html5.pdf&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://codinginparadise.org/presentations/intro_html5.pdf&quot;  rel=&quot;nofollow&quot;&gt;Slides&lt;/a&gt; (&lt;acronym title=&quot;Portable Document Format&quot;&gt;PDF&lt;/acronym&gt;) - Oct, 2009&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.modernizr.com/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.modernizr.com/&quot;  rel=&quot;nofollow&quot;&gt;Modernizr&lt;/a&gt; - &lt;acronym title=&quot;HyperText Markup Language&quot;&gt;HTML&lt;/acronym&gt; 5 Support Detector Library&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://html5test.com/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://html5test.com/&quot;  rel=&quot;nofollow&quot;&gt;The HTML5 test - How well does your browser support HTML5?&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://gsnedders.html5.org/outliner/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://gsnedders.html5.org/outliner/&quot;  rel=&quot;nofollow&quot;&gt;HTML 5 Outliner&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;/div&gt;
&lt;!-- EDIT160 SECTION &quot;HTML 5&quot; [3416-3553] --&gt;
&lt;h2 class=&quot;sectionedit161&quot;&gt;&lt;a name=&quot;flash_mp3_player&quot; id=&quot;flash_mp3_player&quot;&gt;Flash MP3 Player&lt;/a&gt;&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.google.com/search?hl=en&amp;amp;q=player.swf+audioplayer&amp;amp;aq=f&amp;amp;oq=&amp;amp;aqi=&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.google.com/search?hl=en&amp;amp;q=player.swf+audioplayer&amp;amp;aq=f&amp;amp;oq=&amp;amp;aqi=&quot;  rel=&quot;nofollow&quot;&gt;Google Search Result Links&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;/div&gt;
&lt;!-- EDIT161 SECTION &quot;Flash MP3 Player&quot; [3554-] --&gt;</description>
            <pubDate>Wed, 22 Jun 2016 17:58:54 -0400</pubDate>
        </item>
        <item>
            <title>Web Services Notes</title>
            <link>http://www.kirkdorffer.com/wiki/web_services_notes</link>
            <description>
&lt;h0 class=&quot;sectionedit162&quot;&gt;&lt;a name=&quot;web_services_notes&quot; id=&quot;web_services_notes&quot;&gt;Web Services Notes&lt;/a&gt;&lt;/h0&gt;
&lt;div class=&quot;level0&quot;&gt;

&lt;/div&gt;
&lt;!-- EDIT162 SECTION &quot;Web Services Notes&quot; [1-34] --&gt;
&lt;h1 class=&quot;sectionedit163&quot;&gt;&lt;a name=&quot;web_services_notes1&quot; id=&quot;web_services_notes1&quot;&gt;Web Services Notes&lt;/a&gt;&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;/div&gt;
&lt;!-- EDIT163 SECTION &quot;Web Services Notes&quot; [35-326] --&gt;
&lt;h2 class=&quot;sectionedit164&quot;&gt;&lt;a name=&quot;general_documentation&quot; id=&quot;general_documentation&quot;&gt;General Documentation&lt;/a&gt;&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://java.sun.com/webservices/docs/2.0/tutorial/doc/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://java.sun.com/webservices/docs/2.0/tutorial/doc/&quot;  rel=&quot;nofollow&quot;&gt;The Java Web Services Tutorial&lt;/a&gt; (Java Web Services Developer Pack (JWSDP) 2.0) - February, 2006&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://nordsc.com/ext/classification_of_http_based_apis.html&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://nordsc.com/ext/classification_of_http_based_apis.html&quot;  rel=&quot;nofollow&quot;&gt;Classification of HTTP APIs&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;/div&gt;
&lt;!-- EDIT164 SECTION &quot;General Documentation&quot; [327-344] --&gt;
&lt;h2 class=&quot;sectionedit165&quot;&gt;&lt;a name=&quot;rest&quot; id=&quot;rest&quot;&gt;REST&lt;/a&gt;&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;/div&gt;
&lt;!-- EDIT165 SECTION &quot;REST&quot; [345-458] --&gt;
&lt;h3 class=&quot;sectionedit166&quot;&gt;&lt;a name=&quot;http&quot; id=&quot;http&quot;&gt;HTTP&lt;/a&gt;&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.w3.org/Protocols/rfc2616/rfc2616.html&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.w3.org/Protocols/rfc2616/rfc2616.html&quot;  rel=&quot;nofollow&quot;&gt;Hypertext Transfer Protocol -- HTTP/1.1&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;/div&gt;

&lt;h4&gt;&lt;a name=&quot;methods&quot; id=&quot;methods&quot;&gt;Methods&lt;/a&gt;&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
Idempotent - no matter how many times you apply the operation, the result is always the same.
&lt;br/&gt;
Safe - the operation does not change the state of the resource representation.
&lt;/p&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; GET - Idempotent, safe&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; PUT (Update) - Idempotent&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; POST (Create) - Not idempotent, not safe&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; DELETE - Idempotent&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;/div&gt;
&lt;!-- EDIT166 SECTION &quot;HTTP&quot; [459-1350] --&gt;
&lt;h3 class=&quot;sectionedit167&quot;&gt;&lt;a name=&quot;resources&quot; id=&quot;resources&quot;&gt;Resources&lt;/a&gt;&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.ics.uci.edu/~fielding/pubs/dissertation/top.htm&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.ics.uci.edu/~fielding/pubs/dissertation/top.htm&quot;  rel=&quot;nofollow&quot;&gt;Architectural Styles and the Design of Network-based Software Architectures&lt;/a&gt; - Roy T. Fielding&amp;#039;s dissertation.&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.infoq.com/articles/rest-introduction&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.infoq.com/articles/rest-introduction&quot;  rel=&quot;nofollow&quot;&gt;InfoQ: A Brief Introduction to REST&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://bitworking.org/news/373/An-Introduction-to-REST&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://bitworking.org/news/373/An-Introduction-to-REST&quot;  rel=&quot;nofollow&quot;&gt;An Introduction to REST&lt;/a&gt; (Video)&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.infoq.com/articles/webber-rest-workflow&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.infoq.com/articles/webber-rest-workflow&quot;  rel=&quot;nofollow&quot;&gt;InfoQ: How to GET a Cup of Coffee&lt;/a&gt; - A case study&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://my.safaribooksonline.com/9781449383312&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://my.safaribooksonline.com/9781449383312&quot;  rel=&quot;nofollow&quot;&gt;REST in Practice&lt;/a&gt; (Book)&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;/div&gt;
&lt;!-- EDIT167 SECTION &quot;Resources&quot; [1351-1602] --&gt;
&lt;h3 class=&quot;sectionedit168&quot;&gt;&lt;a name=&quot;jax-rs_jersey&quot; id=&quot;jax-rs_jersey&quot;&gt;JAX-RS &amp;amp; Jersey&lt;/a&gt;&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;https://jsr311.dev.java.net/nonav/releases/1.1/spec/spec.html&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;https://jsr311.dev.java.net/nonav/releases/1.1/spec/spec.html&quot;  rel=&quot;nofollow&quot;&gt;JAX-RS: Java™ API for RESTful Web Services&lt;/a&gt; (v1.1) - September, 2009&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://jersey.java.net/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://jersey.java.net/&quot;  rel=&quot;nofollow&quot;&gt;Jersey&lt;/a&gt; - JAX-RS (JSR 311) Reference Implementation &lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;/div&gt;
&lt;!-- EDIT168 SECTION &quot;JAX-RS &amp; Jersey&quot; [1603-1919] --&gt;
&lt;h3 class=&quot;sectionedit169&quot;&gt;&lt;a name=&quot;resteasy&quot; id=&quot;resteasy&quot;&gt;RESTEasy&lt;/a&gt;&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://jboss.org/resteasy&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://jboss.org/resteasy&quot;  rel=&quot;nofollow&quot;&gt;RESTEasy&lt;/a&gt; - A JBoss framework for writing RESTful web services&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://jboss.org/resteasy/docs&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://jboss.org/resteasy/docs&quot;  rel=&quot;nofollow&quot;&gt;RESTEasy JAX-RS Documentation&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://blog.esofthead.com/develop-restful-application-with-resteasy/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://blog.esofthead.com/develop-restful-application-with-resteasy/&quot;  rel=&quot;nofollow&quot;&gt;Develop Restful application with RESTeasy&lt;/a&gt; (Tutorial) &lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;/div&gt;
&lt;!-- EDIT169 SECTION &quot;RESTEasy&quot; [1920-2921] --&gt;
&lt;h3 class=&quot;sectionedit170&quot;&gt;&lt;a name=&quot;atompub&quot; id=&quot;atompub&quot;&gt;AtomPub&lt;/a&gt;&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.ietf.org/rfc/rfc5023.txt&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.ietf.org/rfc/rfc5023.txt&quot;  rel=&quot;nofollow&quot;&gt;The Atom Publishing Protocol (RFC 5023)&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://atomserver.codehaus.org/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://atomserver.codehaus.org/&quot;  rel=&quot;nofollow&quot;&gt;AtomServer &lt;/a&gt; - A generic data store implemented as a RESTful web service.&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://abdera.apache.org/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://abdera.apache.org/&quot;  rel=&quot;nofollow&quot;&gt;Apache Abdera&lt;/a&gt; - A functionally-complete, high-performance implementation of the IETF Atom Syndication Format (&lt;acronym title=&quot;Request for Comments&quot;&gt;RFC&lt;/acronym&gt; 4287) and Atom Publishing Protocol (&lt;acronym title=&quot;Request for Comments&quot;&gt;RFC&lt;/acronym&gt; 5023) specifications.&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://code.google.com/p/atomojo/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://code.google.com/p/atomojo/&quot;  rel=&quot;nofollow&quot;&gt;atomojo&lt;/a&gt; - An Atom Publishing Protocol Client &amp;amp; Server&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; “Getting to know the Atom Publishing Protocol” developerWorks Article:&lt;/div&gt;
&lt;ul&gt;
&lt;li class=&quot;level2&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.ibm.com/developerworks/xml/library/x-atompp1/index.html&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.ibm.com/developerworks/xml/library/x-atompp1/index.html&quot;  rel=&quot;nofollow&quot;&gt;Part 1: Create and edit Web resources with the Atom Publishing Protocol&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level2&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.ibm.com/developerworks/xml/library/x-atompp2/index.html&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.ibm.com/developerworks/xml/library/x-atompp2/index.html&quot;  rel=&quot;nofollow&quot;&gt;Part 2: Put the Atom Publishing Protocol (APP) to work&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level2&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.ibm.com/developerworks/xml/library/x-atompp3/index.html&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.ibm.com/developerworks/xml/library/x-atompp3/index.html&quot;  rel=&quot;nofollow&quot;&gt;Part 3: Introducing the Apache Abdera project&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;/div&gt;
&lt;!-- EDIT170 SECTION &quot;AtomPub&quot; [2922-3405] --&gt;
&lt;h2 class=&quot;sectionedit171&quot;&gt;&lt;a name=&quot;soa_esb&quot; id=&quot;soa_esb&quot;&gt;SOA / ESB&lt;/a&gt;&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://enterpriseintegrationpatterns.com/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://enterpriseintegrationpatterns.com/&quot;  rel=&quot;nofollow&quot;&gt;Patterns and Best Practices for Enterprise Integration&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://architects.dzone.com/news/top-open-source-esbs&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://architects.dzone.com/news/top-open-source-esbs&quot;  rel=&quot;nofollow&quot;&gt;Top Open Source ESB Projects&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.sonicsoftware.com/products/whitepapers/docs/best_of_breed_esbs.pdf&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.sonicsoftware.com/products/whitepapers/docs/best_of_breed_esbs.pdf&quot;  rel=&quot;nofollow&quot;&gt;Best-of-Breed ESBs&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.infoq.com/presentations/soa-without-esb&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.infoq.com/presentations/soa-without-esb&quot;  rel=&quot;nofollow&quot;&gt;InfoQ: Does My Bus Look Big in This?&lt;/a&gt; - SOA without ESB presentation by Martin Fowler and Jim Webber&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;/div&gt;
&lt;!-- EDIT171 SECTION &quot;SOA / ESB&quot; [3406-3674] --&gt;
&lt;h3 class=&quot;sectionedit172&quot;&gt;&lt;a name=&quot;open_source_esb&quot; id=&quot;open_source_esb&quot;&gt;Open Source ESB&lt;/a&gt;&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.mulesoft.com/mule-esb-open-source-esb&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.mulesoft.com/mule-esb-open-source-esb&quot;  rel=&quot;nofollow&quot;&gt;Mule ESB&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://petals.ow2.org/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://petals.ow2.org/&quot;  rel=&quot;nofollow&quot;&gt;Petals ESB&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://fusesource.com/products/enterprise-servicemix/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://fusesource.com/products/enterprise-servicemix/&quot;  rel=&quot;nofollow&quot;&gt;FUSE ESB&lt;/a&gt; / &lt;a href=&quot;http://servicemix.apache.org/home.html&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://servicemix.apache.org/home.html&quot;  rel=&quot;nofollow&quot;&gt;Apache ServiceMix&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;/div&gt;
&lt;!-- EDIT172 SECTION &quot;Open Source ESB&quot; [3675-] --&gt;</description>
            <pubDate>Mon, 06 Jun 2022 01:33:33 -0400</pubDate>
        </item>
        <item>
            <title>Windows Notes</title>
            <link>http://www.kirkdorffer.com/wiki/windows_notes</link>
            <description>
&lt;h0 class=&quot;sectionedit173&quot;&gt;&lt;a name=&quot;windows_notes&quot; id=&quot;windows_notes&quot;&gt;Windows Notes&lt;/a&gt;&lt;/h0&gt;
&lt;div class=&quot;level0&quot;&gt;

&lt;/div&gt;
&lt;!-- EDIT173 SECTION &quot;Windows Notes&quot; [1-29] --&gt;
&lt;h1 class=&quot;sectionedit174&quot;&gt;&lt;a name=&quot;windows_notes1&quot; id=&quot;windows_notes1&quot;&gt;Windows Notes&lt;/a&gt;&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;/div&gt;
&lt;!-- EDIT174 SECTION &quot;Windows Notes&quot; [30-214] --&gt;
&lt;h2 class=&quot;sectionedit175&quot;&gt;&lt;a name=&quot;tools&quot; id=&quot;tools&quot;&gt;Tools&lt;/a&gt;&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://technet.microsoft.com/en-us/sysinternals/bb896768.aspx&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://technet.microsoft.com/en-us/sysinternals/bb896768.aspx&quot;  rel=&quot;nofollow&quot;&gt;Junction&lt;/a&gt; - Create Win2K NTFS symbolic links.&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://gnuwin32.sourceforge.net/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://gnuwin32.sourceforge.net/&quot;  rel=&quot;nofollow&quot;&gt;GnuWin32&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;/div&gt;
&lt;!-- EDIT175 SECTION &quot;Tools&quot; [215-633] --&gt;
&lt;h3 class=&quot;sectionedit176&quot;&gt;&lt;a name=&quot;forfiles&quot; id=&quot;forfiles&quot;&gt;Forfiles&lt;/a&gt;&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
Example:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;forfiles -D-1 -PC:\Windows\temp -Manon* -C&amp;quot;cmd /c if @ISDIR==TRUE rd /q /s @FILE&amp;quot;
forfiles -D-1 -PC:\DOCUME~1\atg\LOCALS~1\Temp -Manon* -C&amp;quot;cmd /c if @ISDIR==TRUE rd /q /s @FILE&amp;quot;
forfiles -D-3 -PC:\Windows\temp -Mhudson-remoting* -C&amp;quot;cmd /c if @ISDIR==TRUE rd /q /s @FILE&amp;quot;
forfiles -D-3 -PC:\DOCUME~1\atg\LOCALS~1\Temp -Mhudson-remoting* -C&amp;quot;cmd /c if @ISDIR==TRUE rd /q /s @FILE&amp;quot;&lt;/pre&gt;

&lt;/div&gt;
&lt;!-- EDIT176 SECTION &quot;Forfiles&quot; [634-799] --&gt;
&lt;h2 class=&quot;sectionedit177&quot;&gt;&lt;a name=&quot;windows_7&quot; id=&quot;windows_7&quot;&gt;Windows 7&lt;/a&gt;&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://sinewalker.wordpress.com/2010/03/10/ms-windows-focus-follows-mouse-registry-hacks/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://sinewalker.wordpress.com/2010/03/10/ms-windows-focus-follows-mouse-registry-hacks/&quot;  rel=&quot;nofollow&quot;&gt;MS-Windows focus-follows-mouse Registry hacks&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;/div&gt;
&lt;!-- EDIT177 SECTION &quot;Windows 7&quot; [800-] --&gt;</description>
            <pubDate>Sat, 16 Nov 2013 20:08:37 -0400</pubDate>
        </item>
        <item>
            <title>Seattle WingDing Notes</title>
            <link>http://www.kirkdorffer.com/wiki/wingding_notes</link>
            <description>
&lt;h0 class=&quot;sectionedit178&quot;&gt;&lt;a name=&quot;seattle_wingding_notes&quot; id=&quot;seattle_wingding_notes&quot;&gt;Seattle WingDing Notes&lt;/a&gt;&lt;/h0&gt;
&lt;div class=&quot;level0&quot;&gt;

&lt;/div&gt;
&lt;!-- EDIT178 SECTION &quot;Seattle WingDing Notes&quot; [1-201] --&gt;
&lt;h1 class=&quot;sectionedit179&quot;&gt;&lt;a name=&quot;seattle_wingding_notes1&quot; id=&quot;seattle_wingding_notes1&quot;&gt;Seattle WingDing Notes&lt;/a&gt;&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://tech.groups.yahoo.com/group/wingding/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://tech.groups.yahoo.com/group/wingding/&quot;  rel=&quot;nofollow&quot;&gt;WingDings Yahoo Group&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://code.google.com/p/wing-ding/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://code.google.com/p/wing-ding/&quot;  rel=&quot;nofollow&quot;&gt;Shared WingDing Google Code SVN Repository&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;/div&gt;
&lt;!-- EDIT179 SECTION &quot;Seattle WingDing Notes&quot; [202-699] --&gt;
&lt;h2 class=&quot;sectionedit180&quot;&gt;&lt;a name=&quot;java_security&quot; id=&quot;java_security&quot;&gt;Java Security&lt;/a&gt;&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
Studied from January 2017 - April 2017
&lt;/p&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.informit.com/store/java-coding-guidelines-75-recommendations-for-reliable-9780133439519&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.informit.com/store/java-coding-guidelines-75-recommendations-for-reliable-9780133439519&quot;  rel=&quot;nofollow&quot;&gt;Java Coding Guidelines: 75 Recommendations for Reliable and Secure Programs&lt;/a&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li class=&quot;level2&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;https://www.securecoding.cert.org/confluence/display/java/SEI+CERT+Oracle+Coding+Standard+for+Java&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;https://www.securecoding.cert.org/confluence/display/java/SEI+CERT+Oracle+Coding+Standard+for+Java&quot;  rel=&quot;nofollow&quot;&gt;SEI CERT Oracle Coding Standard for Java Wiki&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level2&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;https://github.com/robertkuhar/java_coding_guidelines&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;https://github.com/robertkuhar/java_coding_guidelines&quot;  rel=&quot;nofollow&quot;&gt;Robert Kuhar&amp;#039;s Github notes&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;/div&gt;
&lt;!-- EDIT180 SECTION &quot;Java Security&quot; [700-1852] --&gt;
&lt;h2 class=&quot;sectionedit181&quot;&gt;&lt;a name=&quot;security_and_countermeasures_bitcoin&quot; id=&quot;security_and_countermeasures_bitcoin&quot;&gt;Security and Countermeasures / Bitcoin&lt;/a&gt;&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
Studied from January 2014 - February 2014
&lt;/p&gt;

&lt;p&gt;
&lt;acronym title=&quot;Secure Sockets Layer&quot;&gt;SSL&lt;/acronym&gt;:
&lt;/p&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://security.stackexchange.com/questions/20803/how-does-ssl-work&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://security.stackexchange.com/questions/20803/how-does-ssl-work&quot;  rel=&quot;nofollow&quot;&gt;How does SSL work?&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://publib.boulder.ibm.com/infocenter/wmqv6/v6r0/index.jsp?topic=%2Fcom.ibm.mq.csqzas.doc%2Fsy10660_.htm&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://publib.boulder.ibm.com/infocenter/wmqv6/v6r0/index.jsp?topic=%2Fcom.ibm.mq.csqzas.doc%2Fsy10660_.htm&quot;  rel=&quot;nofollow&quot;&gt;An overview of the SSL handshake&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.infoq.com/articles/keeping-your-secrets&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.infoq.com/articles/keeping-your-secrets&quot;  rel=&quot;nofollow&quot;&gt;Keeping Your Secrets&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;https://ssltools.websecurity.symantec.com/checker/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;https://ssltools.websecurity.symantec.com/checker/&quot;  rel=&quot;nofollow&quot;&gt;SSL Toolbox&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://ibuildings.nl/blog/2013/03/4-http-security-headers-you-should-always-be-using&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://ibuildings.nl/blog/2013/03/4-http-security-headers-you-should-always-be-using&quot;  rel=&quot;nofollow&quot;&gt;4 HTTP Security headers you should always be using | ibuildings&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;
Bitcoin:
&lt;/p&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;https://docs.google.com/presentation/d/1TJ425ivx3387alSxTzPL5lH30fg-Id0kvY3TIQhe8mI/edit#slide=id.p&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;https://docs.google.com/presentation/d/1TJ425ivx3387alSxTzPL5lH30fg-Id0kvY3TIQhe8mI/edit#slide=id.p&quot;  rel=&quot;nofollow&quot;&gt;Bitcoins For Dummies&lt;/a&gt; - Steven Lewis Presentation&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.michaelnielsen.org/ddi/how-the-bitcoin-protocol-actually-works/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.michaelnielsen.org/ddi/how-the-bitcoin-protocol-actually-works/&quot;  rel=&quot;nofollow&quot;&gt;How the Bitcoin protocol actually works&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://dealbook.nytimes.com/2014/01/21/why-bitcoin-matters/?_php=true&amp;amp;_type=blogs&amp;amp;_r=0&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://dealbook.nytimes.com/2014/01/21/why-bitcoin-matters/?_php=true&amp;amp;_type=blogs&amp;amp;_r=0&quot;  rel=&quot;nofollow&quot;&gt;Why Bitcoin Matters - By Marc Andreessen&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://bitcoinwisdom.com/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://bitcoinwisdom.com/&quot;  rel=&quot;nofollow&quot;&gt;Bitcoin Wisdom&lt;/a&gt; - Current Market Price&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;/div&gt;
&lt;!-- EDIT181 SECTION &quot;Security and Countermeasures / Bitcoin&quot; [1853-2146] --&gt;
&lt;h2 class=&quot;sectionedit182&quot;&gt;&lt;a name=&quot;akka&quot; id=&quot;akka&quot;&gt;Akka&lt;/a&gt;&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
Studied from September 2013 - January 2014
&lt;/p&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://doc.akka.io/docs/akka/2.2.1/AkkaJava.pdf&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://doc.akka.io/docs/akka/2.2.1/AkkaJava.pdf&quot;  rel=&quot;nofollow&quot;&gt;Akka Java Documentation&lt;/a&gt; (&lt;acronym title=&quot;Portable Document Format&quot;&gt;PDF&lt;/acronym&gt;)&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://vimeo.com/user18356272/review/66548920/f93e3fa7d9&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://vimeo.com/user18356272/review/66548920/f93e3fa7d9&quot;  rel=&quot;nofollow&quot;&gt;Viktor Klang - Distributed Reactive Programming -- Introducing Akka 2.2&lt;/a&gt; (Video)&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;/div&gt;
&lt;!-- EDIT182 SECTION &quot;Akka&quot; [2147-2963] --&gt;
&lt;h2 class=&quot;sectionedit183&quot;&gt;&lt;a name=&quot;algorithms&quot; id=&quot;algorithms&quot;&gt;Algorithms&lt;/a&gt;&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
Studied from April 2013 - Present
&lt;/p&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;https://class.coursera.org/algs4partII-001/class/index&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;https://class.coursera.org/algs4partII-001/class/index&quot;  rel=&quot;nofollow&quot;&gt;Algorithms, Part II&lt;/a&gt; - Princeton online course (&lt;a href=&quot;http://www.kirkdorffer.com/wingdings/algorithms/AlgorithmsII/Algorithms-Part_II.html&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.kirkdorffer.com/wingdings/algorithms/AlgorithmsII/Algorithms-Part_II.html&quot;  rel=&quot;nofollow&quot;&gt; Saved Local Files&lt;/a&gt;)&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;https://class.coursera.org/algs4partI-002/class/index&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;https://class.coursera.org/algs4partI-002/class/index&quot;  rel=&quot;nofollow&quot;&gt;Algorithms, Part I&lt;/a&gt; - Princeton online course (&lt;a href=&quot;http://www.kirkdorffer.com/wingdings/algorithms/AlgorithmsI/Algorithms-Part_I.html&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.kirkdorffer.com/wingdings/algorithms/AlgorithmsI/Algorithms-Part_I.html&quot;  rel=&quot;nofollow&quot;&gt; Saved Local Files&lt;/a&gt;)&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://algs4.cs.princeton.edu/home/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://algs4.cs.princeton.edu/home/&quot;  rel=&quot;nofollow&quot;&gt;Algorithms, 4th Edition&lt;/a&gt; - Online Book with code&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;
Additional Material:
&lt;/p&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-046j-introduction-to-algorithms-sma-5503-fall-2005/video-lectures/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-046j-introduction-to-algorithms-sma-5503-fall-2005/video-lectures/&quot;  rel=&quot;nofollow&quot;&gt;MIT  Introduction to Algorithms (SMA 5503)&lt;/a&gt; - Video lectures&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;/div&gt;
&lt;!-- EDIT183 SECTION &quot;Algorithms&quot; [2964-3420] --&gt;
&lt;h2 class=&quot;sectionedit184&quot;&gt;&lt;a name=&quot;functional_programming_clojure&quot; id=&quot;functional_programming_clojure&quot;&gt;Functional Programming / Clojure&lt;/a&gt;&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
Studied from October 2012 - March 2013
&lt;/p&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;https://leanpub.com/fp-oo&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;https://leanpub.com/fp-oo&quot;  rel=&quot;nofollow&quot;&gt;&amp;quot;Functional Programming for the Object-Oriented Programmer&amp;quot; by Brian Marick&lt;/a&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li class=&quot;level2&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;https://groups.google.com/forum/?fromgroups#!forum/fp-oo&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;https://groups.google.com/forum/?fromgroups#!forum/fp-oo&quot;  rel=&quot;nofollow&quot;&gt;Google Groups book forum&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level2&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://app.kodowa.com/playground&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://app.kodowa.com/playground&quot;  rel=&quot;nofollow&quot;&gt;Light Table playground&lt;/a&gt; (REPL)&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level2&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;https://github.com/technomancy/leiningen&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;https://github.com/technomancy/leiningen&quot;  rel=&quot;nofollow&quot;&gt;leiningen&lt;/a&gt; - for automating Clojure projects&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;/div&gt;
&lt;!-- EDIT184 SECTION &quot;Functional Programming / Clojure&quot; [3421-3726] --&gt;
&lt;h2 class=&quot;sectionedit185&quot;&gt;&lt;a name=&quot;gwt_and_phonegap&quot; id=&quot;gwt_and_phonegap&quot;&gt;GWT and PhoneGap&lt;/a&gt;&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
Brief look at cross platform development using PhoneGap on GWT in September 2012
&lt;/p&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://xa.yimg.com/kq/groups/2267342/1795041769/name/OneStackToRuleThemAll.pdf&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://xa.yimg.com/kq/groups/2267342/1795041769/name/OneStackToRuleThemAll.pdf&quot;  rel=&quot;nofollow&quot;&gt;Web Apps &amp;amp; Mobile Platform Proliferation: Affecting Team Dynamics with Development Language Choices&lt;/a&gt; (&lt;acronym title=&quot;Portable Document Format&quot;&gt;PDF&lt;/acronym&gt;)&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;/div&gt;
&lt;!-- EDIT185 SECTION &quot;GWT and PhoneGap&quot; [3727-5120] --&gt;
&lt;h2 class=&quot;sectionedit186&quot;&gt;&lt;a name=&quot;various_articles_by_robert_c_martin&quot; id=&quot;various_articles_by_robert_c_martin&quot;&gt;Various Articles by Robert C. Martin&lt;/a&gt;&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
Studied from May 2012 - September 2012
&lt;/p&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.objectmentor.com/resources/publishedArticles.html&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.objectmentor.com/resources/publishedArticles.html&quot;  rel=&quot;nofollow&quot;&gt;Articles By Robert C. Martin&lt;/a&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li class=&quot;level2&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.objectmentor.com/resources/articles/TestingThings.ppt&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.objectmentor.com/resources/articles/TestingThings.ppt&quot;  rel=&quot;nofollow&quot;&gt;Testing Things That Seem Hard to Test&lt;/a&gt; (PPT)&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level2&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.objectmentor.com/resources/articles/Proxy.pdf&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.objectmentor.com/resources/articles/Proxy.pdf&quot;  rel=&quot;nofollow&quot;&gt;Proxy and Stairway to Heaven&lt;/a&gt; (&lt;acronym title=&quot;Portable Document Format&quot;&gt;PDF&lt;/acronym&gt;)&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level2&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.objectmentor.com/resources/articles/agileProcess.pdf&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.objectmentor.com/resources/articles/agileProcess.pdf&quot;  rel=&quot;nofollow&quot;&gt;Agile Processes&lt;/a&gt; (&lt;acronym title=&quot;Portable Document Format&quot;&gt;PDF&lt;/acronym&gt;)&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level2&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://blog.8thlight.com/uncle-bob/2011/10/20/Simple-Hickey.html&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://blog.8thlight.com/uncle-bob/2011/10/20/Simple-Hickey.html&quot;  rel=&quot;nofollow&quot;&gt;Simple Hickey&lt;/a&gt; - Regarding Rich Hickey&amp;#039;s &lt;a href=&quot;http://www.infoq.com/presentations/Simple-Made-Easy&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.infoq.com/presentations/Simple-Made-Easy&quot;  rel=&quot;nofollow&quot;&gt;&amp;quot;Simple made Easy&amp;quot; talk&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level2&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.objectmentor.com/resources/articles/ocp.pdf&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.objectmentor.com/resources/articles/ocp.pdf&quot;  rel=&quot;nofollow&quot;&gt;The Open Closed Principle&lt;/a&gt; (&lt;acronym title=&quot;Portable Document Format&quot;&gt;PDF&lt;/acronym&gt;)&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level2&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.objectmentor.com/resources/articles/lsp.pdf&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.objectmentor.com/resources/articles/lsp.pdf&quot;  rel=&quot;nofollow&quot;&gt;The Liskov Substitution Principle&lt;/a&gt; (&lt;acronym title=&quot;Portable Document Format&quot;&gt;PDF&lt;/acronym&gt;)&lt;/div&gt;
&lt;ul&gt;
&lt;li class=&quot;level3&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;https://docs.google.com/presentation/d/1nCETmWh6FLEat_I0xDA4qFaAwabXpd7AR4m8arz0ciM/edit?pli=1#slide=id.p&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;https://docs.google.com/presentation/d/1nCETmWh6FLEat_I0xDA4qFaAwabXpd7AR4m8arz0ciM/edit?pli=1#slide=id.p&quot;  rel=&quot;nofollow&quot;&gt;Liskov Substitution Principle&lt;/a&gt; (Steven Lewis&amp;#039; Slides)&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li class=&quot;level2&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.objectmentor.com/resources/articles/dip.pdf&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.objectmentor.com/resources/articles/dip.pdf&quot;  rel=&quot;nofollow&quot;&gt;The Dependency Inversion Principle&lt;/a&gt; (&lt;acronym title=&quot;Portable Document Format&quot;&gt;PDF&lt;/acronym&gt;)&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level2&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.objectmentor.com/resources/articles/isp.pdf&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.objectmentor.com/resources/articles/isp.pdf&quot;  rel=&quot;nofollow&quot;&gt;The Interface Segregation Principle&lt;/a&gt; (&lt;acronym title=&quot;Portable Document Format&quot;&gt;PDF&lt;/acronym&gt;)&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level2&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.objectmentor.com/resources/articles/srp.pdf&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.objectmentor.com/resources/articles/srp.pdf&quot;  rel=&quot;nofollow&quot;&gt;The Single Responsibility Principle&lt;/a&gt; (&lt;acronym title=&quot;Portable Document Format&quot;&gt;PDF&lt;/acronym&gt;)&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;/div&gt;
&lt;!-- EDIT186 SECTION &quot;Various Articles by Robert C. Martin&quot; [5121-6872] --&gt;
&lt;h2 class=&quot;sectionedit187&quot;&gt;&lt;a name=&quot;various_papers_on_programming&quot; id=&quot;various_papers_on_programming&quot;&gt;Various Papers on Programming&lt;/a&gt;&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
Studied from January 2012 - May 2012
&lt;/p&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://blog.objectmentor.com/articles/2009/02/26/10-papers-every-programmer-should-read-at-least-twice&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://blog.objectmentor.com/articles/2009/02/26/10-papers-every-programmer-should-read-at-least-twice&quot;  rel=&quot;nofollow&quot;&gt;10 Papers Every Programmer Should Read (At Least Twice)&lt;/a&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li class=&quot;level2&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://sunnyday.mit.edu/16.355/parnas-criteria.html&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://sunnyday.mit.edu/16.355/parnas-criteria.html&quot;  rel=&quot;nofollow&quot;&gt;On the criteria to be used in decomposing systems into modules&lt;/a&gt; – David Parnas&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level2&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://labs.oracle.com/techrep/1994/smli_tr-94-29.pdf&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://labs.oracle.com/techrep/1994/smli_tr-94-29.pdf&quot;  rel=&quot;nofollow&quot;&gt;A Note On Distributed Computing&lt;/a&gt; – Jim Waldo, Geoff Wyant, Ann Wollrath, Sam Kendall&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level2&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.thecorememory.com/Next_700.pdf&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.thecorememory.com/Next_700.pdf&quot;  rel=&quot;nofollow&quot;&gt;The Next 700 Programming Languages&lt;/a&gt; – P. J. Landin&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level2&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://tinyurl.com/6paawqd&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://tinyurl.com/6paawqd&quot;  rel=&quot;nofollow&quot;&gt;Can Programming Be Liberated from the von Neumann Style?&lt;/a&gt; – John Backus&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level2&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://cm.bell-labs.com/who/ken/trust.html&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://cm.bell-labs.com/who/ken/trust.html&quot;  rel=&quot;nofollow&quot;&gt;Reflections on Trusting Trust&lt;/a&gt; – Ken Thompson&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level2&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://tinyurl.com/88wes7p&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://tinyurl.com/88wes7p&quot;  rel=&quot;nofollow&quot;&gt;Lisp: Good News, Bad News, How to Win Big&lt;/a&gt; – Richard Gabriel&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level2&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://tinyurl.com/7mlgqhd&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://tinyurl.com/7mlgqhd&quot;  rel=&quot;nofollow&quot;&gt;An experimental evaluation of the assumption of independence in multiversion programming&lt;/a&gt; – John Knight and Nancy Leveson&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level2&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.laputan.org/pub/patterns/noble/noble.pdf&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.laputan.org/pub/patterns/noble/noble.pdf&quot;  rel=&quot;nofollow&quot;&gt;Arguments and Results&lt;/a&gt; – James Noble&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level2&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://c2.com/doc/oopsla89/paper.html&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://c2.com/doc/oopsla89/paper.html&quot;  rel=&quot;nofollow&quot;&gt;A Laboratory For Teaching Object-Oriented Thinking&lt;/a&gt; – Kent Beck, Ward Cunningham&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level2&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://tinyurl.com/83ux7td&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://tinyurl.com/83ux7td&quot;  rel=&quot;nofollow&quot;&gt;Programming as an Experience: the inspiration for Self&lt;/a&gt; – David Ungar, Randall B. Smith&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;
Plus:
&lt;/p&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://highlyscalable.wordpress.com/2012/03/01/nosql-data-modeling-techniques/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://highlyscalable.wordpress.com/2012/03/01/nosql-data-modeling-techniques/&quot;  rel=&quot;nofollow&quot;&gt;NoSQL Data Modeling Techniques&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.stanford.edu/~ouster/cgi-bin/decisions.php&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.stanford.edu/~ouster/cgi-bin/decisions.php&quot;  rel=&quot;nofollow&quot;&gt;Open Decision-Making&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://martinfowler.com/articles/lmax.html&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://martinfowler.com/articles/lmax.html&quot;  rel=&quot;nofollow&quot;&gt;The LMAX Architecture&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;/div&gt;
&lt;!-- EDIT187 SECTION &quot;Various Papers on Programming&quot; [6873-7467] --&gt;
&lt;h2 class=&quot;sectionedit188&quot;&gt;&lt;a name=&quot;google_guava&quot; id=&quot;google_guava&quot;&gt;Google Guava&lt;/a&gt;&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
Studied from December 2011 - January 2012
&lt;/p&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://code.google.com/p/guava-libraries/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://code.google.com/p/guava-libraries/&quot;  rel=&quot;nofollow&quot;&gt;Google Guava&lt;/a&gt;:&lt;/div&gt;
&lt;ul&gt;
&lt;li class=&quot;level2&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://code.google.com/p/guava-libraries/wiki/GuavaExplained&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://code.google.com/p/guava-libraries/wiki/GuavaExplained&quot;  rel=&quot;nofollow&quot;&gt;GuavaExplained Wiki&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level2&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.youtube.com/watch?v=ZeO_J2OcHYM&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.youtube.com/watch?v=ZeO_J2OcHYM&quot;  rel=&quot;nofollow&quot;&gt;GTUG - Using the Google Collections Library for Java (1 of 2)&lt;/a&gt; (41 mins)&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level2&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.youtube.com/watch?v=9ni_KEkHfto&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.youtube.com/watch?v=9ni_KEkHfto&quot;  rel=&quot;nofollow&quot;&gt;GTUG - Using the Google Collections Library for Java (2 of 2)&lt;/a&gt; (54 mins)&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level2&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.javacodegeeks.com/2011/09/google-guava-libraries-essentials.html&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.javacodegeeks.com/2011/09/google-guava-libraries-essentials.html&quot;  rel=&quot;nofollow&quot;&gt;Google Guava Libraries Essentials&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;/div&gt;
&lt;!-- EDIT188 SECTION &quot;Google Guava&quot; [7468-7625] --&gt;
&lt;h2 class=&quot;sectionedit189&quot;&gt;&lt;a name=&quot;java&quot; id=&quot;java&quot;&gt;Java&lt;/a&gt;&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
Studied from October 2011 - December 2011
&lt;/p&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://oreilly.com/catalog/9780596803742&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://oreilly.com/catalog/9780596803742&quot;  rel=&quot;nofollow&quot;&gt;&amp;quot;Java: The Good Parts&amp;quot; by Jim Waldo - O&amp;#039;Reilly&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;/div&gt;
&lt;!-- EDIT189 SECTION &quot;Java&quot; [7626-7767] --&gt;
&lt;h2 class=&quot;sectionedit190&quot;&gt;&lt;a name=&quot;rest&quot; id=&quot;rest&quot;&gt;REST&lt;/a&gt;&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
Studied from April 2011 - October 2011
&lt;/p&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://oreilly.com/catalog/9780596805838&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://oreilly.com/catalog/9780596805838&quot;  rel=&quot;nofollow&quot;&gt;REST in Practice - O&amp;#039;Reilly Media&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;/div&gt;
&lt;!-- EDIT190 SECTION &quot;REST&quot; [7768-7967] --&gt;
&lt;h2 class=&quot;sectionedit191&quot;&gt;&lt;a name=&quot;html_5&quot; id=&quot;html_5&quot;&gt;HTML 5&lt;/a&gt;&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
Studied from January 2011 - April 2011
&lt;/p&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://diveintohtml5.org/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://diveintohtml5.org/&quot;  rel=&quot;nofollow&quot;&gt;Dive Into HTML5&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://oreilly.com/catalog/9780596806033/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://oreilly.com/catalog/9780596806033/&quot;  rel=&quot;nofollow&quot;&gt;HTML5: Up and Running - O&amp;#039;Reilly Media&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;/div&gt;
&lt;!-- EDIT191 SECTION &quot;HTML 5&quot; [7968-8251] --&gt;
&lt;h2 class=&quot;sectionedit192&quot;&gt;&lt;a name=&quot;javascript&quot; id=&quot;javascript&quot;&gt;JavaScript&lt;/a&gt;&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
Studied from September 2010 - December 2010
&lt;/p&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://oreilly.com/catalog/9780596517748&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://oreilly.com/catalog/9780596517748&quot;  rel=&quot;nofollow&quot;&gt;JavaScript: The Good Parts by Douglas Crockford&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://video.yahoo.com/watch/630959/2974197&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://video.yahoo.com/watch/630959/2974197&quot;  rel=&quot;nofollow&quot;&gt;Douglas Crockford: &amp;quot;JavaScript - The Good Parts&amp;quot; on Yahoo! Video&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;/div&gt;
&lt;!-- EDIT192 SECTION &quot;JavaScript&quot; [8252-9440] --&gt;
&lt;h2 class=&quot;sectionedit193&quot;&gt;&lt;a name=&quot;nosql&quot; id=&quot;nosql&quot;&gt;NoSQL&lt;/a&gt;&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
Studied from May 2010 - August 2010
&lt;/p&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://asserttrue.blogspot.com/2009/12/nosql-required-reading.html&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://asserttrue.blogspot.com/2009/12/nosql-required-reading.html&quot;  rel=&quot;nofollow&quot;&gt;NoSQL Required Reading list&lt;/a&gt;:&lt;/div&gt;
&lt;ul&gt;
&lt;li class=&quot;level2&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://s3.amazonaws.com/AllThingsDistributed/sosp/amazon-dynamo-sosp2007.pdf&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://s3.amazonaws.com/AllThingsDistributed/sosp/amazon-dynamo-sosp2007.pdf&quot;  rel=&quot;nofollow&quot;&gt;Dynamo: Amazon’s Highly Available Key-value Store&lt;/a&gt; (&lt;acronym title=&quot;Portable Document Format&quot;&gt;PDF&lt;/acronym&gt;)&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level2&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://static.googleusercontent.com/external_content/untrusted_dlcp/research.google.com/en/us/archive/bigtable-osdi06.pdf&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://static.googleusercontent.com/external_content/untrusted_dlcp/research.google.com/en/us/archive/bigtable-osdi06.pdf&quot;  rel=&quot;nofollow&quot;&gt;Bigtable: A Distributed Storage System for Structured Data&lt;/a&gt; (&lt;acronym title=&quot;Portable Document Format&quot;&gt;PDF&lt;/acronym&gt;)&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level2&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.allthingsdistributed.com/2008/12/eventually_consistent.html&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.allthingsdistributed.com/2008/12/eventually_consistent.html&quot;  rel=&quot;nofollow&quot;&gt;Eventually Consistent - Revisited&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level2&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.julianbrowne.com/article/viewer/brewers-cap-theorem&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.julianbrowne.com/article/viewer/brewers-cap-theorem&quot;  rel=&quot;nofollow&quot;&gt;Brewer&amp;#039;s CAP Theorem&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level2&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://blog.oskarsson.nu/2009/06/nosql-debrief.html&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://blog.oskarsson.nu/2009/06/nosql-debrief.html&quot;  rel=&quot;nofollow&quot;&gt;NOSQL debrief&lt;/a&gt; (Video)&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level2&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://adam.heroku.com/past/2009/7/6/sql_databases_dont_scale/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://adam.heroku.com/past/2009/7/6/sql_databases_dont_scale/&quot;  rel=&quot;nofollow&quot;&gt;SQL Databases Don&amp;#039;t Scale&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level2&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.rackspace.com/blog/nosql-ecosystem/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.rackspace.com/blog/nosql-ecosystem/&quot;  rel=&quot;nofollow&quot;&gt;NoSQL Ecosystem&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level2&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://themindstorms.blogspot.com/2009/05/quick-reference-to-alternative-data.html&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://themindstorms.blogspot.com/2009/05/quick-reference-to-alternative-data.html&quot;  rel=&quot;nofollow&quot;&gt;Quick Reference to Alternative data storages&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://nosqlsummer.org/papers&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://nosqlsummer.org/papers&quot;  rel=&quot;nofollow&quot;&gt;Another reading list of NoSQL related papers&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;/div&gt;
&lt;!-- EDIT193 SECTION &quot;NoSQL&quot; [9441-10153] --&gt;
&lt;h2 class=&quot;sectionedit194&quot;&gt;&lt;a name=&quot;scala&quot; id=&quot;scala&quot;&gt;Scala&lt;/a&gt;&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
Studied from September 2009 - April 2010
&lt;/p&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://programming-scala.labs.oreilly.com/index.html&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://programming-scala.labs.oreilly.com/index.html&quot;  rel=&quot;nofollow&quot;&gt;&amp;quot;Programming Scala&amp;quot; by Dean Wampler and Alex Payne&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://examples.oreilly.com/9780596155964/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://examples.oreilly.com/9780596155964/&quot;  rel=&quot;nofollow&quot;&gt;&amp;quot;Programming Scala&amp;quot; Code Samples&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.scala-lang.org/docu/files/ScalaOverview.pdf&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.scala-lang.org/docu/files/ScalaOverview.pdf&quot;  rel=&quot;nofollow&quot;&gt;Scala Overview&lt;/a&gt; (&lt;acronym title=&quot;Portable Document Format&quot;&gt;PDF&lt;/acronym&gt;)&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.scala-lang.org/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.scala-lang.org/&quot;  rel=&quot;nofollow&quot;&gt;Scala Language&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.scala-lang.org/docu/files/api/index.html&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.scala-lang.org/docu/files/api/index.html&quot;  rel=&quot;nofollow&quot;&gt;Scala API Docs&lt;/a&gt; (&lt;a href=&quot;http://scala-tools.org/scaladocs/scala-library/2.7.1/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://scala-tools.org/scaladocs/scala-library/2.7.1/&quot;  rel=&quot;nofollow&quot;&gt;Alternate API Doc Style&lt;/a&gt;)&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;
Studied in August 2009
&lt;/p&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.codecommit.com/blog/scala/roundup-scala-for-java-refugees&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://www.codecommit.com/blog/scala/roundup-scala-for-java-refugees&quot;  rel=&quot;nofollow&quot;&gt;Code Commit Blog Article - Roundup: Scala for Java Refugees&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;/div&gt;
&lt;!-- EDIT194 SECTION &quot;Scala&quot; [10154-10375] --&gt;
&lt;h2 class=&quot;sectionedit195&quot;&gt;&lt;a name=&quot;clojure&quot; id=&quot;clojure&quot;&gt;Clojure&lt;/a&gt;&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
Looked at briefly in July 2009
&lt;/p&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://delicious.com/stand/clojure&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://delicious.com/stand/clojure&quot;  rel=&quot;nofollow&quot;&gt;Stan Dyck&amp;#039;s Clojure Bookmarks&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://jnb.ociweb.com/jnb/jnbMar2009.html&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://jnb.ociweb.com/jnb/jnbMar2009.html&quot;  rel=&quot;nofollow&quot;&gt;Clojure - Functional Programming for the JVM&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;/div&gt;
&lt;!-- EDIT195 SECTION &quot;Clojure&quot; [10376-10720] --&gt;
&lt;h2 class=&quot;sectionedit196&quot;&gt;&lt;a name=&quot;collective_intelligence&quot; id=&quot;collective_intelligence&quot;&gt;Collective Intelligence&lt;/a&gt;&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
Studied from February 2009 - July 2009
&lt;/p&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://oreilly.com/catalog/9780596529321/index.html&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://oreilly.com/catalog/9780596529321/index.html&quot;  rel=&quot;nofollow&quot;&gt;&amp;quot;Programming Collective Intelligence&amp;quot; by Toby Segaran - O&amp;#039;Reilly Site&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://proquest.safaribooksonline.com.ezproxy.spl.org:2048/9780596529321&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://proquest.safaribooksonline.com.ezproxy.spl.org:2048/9780596529321&quot;  rel=&quot;nofollow&quot;&gt;&amp;quot;Programming Collective Intelligence&amp;quot; - SPL Safari Site&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;/div&gt;
&lt;!-- EDIT196 SECTION &quot;Collective Intelligence&quot; [10721-10819] --&gt;
&lt;h2 class=&quot;sectionedit197&quot;&gt;&lt;a name=&quot;python&quot; id=&quot;python&quot;&gt;Python&lt;/a&gt;&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
Brief overview of &lt;a href=&quot;http://www.kirkdorffer.com/wiki/python_notes&quot; class=&quot;wikilink1&quot; title=&quot;python_notes&quot;&gt;Python&lt;/a&gt; 2.x by Brian Dorsey in January 2009
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT197 SECTION &quot;Python&quot; [10820-10972] --&gt;
&lt;h2 class=&quot;sectionedit198&quot;&gt;&lt;a name=&quot;java1&quot; id=&quot;java1&quot;&gt;Java&lt;/a&gt;&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
Studied from June 2008 - December 2008
&lt;/p&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://java.sun.com/docs/books/effective/&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;http://java.sun.com/docs/books/effective/&quot;  rel=&quot;nofollow&quot;&gt;&amp;quot;Effective Java, 2nd Edition&amp;quot; by Joshua Bloch&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;/div&gt;
&lt;!-- EDIT198 SECTION &quot;Java&quot; [10973-] --&gt;</description>
            <pubDate>Thu, 06 Jul 2017 13:34:27 -0400</pubDate>
        </item>
    </channel>
</rss>
