<?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:45 -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>Web Services Notes</title>
            <link>http://www.kirkdorffer.com/wiki/web_services_notes</link>
            <description>
&lt;h0 class=&quot;sectionedit1&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;!-- EDIT1 SECTION &quot;Web Services Notes&quot; [1-34] --&gt;
&lt;h1 class=&quot;sectionedit2&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;!-- EDIT2 SECTION &quot;Web Services Notes&quot; [35-326] --&gt;
&lt;h2 class=&quot;sectionedit3&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;!-- EDIT3 SECTION &quot;General Documentation&quot; [327-344] --&gt;
&lt;h2 class=&quot;sectionedit4&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;!-- EDIT4 SECTION &quot;REST&quot; [345-458] --&gt;
&lt;h3 class=&quot;sectionedit5&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;!-- EDIT5 SECTION &quot;HTTP&quot; [459-1350] --&gt;
&lt;h3 class=&quot;sectionedit6&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;!-- EDIT6 SECTION &quot;Resources&quot; [1351-1602] --&gt;
&lt;h3 class=&quot;sectionedit7&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;!-- EDIT7 SECTION &quot;JAX-RS &amp; Jersey&quot; [1603-1919] --&gt;
&lt;h3 class=&quot;sectionedit8&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;!-- EDIT8 SECTION &quot;RESTEasy&quot; [1920-2921] --&gt;
&lt;h3 class=&quot;sectionedit9&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;!-- EDIT9 SECTION &quot;AtomPub&quot; [2922-3405] --&gt;
&lt;h2 class=&quot;sectionedit10&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;!-- EDIT10 SECTION &quot;SOA / ESB&quot; [3406-3674] --&gt;
&lt;h3 class=&quot;sectionedit11&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;!-- EDIT11 SECTION &quot;Open Source ESB&quot; [3675-] --&gt;</description>
            <author>Daniel Kirkdorffer</author>
            <pubDate>Mon, 06 Jun 2022 01:33:33 -0400</pubDate>
        </item>
        <item>
            <title>Java Notes - [Questions and Topics] </title>
            <link>http://www.kirkdorffer.com/wiki/java_notes</link>
            <description>
&lt;h0 class=&quot;sectionedit12&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;!-- EDIT12 SECTION &quot;Java Notes&quot; [1-26] --&gt;
&lt;h1 class=&quot;sectionedit13&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;!-- EDIT13 SECTION &quot;Java Notes&quot; [27-1029] --&gt;
&lt;h2 class=&quot;sectionedit14&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;!-- EDIT14 SECTION &quot;General Documentation&quot; [1030-1147] --&gt;
&lt;h2 class=&quot;sectionedit15&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;!-- EDIT15 SECTION &quot;JSP and TagLibs&quot; [1148-1239] --&gt;
&lt;h2 class=&quot;sectionedit16&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;!-- EDIT16 SECTION &quot;JPA&quot; [1240-1447] --&gt;
&lt;h3 class=&quot;sectionedit17&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;!-- EDIT17 SECTION &quot;Hibernate&quot; [1448-1542] --&gt;
&lt;h2 class=&quot;sectionedit18&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;!-- EDIT18 SECTION &quot;Ant Tools&quot; [1543-1631] --&gt;
&lt;h3 class=&quot;sectionedit19&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;!-- EDIT19 SECTION &quot;ASCII Art&quot; [1632-2074] --&gt;
&lt;h3 class=&quot;sectionedit20&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;!-- EDIT20 SECTION &quot;Build Visualization&quot; [2075-2533] --&gt;
&lt;h2 class=&quot;sectionedit21&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;!-- EDIT21 SECTION &quot;Code Analyzers&quot; [2534-2690] --&gt;
&lt;h2 class=&quot;sectionedit22&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;!-- EDIT22 SECTION &quot;Design Patterns&quot; [2691-3003] --&gt;
&lt;h2 class=&quot;sectionedit23&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;!-- EDIT23 SECTION &quot;VM Memory Management&quot; [3004-7167] --&gt;
&lt;h2 class=&quot;sectionedit24&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;!-- EDIT24 SECTION &quot;Questions and Topics&quot; [7168-] --&gt;</description>
            <author>Daniel Kirkdorffer</author>
            <pubDate>Mon, 06 Jun 2022 00:34:31 -0400</pubDate>
        </item>
        <item>
            <title>Maven Notes - [Common Commands] </title>
            <link>http://www.kirkdorffer.com/wiki/maven_notes</link>
            <description>
&lt;h0 class=&quot;sectionedit25&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;!-- EDIT25 SECTION &quot;Maven Notes&quot; [1-27] --&gt;
&lt;h1 class=&quot;sectionedit26&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;!-- EDIT26 SECTION &quot;Maven Notes&quot; [28-309] --&gt;
&lt;h2 class=&quot;sectionedit27&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;!-- EDIT27 SECTION &quot;General&quot; [310-630] --&gt;
&lt;h2 class=&quot;sectionedit28&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;!-- EDIT28 SECTION &quot;Searchable Public Repositories&quot; [631-913] --&gt;
&lt;h2 class=&quot;sectionedit29&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;!-- EDIT29 SECTION &quot;pom.xml&quot; [914-1983] --&gt;
&lt;h2 class=&quot;sectionedit30&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;!-- EDIT30 SECTION &quot;Build Phases&quot; [1984-2357] --&gt;
&lt;h2 class=&quot;sectionedit31&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;!-- EDIT31 SECTION &quot;Common Commands&quot; [2358-] --&gt;</description>
            <author>Daniel Kirkdorffer</author>
            <pubDate>Thu, 21 Oct 2021 03:31:32 -0400</pubDate>
        </item>
        <item>
            <title>Data Structures And Algorithm Notes - [Questions and Topics] </title>
            <link>http://www.kirkdorffer.com/wiki/data_structures_and_algorithm_notes</link>
            <description>
&lt;h0 class=&quot;sectionedit32&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;!-- EDIT32 SECTION &quot;Data Structures And Algorithm Notes&quot; [1-202] --&gt;
&lt;h1 class=&quot;sectionedit33&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;!-- EDIT33 SECTION &quot;Data Structures And Algorithm Notes&quot; [203-1089] --&gt;
&lt;h2 class=&quot;sectionedit34&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;!-- EDIT34 SECTION &quot;Data Structures&quot; [1090-2096] --&gt;
&lt;h2 class=&quot;sectionedit35&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;!-- EDIT35 SECTION &quot;Algorithms&quot; [2097-2470] --&gt;
&lt;h3 class=&quot;sectionedit36&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;!-- EDIT36 SECTION &quot;Big-O Notation&quot; [2471-13655] --&gt;
&lt;h2 class=&quot;sectionedit37&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;!-- EDIT37 SECTION &quot;Questions and Topics&quot; [13656-] --&gt;</description>
            <author>Daniel Kirkdorffer</author>
            <pubDate>Wed, 15 Apr 2020 20:40:59 -0400</pubDate>
        </item>
        <item>
            <title>Linux Notes - [General Documentation] </title>
            <link>http://www.kirkdorffer.com/wiki/linux_notes</link>
            <description>
&lt;h0 class=&quot;sectionedit38&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;!-- EDIT38 SECTION &quot;Linux Notes&quot; [1-27] --&gt;
&lt;h1 class=&quot;sectionedit39&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;!-- EDIT39 SECTION &quot;Linux Notes&quot; [28-716] --&gt;
&lt;h2 class=&quot;sectionedit40&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;!-- EDIT40 SECTION &quot;General Documentation&quot; [717-2582] --&gt;
&lt;h2 class=&quot;sectionedit41&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;!-- EDIT41 SECTION &quot;Samba&quot; [2583-3098] --&gt;
&lt;h3 class=&quot;sectionedit42&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;!-- EDIT42 SECTION &quot;UNIX&quot; [3099-3733] --&gt;
&lt;h2 class=&quot;sectionedit43&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;!-- EDIT43 SECTION &quot;SSH&quot; [3734-5084] --&gt;
&lt;h2 class=&quot;sectionedit44&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;!-- EDIT44 SECTION &quot;VNC&quot; [5085-5789] --&gt;
&lt;h3 class=&quot;sectionedit45&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;!-- EDIT45 SECTION &quot;UNIX&quot; [5790-] --&gt;</description>
            <author>Daniel Kirkdorffer</author>
            <pubDate>Sat, 14 Mar 2020 17:29:13 -0400</pubDate>
        </item>
        <item>
            <title>Seattle WingDing Notes - [Java Security] </title>
            <link>http://www.kirkdorffer.com/wiki/wingding_notes</link>
            <description>
&lt;h0 class=&quot;sectionedit46&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;!-- EDIT46 SECTION &quot;Seattle WingDing Notes&quot; [1-201] --&gt;
&lt;h1 class=&quot;sectionedit47&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;!-- EDIT47 SECTION &quot;Seattle WingDing Notes&quot; [202-699] --&gt;
&lt;h2 class=&quot;sectionedit48&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;!-- EDIT48 SECTION &quot;Java Security&quot; [700-1852] --&gt;
&lt;h2 class=&quot;sectionedit49&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;!-- EDIT49 SECTION &quot;Security and Countermeasures / Bitcoin&quot; [1853-2146] --&gt;
&lt;h2 class=&quot;sectionedit50&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;!-- EDIT50 SECTION &quot;Akka&quot; [2147-2963] --&gt;
&lt;h2 class=&quot;sectionedit51&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;!-- EDIT51 SECTION &quot;Algorithms&quot; [2964-3420] --&gt;
&lt;h2 class=&quot;sectionedit52&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;!-- EDIT52 SECTION &quot;Functional Programming / Clojure&quot; [3421-3726] --&gt;
&lt;h2 class=&quot;sectionedit53&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;!-- EDIT53 SECTION &quot;GWT and PhoneGap&quot; [3727-5120] --&gt;
&lt;h2 class=&quot;sectionedit54&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;!-- EDIT54 SECTION &quot;Various Articles by Robert C. Martin&quot; [5121-6872] --&gt;
&lt;h2 class=&quot;sectionedit55&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;!-- EDIT55 SECTION &quot;Various Papers on Programming&quot; [6873-7467] --&gt;
&lt;h2 class=&quot;sectionedit56&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;!-- EDIT56 SECTION &quot;Google Guava&quot; [7468-7625] --&gt;
&lt;h2 class=&quot;sectionedit57&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;!-- EDIT57 SECTION &quot;Java&quot; [7626-7767] --&gt;
&lt;h2 class=&quot;sectionedit58&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;!-- EDIT58 SECTION &quot;REST&quot; [7768-7967] --&gt;
&lt;h2 class=&quot;sectionedit59&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;!-- EDIT59 SECTION &quot;HTML 5&quot; [7968-8251] --&gt;
&lt;h2 class=&quot;sectionedit60&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;!-- EDIT60 SECTION &quot;JavaScript&quot; [8252-9440] --&gt;
&lt;h2 class=&quot;sectionedit61&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;!-- EDIT61 SECTION &quot;NoSQL&quot; [9441-10153] --&gt;
&lt;h2 class=&quot;sectionedit62&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;!-- EDIT62 SECTION &quot;Scala&quot; [10154-10375] --&gt;
&lt;h2 class=&quot;sectionedit63&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;!-- EDIT63 SECTION &quot;Clojure&quot; [10376-10720] --&gt;
&lt;h2 class=&quot;sectionedit64&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;!-- EDIT64 SECTION &quot;Collective Intelligence&quot; [10721-10819] --&gt;
&lt;h2 class=&quot;sectionedit65&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;!-- EDIT65 SECTION &quot;Python&quot; [10820-10972] --&gt;
&lt;h2 class=&quot;sectionedit66&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;!-- EDIT66 SECTION &quot;Java&quot; [10973-] --&gt;</description>
            <author>Daniel Kirkdorffer</author>
            <pubDate>Thu, 06 Jul 2017 13:34:27 -0400</pubDate>
        </item>
        <item>
            <title>Git Notes - [Various Git Commands] </title>
            <link>http://www.kirkdorffer.com/wiki/git_notes</link>
            <description>
&lt;h0 class=&quot;sectionedit67&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;!-- EDIT67 SECTION &quot;Git Notes&quot; [1-450] --&gt;
&lt;h1 class=&quot;sectionedit68&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;!-- EDIT68 SECTION &quot;Git Notes&quot; [451-537] --&gt;
&lt;h2 class=&quot;sectionedit69&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;!-- EDIT69 SECTION &quot;Git&quot; [538-950] --&gt;
&lt;h2 class=&quot;sectionedit70&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;!-- EDIT70 SECTION &quot;Training&quot; [951-1332] --&gt;
&lt;h2 class=&quot;sectionedit71&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;!-- EDIT71 SECTION &quot;GitHub&quot; [1333-1915] --&gt;
&lt;h2 class=&quot;sectionedit72&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;!-- EDIT72 SECTION &quot;Tools&quot; [1916-2090] --&gt;
&lt;h2 class=&quot;sectionedit73&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;!-- EDIT73 SECTION &quot;Git &amp; SVN&quot; [2091-2297] --&gt;
&lt;h2 class=&quot;sectionedit74&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;!-- EDIT74 SECTION &quot;VIM Editor&quot; [2298-5969] --&gt;
&lt;h2 class=&quot;sectionedit75&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;!-- EDIT75 SECTION &quot;Various Git Commands&quot; [5970-] --&gt;</description>
            <author>Daniel Kirkdorffer</author>
            <pubDate>Tue, 07 Mar 2017 14:36:05 -0400</pubDate>
        </item>
        <item>
            <title>Web Notes - [JavaScript] </title>
            <link>http://www.kirkdorffer.com/wiki/web_notes</link>
            <description>
&lt;h0 class=&quot;sectionedit76&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;!-- EDIT76 SECTION &quot;Web Notes&quot; [1-25] --&gt;
&lt;h1 class=&quot;sectionedit77&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;!-- EDIT77 SECTION &quot;Web Notes&quot; [26-237] --&gt;
&lt;h2 class=&quot;sectionedit78&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;!-- EDIT78 SECTION &quot;General&quot; [238-408] --&gt;
&lt;h2 class=&quot;sectionedit79&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;!-- EDIT79 SECTION &quot;Testing&quot; [409-630] --&gt;
&lt;h2 class=&quot;sectionedit80&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;!-- EDIT80 SECTION &quot;Design&quot; [631-1490] --&gt;
&lt;h2 class=&quot;sectionedit81&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;!-- EDIT81 SECTION &quot;JavaScript&quot; [1491-1719] --&gt;
&lt;h3 class=&quot;sectionedit82&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;!-- EDIT82 SECTION &quot;About Prototype and Inheritance&quot; [1720-1882] --&gt;
&lt;h3 class=&quot;sectionedit83&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;!-- EDIT83 SECTION &quot;Testing&quot; [1883-2086] --&gt;
&lt;h3 class=&quot;sectionedit84&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;!-- EDIT84 SECTION &quot;JSLint&quot; [2087-2255] --&gt;
&lt;h3 class=&quot;sectionedit85&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;!-- EDIT85 SECTION &quot;YUI&quot; [2256-2506] --&gt;
&lt;h2 class=&quot;sectionedit86&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;!-- EDIT86 SECTION &quot;JQuery&quot; [2507-2592] --&gt;
&lt;h2 class=&quot;sectionedit87&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;!-- EDIT87 SECTION &quot;Ajax&quot; [2593-2931] --&gt;
&lt;h2 class=&quot;sectionedit88&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;!-- EDIT88 SECTION &quot;CSS&quot; [2932-3415] --&gt;
&lt;h2 class=&quot;sectionedit89&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;!-- EDIT89 SECTION &quot;HTML 5&quot; [3416-3553] --&gt;
&lt;h2 class=&quot;sectionedit90&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;!-- EDIT90 SECTION &quot;Flash MP3 Player&quot; [3554-] --&gt;</description>
            <author>Daniel Kirkdorffer</author>
            <pubDate>Wed, 22 Jun 2016 17:58:54 -0400</pubDate>
        </item>
        <item>
            <title>Home - [Table of Contents] </title>
            <link>http://www.kirkdorffer.com/wiki/home</link>
            <description>
&lt;h0 class=&quot;sectionedit91&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;!-- EDIT91 SECTION &quot;Home&quot; [1-418] --&gt;
&lt;h1 class=&quot;sectionedit92&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;!-- EDIT92 SECTION &quot;Home&quot; [419-2575] --&gt;
&lt;h2 class=&quot;sectionedit93&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;!-- EDIT93 SECTION &quot;Table of Contents&quot; [2576-] --&gt;</description>
            <author>Daniel Kirkdorffer</author>
            <pubDate>Mon, 01 Dec 2014 22:59:08 -0400</pubDate>
        </item>
        <item>
            <title>Home</title>
            <link>http://www.kirkdorffer.com/wiki/?image=wiki%3Asortsummary.png&amp;ns=wiki&amp;do=media</link>
            <description>&lt;img src=&quot;/wiki/_media/wiki:sortsummary.png?w=500&amp;h=284t=1368483632&quot; alt=&quot;wiki:sortsummary.png&quot; /&gt;</description>
            <author>Daniel Kirkdorffer</author>
        <category>wiki</category>
            <pubDate>Mon, 13 May 2013 18:20:32 -0400</pubDate>
        </item>
        <item>
            <title>Home - created</title>
            <link>http://www.kirkdorffer.com/wiki/?image=wiki%3Aexplainselectstatement.gif&amp;ns=wiki&amp;do=media</link>
            <description>&lt;img src=&quot;/wiki/_media/wiki:explainselectstatement.gif?w=500&amp;h=493t=1367537427&quot; alt=&quot;wiki:explainselectstatement.gif&quot; /&gt;</description>
            <author>Daniel Kirkdorffer</author>
        <category>wiki</category>
            <pubDate>Thu, 02 May 2013 19:30:27 -0400</pubDate>
        </item>
    </channel>
</rss>
