<?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>ancientpc.net &#187; software</title>
	<atom:link href="http://www.ancientpc.net/category/software/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.ancientpc.net</link>
	<description>my brute force approach to life</description>
	<lastBuildDate>Wed, 04 Mar 2009 08:56:38 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Google extends offline access to Calendar</title>
		<link>http://www.ancientpc.net/2009/03/04/google-extends-offline-access-to-calendar/</link>
		<comments>http://www.ancientpc.net/2009/03/04/google-extends-offline-access-to-calendar/#comments</comments>
		<pubDate>Wed, 04 Mar 2009 08:56:05 +0000</pubDate>
		<dc:creator>Ting</dc:creator>
				<category><![CDATA[miscellaneous]]></category>
		<category><![CDATA[software]]></category>
		<category><![CDATA[calendar]]></category>
		<category><![CDATA[gears]]></category>
		<category><![CDATA[google]]></category>

		<guid isPermaLink="false">http://www.ancientpc.net/?p=209</guid>
		<description><![CDATA[Similar to Gmail&#8217;s offline access, Google now supports similar functionality in Google Calendar through the use of Google Gears.
Enabling it is fairly quick, simply click on the &#8220;Offline&#8221; link and enable access to Google gears.  If you don&#8217;t have it installed you can do so here.  That&#8217;s it!  Once synchronized clicking on the link icon [...]]]></description>
			<content:encoded><![CDATA[<p>Similar to <a href="http://www.ancientpc.net/2009/02/05/gmail-adds-offline/">Gmail&#8217;s offline access</a>, Google now supports similar functionality in Google Calendar through the use of Google Gears.</p>
<p>Enabling it is fairly quick, simply click on the &#8220;Offline&#8221; link and enable access to Google gears.  If you don&#8217;t have it installed you can do so <a href="http://gears.google.com/">here</a>.  That&#8217;s it!  Once synchronized clicking on the link icon reveals a small menu:</p>
<p><img class="aligncenter size-full wp-image-210" title="calendar_sync" src="http://www.ancientpc.net/wp-content/uploads/2009/03/calendar_sync.png" alt="calendar_sync" width="256" height="162" /></p>
]]></content:encoded>
			<wfw:commentRss>http://www.ancientpc.net/2009/03/04/google-extends-offline-access-to-calendar/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>ExifEdit Launch!</title>
		<link>http://www.ancientpc.net/2009/02/23/exifedit-launch/</link>
		<comments>http://www.ancientpc.net/2009/02/23/exifedit-launch/#comments</comments>
		<pubDate>Mon, 23 Feb 2009 20:04:41 +0000</pubDate>
		<dc:creator>Ting</dc:creator>
				<category><![CDATA[coding]]></category>
		<category><![CDATA[photography]]></category>
		<category><![CDATA[batch]]></category>
		<category><![CDATA[EXIF]]></category>
		<category><![CDATA[pictures]]></category>
		<category><![CDATA[Python]]></category>
		<category><![CDATA[renaming]]></category>
		<category><![CDATA[Sourceforge]]></category>

		<guid isPermaLink="false">http://www.ancientpc.net/?p=204</guid>
		<description><![CDATA[Recently I&#8217;ve been working on a program to solve a nuisance of mine, why do digital cameras label pictures arbitrarily as DSC_1234.JPG?  It&#8217;s a meaningless naming convention and makes it difficult later to go through all your pictures to find that one you took last week.
Failing to find any tool on the web that does [...]]]></description>
			<content:encoded><![CDATA[<p>Recently I&#8217;ve been working on a program to solve a nuisance of mine, why do digital cameras label pictures arbitrarily as DSC_1234.JPG?  It&#8217;s a meaningless naming convention and makes it difficult later to go through all your pictures to find that one you took last week.</p>
<p>Failing to find any tool on the web that does what I need I set out to write my own.  Put very simply, at this point it copies all the files from one directory to another while moving and renaming the file based on the EXIF metadata timestamp stored within each digital photo.  From My Documents\My Pictures\DSC_1234.JPG to 2009\02\23\2009-02-23_16.28.45.jpg.  The new name and directory structure makes it easier to find &#8220;those Hawaii pics I took last summer.&#8221;</p>
<p>I developed the program in Python with the aim of keeping the utility platform-independent and later building a front-end GUI for it.</p>
<p>You can currently find the program and source code on <a href="https://sourceforge.net/projects/exifedit/">Sourceforge</a> (released under GPL3).  I compiled an .exe binary as well for Window users who do not have Python installed.  It currently is in beta stage and supports basic functionality.  For example: renaming based off custom template, simulating the actions, and controlling the verbosity of output.</p>
<p>Planned features include moving the original file, checking for duplicate pictures, and renaming RAW files as well.</p>
<p>Please post any comments or bugs to the Sourceforge discussion forums or bug tracker!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.ancientpc.net/2009/02/23/exifedit-launch/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Changing default mouse button behavior</title>
		<link>http://www.ancientpc.net/2009/02/07/changing-default-mouse-button-behavior/</link>
		<comments>http://www.ancientpc.net/2009/02/07/changing-default-mouse-button-behavior/#comments</comments>
		<pubDate>Sun, 08 Feb 2009 01:48:19 +0000</pubDate>
		<dc:creator>Ting</dc:creator>
				<category><![CDATA[hardware]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[ubuntu]]></category>
		<category><![CDATA[button]]></category>
		<category><![CDATA[imwheel]]></category>
		<category><![CDATA[mouse]]></category>
		<category><![CDATA[rebind]]></category>
		<category><![CDATA[remap]]></category>

		<guid isPermaLink="false">http://www.ancientpc.net/?p=192</guid>
		<description><![CDATA[It took me a while to find the magical query for what I wanted to do, but hopefully this can help others.
If you want to remap your mouse buttons from one to another, there&#8217;s useful documentation here.
On the other hand imwheel gives you the ability to binds your mouse buttons to other actions (e.g. type [...]]]></description>
			<content:encoded><![CDATA[<p>It took me a while to find the magical query for what I wanted to do, but hopefully this can help others.</p>
<p>If you want to remap your mouse buttons from one to another, there&#8217;s useful documentation <a href="https://help.ubuntu.com/community/ManyButtonsMouseHowto">here</a>.</p>
<p>On the other hand <a href="http://sourceforge.net/projects/imwheel/">imwheel</a> gives you the ability to binds your mouse buttons to other actions (e.g. type text, combination key strokes).  However you can probably find it within your distro&#8217;s repository and install it from there.  Once imwheel is set up, you can take a quick glance at the <a href="http://imwheel.sourceforge.net/imwheel.1.html">man pages</a>.</p>
<p>If you want to modify system-wide settings edit /etc/X11/imwheelrc, otherwise modify $HOME/.imwheelrc for user specific settings.</p>
<p>One thing to note is that unlike rest of X configuration, tilt wheel is not represented as button 5 and button 6, with thumb buttons represented as button 7 and 8.  Instead tilt left is &#8220;Left&#8221;, tilt right is &#8220;Right&#8221;, left thumb is &#8220;Thumb1&#8243;, right thumb is &#8220;Thumb2&#8243;.</p>
<p>My .imwheelrc is listed below, but feel free to <a href="http://www.google.com/search?hl=en&amp;client=firefox-a&amp;rls=com.ubuntu%3Aen-US%3Aunofficial&amp;hs=moy&amp;q=.imwheelrc+configuration&amp;btnG=Search&amp;aq=f&amp;oq=">search</a> for other configurations for more ideas.</p>
<p><code>".*"<br />
None,Left,Control_L|Page_Up<br />
None,Right,Control_L|Page_Down<br />
None,Thumb1,Control_L|w</code></p>
]]></content:encoded>
			<wfw:commentRss>http://www.ancientpc.net/2009/02/07/changing-default-mouse-button-behavior/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Gmail adds offline access</title>
		<link>http://www.ancientpc.net/2009/02/05/gmail-adds-offline/</link>
		<comments>http://www.ancientpc.net/2009/02/05/gmail-adds-offline/#comments</comments>
		<pubDate>Fri, 06 Feb 2009 05:15:30 +0000</pubDate>
		<dc:creator>Ting</dc:creator>
				<category><![CDATA[miscellaneous]]></category>
		<category><![CDATA[software]]></category>
		<category><![CDATA[email]]></category>
		<category><![CDATA[gears]]></category>
		<category><![CDATA[gmail]]></category>
		<category><![CDATA[google]]></category>
		<category><![CDATA[labs]]></category>
		<category><![CDATA[offline]]></category>

		<guid isPermaLink="false">http://www.ancientpc.net/?p=183</guid>
		<description><![CDATA[Although it&#8217;s been rumored, Google finally has released an offline version of Gmail through Google Gears.  If you don&#8217;t have it installed yet, you can download Google Gears here.
To enable this feature first click on the Labs icon and enable Offline mode:

Afterwards, click on the &#8220;Offline 0.1&#8243; link in the top right hand corner next [...]]]></description>
			<content:encoded><![CDATA[<p>Although it&#8217;s been rumored, Google finally has released an offline version of Gmail through Google Gears.  If you don&#8217;t have it installed yet, you can download Google Gears <a href="http://gears.google.com/">here</a>.</p>
<p>To enable this feature first click on the Labs icon and enable Offline mode:</p>
<p><img class="aligncenter size-medium wp-image-184" title="gmail_offline" src="http://www.ancientpc.net/wp-content/uploads/2009/02/gmail_offline-300x54.png" alt="gmail_offline" width="300" height="54" /></p>
<p>Afterwards, click on the &#8220;Offline 0.1&#8243; link in the top right hand corner next to the labs icon and allow Gmail to install the Offline option.</p>
<p><img class="aligncenter size-medium wp-image-185" title="gmail_gears" src="http://www.ancientpc.net/wp-content/uploads/2009/02/gmail_gears-300x111.png" alt="gmail_gears" width="300" height="111" /></p>
<p>E-mails will begin to be downloaded after the installation.  You can then expand the download box for more information:</p>
<p><img class="aligncenter size-medium wp-image-186" title="google_gears_expanded" src="http://www.ancientpc.net/wp-content/uploads/2009/02/google_gears_expanded-300x246.png" alt="google_gears_expanded" width="300" height="246" /></p>
<p>If you don&#8217;t have this feature yet, please keep in mind that Google typically rolls these features out over the course of several days.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.ancientpc.net/2009/02/05/gmail-adds-offline/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Process wait script</title>
		<link>http://www.ancientpc.net/2008/11/11/process-wait-script/</link>
		<comments>http://www.ancientpc.net/2008/11/11/process-wait-script/#comments</comments>
		<pubDate>Wed, 12 Nov 2008 00:30:29 +0000</pubDate>
		<dc:creator>Ting</dc:creator>
				<category><![CDATA[coding]]></category>
		<category><![CDATA[bash]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[script]]></category>

		<guid isPermaLink="false">http://www.ancientpc.net/?p=149</guid>
		<description><![CDATA[ 
Often times I would run commands that depended on processes to finish on another tab within a screen session.  Unfortunately, bash&#8217;s wait command only works within the existing shell, so I came up with a quick script to check versus executable name.
#!/bin/bash
 
if [ $# -ne 0 ]; then
    while pgrep ^$1 &#38;gt; /dev/null; do sleep [...]]]></description>
			<content:encoded><![CDATA[<p> </p>
<p>Often times I would run commands that depended on processes to finish on another tab within a screen session.  Unfortunately, bash&#8217;s <a href="http://www.linuxmanpages.com/man1/wait.1.php">wait</a> command only works within the existing shell, so I came up with a quick script to check versus executable name.</p>
<p><code>#!/bin/bash</code></p>
<p><code> </code></p>
<p><code>if [ $# -ne 0 ]; then<br />
    while pgrep ^$1 &amp;gt; /dev/null; do sleep 1; done;<br />
else<br />
    echo "Invalid Arguments"<br />
    exit 1<br />
fi</code></p>
<p>Obviously it&#8217;s a pretty simple script, and currently only matches commands at the beginning.  A simple modification to check for pids instead would be fairly simple.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.ancientpc.net/2008/11/11/process-wait-script/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Fastest method of upgrading Ubuntu</title>
		<link>http://www.ancientpc.net/2008/10/30/fastest-method-of-upgrading-ubuntu/</link>
		<comments>http://www.ancientpc.net/2008/10/30/fastest-method-of-upgrading-ubuntu/#comments</comments>
		<pubDate>Fri, 31 Oct 2008 04:45:45 +0000</pubDate>
		<dc:creator>Ting</dc:creator>
				<category><![CDATA[ubuntu]]></category>
		<category><![CDATA[upgrade]]></category>

		<guid isPermaLink="false">http://www.ancientpc.net/?p=146</guid>
		<description><![CDATA[Ubuntu 8.10 rolled out yesterday and as such the Ubuntu servers are hammered by people trying to upgrade through the network.
The quickest method of upgrading Ubuntu is as follows:

Download the alternate ISO off BitTorrent.
Change your package source server from the default to the fastest available:
a. Within Ubuntu, go to System &#62; Administration &#62; Software Sources
b. [...]]]></description>
			<content:encoded><![CDATA[<p>Ubuntu 8.10 rolled out yesterday and as such the Ubuntu servers are hammered by people trying to upgrade through the network.</p>
<p>The quickest method of upgrading Ubuntu is as follows:</p>
<ol>
<li><a href="http://www.ubuntu.com/getubuntu/downloadmirrors#alternate">Download</a> the alternate ISO off BitTorrent.</li>
<li>Change your package source server from the default to the fastest available:<br />
a. Within Ubuntu, go to System &gt; Administration &gt; Software Sources<br />
b. Click on Download From &gt; Other.<br />
c. Choose &#8220;Select Best Server&#8221;.  Ubuntu will scan for the fastest server for you.<br />
d. Click on &#8220;Choose Server&#8221; and close out all the dialog boxes.</li>
<li>Mount the ISO:<br />
sudo mount -o loop ~/ubuntu-8.10-alternate-i386.iso /media/cdrom0</li>
<li>You should get a pop up asking if you want to upgrade and click yes.  If not, run:<br />
gksudo &#8220;sh /cdrom/cdromupgrade&#8221;</li>
<p><span style="overflow: hidden; position: absolute; height: 0pt; width: 0pt;"><a href="http://sikongroup.com/rentacar/index.htm">rent a car bulgaria</a></span></p>
<li>During the upgrade process you can choose whether or not to download updates off the network.  Choosing no will be the fastest option, but you&#8217;re merely postponing downloading the extra packages until later.</li>
</ol>
<p><em>Update 11/15/2008:</em></p>
<p>I wanted to add that using this method will add the CD into your apt sources, prompting you to add your CD in whenever using apt-get to install packages.  Fix this by simply editting /etc/apt/sources.list and comment out all &#8220;deb cdrom:&#8221; lines at the top as root.</p>
<p><em>Update 12/17/2008:</em></p>
<p>This does not work with AMD64b installations as the alternate ISO only supports i386.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.ancientpc.net/2008/10/30/fastest-method-of-upgrading-ubuntu/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>OS and browser agnostic ad blocking</title>
		<link>http://www.ancientpc.net/2008/09/08/os-and-browser-agnostic-ad-blocking/</link>
		<comments>http://www.ancientpc.net/2008/09/08/os-and-browser-agnostic-ad-blocking/#comments</comments>
		<pubDate>Mon, 08 Sep 2008 13:00:17 +0000</pubDate>
		<dc:creator>Ting</dc:creator>
				<category><![CDATA[software]]></category>
		<category><![CDATA[ad blocking]]></category>
		<category><![CDATA[browsers]]></category>
		<category><![CDATA[chrome]]></category>
		<category><![CDATA[google]]></category>
		<category><![CDATA[privoxy]]></category>
		<category><![CDATA[proxy]]></category>

		<guid isPermaLink="false">http://www.ancientpc.net/?p=115</guid>
		<description><![CDATA[Unless you&#8217;ve been hiding under a rock, it&#8217;s hard to miss Google&#8217;s recent launching of Chrome, a new competitor in the browser market.  While trying the browser, I was rudely reminded of how much advertisement is out on the internet.  It&#8217;s like getting used to Tivo&#8217;ing all your shows and suddenly surprised by commercials during [...]]]></description>
			<content:encoded><![CDATA[<p>Unless you&#8217;ve been hiding under a rock, it&#8217;s hard to miss <a href="http://www.google.com/chrome">Google&#8217;s recent launching of Chrome</a>, a new competitor in the browser market.  While trying the browser, I was rudely reminded of how much advertisement is out on the internet.  It&#8217;s like getting used to Tivo&#8217;ing all your shows and suddenly surprised by commercials during a live broadcast.</p>
<p>Either way, I wanted to continue testing Chrome while maintaining a relatively ad free browsing experience.  I found my answer in the form of <a href="http://www.privoxy.org/">Privoxy</a>.</p>
<p><span id="more-115"></span>While the website is of standard geek fare and could probably use an uplift, the installation process is fairly straightforward and it&#8217;ll have you blocking most ads within minutes.</p>
<p>This short walkthrough is for Windows users.</p>
<ol>
<li>Download the proper .exe file <a href="http://downloads.sourceforge.net/ijbswa/privoxy_setup_3_0_10.exe?modtime=1218973222&amp;big_mirror=0">here.</a></li>
<li>Run the setup program and accept the default options.</li>
<li>Setup your internet connection to use the newly created proxy.  To do so,
<ol>
<li>Go to Control Panel.</li>
<li>Go to Internet Options.</li>
<li>Choose the Connections tab.</li>
<li>Click on LAN settings at the bottom.</li>
<li>Check &#8220;Use a proxy server &#8230;&#8221; and &#8220;Bypass proxy server &#8230;&#8221;.</li>
<li>Enter 127.0.0.1 for the address, 8118 for the port.</li>
<li>Click on Advanced.</li>
<li>Clear the address and port field for FTP line.</li>
<li>Click on OK until all the dialog boxes are closed out.</li>
</ol>
</li>
</ol>
<p>You&#8217;re done!  You may need to clear the cache and force a clean refresh (ctrl + click on the refresh key or hit ctrl + F5) in the browser, but you should start seeing less ads when browsing now!</p>
<p>Now someone just needs to figure out how to use the proxy to block contextual text ads similar to the Customize Google extension for Firefox.</p>
<p>Update: I just wanted to add that these are only the Windows instructions.  If you go to Privoxy&#8217;s <a href="http://www.privoxy.org">web site</a> they also have downloads for Linux and OS X available.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.ancientpc.net/2008/09/08/os-and-browser-agnostic-ad-blocking/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Game Creation</title>
		<link>http://www.ancientpc.net/2008/05/06/game-creation/</link>
		<comments>http://www.ancientpc.net/2008/05/06/game-creation/#comments</comments>
		<pubDate>Tue, 06 May 2008 19:28:24 +0000</pubDate>
		<dc:creator>Ting</dc:creator>
				<category><![CDATA[coding]]></category>
		<category><![CDATA[software]]></category>
		<category><![CDATA[cmu]]></category>
		<category><![CDATA[egads]]></category>
		<category><![CDATA[games]]></category>

		<guid isPermaLink="false">http://www.ancientpc.net/?p=15</guid>
		<description><![CDATA[I&#8217;ve just been bitten by the video game creation bug again.  I think at one point in time all gamers thought, &#8220;I could make a better game than this!&#8221; but inevitably being gamers, we go back to our unproductive selves by throwing that thought aside and playing more games.
There was a recent article posted on [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve just been bitten by the video game creation bug again.  I think at one point in time all gamers thought, &#8220;I could make a better game than this!&#8221; but inevitably being gamers, we go back to our unproductive selves by throwing that thought aside and playing more games.</p>
<p>There was a recent article posted on <a href="http://developers.slashdot.org/article.pl?sid=08/05/06/1516228&amp;from=rss">/.</a> about <a href="http://www.experimentalgameplay.com">Experimental Gameplay</a>.  They&#8217;re probably most famous for <a href="http://en.wikipedia.org/wiki/Crayon_Physics">Crayon Physics</a> (arguably better Flash knock-off <a href="http://www.bubblebox.com/play/puzzle/975.htm">here</a>).  In short, Experimental Gameplay started out with 4 grad students making 50 games in a single semester as an experiment, aka the shotgun approach.</p>
<p><span id="more-15"></span></p>
<p>Doing a little more digging, I&#8217;ve found similar programs at <a href="http://gamedev.cs.cmu.edu/spring2004/">CMU</a> (where the Experimental Gameplay group came from), <a href="http://graphics.stanford.edu.nyud.net:8090/courses/cs248-videogame-competition/"></a><span style="position: absolute; overflow: hidden; height: 0; width: 0;"><a href="http://www.videnov.com/"></a><span style="position: absolute; overflow: hidden; height: 0; width: 0;"><a href="http://kvantservice.com/">компютри втора употреба</a></span>??????</span>Stanford, and <a href="http://pisa.ucsd.edu/cse125/">UCSD</a>.  Sadly, I haven&#8217;t found anything similar here at UT Austin with the exception of <a href="http://www.cs.utexas.edu/~okan/courses/cs378_games/web/">CS 378</a>, but that class  isn&#8217;t offered every semester.  <a href="http://studentorgs.utexas.edu/egads/">EGaDS</a> is a student org here on campus that tries to fill in that niche, but I really haven&#8217;t found time or motivation to go to any of their meetings.</p>
<p>Either way, I&#8217;ve really wanted to get into games programming as a hobby but still need to learn all the technical aspects first.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.ancientpc.net/2008/05/06/game-creation/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
