<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><rss 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/" version="2.0">

<channel>
	<title>Endlessly Curious</title>
	
	<link>http://www.endlesslycurious.com</link>
	<description>by Daniel Brown</description>
	<lastBuildDate>Sat, 16 Jan 2010 01:23:24 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.1</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/rss+xml" href="http://feeds.feedburner.com/EndlesslyCurious" /><feedburner:info xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" uri="endlesslycurious" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><item>
		<title>RSS Feeds Moving!</title>
		<link>http://www.endlesslycurious.com/2010/01/15/rss-feeds-moving/</link>
		<comments>http://www.endlesslycurious.com/2010/01/15/rss-feeds-moving/#comments</comments>
		<pubDate>Sat, 16 Jan 2010 01:23:12 +0000</pubDate>
		<dc:creator>Daniel</dc:creator>
				<category><![CDATA[Software Engineering]]></category>
		<category><![CDATA[Misc]]></category>

		<guid isPermaLink="false">http://www.endlesslycurious.com/?p=1411</guid>
		<description><![CDATA[I am going to be moving this sites RSS feeds away from FeedBurner this weekend.  Mostly because I want per topic feeds and I have not yet found a FeedBurner plug-in for WordPress that supports that.
Consider yourself warned if you are using an RSS reader!
]]></description>
			<content:encoded><![CDATA[<p>I am going to be moving this sites RSS feeds away from FeedBurner this weekend.  Mostly because I want per topic feeds and I have not yet found a FeedBurner plug-in for WordPress that supports that.</p>
<p>Consider yourself warned if you are using an RSS reader!</p>
<img src="http://feeds.feedburner.com/~r/EndlesslyCurious/~4/LXtdRRNPSWg" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.endlesslycurious.com/2010/01/15/rss-feeds-moving/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Myth of the Genius Programmer</title>
		<link>http://www.endlesslycurious.com/2009/12/10/myth-of-the-genius-programmer/</link>
		<comments>http://www.endlesslycurious.com/2009/12/10/myth-of-the-genius-programmer/#comments</comments>
		<pubDate>Thu, 10 Dec 2009 09:00:09 +0000</pubDate>
		<dc:creator>Daniel</dc:creator>
				<category><![CDATA[Misc]]></category>
		<category><![CDATA[Software Engineering]]></category>
		<category><![CDATA[Video]]></category>

		<guid isPermaLink="false">http://www.endlesslycurious.com/?p=1373</guid>
		<description><![CDATA[From the Google I/O 2009 conference:
&#8220;A pervasive elitism hovers in the background of collaborative software development: everyone secretly wants to be seen as a genius. In this talk, we discuss how to avoid this trap and gracefully exchange personal ego for personal growth and super-charged collaboration. We&#8217;ll also examine how software tools affect social behaviors, and [...]]]></description>
			<content:encoded><![CDATA[<p>From the <a href="http://code.google.com/events/io/">Google I/O</a> 2009 conference:<br />
&#8220;<em>A pervasive elitism hovers in the background of collaborative software development: everyone secretly wants to be seen as a genius. In this talk, we discuss how to avoid this trap and gracefully exchange personal ego for personal growth and super-charged collaboration. We&#8217;ll also examine how software tools affect social behaviors, and how to successfully manage the growth of new ideas.</em>&#8221;</p>
<p><object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="425" height="344" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"><param name="allowFullScreen" value="true" /><param name="allowscriptaccess" value="always" /><param name="src" value="http://www.youtube.com/v/0SARbwvhupQ&amp;hl=en_US&amp;fs=1&amp;rel=0" /><param name="allowfullscreen" value="true" /><embed type="application/x-shockwave-flash" width="425" height="344" src="http://www.youtube.com/v/0SARbwvhupQ&amp;hl=en_US&amp;fs=1&amp;rel=0" allowscriptaccess="always" allowfullscreen="true"></embed></object></p>
<p>Despite being almost an hour long this is a very insightful video that I&#8217;d recommend any Software Engineer watches.  I find it fascinating that so many programmers want to erase their perceived (or actual) mistakes in source control systems.  I guess everyone secretly wants to be the perfect super programmer.  However I typically learn more from my failures than my successes: perhaps it is natural to be more introspective about failure than success?</p>
<p>If you find the title or video too pretentious then the question and answers session (around 42:40) is still quite interesting as the presenters get grilled by the audience.</p>
<img src="http://feeds.feedburner.com/~r/EndlesslyCurious/~4/jyLgnu_uslo" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.endlesslycurious.com/2009/12/10/myth-of-the-genius-programmer/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Installing MatPlotLib on Snow Leopard with MacPorts</title>
		<link>http://www.endlesslycurious.com/2009/12/08/installing-matplotlib-on-snow-leopard-with-macports/</link>
		<comments>http://www.endlesslycurious.com/2009/12/08/installing-matplotlib-on-snow-leopard-with-macports/#comments</comments>
		<pubDate>Tue, 08 Dec 2009 09:00:13 +0000</pubDate>
		<dc:creator>Daniel</dc:creator>
				<category><![CDATA[How To]]></category>
		<category><![CDATA[Python]]></category>
		<category><![CDATA[HowTo]]></category>

		<guid isPermaLink="false">http://www.endlesslycurious.com/?p=1357</guid>
		<description><![CDATA[I have been trying to install the excellent MatPlotLib graphing module for the Python programming language on my iMac for a while now. Unlike most python module installations I&#8217;ve done the excellent python SetupTools (a.k.a easy_install) has not been up to the task.  So I ended up using MacPorts (version 1.8.1) to get MatPlotLib (version 0.99.1.1) installed on Snow [...]]]></description>
			<content:encoded><![CDATA[<p>I have been trying to install the excellent <a href="http://matplotlib.sourceforge.net/index.html">MatPlotLib</a> graphing module for the <a href="http://www.python.org/">Python</a> programming language on my iMac for a while now. Unlike most python module installations I&#8217;ve done the excellent python <a href="http://pypi.python.org/pypi/setuptools">SetupTools</a> (a.k.a easy_install) has not been up to the task.  So I ended up using <a href="http://www.macports.org/">MacPorts</a> (version 1.8.1) to get MatPlotLib (version 0.99.1.1) installed on <a title="Apple.com" href="http://www.apple.com/macosx/">Snow Leopard</a> (OS X 10.6.2) with X-Code (3.2.1 &#8211; 1613).</p>
<p>So here is a brief description of how to do it:</p>
<ol>
<li>Install the <a href="http://developer.apple.com/tools/xcode/">X-Code</a> developer tools (for GCC, make and other build tools) from your Snow Leopard installation DvD.</li>
<li>Install the <a href="http://en.wikipedia.org/wiki/X_Window_System">X11</a> Window System from your Snow Leopard installation DvD.</li>
<li>Run &#8216;<a href="http://www.apple.com/softwareupdate/">Software Update</a>&#8216; from the apple menu on your Mac to get the latest X-Code updates.</li>
<li>Download the latest MacPorts installer (.dmg file extension) for Snow Leopard from here: <a title="Mac Ports" href="http://distfiles.macports.org/MacPorts/">http://distfiles.macports.org/MacPorts/</a>.</li>
<li>Mount the installer image file (.dmg) and run the contained MacPorts installer (.pkg).</li>
<li>Once installation is complete open a terminal window from Applications-&gt;Utilities-&gt;Terminal.</li>
<li>Type &#8216;<span style="color: #008000;">port</span>&#8216; at the terminal then press enter to run MacPorts.  You should see output like the following if it installed correctly:<br />
<span style="color: #808000;">MacPorts 1.8.1<br />
Entering interactive mode&#8230; (&#8220;help&#8221; for help, &#8220;quit&#8221; to quit)</span><br />
Then type &#8216;<span style="color: #008000;">quit</span>&#8216; then press enter to exit port&#8217;s interactive mode.</li>
<li>Type &#8216;<span style="color: #008000;">sudo port selfupdate</span>&#8216; and press enter to update MacPorts to the latest version.  You will be asked to enter the administrators password before continuing.  Depending on how new the version you downloaded is, MacPorts may do some upgrading.</li>
<li>Once the update is finished type &#8216;<span style="color: #008000;">sudo port install py26-matplotlib</span>&#8216; and press enter.  This will attempt to install the latest version of matplotlib for Python version 2.6.*.   You may be asked to enter the administrators password before continuing.  MacPorts will now download, configure, build and stage the dependencies needed to build the latest matplotlib for Python 2.6.  This took at least thirty minutes on my iMac and involved lots and lots of scrolling text output from the build process.</li>
<li>Next we need to switch our environment to use version 2.6.* of Python that MacPorts just built and installed with matplotlib.  To do this run the following two commands, note you may be asked to enter the administrators password before continuing:
<ol>
<li>&#8216;<span style="color: #008000;">sudo port install python_select</span>&#8216; and hit enter.</li>
<li>&#8216;<span style="color: #008000;">sudo python_select python26</span>&#8216; and hit enter.</li>
</ol>
</li>
<li>To test this all worked type the following: &#8216;python -V&#8217; and hit enter.  You should see output like &#8216;<span style="color: #808000;">Python 2.6.4</span>&#8216; which should match the version of python MacPorts built and installed.</li>
<li>Finally to test if matplotlib was installed correctly do the following:
<ol>
<li>Type &#8216;<span style="color: #008000;">python</span>&#8216; and hit enter to enter the python interactive shell.</li>
<li>Type &#8216;<span style="color: #008000;">import matplotlib</span>&#8216; and hit enter, this will import the matplotlib module.  There should be no output if this works.</li>
<li>Type &#8216;<span style="color: #008000;">print matplotlib.__version__</span>&#8216; and hit enter. This will print the version of matplotlib that is installed, you should see output like &#8216;<span style="color: #808000;">0.99.1.1</span>&#8216;.</li>
<li>Type &#8216;<span style="color: #008000;">exit()</span>&#8216; to quit the python interactive shell.</li>
</ol>
</li>
</ol>
<img src="http://feeds.feedburner.com/~r/EndlesslyCurious/~4/AWdIaa8BTHI" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.endlesslycurious.com/2009/12/08/installing-matplotlib-on-snow-leopard-with-macports/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>New look for new posts</title>
		<link>http://www.endlesslycurious.com/2009/11/12/new-look-for-new-posts/</link>
		<comments>http://www.endlesslycurious.com/2009/11/12/new-look-for-new-posts/#comments</comments>
		<pubDate>Thu, 12 Nov 2009 19:06:38 +0000</pubDate>
		<dc:creator>Daniel</dc:creator>
				<category><![CDATA[Misc]]></category>

		<guid isPermaLink="false">http://www.endlesslycurious.com/?p=1343</guid>
		<description><![CDATA[You may have noticed that I&#8217;ve changed the visual theme for this blog to something more minimalist. I have also removed most of the widgets, which I am going to replace with some plain old links to me on other sites.  
I did this in preparation for getting my act and starting writing again, [...]]]></description>
			<content:encoded><![CDATA[<p>You may have noticed that I&#8217;ve changed the visual theme for this blog to something more minimalist. I have also removed most of the widgets, which I am going to replace with some plain old links to me on other sites.  </p>
<p>I did this in preparation for getting my act and starting writing again, hopefully new posts should start appearing this week.</p>
<img src="http://feeds.feedburner.com/~r/EndlesslyCurious/~4/gtdIYeZo8RU" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.endlesslycurious.com/2009/11/12/new-look-for-new-posts/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Using SQLite in Python</title>
		<link>http://www.endlesslycurious.com/2009/06/24/using-sqlite-in-python/</link>
		<comments>http://www.endlesslycurious.com/2009/06/24/using-sqlite-in-python/#comments</comments>
		<pubDate>Wed, 24 Jun 2009 09:00:14 +0000</pubDate>
		<dc:creator>Daniel</dc:creator>
				<category><![CDATA[Programming]]></category>
		<category><![CDATA[Python]]></category>
		<category><![CDATA[SQL]]></category>

		<guid isPermaLink="false">http://www.endlesslycurious.com/?p=1318</guid>
		<description><![CDATA[Python has had support for SQLite built-in since version 2.5.
This is a very convenient pairing as SQLite is an excellent lightweight SQL implementation that I find very useful for a variety of tasks e.g. data mining.  Or any task involving manipulating complex data sets where I&#8217;d otherwise end up resorting to using a full blown [...]]]></description>
			<content:encoded><![CDATA[<p><a title="Python.org" href="http://python.org/">Python</a> has had <a title="PyDocs" href="http://docs.python.org/library/sqlite3.html">support</a> for <a title="SQLite.org" href="http://sqlite.org/">SQLite</a> built-in since version 2.5.</p>
<p>This is a very convenient pairing as SQLite is an excellent lightweight SQL implementation that I find very useful for a variety of tasks e.g. data mining.  Or any task involving manipulating complex data sets where I&#8217;d otherwise end up resorting to using a full blown SQL server like <a href="http://www.mysql.com/">MySQL</a>.</p>
<p>Here is a simple example of using SQLite in Python using it&#8217;s built-in sqlite3 module:</p>
<pre class="brush: python;">
import sqlite3

# craete a connection
con = sqlite3.connect('test.db')

# create a cursor
cur = con.cursor()

# create a test table
cur.execute( &quot;CREATE TABLE testTable (myKey INT, myValue INT)&quot; )

# insert some data
for i in range(0,10):
 cur.execute( &quot;INSERT INTO testTable VALUES ( %d, %d )&quot;%(i,i*i) )

# select the data
for row in cur.execute( &quot;SELECT * FROM testTable&quot; ):
 print row

# destroy (drop) our test table
cur.execute( &quot;DROP TABLE testTable&quot; )

# close the connection
con.close()
</pre>
<p>As you can see Python makes handling SQLite (a C language library) much easier, less error prone, and the resulting code much more compact than SQLite&#8217;s native C.</p>
<img src="http://feeds.feedburner.com/~r/EndlesslyCurious/~4/3tH96yTkC38" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.endlesslycurious.com/2009/06/24/using-sqlite-in-python/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Window Managment on Large Monitors</title>
		<link>http://www.endlesslycurious.com/2009/06/22/window-managment-on-large-monitors/</link>
		<comments>http://www.endlesslycurious.com/2009/06/22/window-managment-on-large-monitors/#comments</comments>
		<pubDate>Mon, 22 Jun 2009 09:00:14 +0000</pubDate>
		<dc:creator>Daniel</dc:creator>
				<category><![CDATA[Misc]]></category>
		<category><![CDATA[productivity]]></category>
		<category><![CDATA[Software]]></category>

		<guid isPermaLink="false">http://www.endlesslycurious.com/?p=1286</guid>
		<description><![CDATA[I have had a 24&#8243; monitor at work for a while and recently bought myself a 24&#8243; for use as a second monitor on my 17&#8243; iMac at home.  I really enjoy the extra screen real estate that a large monitor with a resolution of 1920&#215;1200 provides.  However most applications don&#8217;t really make good use [...]]]></description>
			<content:encoded><![CDATA[<p><img class="alignright size-full wp-image-1304" title="WinSplit Revolution" src="http://www.endlesslycurious.com/wp-content/uploads/2009/06/WinSplitRev.png" alt="WinSplit Revolution" width="179" height="141" />I have had a 24&#8243; monitor at work for a while and recently bought myself a 24&#8243; for use as a second monitor on my 17&#8243; iMac at home.  I really enjoy the extra screen real estate that a large monitor with a resolution of 1920&#215;1200 provides.  However most applications don&#8217;t really make good use of the massive screen real estate of a large LCD monitor e.g. web browsers viewing fixed width webpages. This leaves you with the problem of how to maximise your usage of your screen real estate, if a single application using the whole display is sub-optimal then viewing two or more applications can be more useful.</p>
<p>The simplest solution to this is to manually position and size the windows of your applications so you can view two or more at once.  Arranging application windows manually quickly becomes tedious, due to the many events that can occur in a modern operating system which cause your application windows to be moved around, re-sized or moved to another monitor.</p>
<p><img class="size-full wp-image-1287 alignleft" title="Size Up Animation" src="http://www.endlesslycurious.com/wp-content/uploads/2009/06/sizeupanimation.gif" alt="Size Up Animation (Max OS X)" width="240" height="180" /></p>
<p>The solution to this problem is using Window Management utilities which allow you to easily re-size and move application windows around, typically using key combinations.  These utilities exist for most operating systems for Mac OS X the window management utility is called <a title="Irradiated Software" href="http://www.irradiatedsoftware.com/sizeup/">SizeUp</a>, the equivalent utility for the PC is called <a title="Winsplit Revolution" href="http://www.winsplit-revolution.com/">WinSplit Revolution</a>.  I use both of these applications daily, WinSplit is freeware but SizeUp costs a minimum of $4.99 and its worth every cent.  Each utility has some unique features: WinSplit allows you to chain several window configurations on a single key combination and SizeUp allows you to set up a key combination for moving windows between monitors.</p>
<p>I would struggle to maximise my use of one or more large monitors without a Window Management utility.  Hopefully one day this functionality will be built into operating systems as large monitors become more common.  Until then Window Managment utilties are going to be an essential tool that ever serious power user needs.</p>
<img src="http://feeds.feedburner.com/~r/EndlesslyCurious/~4/TTvw2YHgRPo" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.endlesslycurious.com/2009/06/22/window-managment-on-large-monitors/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Setting mac desktop wallpaper with Python</title>
		<link>http://www.endlesslycurious.com/2009/06/15/setting-mac-desktop-wallpaper-with-python/</link>
		<comments>http://www.endlesslycurious.com/2009/06/15/setting-mac-desktop-wallpaper-with-python/#comments</comments>
		<pubDate>Mon, 15 Jun 2009 09:00:18 +0000</pubDate>
		<dc:creator>Daniel</dc:creator>
				<category><![CDATA[Software Engineering]]></category>
		<category><![CDATA[Mac]]></category>
		<category><![CDATA[Python]]></category>
		<category><![CDATA[Snippet]]></category>

		<guid isPermaLink="false">http://www.endlesslycurious.com/?p=1269</guid>
		<description><![CDATA[I have been playing with Python recently.
Here is a little script to change a mac&#8217;s desktop wallpaper to the file specified as the first argument of the script:

import subprocess,sys,os

# Raw apple script
Script = &#34;&#34;&#34;/usr/bin/osascript&#60;&#60;END
tell application &#34;Finder&#34;
set desktop picture to POSIX file &#34;%s&#34;
end tell
END&#34;&#34;&#34;

# get the file name which is the first argument passed to this [...]]]></description>
			<content:encoded><![CDATA[<p>I have been playing with Python recently.</p>
<p>Here is a little script to change a mac&#8217;s desktop wallpaper to the file specified as the first argument of the script:</p>
<pre class="brush: python;">
import subprocess,sys,os

# Raw apple script
Script = &quot;&quot;&quot;/usr/bin/osascript&lt;&lt;END
tell application &quot;Finder&quot;
set desktop picture to POSIX file &quot;%s&quot;
end tell
END&quot;&quot;&quot;

# get the file name which is the first argument passed to this script
filename = sys.argv[1] 

# run the apple script inserting the filename
subprocess.Popen(Script%filename,shell=True)
</pre>
<p>Or using the nifty <a title="Source Forge" href="http://appscript.sourceforge.net/">appscript</a> module for python:</p>
<pre class="brush: python;">
import sys
from appscript import app, mactypes

# get the file name which is the first argument passed to this script
fileName = sys.argv[1]

# use the appscript module to change the desktop wallpaper
app('Finder').desktop_picture.set(mactypes.File(fileName))
</pre>
<p>The more I use Python the more <a title="XKCD (comic)" href="http://xkcd.com/353/">I like it</a>.  I used to think Python was at a similar level to C# in terms of how high a level a programming language it is.  After using Python for a bit I now realise that Python is a <a title="Wikipedia" href="http://en.wikipedia.org/wiki/High-level_programming_language">higher level programming language</a> than C#.  Out of the languages I use reguarally it would seem that Python is the highest level language followed by C# then C++ and finally C.</p>
<img src="http://feeds.feedburner.com/~r/EndlesslyCurious/~4/07bIs68KOH0" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.endlesslycurious.com/2009/06/15/setting-mac-desktop-wallpaper-with-python/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Habits</title>
		<link>http://www.endlesslycurious.com/2009/05/31/habits/</link>
		<comments>http://www.endlesslycurious.com/2009/05/31/habits/#comments</comments>
		<pubDate>Mon, 01 Jun 2009 06:00:46 +0000</pubDate>
		<dc:creator>Daniel</dc:creator>
				<category><![CDATA[Misc]]></category>
		<category><![CDATA[Habits]]></category>

		<guid isPermaLink="false">http://www.endlesslycurious.com/?p=1258</guid>
		<description><![CDATA[Habits and habit forming can be an interesting aspect of human behavior: they seem to fall in to two broad categories in my mind.  Habits are either hard to start and maintain until critical mass is achieved and after that can still require conscious maintenance to maintain. Or habits are easy to start but risk [...]]]></description>
			<content:encoded><![CDATA[<p>Habits and habit forming can be an interesting aspect of human behavior: they seem to fall in to two broad categories in my mind.  Habits are either hard to start and maintain until critical mass is achieved and after that can still require conscious maintenance to maintain. Or habits are easy to start but risk becoming all consuming: absorbing more and more time and energy.</p>
<p>An example of a hard to start habit for me is writing blog posts: it took a force of will to start me writing initially and it requires constant energy to keep me writing new posts.  Interruptions over even a week to my writing can be enough to disrupt my writing habit sufficiently to halt it.  At which point <a href="http://www.endlesslycurious.com/2008/08/30/inertia/">Inertia</a> comes into play with devastating effect, to make the restarting of the habit hard.  It seems that a lot of virtuous habits like regular exercise and eating healthily also fall into this category.</p>
<p>A habit that is easy to start and yet easily becomes all consuming for me is playing computer games, usually this doesn&#8217;t get too out of hand as most games have a finite length and amount of content which limits the duration of the disruption.  Yet some games, especially <a title="Wikipedia" href="http://en.wikipedia.org/wiki/Massively_multiplayer_online_game">MMO</a>s like World of Warcraft (WoW) have a seemingly endless stream of content which means that it is possible to spend an almost infinite amount of time playing the game and still not complete it.</p>
<p>These &#8216;time sink&#8217; games can be a real challenge to getting anything else done, my usual solution to this situation is to stop playing the game by unsubscribing&#8230;</p>
<img src="http://feeds.feedburner.com/~r/EndlesslyCurious/~4/8sAxfW6S_vE" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.endlesslycurious.com/2009/05/31/habits/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Finally Level Eighty!</title>
		<link>http://www.endlesslycurious.com/2009/04/08/finally-level-eighty/</link>
		<comments>http://www.endlesslycurious.com/2009/04/08/finally-level-eighty/#comments</comments>
		<pubDate>Wed, 08 Apr 2009 15:37:26 +0000</pubDate>
		<dc:creator>Daniel</dc:creator>
				<category><![CDATA[Misc]]></category>
		<category><![CDATA[Warcraft]]></category>

		<guid isPermaLink="false">http://www.endlesslycurious.com/?p=1246</guid>
		<description><![CDATA[Completely off topic but it explains the shameful lack of posts recently:

I finally got my Orc Shaman &#8216;Urki&#8216; in World of Warcraft to level eighty!  I only started levelling him in January so I&#8217;ve been pretty slow (restrained) but now I can finally start playing in the arena (PvP).

I also managed to get the artisan [...]]]></description>
			<content:encoded><![CDATA[<p>Completely off topic but it explains the shameful lack of posts recently:</p>
<p style="text-align: center;"><img class="aligncenter size-full wp-image-1247" title="Level 80" src="http://www.endlesslycurious.com/wp-content/uploads/2009/04/level80.jpg" alt="Level 80" width="672" height="110" /></p>
<p>I finally got my Orc Shaman &#8216;<a title="WoW Armoury" href="http://www.wowarmory.com/character-sheet.xml?r=Dark+Iron&amp;n=Urki">Urki</a>&#8216; in <a title="WoW Offical Site" href="http://www.wowarmory.com/character-sheet.xml?r=Dark+Iron&amp;n=Urki">World of Warcraft</a> to level eighty!  I only started levelling him in January so I&#8217;ve been pretty slow (restrained) but now I can finally start playing in the arena (<a title="Wikipedia" href="http://en.wikipedia.org/wiki/Player_versus_player">PvP</a>).</p>
<p style="text-align: center;"><img class="aligncenter size-full wp-image-1248" title="Artisan Riding" src="http://www.endlesslycurious.com/wp-content/uploads/2009/04/artisanriding.jpg" alt="Artisan Riding" width="673" height="107" /></p>
<p>I also managed to get the <a title="WoWHead" href="http://www.wowhead.com/?spell=34091">artisan riding skill</a> so I can use epic flying mounts.  Having an epic speed flying mount (<a title="WoWHead" href="http://www.wowhead.com/?item=25477">this </a>is my current) makes a huge difference to travel times, which I hadn&#8217;t fully appreciated before.</p>
<img src="http://feeds.feedburner.com/~r/EndlesslyCurious/~4/kJIWTDUyF8Q" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.endlesslycurious.com/2009/04/08/finally-level-eighty/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Fail to succeed!</title>
		<link>http://www.endlesslycurious.com/2009/04/01/fail-to-succeed/</link>
		<comments>http://www.endlesslycurious.com/2009/04/01/fail-to-succeed/#comments</comments>
		<pubDate>Wed, 01 Apr 2009 09:00:41 +0000</pubDate>
		<dc:creator>Daniel</dc:creator>
				<category><![CDATA[Programming]]></category>
		<category><![CDATA[Software Engineering]]></category>
		<category><![CDATA[Failure]]></category>
		<category><![CDATA[Knowledge]]></category>

		<guid isPermaLink="false">http://www.endlesslycurious.com/?p=1229</guid>
		<description><![CDATA[The more experienced I become the more aware I become of what I don&#8217;t know and the more I come to terms with the fact that I make mistakes.
The awareness of what I don&#8217;t know helps keep me humble, humility makes working as part of a team easier:  as there is no pressure to have [...]]]></description>
			<content:encoded><![CDATA[<p>The more experienced I become the more aware I become of what I don&#8217;t know and the more I come to terms with the fact that I make mistakes.</p>
<p>The awareness of what I don&#8217;t know helps keep me humble, humility makes working as part of a team easier:  as there is no pressure to have to know everything or not make mistakes.  In fact I tend to expect to make mistakes more now than when I first started programming.  Perhaps it is the years I have spent shipping games that finally proved to me that I too write software that contains bugs (the horror!).</p>
<p>I remember a professor at university telling me that the main difference between a professor and a first year student working on a programming task is that the student will start working immediately and also start making mistakes immediately, the professor will think for a while then start work and start making mistakes as well.  I have found this observation to have a surprising amount of truth in it,:whether it is at university, work or even sports.</p>
<p>Mistakes are healthy: without mistakes we would have not reason to every really think about what we are doing e.g. why didn&#8217;t that work?  By continually pushing (or stretching) ourselves to failure we discover our boundaries, once we know where are our boundaries are we can then start to work on pushing them further.  However if we always play it safe and never push ourselves (which can be scary) we will never discover our boundaries which makes improvement much harder and also makes approaching those boundaries harder due to fear (typically of loss of control).</p>
<p>An excellent example of this is people learning to ice skate: young children will tend to fling themselves around the rink with wild abandon falling all over the place (as failure is expected but irrelevant due to lack of social stigma), yet adult beginners typically skate in a much more conservative fashion taking less risks (as there is social stigma against falling as an adult: falling is seen as failure).  Interestingly when observing ice hockey players, it is noticeable that those with the best skating technique are typically falling more than the other the non-beginner players on the ice, as they do not fear falling.</p>
<p>As most of us are not engaged in high risk activities on a daily basis we can easily begin to revise how we think about failure and to learn to embrace it as a powerful tool for self improvement.</p>
<img src="http://feeds.feedburner.com/~r/EndlesslyCurious/~4/Y55ohY65E6g" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.endlesslycurious.com/2009/04/01/fail-to-succeed/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss><!-- Dynamic page generated in 2.130 seconds. --><!-- Cached page generated by WP-Super-Cache on 2010-03-10 13:39:39 -->
