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

<channel>
	<title>Conrad Taylor</title>
	<atom:link href="http://www.conradtaylor.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.conradtaylor.com</link>
	<description>The Technology Playground</description>
	<lastBuildDate>Tue, 20 Dec 2011 01:30:02 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>Redline Smalltalk Need Your Votes</title>
		<link>http://www.conradtaylor.com/2011/12/19/redline-smalltalk-needs-your-votes/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=redline-smalltalk-needs-your-votes</link>
		<comments>http://www.conradtaylor.com/2011/12/19/redline-smalltalk-needs-your-votes/#comments</comments>
		<pubDate>Tue, 20 Dec 2011 01:03:41 +0000</pubDate>
		<dc:creator>conradwt</dc:creator>
				<category><![CDATA[Smalltalk]]></category>

		<guid isPermaLink="false">http://www.conradtaylor.com/?p=206</guid>
		<description><![CDATA[Please forgive this post but Redline Smalltalk is near completion and it needs your vote for the development of an interactive development environment (IDE) by Jetbrains who are the makers of world leading development tools like IntelliJ IDEA and Rubymine. They have agreed to support a version of Redline Smalltalk but we need your votes [...]]]></description>
			<content:encoded><![CDATA[<p>Please forgive this post but Redline Smalltalk is near completion and it needs your vote for the development of an interactive development environment (IDE) by Jetbrains who are the makers of world leading development tools like IntelliJ IDEA and Rubymine.  They have agreed to support a version of Redline Smalltalk but we need your votes to make it happen.</p>
<p>Please go to this address: http://youtrack.jetbrains.net/issue/IDEA-79069 , login using google or yahoo or sign up and click the up arrow under the word IDEA-79069.</p>
<p>Redline Smalltalk is free and open source implementation of the Smalltalk language  built on top of the Java Virtual Machine (JVM). James Ladd, the creator of Redline Smalltalk, wants to help a wider community of developers use the Smalltalk language and environment in which they can be more productive and happier.  Next, you can find more information about the project here:  http://www.redline.st.  If you know any language and/or computer geeks, please forward this message to them.</p>
<p>Think different and code well,<br />
<br />
-Conrad </p>
<!--post 206; Null return on select; dprv_e=, dprv_a_e=-->]]></content:encoded>
			<wfw:commentRss>http://www.conradtaylor.com/2011/12/19/redline-smalltalk-needs-your-votes/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Playing with Maglev the Ruby VM</title>
		<link>http://www.conradtaylor.com/2011/11/08/playing-with-maglev-the-ruby-vm/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=playing-with-maglev-the-ruby-vm</link>
		<comments>http://www.conradtaylor.com/2011/11/08/playing-with-maglev-the-ruby-vm/#comments</comments>
		<pubDate>Tue, 08 Nov 2011 20:00:51 +0000</pubDate>
		<dc:creator>conradwt</dc:creator>
				<category><![CDATA[Ruby]]></category>
		<category><![CDATA[Smalltalk]]></category>

		<guid isPermaLink="false">http://www.conradtaylor.com/?p=23</guid>
		<description><![CDATA[History Maglev is a Ruby language implementation built on top of the Gemstone/S system. This system was created by Gemstone Systems, Inc. which have been recently acquired by VMWare, Inc. The notion to have a Smalltalk VM power the Ruby language was first presented by Avi Bryant at]]></description>
			<content:encoded><![CDATA[<h1>History</h1>
<p>Maglev is a Ruby language implementation built on top of the Gemstone/S system.  This system was created by Gemstone Systems, Inc. which have been recently acquired by VMWare, Inc.  The notion to have a Smalltalk VM power the Ruby language was first presented by Avi Bryant at <a href=http://blip.tv/railsconf/railsconf-2007-avi-bryant-574286">Railsconf 2007</a> and the initial proof of concept of Maglev was also demonstrated by him a year later at <a href="http://vimeo.com/1147409">Railsconf 2008</a>.</p>
<h1>Gemstone/S:  A Brief Tour</h1>
<p>Gemstone/S is both a Smalltalk environment as well as a Object Oriented Database Management System (OODBMS).  It&#8217;s unlike many of the NoSQL/SQL solutions like Redis, MongoDB, and MySQL because it can persist these Ruby objects as Ruby objects without mapping them to a different representation for the target datastore.  Furthermore, Gemstone/S is a highly scalable data storage solution with the following features and functionality:</p>
<ul>
<li>highly optimized garbage collector (GC)</li>
<li>virtual machine to transform source code into machine code for JIT execution</li>
<li>full ACID transactional persistence with thousands of transactions per second</li>
<li>multi-user support with thousands of concurrent user sessions</li>
<li>multi-machine support where VMs can be distributed across many machines</li>
<li>distributed shared cache for efficiently moving objects from disk to memory</li>
<li>seperate or shared namespaces per user</li>
<li>concurrency controls and locks for coordination</li>
<li>per object read and write access by user as well group</li>
<li>object database index support</li>
<li>transaction logs for easy backup and recovery</li>
</ul>
<h1>Installation and Startup</h1>
<p>So, I bet you&#8217;re excited about using Maglev.  Maglev is supported on both Linux and Mac OS X operating systems and Windows users will need to migrate to a supported Unix based platform.  Now, let&#8217;s get started:</p>
<p>If you have never installed Ruby Version Manager (RVM), then do the following and follow the on screen instructions that appear during the installation:</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;">$ <span style="color: #c20cb9; font-weight: bold;">bash</span> <span style="color: #000000; font-weight: bold;">&lt;</span> <span style="color: #000000; font-weight: bold;">&lt;</span><span style="color: #7a0874; font-weight: bold;">&#40;</span>curl <span style="color: #660033;">-s</span> https:<span style="color: #000000; font-weight: bold;">//</span>rvm.beginrescueend.com<span style="color: #000000; font-weight: bold;">/</span>install<span style="color: #000000; font-weight: bold;">/</span>rvm<span style="color: #7a0874; font-weight: bold;">&#41;</span></pre></div></div>

<p>Otherwise, do the following:</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;">$ rvm get <span style="color: #c20cb9; font-weight: bold;">head</span>
$ rvm reload</pre></div></div>

<p>Let&#8217;s install the most recent version of Maglev:</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;">$ rvm <span style="color: #c20cb9; font-weight: bold;">install</span> maglev-head</pre></div></div>

<p>After the installation has been completed, we will need to start the maglev server by doing the following:</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;">$ maglev start</pre></div></div>

<h1>The maglev-irb and maglev-ruby Commands</h1>
<p>Now, let&#8217;s hop into the interactive Maglev console and write our first bit of code:</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
</pre></td><td class="code"><pre class="ruby" style="font-family:monospace;">$ maglev<span style="color:#006600; font-weight:bold;">-</span>irb
maglev<span style="color:#006600; font-weight:bold;">-</span>head :001 <span style="color:#006600; font-weight:bold;">&gt;</span> <span style="color:#6666ff; font-weight:bold;">Maglev::PERSISTENT_ROOT</span><span style="color:#006600; font-weight:bold;">&#91;</span><span style="color:#ff3333; font-weight:bold;">:stuff</span><span style="color:#006600; font-weight:bold;">&#93;</span> = <span style="color:#006600; font-weight:bold;">&#91;</span><span style="color:#996600;">&quot;hello world&quot;</span><span style="color:#006600; font-weight:bold;">&#93;</span>
 <span style="color:#006600; font-weight:bold;">=&gt;</span> <span style="color:#006600; font-weight:bold;">&#91;</span><span style="color:#996600;">&quot;hello world&quot;</span><span style="color:#006600; font-weight:bold;">&#93;</span> 
maglev<span style="color:#006600; font-weight:bold;">-</span>head :002 <span style="color:#006600; font-weight:bold;">&gt;</span> Maglev.<span style="color:#9900CC;">commit_transaction</span>
 <span style="color:#006600; font-weight:bold;">=&gt;</span> <span style="color:#0000FF; font-weight:bold;">true</span> 
maglev<span style="color:#006600; font-weight:bold;">-</span>head :003 <span style="color:#006600; font-weight:bold;">&gt;</span> <span style="color:#6666ff; font-weight:bold;">Maglev::PERSISTENT_ROOT</span><span style="color:#006600; font-weight:bold;">&#91;</span><span style="color:#ff3333; font-weight:bold;">:stuff</span><span style="color:#006600; font-weight:bold;">&#93;</span>
 <span style="color:#006600; font-weight:bold;">=&gt;</span> <span style="color:#006600; font-weight:bold;">&#91;</span><span style="color:#996600;">&quot;hello world&quot;</span><span style="color:#006600; font-weight:bold;">&#93;</span> 
maglev<span style="color:#006600; font-weight:bold;">-</span>head :004 <span style="color:#006600; font-weight:bold;">&gt;</span> quit
$ maglev<span style="color:#006600; font-weight:bold;">-</span>irb
maglev<span style="color:#006600; font-weight:bold;">-</span>head :001 <span style="color:#006600; font-weight:bold;">&gt;</span> <span style="color:#6666ff; font-weight:bold;">Maglev::PERSISTENT_ROOT</span><span style="color:#006600; font-weight:bold;">&#91;</span><span style="color:#ff3333; font-weight:bold;">:stuff</span><span style="color:#006600; font-weight:bold;">&#93;</span>
 <span style="color:#006600; font-weight:bold;">=&gt;</span> <span style="color:#006600; font-weight:bold;">&#91;</span><span style="color:#996600;">&quot;hello world&quot;</span><span style="color:#006600; font-weight:bold;">&#93;</span></pre></td></tr></table></div>

<p>So, what did we just do?  </p>
<ul>
<li>entered the command to start the Maglev interactive console on line (1)</li>
<li>stored an array containing the string, &#8220;hello world&#8221;, and associated it to the symbol called <strong>stuff</strong> on line (2)</li>
<li>committed our changes to the repository on line (4)</li>
<li>retrieved the value of our stuff symbol from the repository on line (6)</li>
<li>verified that our value has been stored in the repository on lines (8), (9), and (10)</li>
</ul>
<p>If you wanted to accomplish the same functionality within a text file called <strong>hello-world.rb</strong>, one would enter the text that follows into the file and execute the file using <strong>maglev-ruby</strong>:</p>
<p><strong>hello-world.rb:</strong></p>

<div class="wp_syntax"><div class="code"><pre class="ruby" style="font-family:monospace;"><span style="color:#6666ff; font-weight:bold;">Maglev::PERSISTENT_ROOT</span><span style="color:#006600; font-weight:bold;">&#91;</span><span style="color:#ff3333; font-weight:bold;">:stuff</span><span style="color:#006600; font-weight:bold;">&#93;</span> = <span style="color:#006600; font-weight:bold;">&#91;</span><span style="color:#996600;">&quot;hello world&quot;</span><span style="color:#006600; font-weight:bold;">&#93;</span>
Maglev.<span style="color:#9900CC;">commit_transaction</span>
<span style="color:#6666ff; font-weight:bold;">Maglev::PERSISTENT_ROOT</span><span style="color:#006600; font-weight:bold;">&#91;</span><span style="color:#ff3333; font-weight:bold;">:stuff</span><span style="color:#006600; font-weight:bold;">&#93;</span></pre></div></div>

<p><strong>terminal:</strong></p>

<div class="wp_syntax"><div class="code"><pre class="ruby" style="font-family:monospace;">$ maglev<span style="color:#006600; font-weight:bold;">-</span>ruby hello<span style="color:#006600; font-weight:bold;">-</span>world.<span style="color:#9900CC;">rb</span></pre></div></div>

<p>In the above, Maglev::PERSISTENT_ROOT Hash is the persistent root for objects within Maglev. Thus, in order to access a persistent object within the Maglev system, it needs to be reachable from this persistent root. </p>
<h1>Simple Example</h1>
<p>A cool example of Maglev would be to create a module that can be included in our user defined class(es) for enabling this persistent goodness. For example, let&#8217;s create module which describes some simple persistence for concrete models:</p>
<p><strong>maglev_model.rb:</strong></p>

<div class="wp_syntax"><div class="code"><pre class="ruby" style="font-family:monospace;"><span style="color:#9966CC; font-weight:bold;">module</span> MaglevModel
&nbsp;
  <span style="color:#9966CC; font-weight:bold;">module</span> ClassMethods
&nbsp;
    <span style="color:#9966CC; font-weight:bold;">def</span> all
      <span style="color:#008000; font-style:italic;"># set the values including its state to current for all persistent objects.</span>
      <span style="color:#008000; font-style:italic;"># i.e. give me the current state of the last commit.</span>
      Maglev.<span style="color:#9900CC;">abort_transaction</span>
&nbsp;
      <span style="color:#008000; font-style:italic;"># retrieve all the Post instances as a collection hash.</span>
      <span style="color:#6666ff; font-weight:bold;">Maglev::PERSISTENT_ROOT</span><span style="color:#006600; font-weight:bold;">&#91;</span><span style="color:#0000FF; font-weight:bold;">self</span><span style="color:#006600; font-weight:bold;">&#93;</span>.<span style="color:#9900CC;">values</span>
    <span style="color:#9966CC; font-weight:bold;">end</span>
&nbsp;
  <span style="color:#9966CC; font-weight:bold;">end</span>
&nbsp;
  <span style="color:#9966CC; font-weight:bold;">def</span> save
    <span style="color:#008000; font-style:italic;"># store the current Post instance as a child of the Post class.</span>
    <span style="color:#6666ff; font-weight:bold;">Maglev::PERSISTENT_ROOT</span><span style="color:#006600; font-weight:bold;">&#91;</span><span style="color:#0000FF; font-weight:bold;">self</span>.<span style="color:#9966CC; font-weight:bold;">class</span><span style="color:#006600; font-weight:bold;">&#93;</span><span style="color:#006600; font-weight:bold;">&#91;</span><span style="color:#0000FF; font-weight:bold;">self</span>.__id__<span style="color:#006600; font-weight:bold;">&#93;</span> = <span style="color:#0000FF; font-weight:bold;">self</span>
&nbsp;
    <span style="color:#008000; font-style:italic;"># save the current state back to the repository.</span>
    Maglev.<span style="color:#9900CC;">commit_transaction</span>
  <span style="color:#9966CC; font-weight:bold;">end</span>
&nbsp;
  <span style="color:#9966CC; font-weight:bold;">def</span> <span style="color:#0000FF; font-weight:bold;">self</span>.<span style="color:#9900CC;">included</span><span style="color:#006600; font-weight:bold;">&#40;</span> klass <span style="color:#006600; font-weight:bold;">&#41;</span>
&nbsp;
    klass.<span style="color:#9900CC;">extend</span> ClassMethods
&nbsp;
    <span style="color:#008000; font-style:italic;"># create a space in the PERSISTENT_ROOT to hold persistent klass objects.</span>
    <span style="color:#6666ff; font-weight:bold;">Maglev::PERSISTENT_ROOT</span><span style="color:#006600; font-weight:bold;">&#91;</span> klass <span style="color:#006600; font-weight:bold;">&#93;</span> <span style="color:#006600; font-weight:bold;">||</span>= <span style="color:#CC00FF; font-weight:bold;">Hash</span>.<span style="color:#9900CC;">new</span>
&nbsp;
  <span style="color:#9966CC; font-weight:bold;">end</span>
&nbsp;
<span style="color:#9966CC; font-weight:bold;">end</span></pre></div></div>

<p>Now, let&#8217;s create the Post model and this will be a snap because we have done most of the work by creating a reusable module, MaglevModel, for enabling persistence within the Post class:</p>
<p><strong>post.rb:</strong></p>

<div class="wp_syntax"><div class="code"><pre class="ruby" style="font-family:monospace;"><span style="color:#CC0066; font-weight:bold;">require</span> <span style="color:#996600;">'maglev_model'</span>
&nbsp;
<span style="color:#9966CC; font-weight:bold;">class</span> Post
&nbsp;
  <span style="color:#9966CC; font-weight:bold;">include</span> MaglevModel
&nbsp;
  attr_reader <span style="color:#ff3333; font-weight:bold;">:title</span>, <span style="color:#ff3333; font-weight:bold;">:description</span>
&nbsp;
  <span style="color:#9966CC; font-weight:bold;">def</span> initialize<span style="color:#006600; font-weight:bold;">&#40;</span> params = <span style="color:#006600; font-weight:bold;">&#123;</span><span style="color:#006600; font-weight:bold;">&#125;</span> <span style="color:#006600; font-weight:bold;">&#41;</span>
    <span style="color:#0066ff; font-weight:bold;">@title</span>       = params<span style="color:#006600; font-weight:bold;">&#91;</span><span style="color:#ff3333; font-weight:bold;">:title</span><span style="color:#006600; font-weight:bold;">&#93;</span>
    <span style="color:#0066ff; font-weight:bold;">@description</span> = params<span style="color:#006600; font-weight:bold;">&#91;</span><span style="color:#ff3333; font-weight:bold;">:description</span><span style="color:#006600; font-weight:bold;">&#93;</span>
  <span style="color:#9966CC; font-weight:bold;">end</span>
&nbsp;
  <span style="color:#9966CC; font-weight:bold;">def</span> to_s
    <span style="color:#996600;">&quot;title =&gt; #{@title}<span style="color:#000099;">\n</span>description =&gt; #{@description}<span style="color:#000099;">\n</span>&quot;</span>
  <span style="color:#9966CC; font-weight:bold;">end</span>
&nbsp;
<span style="color:#9966CC; font-weight:bold;">end</span></pre></div></div>

<p>Persist both <strong>maglev_model.rb</strong> and <strong>post.rb</strong> to the repository:</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;">$ maglev-ruby <span style="color: #660033;">-Mcommit</span> maglev_model.rb
$ maglev-ruby <span style="color: #660033;">-Mcommit</span> post.rb</pre></div></div>

<p>What?  Did I hear you right?  Yes, Maglev gives you the ability to persist code as well as Ruby objects to the Maglev object repository making it automatically available to every Maglev VM on start that&#8217;s apart of your deployment and connects to your shared Maglev object repository.  Furthermore, the Ruby Standard Library is fully defined and loaded into the Maglev object repository so that you can concentrate on building your applications in Ruby.  Let&#8217;s define a simple driver program which creates some Post instances:</p>
<p><strong>driver.rb:</strong></p>

<div class="wp_syntax"><div class="code"><pre class="ruby" style="font-family:monospace;"><span style="color:#CC0066; font-weight:bold;">require</span> <span style="color:#996600;">'post'</span>
&nbsp;
post_one = Post.<span style="color:#9900CC;">new</span><span style="color:#006600; font-weight:bold;">&#40;</span> <span style="color:#ff3333; font-weight:bold;">:title</span> <span style="color:#006600; font-weight:bold;">=&gt;</span> <span style="color:#996600;">&quot;This is post 1&quot;</span>, <span style="color:#ff3333; font-weight:bold;">:description</span> <span style="color:#006600; font-weight:bold;">=&gt;</span> <span style="color:#996600;">&quot;This is post 1 description.&quot;</span> <span style="color:#006600; font-weight:bold;">&#41;</span>
post_one.<span style="color:#9900CC;">save</span>
&nbsp;
post_two = Post.<span style="color:#9900CC;">new</span><span style="color:#006600; font-weight:bold;">&#40;</span> <span style="color:#ff3333; font-weight:bold;">:title</span> <span style="color:#006600; font-weight:bold;">=&gt;</span> <span style="color:#996600;">&quot;This is post 2&quot;</span>, <span style="color:#ff3333; font-weight:bold;">:description</span> <span style="color:#006600; font-weight:bold;">=&gt;</span> <span style="color:#996600;">&quot;This is post 2 description.&quot;</span> <span style="color:#006600; font-weight:bold;">&#41;</span>
post_two.<span style="color:#9900CC;">save</span>
&nbsp;
Post.<span style="color:#9900CC;">all</span>.<span style="color:#9900CC;">each</span> <span style="color:#006600; font-weight:bold;">&#123;</span> <span style="color:#006600; font-weight:bold;">|</span>post<span style="color:#006600; font-weight:bold;">|</span> <span style="color:#CC0066; font-weight:bold;">puts</span> post <span style="color:#006600; font-weight:bold;">&#125;</span></pre></div></div>

<p>Now, if we were to run the above code, one should see the following:</p>

<div class="wp_syntax"><div class="code"><pre class="ruby" style="font-family:monospace;">$ maglev<span style="color:#006600; font-weight:bold;">-</span>ruby driver.<span style="color:#9900CC;">rb</span>
&nbsp;
title <span style="color:#006600; font-weight:bold;">=&gt;</span> <span style="color:#996600;">&quot;This is post 1
description =&gt; &quot;</span>This is post <span style="color:#006666;">1</span> description.
<span style="color:#9900CC;">title</span> <span style="color:#006600; font-weight:bold;">=&gt;</span> <span style="color:#996600;">&quot;This is post 2
description =&gt; &quot;</span>This is post <span style="color:#006666;">2</span> description.</pre></div></div>

<p>Fire up the <strong>maglev-irb</strong> and you should see the same output as the above:</p>

<div class="wp_syntax"><div class="code"><pre class="ruby" style="font-family:monospace;">$ maglev<span style="color:#006600; font-weight:bold;">-</span>irb
maglev<span style="color:#006600; font-weight:bold;">-</span>head :001 <span style="color:#006600; font-weight:bold;">&gt;</span> Post.<span style="color:#9900CC;">all</span>.<span style="color:#9900CC;">each</span> <span style="color:#006600; font-weight:bold;">&#123;</span> <span style="color:#006600; font-weight:bold;">|</span>post<span style="color:#006600; font-weight:bold;">|</span> <span style="color:#CC0066; font-weight:bold;">puts</span> post <span style="color:#006600; font-weight:bold;">&#125;</span>
title <span style="color:#006600; font-weight:bold;">=&gt;</span> <span style="color:#996600;">&quot;This is post 1
description =&gt; &quot;</span>This is post <span style="color:#006666;">1</span> description.
<span style="color:#9900CC;">title</span> <span style="color:#006600; font-weight:bold;">=&gt;</span> <span style="color:#996600;">&quot;This is post 2
description =&gt; &quot;</span>This is post <span style="color:#006666;">2</span> description.</pre></div></div>

<p>Now, you should have noticed in the above that there was no database schema, SQL, or other things that one would normally see in regards to setting up a relational database. The only thing that I needed to do was define MaglevModel module and Post class.  Then persist this to the Maglev object repository.  That&#8217;s all to it. BTW, MaglevModel module is a user created module and one can customize and name as necessary for your project. You can read more about Maglev as well as its persistence API <a href="http://maglev.github.com" title="Maglev" target="_blank">here</a>. Lastly, if you&#8217;re a Rubyist or Ruby shop that&#8217;s struggling with the impedance mismatch with Ruby and relational databases or the <a href="http://www.kegel.com/c10k.html" title="c10K problem" target="_blank">c10K problem</a>, then I would highly recommend taking a look at Maglev.</p>
<p>Think different and code well,</p>
<p>-Conrad</p>
<!--post 23; Null return on select; dprv_e=, dprv_a_e=-->]]></content:encoded>
			<wfw:commentRss>http://www.conradtaylor.com/2011/11/08/playing-with-maglev-the-ruby-vm/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Steve Jobs&#8217; Words To Live By</title>
		<link>http://www.conradtaylor.com/2011/10/08/steve-jobs-words-to-live-by/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=steve-jobs-words-to-live-by</link>
		<comments>http://www.conradtaylor.com/2011/10/08/steve-jobs-words-to-live-by/#comments</comments>
		<pubDate>Sun, 09 Oct 2011 03:03:26 +0000</pubDate>
		<dc:creator>conradwt</dc:creator>
				<category><![CDATA[Apple]]></category>

		<guid isPermaLink="false">http://www.conradtaylor.com/?p=151</guid>
		<description><![CDATA[The essence of Steve Jobs&#8217;s Stanford 2005 Commencement speech is embodied within the following text: No one wants to die. Even people who want to go to heaven don’t want to die to get there. And yet death is the destination we all share. No one has ever escaped it. And that is as it [...]]]></description>
			<content:encoded><![CDATA[<p>The essence of Steve Jobs&#8217;s Stanford 2005 Commencement speech is embodied within the following text:</p>
<blockquote><p>No one wants to die. Even people who want to go to heaven don’t want to die to get there. And yet death is the destination we all share. No one has ever escaped it. And that is as it should be, because Death is very likely the single best invention of Life. It is Life’s change agent. It clears out the old to make way for the new. Right now the new is you, but someday not too long from now, you will gradually become the old and be cleared away. Sorry to be so dramatic, but it is quite true.</p>
<p>Your time is limited, so don’t waste it living someone else’s life. Don’t be trapped by dogma — which is living with the results of other people’s thinking. Don’t let the noise of others’ opinions drown out your own inner voice. And most important, have the courage to follow your heart and intuition. They somehow already know what you truly want to become. Everything else is secondary. &#8212; Steve Jobs</p></blockquote>
<p>One can listen to the entire speech by visiting <a href="http://youtu.be/D1R-jKKp3NA" title="Steve Jobs Stanford Commencement Speech 2005">Steve Jobs Stanford Commencement Speech 2005</a>.</p>
<p>Think different and code well,</p>
<p>-Conrad</p>
<!--post 151; Null return on select; dprv_e=, dprv_a_e=-->]]></content:encoded>
			<wfw:commentRss>http://www.conradtaylor.com/2011/10/08/steve-jobs-words-to-live-by/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Hello world!</title>
		<link>http://www.conradtaylor.com/2011/07/10/hello-world/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=hello-world</link>
		<comments>http://www.conradtaylor.com/2011/07/10/hello-world/#comments</comments>
		<pubDate>Sun, 10 Jul 2011 19:00:52 +0000</pubDate>
		<dc:creator>conradwt</dc:creator>
				<category><![CDATA[General]]></category>

		<guid isPermaLink="false">http://www.conradtaylor.com/?p=1</guid>
		<description><![CDATA[Hi ALL, I would like to welcome you to my blog where I plan to talk about Smalltalk, Ruby, Clojure, and all things that catch my technology eye. Please stay tune. Think different and code well, -Conrad]]></description>
			<content:encoded><![CDATA[<p>Hi ALL, I would like to welcome you to my blog where I plan to talk about Smalltalk, Ruby, Clojure, and all things that catch my technology eye.  Please stay tune.</p>
<p>Think different and code well,</p>
<p>-Conrad</p>
<!--post 1; Null return on select; dprv_e=, dprv_a_e=-->]]></content:encoded>
			<wfw:commentRss>http://www.conradtaylor.com/2011/07/10/hello-world/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

