<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
  <channel>
    <title>Life's End</title>
    <link>http://lifesend.com/</link>
    <description>Worship</description>
    <language>en-us</language>
    <item>
      <title>An afternoon of deep dialog</title>
      <description>&lt;!-- 
Found 0 labeled equations 
eq ids: 
--&gt;
&lt;!-- 
Found 1 figures 
fig ids: face_to_face
--&gt;
&lt;style type="text/css"&gt;pre.code {   background-color: #DDD;   color: #112;   padding: 10px;   font-size: 90%;   overflow: auto;   margin: 4px 0px;   width: 95%;}pre .normal {}pre .comment { color: #005; font-style: italic; }pre .keyword { color: #A00; font-weight: bold; }pre .method { color: #077; }pre .class { color: #074; }pre .module { color: #050; }pre .punct { color: #447; font-weight: bold; }pre .symbol { color: #099; }pre .string { color: #944; }pre .char { color: #F07; }pre .ident { color: #004; }pre .constant { color: #07F; }pre .regex { color: #B66; }pre .number { color: #F99; }pre .attribute { color: #5bb; }pre .global { color: #7FB; }pre .expr { color: #227; }pre .escape { color: #277; }div .aao_footer{ font-size: 80%; }&lt;/style&gt;
   &lt;div id=header&gt;
   &lt;h2&gt;An Afternoon of Deep Dialog&lt;/h2&gt;
Aaron J. Radke &lt;br&gt;
2009-09-30 &lt;br&gt;
&lt;em&gt;&lt;/em&gt;&lt;p&gt;
&lt;/div&gt;
&lt;div style="text-align:center"&gt;&lt;a name="fig_face_to_face"&gt;&lt;/a&gt;&lt;a href='/static/fig/face_to_face.jpg'&gt;&lt;img src="/static/fig/face_to_face_500x500_sh.png" border="none" alt="face_to_face_500x500_sh.png" align="center" width="500" &gt;&lt;/a&gt;&lt;!--
&lt;div class="caption"&gt;
Figure  1: none
&lt;/div&gt;
--&gt;&lt;/div&gt;&lt;p&gt;
I feel so crazy. It is happening again. I have met another.  I am always longing for more. It's like a drug.
&lt;p&gt;
It was an intense conversation.  It was as if we were one.  I thought I spent my life communicating but just minutes passed.  Hours slipped by with ever unfolding joy.  My thoughts flowed effortlessly.  I understood all.  Creativity was free to run.  We could go anywhere. I felt wonder in the creator for such beauty.  A rush and a high like none other. Short concise statements conveyed depths of meaning without misinterpretation. Every thought jumped to other thoughts. Time went by so fast, yet I did not even think of time.  I spent an afternoon with &lt;a href='http://www.ruby-lang.org/en/'&gt;Ruby&lt;/a&gt;.
&lt;p&gt;
Although we had something going, I now realize those conversations were not all that deep.  I didn't know how shallow I was.  I was seeing things I never had before, but those were just foothills of mountains.  I have recently met &lt;a href='http://www.scala-lang.org'&gt;Scala&lt;/a&gt;.
&lt;p&gt;
&lt;div class=aao_footer&gt;
&lt;hr&gt;

&lt;/div&gt;
</description>
      <author>Aaron J. Radke</author>
      <pubDate>Wed, 30 Sep 2009 00:00:00 +0000</pubDate>
      <link>&lt;a href="/feed/programming"&gt;/dialog_depth&lt;/a&gt;</link>
      <guid>&lt;a href="/feed/programming"&gt;/dialog_depth&lt;/a&gt;</guid>
    </item>
    <item>
      <title>Git</title>
      <description>&lt;!-- 
Found 0 labeled equations 
eq ids: 
--&gt;
&lt;!-- 
Found 1 figures 
fig ids: git_munch
--&gt;
&lt;style type="text/css"&gt;pre.code {   background-color: #DDD;   color: #112;   padding: 10px;   font-size: 90%;   overflow: auto;   margin: 4px 0px;   width: 95%;}pre .normal {}pre .comment { color: #005; font-style: italic; }pre .keyword { color: #A00; font-weight: bold; }pre .method { color: #077; }pre .class { color: #074; }pre .module { color: #050; }pre .punct { color: #447; font-weight: bold; }pre .symbol { color: #099; }pre .string { color: #944; }pre .char { color: #F07; }pre .ident { color: #004; }pre .constant { color: #07F; }pre .regex { color: #B66; }pre .number { color: #F99; }pre .attribute { color: #5bb; }pre .global { color: #7FB; }pre .expr { color: #227; }pre .escape { color: #277; }div .aao_footer{ font-size: 80%; }&lt;/style&gt;
   &lt;div id=header&gt;
   &lt;h2&gt;Git&lt;/h2&gt;
Aaron J. Radke &lt;br&gt;
2009-09-15 &lt;br&gt;
&lt;em&gt;&lt;/em&gt;&lt;p&gt;
&lt;/div&gt;
&lt;div style="text-align:center"&gt;&lt;a name="fig_git_munch"&gt;&lt;/a&gt;&lt;a href='/static/fig/git_munch.png'&gt;&lt;img src="/static/fig/git_munch_500x500.png" border="none" alt="git_munch_500x500.png" align="center" width="500" &gt;&lt;/a&gt;&lt;!--
&lt;div class="caption"&gt;
Figure  1: none
&lt;/div&gt;
--&gt;&lt;/div&gt;&lt;p&gt;

&lt;h2&gt;&lt;a id="overview"&gt;&lt;/a&gt; Overview 
&lt;/h2&gt;
&lt;a href='http://git-scm.com/'&gt;Git&lt;/a&gt; is an incredible tool that has radically redefined my my entire workflow for everything I do on a computer. A cryptographically secure hash as a fingerprint for everything is an incredibly powerful idea.  It has permeated everything.  Here is a short list of personal applications that it has taken over:
&lt;p&gt;

&lt;ul&gt;
&lt;li&gt;Insanely fast backups&lt;/li&gt;
&lt;li&gt;Highly robust nonlinear distributed backups&lt;/li&gt;
&lt;li&gt;Virtual desktops by near instantaneous synchronization&lt;/li&gt;
&lt;li&gt;Project record&lt;/li&gt;
&lt;li&gt;Time tracking&lt;/li&gt;
&lt;li&gt;Source control&lt;/li&gt;
&lt;li&gt;Journaling&lt;/li&gt;
&lt;li&gt;Writing&lt;/li&gt;
&lt;/ul&gt;
Here is why it is so much better than &lt;a href='http://subversion.tigris.org'&gt;Subversion&lt;/a&gt;
&lt;p&gt;
&lt;ol&gt;
&lt;li&gt;It is fun; I want to put everything in it&lt;/li&gt;
&lt;li&gt;A single directory stores the repository (no littered garbage)&lt;/li&gt;
&lt;li&gt;No servers are required&lt;/li&gt;
&lt;li&gt;Nonlinear distribution&lt;/li&gt;
&lt;li&gt;It is very fast&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;&lt;a id="frequently_required_information"&gt;&lt;/a&gt; Frequently required information 
&lt;/h2&gt;

&lt;h3&gt;&lt;a id="getting_a_repository"&gt;&lt;/a&gt; getting a repository&lt;/h3&gt;
&lt;pre class="prettyprint"&gt;
$ git clone http://path/to/project.git
&lt;/pre&gt;

&lt;h3&gt;&lt;a id="creating_a_bare_repository"&gt;&lt;/a&gt; creating a bare repository&lt;/h3&gt;
&lt;pre class="prettyprint"&gt;
$ git --bare init
&lt;/pre&gt;

&lt;h3&gt;&lt;a id="creating_a_repository"&gt;&lt;/a&gt; creating a repository&lt;/h3&gt;
&lt;pre class="prettyprint"&gt;
$ git init
&lt;/pre&gt;

&lt;h3&gt;&lt;a id="commit_changes_locally"&gt;&lt;/a&gt; commit changes locally&lt;/h3&gt;
&lt;pre class="prettyprint"&gt;
$ git commit -a
$ git commit -a -m "this is the commit message"
&lt;/pre&gt;

&lt;h3&gt;&lt;a id="setup_origin_for_default_push_and_pulls"&gt;&lt;/a&gt; setup origin for default push and pulls&lt;/h3&gt;
&lt;pre class="prettyprint"&gt;
$ git remote add origin http://path.to/origin_project.git
$ git config branch.master.remote origin
$ git config branch.master.merge refs/heads/master
&lt;/pre&gt;

&lt;h3&gt;&lt;a id="sync_up_repository"&gt;&lt;/a&gt; sync up repository&lt;/h3&gt;
&lt;pre class="prettyprint"&gt;
$ git push
&lt;/pre&gt;

&lt;h3&gt;&lt;a id="fix_your_branch_is_ahead_of_originmaster_by_d_commit"&gt;&lt;/a&gt; fix "your branch is ahead of 'origin/master' by \d commit"&lt;/h3&gt;
&lt;pre class="prettyprint"&gt;
$ git config branch.master.remote origin
$ git config branch.master.merge refs/heads/master
$ git pull
&lt;/pre&gt;

&lt;h3&gt;&lt;a id="undo_the_last_commit"&gt;&lt;/a&gt; undo the last commit&lt;/h3&gt;
&lt;pre class="prettyprint"&gt;
$ git reset --soft HEAD^
&lt;/pre&gt;

&lt;h3&gt;&lt;a id="sync_up_repository"&gt;&lt;/a&gt; sync up repository&lt;/h3&gt;
&lt;pre class="prettyprint"&gt;
$ git push
&lt;/pre&gt;
&lt;div class=aao_footer&gt;
&lt;hr&gt;

&lt;/div&gt;
</description>
      <author>Aaron J. Radke</author>
      <pubDate>Tue, 15 Sep 2009 00:00:00 +0000</pubDate>
      <link>&lt;a href="/feed/programming"&gt;/git&lt;/a&gt;</link>
      <guid>&lt;a href="/feed/programming"&gt;/git&lt;/a&gt;</guid>
    </item>
    <item>
      <title>Thoughts on Scala</title>
      <description>&lt;!-- 
Found 0 labeled equations 
eq ids: 
--&gt;
&lt;!-- 
Found 1 figures 
fig ids: scala_logo
--&gt;
&lt;style type="text/css"&gt;pre.code {   background-color: #DDD;   color: #112;   padding: 10px;   font-size: 90%;   overflow: auto;   margin: 4px 0px;   width: 95%;}pre .normal {}pre .comment { color: #005; font-style: italic; }pre .keyword { color: #A00; font-weight: bold; }pre .method { color: #077; }pre .class { color: #074; }pre .module { color: #050; }pre .punct { color: #447; font-weight: bold; }pre .symbol { color: #099; }pre .string { color: #944; }pre .char { color: #F07; }pre .ident { color: #004; }pre .constant { color: #07F; }pre .regex { color: #B66; }pre .number { color: #F99; }pre .attribute { color: #5bb; }pre .global { color: #7FB; }pre .expr { color: #227; }pre .escape { color: #277; }div .aao_footer{ font-size: 80%; }&lt;/style&gt;
   &lt;div id=header&gt;
   &lt;h2&gt;Thoughts on Scala&lt;/h2&gt;
Aaron Radke &lt;br&gt;
2009-07-20 &lt;br&gt;
&lt;em&gt;A few thoughts and notes on Scala&lt;/em&gt;&lt;p&gt;
&lt;/div&gt;
&lt;div style="text-align:center"&gt;&lt;a name="fig_scala_logo"&gt;&lt;/a&gt;&lt;a href='/static/fig/scala_logo.png'&gt;&lt;img src="/static/fig/scala_logo_500x500_sh.png" border="none" alt="scala_logo_500x500_sh.png" align="center" width="500" &gt;&lt;/a&gt;&lt;!--
&lt;div class="caption"&gt;
Figure  1: none
&lt;/div&gt;
--&gt;&lt;/div&gt;&lt;p&gt;

&lt;h2&gt;&lt;a id="paradigmsyntax_general_principles"&gt;&lt;/a&gt; paradigm/syntax general principles 
&lt;/h2&gt;

&lt;h3&gt;&lt;a id="from_ruby"&gt;&lt;/a&gt; from ruby&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;mixins over inheritance&lt;/li&gt;
&lt;li&gt;the last statement of a function is the return value (encourages small modular code)&lt;/li&gt;
&lt;li&gt;no semicolon&lt;/li&gt;
&lt;li&gt;symbols with a prime before them like 'this&lt;/li&gt;
&lt;li&gt;everything is an object even primitives&lt;/li&gt;
&lt;li&gt;higher order functions for loop constructs&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;&lt;a id="from_mathematica"&gt;&lt;/a&gt; from Mathematica&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;List based hierarchy and functional operations&lt;/li&gt;
&lt;li&gt;Powerful pattern matching for code branch decisions&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;&lt;a id="new"&gt;&lt;/a&gt; new&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;syntax&lt;/li&gt;

&lt;ul&gt;
&lt;li&gt;methods, classes, operators can all look the same to make a scalable language&lt;/li&gt;
&lt;li&gt;simple but expansive predifened associativity :, precedence provide scalability&lt;/li&gt;
&lt;li&gt;{}, () replacable&lt;/li&gt;
&lt;li&gt;_ for multiple fill on based on contexts&lt;/li&gt;
&lt;li&gt;pattern imports&lt;/li&gt;
&lt;/ul&gt;
&lt;li&gt;types&lt;/li&gt;

&lt;ul&gt;
&lt;li&gt;imultibility (val, List)&lt;/li&gt;
&lt;li&gt;multibility (var, Array)&lt;/li&gt;
&lt;/ul&gt;
&lt;li&gt;operators&lt;/li&gt;

&lt;ul&gt;
&lt;li&gt;Parenthesis on an object calls the apply method&lt;/li&gt;
&lt;li&gt;Parenthesis on an object with an equals assignment calls the update method&lt;/li&gt;
&lt;li&gt;Single argument methods do not require a dot&lt;/li&gt;
&lt;li&gt;Any method can be used in operator notation&lt;/li&gt;
&lt;li&gt;predefined prefix unary operators +,-,!,~&lt;/li&gt;
&lt;li&gt;postfix operators are methods that take no arguments&lt;/li&gt;
&lt;li&gt;methods ending in : are for right called objects in operator notation&lt;/li&gt;
&lt;li&gt;equals == test uniformly verifies value with a pre null check&lt;/li&gt;
&lt;li&gt;methods are operators, precedence is sorted by beginning characters and associativity is sorted by ending character(:)&lt;/li&gt;
&lt;/ul&gt;
&lt;li&gt;classes&lt;/li&gt;

&lt;ul&gt;
&lt;li&gt;Factory methods make use of apply&lt;/li&gt;
&lt;li&gt;Companion objects for cleaner instantiation of a companion class&lt;/li&gt;
&lt;li&gt;base code is the build in constructor&lt;/li&gt;
&lt;li&gt;parameters are fields&lt;/li&gt;
&lt;li&gt;parameters can have preconditions with require&lt;/li&gt;
&lt;li&gt;separate companion objects for static like pieces&lt;/li&gt;
&lt;li&gt;case classes for field pattern matching and companion object construction&lt;/li&gt;
&lt;/ul&gt;
&lt;li&gt;traits&lt;/li&gt;

&lt;ul&gt;
&lt;li&gt;linearization&lt;/li&gt;
&lt;/ul&gt;
&lt;li&gt;pattern matching&lt;/li&gt;

&lt;ul&gt;
&lt;li&gt;case classes for field pattern matching and companion object construction&lt;/li&gt;
&lt;/ul&gt;
&lt;li&gt;control structures&lt;/li&gt;

&lt;ul&gt;
&lt;li&gt;everything returns values&lt;/li&gt;
&lt;li&gt;nested loops by additional generators&lt;/li&gt;
&lt;li&gt;currying to make language like control structures&lt;/li&gt;
&lt;/ul&gt;
&lt;li&gt;functions&lt;/li&gt;

&lt;ul&gt;
&lt;li&gt;first class functions&lt;/li&gt;
&lt;li&gt;function literals&lt;/li&gt;
blank _ assumed input parameter patterns
partially applied functions with an automatic apply wrapping with _ matching
&lt;/ul&gt;
&lt;li&gt;typing inference&lt;/li&gt;

&lt;ul&gt;
&lt;li&gt;target typing&lt;/li&gt;
&lt;li&gt;simple flow typing versus complex Haskel typing for better OO interoperation&lt;/li&gt;
&lt;/ul&gt;
&lt;li&gt;built in tools&lt;/li&gt;

&lt;ul&gt;
&lt;li&gt;xml&lt;/li&gt;
&lt;li&gt;combinator parsers: these are really powerful and really useful.  These provide whole new levels of abstraction&lt;/li&gt;
&lt;/ul&gt;
&lt;/ul&gt;
&lt;div class=aao_footer&gt;
&lt;hr&gt;

&lt;/div&gt;
</description>
      <author>Aaron Radke</author>
      <pubDate>Mon, 20 Jul 2009 16:57:57 +0000</pubDate>
      <link>&lt;a href="/feed/programming"&gt;/scala&lt;/a&gt;</link>
      <guid>&lt;a href="/feed/programming"&gt;/scala&lt;/a&gt;</guid>
    </item>
  </channel>
</rss>
