<?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"
	>

<channel>
	<title>EnigmaCurry &#187; Cool Stuff</title>
	<atom:link href="http://www.enigmacurry.com/category/cool-stuff/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.enigmacurry.com</link>
	<description>The Curry Enigma</description>
	<pubDate>Sun, 16 Nov 2008 16:15:27 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.6.1</generator>
	<language>en</language>
			<item>
		<title>Wrangling my finances</title>
		<link>http://www.enigmacurry.com/2008/10/21/wrangling-my-finances/</link>
		<comments>http://www.enigmacurry.com/2008/10/21/wrangling-my-finances/#comments</comments>
		<pubDate>Tue, 21 Oct 2008 19:42:55 +0000</pubDate>
		<dc:creator>ryan</dc:creator>
		
		<category><![CDATA[Cool Stuff]]></category>

		<category><![CDATA[Economics]]></category>

		<category><![CDATA[Emacs]]></category>

		<category><![CDATA[finances ledger selenium]]></category>

		<guid isPermaLink="false">http://www.enigmacurry.com/?p=177</guid>
		<description><![CDATA[I&#039;ve gotten better at thinking about my finances over the years but I&#039;ve never had anything better than a mental budget. I&#039;ve never actually written anything down on paper. I&#039;ve got a brand new job so I figure I&#039;ve got a clean slate. Starting right now, I pledge to myself to keep a balanced checkbook [...]]]></description>
			<content:encoded><![CDATA[<p>I&#039;ve gotten better at thinking about my finances over the years but I&#039;ve never had anything better than a mental budget. I&#039;ve never actually written anything down on paper. I&#039;ve got a brand new job so I figure I&#039;ve got a clean slate. Starting right now, I pledge to myself to keep a balanced checkbook at all times and to do monthly reviews of my finances looking for things to cut out of my budget.</p>
<p>Fiscal Conscience: Ha! How many times have you said that?<br />
Me: Dozens of times!<br />
Fiscal Conscience: And did you ever actually do it?<br />
Me: No, but this time it will be different!<br />
Fiscal Conscience: You&#039;re going to have do to better than that!<br />
Me: Fine, I&#039;ll show you.</p>
<p>GnuCash is a wonderful piece of open-source accounting software. I have used it myself, dozens of times. But as it happens I inevitably stop using it. Not because the software is flawed per se, it does everything a good accounting application should do:</p>
<ul>
<li>Use Double-Entry accounting</li>
<li>Support multiple currencies</li>
<li>OFX import from online banking sites</li>
<li>etc</li>
</ul>
<p>The only thing they get wrong is the fundamental design choice they made when developing the application: they made it a GUI. Sure, GUIs are great, but in my opinion GUIs should be interfaces to a service oriented application rather than the application itself. Unless I&#039;m sitting at my desk at home I can&#039;t use my application. I don&#039;t consider remote desktops a reasonable response to this problem due to the huge network latency issues as well as firewall problems.</p>
<p>I want to be able to record my transactions from anywhere. At home at my desk, at work at my desk, on my N800 when traveling, or on my phone when running around. With an application fundamentally written as a GUI this is essentially an insurmountable problem. An application written as a service can do all of these things quite easily with minimal amounts of programming.</p>
<p>Enter <a href="http://www.newartisans.com/software/ledger.html">Ledger</a>.</p>
<p>Ledger does not keep track of your accounts. <strong>You</strong> keep track of your accounts in a plain text file and Ledger helps you understand them better. I can update my checkbook register from any text editor, anywhere I am. Most often this is Emacs through SSH on my home computer. Because of the triviality of the file format (being plain text) I can write a simple application that takes text messages from my phone and adds them to the register automatically.</p>
<p><img src="http://www.enigmacurry.com/wp-content/uploads/2008/10/ledgerscreenshot.png" alt="" title="ledgerscreenshot" align="center" /></p>
<p>But what about all my automatic payments?</p>
<p>I have most of my monthly payments automatically debited from my account. This is nice since I don&#039;t have to spend the time submitting payments to X number of companies each month, but is a nightmare when it comes time to balancing my checkbook. What I have done in the past is to just import an OFX file from my bank directly into GnuCash. This works great until you realize that something is wrong with the import and your checkbook is no longer balancing correctly. For this reason alone I prefer to record each transaction I make by hand. My money is my responsibility after all.</p>
<p>So, I wanted to be instantly notified of any debit on my checking account as soon as it happens. This gives me the following:
<ul>
<li>A text message to my phone describing the time, place and amount of the transaction</li>
<li>The total balance of my account</li>
<li>A way to constantly keep an eye on how I&#039;m spending my money without the hassle of (remembering to) signing into my bank account</li>
<li>A reminder to balance my checkbook. (tells me when my actual checking balance has been out of sync with ledger for over 48 hours.)</li>
</ul>
<p>The central peice to this process is getting the transaction data from my bank account. My bank offers online banking but it does not offer an easy way to download my transactions. Sure it supports Quicken and MS Money exports, but its all protected behind a password protected javascript-enabled website. I wanted to use the wonderful <a href="http://wwwsearch.sourceforge.net/mechanize/">mechanize</a> library for python. However, it doesn&#039;t support javascript.</p>
<p>Enter <a href="http://selenium-rc.openqa.org/">Selenium RC</a>.</p>
<p>Selenium RC is an application that can remote control a real web browser and submit and receive data. I run selenium which launches Firefox in a headless X-server (Xvfb) and continuously refreshes my online banking site and parses out my account activity. This is probably a bit memory intensive to always keep a browser open for this specific purpose. I may want to experiment with python-spidermonkey in the future and go back to using mechanize, but I think there&#039;s a lot of glue missing in that solution whereas Selenium RC works perfectly right now!</p>
<p>No code to share at the moment, it&#039;s all a giant hack. If a similar setup appeals to someone out there, let me know and I&#039;ll think about releasing something.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.enigmacurry.com/2008/10/21/wrangling-my-finances/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Last.FM at 75MPH</title>
		<link>http://www.enigmacurry.com/2008/03/04/lastfm-at-75mph/</link>
		<comments>http://www.enigmacurry.com/2008/03/04/lastfm-at-75mph/#comments</comments>
		<pubDate>Wed, 05 Mar 2008 06:33:52 +0000</pubDate>
		<dc:creator>ryan</dc:creator>
		
		<category><![CDATA[Cool Stuff]]></category>

		<category><![CDATA[Geeky]]></category>

		<category><![CDATA[N800]]></category>

		<guid isPermaLink="false">http://www.enigmacurry.com/2008/03/04/lastfm-at-75mph/</guid>
		<description><![CDATA[I got a new phone today, a Samsung A737 from ATT. I signed up for their media net unlimited for an additional $15 and it gives me internet access, not only on my phone, but on my N800 too.
I have the Vagalume Last.FM client installed on my N800, and guess what? The 3G connection is [...]]]></description>
			<content:encoded><![CDATA[<p>I got a new phone today, a Samsung A737 from ATT. I signed up for their media net unlimited for an additional $15 and it gives me internet access, not only on my phone, but on my N800 too.</p>
<p>I have the <a href="http://vagalume.igalia.com/">Vagalume Last.FM client</a> installed on my N800, and guess what? The 3G connection is sufficient for streaming! <img src='http://www.enigmacurry.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>I tested it out today, only a 5 mile trip on I-15 (SLC metro area). At 75 MPH, I went through about 3 songs. I advanced (skipped) the song about 5 times, and each time it went to the next song very rapidly (1-2 seconds delay). The whole time the music only cut out once when I first got onto the freeway, but only for about 2 seconds and it corrected itself.</p>
<p>I am extremely giddy at all the geeky prospects that lie ahead for me <img src='http://www.enigmacurry.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://www.enigmacurry.com/2008/03/04/lastfm-at-75mph/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Life is to be sung</title>
		<link>http://www.enigmacurry.com/2007/07/22/life-is-to-be-sung/</link>
		<comments>http://www.enigmacurry.com/2007/07/22/life-is-to-be-sung/#comments</comments>
		<pubDate>Sun, 22 Jul 2007 07:37:34 +0000</pubDate>
		<dc:creator>ryan</dc:creator>
		
		<category><![CDATA[Cool Stuff]]></category>

		<category><![CDATA[Videos]]></category>

		<guid isPermaLink="false">http://www.enigmacurry.com/2007/07/22/life-is-to-be-sung/</guid>
		<description><![CDATA[
Achievement is overrated. Not worthless mind you, just overrated. The value of achievement is weighted so heavily in our lives that we tend to neglect the very prerequisites for it. 
This is what beauty is: to find happiness and fulfillment in every single day. 
Lifelong &#039;achievement&#039; cannot be realized unless it is done daily. This [...]]]></description>
			<content:encoded><![CDATA[<p><center><object width="425" height="350"><param name="movie" value="http://www.youtube.com/v/ERbvKrH-GC4"></param><param name="wmode" value="transparent"></param><embed src="http://www.youtube.com/v/ERbvKrH-GC4" type="application/x-shockwave-flash" wmode="transparent" width="425" height="350"></embed></object></center></p>
<p>Achievement is overrated. Not worthless mind you, just overrated. The value of achievement is weighted so heavily in our lives that we tend to neglect the very prerequisites for it. </p>
<p>This is what beauty is: to find happiness and fulfillment in every single day. </p>
<p>Lifelong &#039;achievement&#039; cannot be realized unless it is done daily. This country&#039;s education system and expected work schedules don&#039;t help much in this regard but it cannot be blamed for my lack of daily achievement. I can achieve something and find fulfillment <strong>in spite of</strong> the apathy that may surround me. </p>
<p>This video is very inspiring to me. Because of it I am reminded that I must refuse the concept that I will someday arrive at the beginning of my life.</p>
<p><em>I am already here. </em></p>
<p><em>I always have been.</em></p>
<p><em>What I do today is what counts.</em></p>
]]></content:encoded>
			<wfw:commentRss>http://www.enigmacurry.com/2007/07/22/life-is-to-be-sung/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Michael Badnarik has a new radio show!</title>
		<link>http://www.enigmacurry.com/2007/04/23/michael-badnarik-has-a-new-radio-show/</link>
		<comments>http://www.enigmacurry.com/2007/04/23/michael-badnarik-has-a-new-radio-show/#comments</comments>
		<pubDate>Mon, 23 Apr 2007 15:46:15 +0000</pubDate>
		<dc:creator>ryan</dc:creator>
		
		<category><![CDATA[Cool Stuff]]></category>

		<category><![CDATA[Michael Badnarik]]></category>

		<guid isPermaLink="false">http://www.enigmacurry.com/2007/04/23/michael-badnarik-has-a-new-radio-show/</guid>
		<description><![CDATA[
I got an email this morning from one of my favorite liberty activists: Michael Badnarik. Michael has been wrapping up a very rigourous campaign for US Congress and so we haven&#039;t heard much from him lately. But he is back and sounding better than ever! 
Michael began today with his new show Lighting the Fires [...]]]></description>
			<content:encoded><![CDATA[<p><img id="image90" src="http://www.enigmacurry.com/wp-content/uploads/2007/04/Michael_Badnarik_150.gif" alt="Michael Badnarik" align="left" hspace="5" /></p>
<p>I got an email this morning from one of my favorite liberty activists: <a href="http://www.constitutionpreservation.org/">Michael Badnarik</a>. Michael has been wrapping up a very rigourous campaign for US Congress and so we haven&#039;t heard much from him lately. But he is back and sounding better than ever! </p>
<p>Michael began today with his new show <a href="http://www.wtprn.com/programs.html#Badnarik">Lighting the Fires of Liberty</a> on the <a href="http://www.wtprn.com">We the People Radio Network</a>. I wish Michael the best of luck, I feel that being an educator is one of his best roles and he will do extremely well, I&#039;m sure of it.</p>
<p>Check his out <a href="http://mp3.wtprn.com/Badnarik.xml">podcast</a> today!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.enigmacurry.com/2007/04/23/michael-badnarik-has-a-new-radio-show/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Awesome</title>
		<link>http://www.enigmacurry.com/2006/06/20/awesome/</link>
		<comments>http://www.enigmacurry.com/2006/06/20/awesome/#comments</comments>
		<pubDate>Wed, 21 Jun 2006 05:58:04 +0000</pubDate>
		<dc:creator>ryan</dc:creator>
		
		<category><![CDATA[Cool Stuff]]></category>

		<category><![CDATA[Videos]]></category>

		<guid isPermaLink="false">http://www.enigmacurry.com/2006/06/20/awesome/</guid>
		<description><![CDATA[Sorry, I&#039;ve been busy with school and work the past month or so, I promise I&#039;ll write here soon.
In the meantime, this is just plain awesome:
 
]]></description>
			<content:encoded><![CDATA[<p>Sorry, I&#039;ve been busy with school and work the past month or so, I promise I&#039;ll write here soon.</p>
<p>In the meantime, this is just plain awesome:</p>
<p><embed style="width:400px; height:326px;" id="VideoPlayback" align="middle" type="application/x-shockwave-flash" src="http://video.google.com/googleplayer.swf?docId=5374008715756508221" allowScriptAccess="sameDomain" quality="best" bgcolor="#ffffff" scale="noScale" salign="TL"  FlashVars="playerMode=embedded"> </embed></p>
]]></content:encoded>
			<wfw:commentRss>http://www.enigmacurry.com/2006/06/20/awesome/feed/</wfw:commentRss>
		</item>
		<item>
		<title>My Dad, the piano man.</title>
		<link>http://www.enigmacurry.com/2006/04/29/my-dad-the-piano-man/</link>
		<comments>http://www.enigmacurry.com/2006/04/29/my-dad-the-piano-man/#comments</comments>
		<pubDate>Sat, 29 Apr 2006 19:35:27 +0000</pubDate>
		<dc:creator>ryan</dc:creator>
		
		<category><![CDATA[Cool Stuff]]></category>

		<guid isPermaLink="false">http://www.enigmacurry.com/?p=69</guid>
		<description><![CDATA[My father always had a piano in the house while I was growing up. I have many fond memories of him playing it. At some point, after we moved to Utah when I was 10 years old, the frequency of his playing slowed. I think this was due in part to his eagerness to provide [...]]]></description>
			<content:encoded><![CDATA[<p>My father always had a piano in the house while I was growing up. I have many fond memories of him playing it. At some point, after we moved to Utah when I was 10 years old, the frequency of his playing slowed. I think this was due in part to his eagerness to provide for his family and thus his time diminished, but also because his Chickering upright piano did not fare well in Utah&#039;s lower humidity.</p>
<p>Last year, my parents moved closer to where my Dad works and they also got a new house-warming self-given gift: a <a href="http://blog.duanemcguire.com/?p=35">1911 Steiff grand piano</a>. My Dad has been very enthusiastic about it ever since and his playing has improved by leaps and bounds. I am very proud of him.</p>
<p>Today, he sent me his latest studio recording. I assume this is not played on his new Piano as he doesn&#039;t have his own studio. This is amazing: <em>If you could see me now.</em></p>
<p>Click the play button below</p>
<p><center></center></p>
]]></content:encoded>
			<wfw:commentRss>http://www.enigmacurry.com/2006/04/29/my-dad-the-piano-man/feed/</wfw:commentRss>
<enclosure url="http://www.duanemcguire.com/dmc/music/Duane-IfYouCouldSeeMeNow.MP3" length="2946322" type="audio/mpeg" />
<enclosure url="http://www.enigmacurry.com/audio/Duane/Duane-IfYouCouldSeeMeNow.MP3" length="2946322" type="audio/mpeg" />
		</item>
		<item>
		<title>Python! TurboGears!</title>
		<link>http://www.enigmacurry.com/2005/11/18/python-turbogears/</link>
		<comments>http://www.enigmacurry.com/2005/11/18/python-turbogears/#comments</comments>
		<pubDate>Fri, 18 Nov 2005 07:20:21 +0000</pubDate>
		<dc:creator>ryan</dc:creator>
		
		<category><![CDATA[Cool Stuff]]></category>

		<category><![CDATA[Python]]></category>

		<guid isPermaLink="false">http://www.enigmacurry.com/?p=36</guid>
		<description><![CDATA[
I have to to tell this story backwards so bear with me.
Yesterday, I watched something that was surprising, amazing, and inspiring all at the same time. It was a video of the making of an entire Wiki, from scratch, in only 20 minutes. Mind you this video was produced by a developer that intimately knows [...]]]></description>
			<content:encoded><![CDATA[<p><img src="/blog-post-images/PythonTurboGears.gif" alt="Python! TurboGears!" align="right" /><br />
I have to to tell this story backwards so bear with me.</p>
<p>Yesterday, I watched something that was surprising, amazing, and inspiring all at the same time. It was a <a href="http://www.turbogears.org/docs/wiki20/20MinuteWiki.mov">video of the making of an entire Wiki</a>, from scratch, in only 20 minutes. Mind you this video was produced by a developer that intimately knows his development environment, but it was nonetheless amazing to just sit and watch the thing evolve in front of me and not get bored in the process of watching it. The video introduces a brand new web application framework called <a href="http://www.turbogears.org">TurboGears</a>. </p>
<p>I guess I&#039;m a bit behind on the times, because I thought plain, vanilla, <a href="http://www.php.net">PHP</a> was pretty cool stuff. It&#039;s what I&#039;ve almost always used for developing web-apps, in both commercial environments and on my own personal time. I had heard of <a href="http://www.zope.org">Zope</a> before but until recently had never really considered it much more than an alternative on par with PHP.  Enter <a href="http://www.rubyonrails.org/">Ruby on Rails</a>. Until earlier this year, I didn&#039;t even know what Ruby was let alone what an <a href="http://en.wikipedia.org/wiki/MVC">MVC</a> was. Ruby on Rails (RoR) is essentially the next big thing, a higher abstraction, in developing web applications. Everyone, everyone but me that is, has been talking about Ruby on Rails&#8230; but somehow it completely slipped me by.</p>
<p>Go back a little further in history..</p>
<p>In August, I stumbled on a very unique website called the <a href="http://www.pythonchallenge.com">Python Challenge</a>. It is a site with a series of progressive riddles for (python) programmers. To summarize, it is very addicting. If you haven&#039;t tried it, go there right now (warning: if you&#039;re at work right now, you might not get back to it today). If you are a programmer (of any skill level) or just happen to like a good puzzle, this web site will challenge you for hours and days and even weeks. I started dreaming of these problems and possible solutions. The Python Challenge litterally tought me how to program Python in about one week. This is in part due to Python being a simplistic (yet oh so powerful), highly abstracted (that means you don&#039;t need to know much about computers folks!), well designed language. This is also due to the fact that the Python Challenge seems to cover almost all of the Python Standard Library. Instead of reading through a Python book from front to cover, the Challenge forces you to read certain portions of the documentation in order to solve the puzzle at hand. Then the next puzzle does the same thing for a different part of the documentation. By the time you&#039;ve gone through ten or so of these puzzles you&#039;ll realize that you&#039;ve read things that you probably never would have read without the motivation, or possibly you just would have skimmed over it without realizing it&#039;s significance. But since you were essentially <em>forced</em> into reading it and actually put it to use, you realize it was worthwhile after all and will know to use it again when the opportunity arises. I have since tried to incorporate as much Python into my work and my studies as possible and have found it very rewarding. Suffice it to say, I love Python!</p>
<p>Now, this probably sounds pretty non-coherent by now, if not totally unrelated to the first part of this post, but trust me, I told you all this for a reason. Shortly after reading about Ruby on Rails, and realizing the magnitude of it, while at the same time not relishing the thought of learning Ruby, I googled for &#034;Python on Rails&#034; and came across TurboGears. Now I found something I could <em>really</em> get excited about:  a next-generation model for designing and implementing web applications that for all intents and purposes seems just as powerful as Ruby on Rails and just so happens to also be in a language that really excites me.  I haven&#039;t gotten very far in doing anything with it yet (school and work is a little overwhelming right now) but before seeing these two things together I had almost deemed web development boring.. I never would have thought that it could be this fun again!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.enigmacurry.com/2005/11/18/python-turbogears/feed/</wfw:commentRss>
<enclosure url="http://www.turbogears.org/docs/wiki20/20MinuteWiki.mov" length="30963573" type="video/quicktime" />
		</item>
		<item>
		<title>What Fantasy/Sci-Fi Character are you?</title>
		<link>http://www.enigmacurry.com/2005/10/20/what-fantasysci-fi-character-are-you/</link>
		<comments>http://www.enigmacurry.com/2005/10/20/what-fantasysci-fi-character-are-you/#comments</comments>
		<pubDate>Thu, 20 Oct 2005 14:57:28 +0000</pubDate>
		<dc:creator>ryan</dc:creator>
		
		<category><![CDATA[Cool Stuff]]></category>

		<category><![CDATA[Enigma Curry]]></category>

		<guid isPermaLink="false">http://www.enigmacurry.com/?p=34</guid>
		<description><![CDATA[
This is a fun little quiz to see what Fantasy or Sci-Fi character you are.
I answered truthfully and I turned out to be Spock&#8230; but I was also curious to see what happened if I changed my answers slightly. Did you know what the difference between Spock and Harry Potter is? I&#039;ll tell you. Harry [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.tk421.net/character/"><img src="http://www.tk421.net/character/spock.jpg" width="239" height="200" align=right style="border-color:#f8f8ff;" border="2" alt="Which Fantasy/SciFi Character Are You?" /></a></p>
<p>This is a fun little quiz to see what <a href="http://www.tk421.net/character/">Fantasy or Sci-Fi character you are.</a></p>
<p>I answered truthfully and I turned out to be Spock&#8230; but I was also curious to see what happened if I changed my answers slightly. Did you know what the difference between Spock and Harry Potter is? I&#039;ll tell you. Harry Potter would gladly kill his best friend if it were to mean immortality for himself. Thank goodness that isn&#039;t something I&#039;m apt to do.. something drastic indeed might have occured had I turned out Harry Potter.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.enigmacurry.com/2005/10/20/what-fantasysci-fi-character-are-you/feed/</wfw:commentRss>
		</item>
	</channel>
</rss>
