<?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>chmod 644 &#187; software</title>
	<atom:link href="http://www.windracer.net/blog/category/software/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.windracer.net/blog</link>
	<description>World Readable: a personal blog about anything that comes to mind for anybody who cares to read it.</description>
	<lastBuildDate>Mon, 06 Feb 2012 13:04:47 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Eye-Fi Mobile X2</title>
		<link>http://www.windracer.net/blog/2012/02/eye-fi-mobile-x2/</link>
		<comments>http://www.windracer.net/blog/2012/02/eye-fi-mobile-x2/#comments</comments>
		<pubDate>Mon, 06 Feb 2012 02:16:24 +0000</pubDate>
		<dc:creator>windracer</dc:creator>
				<category><![CDATA[ipad]]></category>
		<category><![CDATA[iphone]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[media]]></category>
		<category><![CDATA[mobile]]></category>
		<category><![CDATA[photos]]></category>
		<category><![CDATA[reviews]]></category>
		<category><![CDATA[tech]]></category>
		<category><![CDATA[wireless]]></category>

		<guid isPermaLink="false">http://www.windracer.net/blog/?p=1427</guid>
		<description><![CDATA[Since my new Canon PowerShot Elph 300HS required a Class 6 SDHC card to record 1080p HD video and also included native support for the Eye-Fi series of wireless-enabled SD cards, I decided to pick up a new Eye-Fi Mobile&#124;X2 SDHC memory card. Let&#8217;s be up-front about this: you pay a premium for the convenience [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.windracer.net/blog/wp-content/uploads/2012/01/p-X2_angle_mobile-rgb.png" rel="lightbox[1427]" title="Eye-Fi Mobile|X2 8gb WiFi SD card" class="liimagelink"><img class="alignleft size-full wp-image-1428" style="margin: 10px;" title="Eye-Fi Mobile|X2 8gb WiFi SD card" src="http://www.windracer.net/blog/wp-content/uploads/2012/01/p-X2_angle_mobile-rgb.png" alt="" width="132" height="214" /></a>Since my new <a href="http://www.windracer.net/blog/2011/12/canon-powershot-elph-300hs/" title="Canon PowerShot Elph 300HS" class="liinternal">Canon PowerShot Elph 300HS</a> required a <a href="http://en.wikipedia.org/wiki/Secure_Digital#Speed_Class_Rating" target="_blank" rel="nofollow" class="liwikipedia">Class 6</a> SDHC card to record 1080p HD video and also included native support for the Eye-Fi series of wireless-enabled SD cards, I decided to pick up a new <a href="http://www.eye.fi/products/mobilex2" target="_blank" class="liexternal">Eye-Fi Mobile|X2</a> SDHC memory card.</p>
<p>Let&#8217;s be up-front about this: you pay a premium for the convenience of built-in WiFi. A regular 8gb Class 6 SDHC card runs about <a href="http://www.amazon.com/Transcend-Class-Flash-Memory-TS8GSDHC6E/dp/B001ECQVSS" target="_blank" class="liamazon">$10 on Amazon</a> whereas the 8gb Mobile|X2 is <a href="http://www.amazon.com/gp/product/B004U5QR62/ref=ox_ya_os_product" target="_blank" class="liamazon">8 times that</a> (although keep an eye out for price drops, I got mine for $60). On top of the higher price, you&#8217;ll get poorer battery life in your camera (unless your camera supports Eye-Fi cards in their menu system which lets you turn off the wireless sync to save battery life).</p>
<p><span id="more-1427"></span>That being said, it&#8217;s amazing that this little SD card also contains a WiFi radio that allows for wireless synchronization and backup of your photos directly from your camera to your PC (or some supported online services like Flickr). And when it works (it takes some setup), it&#8217;s pretty slick.</p>
<p>There are some gotchas, however, and it&#8217;s not all magical. The Eye-Fi card is meant primarily to work with your home wireless network. After installing the Eye-Fi Center software on your PC you can configure the card (via the included USB card reader) and enter your wireless SSID and password (the Eye-Fi card doesn&#8217;t support RADIUS authentication, however, so if you&#8217;re trying to use it in a corporate environment, forget it). Then, whenever your camera is on, in range of your network, <em>and </em>the Eye-Fi Center software is running on your PC, your photos will be uploaded to your computer. An important thing to note is that the photos are not (and cannot be) automatically removed from the card after they are transferred, so you&#8217;ll have to delete them yourself. If your camera natively supports Eye-Fi cards like mine does, photos that have been already uploaded will have a special symbol on them when you view them on the camera&#8217;s screen.</p>
<p>Ok, that&#8217;s cool when you&#8217;re at home, but what if you&#8217;re out-and-about, taking photos? You can pay $30/year for <a href="http://www.eye.fi/how-it-works/features/hotspot-access" target="_blank" class="liexternal">hotspot access</a>, which lets your card upload from AT&amp;T hotspots in Starbucks, Barnes &amp; Noble, aiports, etc. It also lets the card upload from any open WiFi access point. Another add-on service is <a href="http://www.eye.fi/how-it-works/features/geotagging" target="_blank" class="liexternal">geotagging</a> ($30 if the card you bought doesn&#8217;t come with it) which uses WPS (WiFi positioning system) to tag your photos with the coordinates of the location you took the photo. This can be used with services or software to show your photos on a map. The gotcha here is that WPS is <em>not</em> the same as GPS (which uses satellites). If you&#8217;re in the middle of the Grand Canyon and you take a photo, unless there happens to be a WiFi network in-range of your Eye-Fi card the photo won&#8217;t get tagged. Just something to keep in mind.</p>
<p>If you don&#8217;t want to pay annually for hotspot access (and I didn&#8217;t) the new X2 cards have the ability to create their own WiFi network. &#8220;<a href="http://www.eye.fi/how-it-works/features/direct-mode" target="_blank" class="liexternal">Direct Mode</a>&#8221; lets your card send your photos directly from the camera to the free Eye-Fi app on your <a href="http://itunes.apple.com/us/app/eye-fi/id306011124?mt=8" target="_blank" class="liexternal">iOS</a> or <a href="http://market.android.com/details?id=fi.eye.android&amp;hl=en" target="_blank" class="liexternal">Android</a> device. The gotcha here is that your card can only be configured to upload to a single device at a time and you have to use the Eye-Fi Center software on your PC to change it. You can&#8217;t change it from the web either, so if you&#8217;re away from home and don&#8217;t have access to a PC with Eye-Fi Center on it, you&#8217;re out of luck.</p>
<p>Another gotcha is that you can&#8217;t just plug the Eye-Fi SD card into any ol&#8217; card reader that might be built into your desktop PC or laptop. Due to the extra power requirements, you <em>must </em>use the included USB card reader when connecting the card to your PC. Your PC might recognize the card without it (mine did) but you won&#8217;t be able to read/write to it (strange things seem to happen). So if you&#8217;re travelling with your Eye-Fi card, don&#8217;t forgot to throw that card reader in your bag, just in case!</p>
<p>The Eye-Fi Center software itself is another gotcha, in my book. It&#8217;s like the iTunes of photo sharing: slow, bloated, and buggy. And it needs to be running (which means your PC needs to be on) in order for the Eye-Fi card to upload its photos. I&#8217;d rather run something on my Linux media server (which is on all the time), and the hacker community has come to the rescue in this regard. I found and tried four different Linux-based Eye-Fi solutions:</p>
<ul>
<li><a href="http://returnbooleantrue.blogspot.com/2009/04/eye-fi-standalone-server-version-20.html" target="_blank" class="liexternal">Eye-Fi Standalone Server v2.0</a></li>
<li><a href="http://code.google.com/p/eyefiserver/" target="_blank" class="liexternal">eyefiserver </a></li>
<li><a href="http://launchpad.net/eyefi" target="_blank" class="liexternal">Eye-Fi Framework</a></li>
<li><a href="http://kin.klever.net/iii" target="_blank" class="liexternal">Eye-Fi Card Manager (iii)</a></li>
</ul>
<p>I&#8217;m currently using the first one. Written in python (so it will actually run on Windows and OS X as well), this Eye-Fi Center replacement supports multiple Eye-Fi cards and is pretty easy to set up. It didn&#8217;t work with the app on my iPad or iPhone, though, but I was able to <a href="http://returnbooleantrue.blogspot.com/2009/04/eye-fi-standalone-server-version-20.html?showComment=1327547967531#c8589731420863974202" target="_blank" class="liexternal">make a few changes to the code</a> and get it working (you can download the patch/diff for my changes <a href="http://www.windracer.net/outgoing/tc/windracer-ios-patch-eyefiserver.diff" class="liinternal">here</a>). Now I don&#8217;t have to worry about having my desktop PC on. And if I&#8217;m out, I can use direct mode to transfer my photos from the Eye-Fi card to my iOS device, and then VPN into my home network and transfer the photos to my media server via the python server. Nice.</p>
<p>In summary, once you understand the abilities (and limitations) and get all of the pieces set up and configured properly, the Eye-Fi card is a digital camera accessory worth considering.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.windracer.net/blog/2012/02/eye-fi-mobile-x2/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>iOS5&#8242;s new features</title>
		<link>http://www.windracer.net/blog/2012/01/ios5-new-features/</link>
		<comments>http://www.windracer.net/blog/2012/01/ios5-new-features/#comments</comments>
		<pubDate>Sun, 08 Jan 2012 21:59:11 +0000</pubDate>
		<dc:creator>windracer</dc:creator>
				<category><![CDATA[ipad]]></category>
		<category><![CDATA[iphone]]></category>
		<category><![CDATA[mobile]]></category>
		<category><![CDATA[software]]></category>
		<category><![CDATA[tech]]></category>

		<guid isPermaLink="false">http://www.windracer.net/blog/?p=1419</guid>
		<description><![CDATA[It&#8217;s been about a week since I upgraded to iOS5 on my iPhone 3GS (and performed the untethered jailbreak) and I&#8217;ve since been learning my way around some of its new features. Twitter: don&#8217;t use it Newsstand: don&#8217;t use it (I use MegaReader) iCloud: don&#8217;t use it (except for Find My iPhone) WiFi iTunes sync: [...]]]></description>
			<content:encoded><![CDATA[<p>It&#8217;s been about a week since I <a href="http://www.windracer.net/blog/2012/01/ios5-untethered-jailbreak-arrives-i-take-the-plunge-again/" class="liinternal">upgraded to iOS5</a> on my iPhone 3GS (and performed the untethered jailbreak) and I&#8217;ve since been learning my way around some of its <a href="http://appadvice.com/appnn/2011/10/here-are-the-top-10-new-ios-5-features-you-should-know-about" target="_blank" class="liexternal">new features</a>.</p>
<ul>
<li><em>Twitter</em>: don&#8217;t use it</li>
<li><em>Newsstand</em>: don&#8217;t use it (I use <a href="http://www.windracer.net/blog/2011/11/amazon-dumps-stanza-so-i-do-too/" class="liinternal">MegaReader</a>)</li>
<li><em>iCloud</em>: don&#8217;t use it (except for <a href="http://itunes.apple.com/us/app/find-my-iphone/id376101648?mt=8" target="_blank" class="liexternal">Find My iPhone</a>)</li>
<li><em>WiFi iTunes sync</em>: only works when the device is plugged into power, so I might as well just connect it via the USB cable to my PC</li>
<li><em>Reminders</em>: I was excited to learn that iOS5 finally added support for synchronizing my Tasks in Microsoft Exchange via ActiveSync. However, the lack of categories, no sorting by priority (or any sorting at all!), and no way to easily clear all Completed entries quickly led me to dump Reminders and go back to <a href="http://itunes.apple.com/us/app/imexchange-2/id390716055?mt=8" target="_blank" class="liexternal">iMExchange 2</a>. Nice first try Apple, but this still needs work. <img src='http://www.windracer.net/blog/wp-includes/images/smilies/icon_sad.gif' alt=':-(' class='wp-smiley' /> </li>
<li><em>iPad multi-tasking gestures</em>: don&#8217;t work on my iPad 1</li>
</ul>
<p>Ok, now for the stuff I actually <em>do </em>use (why did I upgrade again?). <img src='http://www.windracer.net/blog/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' /> </p>
<ul>
<li><em>iMessage</em>: being able to chat other iOS users without using my AT&amp;T text messaging plan (the no-longer-available 200 messages/month for $5) is nice. It&#8217;s even nicer that <a href="http://bitesms.com/" target="_blank" class="liexternal">biteSMS</a> seamlessly takes over the the built-in Messages app and supports iMessage too.</li>
<li><em>Notification Center</em>: it&#8217;s not perfect, but it is a huge improvement over the previous notification system. I like that <a href="http://moreinfo.thebigboss.org/moreinfo/depiction.php?file=SBSettingsDpData" target="_blank" class="liexternal">SBSettings</a> can integrate with it since I&#8217;m already used to swiping down from the top of the screen. I&#8217;m still configuring all of my different app notifications but for the most part I&#8217;m happy with this new feature. I do wish it was wider on the iPad when in landscape mode, however.</li>
</ul>
<p>Unfortunately, I have run into some problems since upgrading. Slow/sluggish performance and poor battery life were the initial indicators. Sometimes the phone is so slow it takes one of my taps as a tap-and-hold, or just ignores the tap altogether so I end up tapping multiple times on the same element. I&#8217;ve gone through some of the <a href="http://mashable.com/2011/10/31/ios-5-battery-fix/" target="_blank" class="liexternal">tips to improve battery life</a>, which did help, but it still seems like my battery drains faster than it did on iOS 4.3.3. I&#8217;m going to stick with it, though (I don&#8217;t feel like attempting to downgrade back to 4.3.3 and setting up everything again). There may be a new iPhone in my near future anyway &#8230;</p>
]]></content:encoded>
			<wfw:commentRss>http://www.windracer.net/blog/2012/01/ios5-new-features/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>iOS5 untethered jailbreak arrives, I take the plunge (again)</title>
		<link>http://www.windracer.net/blog/2012/01/ios5-untethered-jailbreak-arrives-i-take-the-plunge-again/</link>
		<comments>http://www.windracer.net/blog/2012/01/ios5-untethered-jailbreak-arrives-i-take-the-plunge-again/#comments</comments>
		<pubDate>Wed, 04 Jan 2012 01:42:36 +0000</pubDate>
		<dc:creator>windracer</dc:creator>
				<category><![CDATA[ipad]]></category>
		<category><![CDATA[iphone]]></category>
		<category><![CDATA[mobile]]></category>
		<category><![CDATA[software]]></category>
		<category><![CDATA[tech]]></category>

		<guid isPermaLink="false">http://www.windracer.net/blog/?p=1416</guid>
		<description><![CDATA[The iOS jailbreaking community got a nice holiday/new year&#8217;s gift the other week from pod2g and the dev-team: the untethered iOS 5.0.1 jailbreak for the iPhone 3GS, iPhone 4, and original iPad (iPad 2 and iPhone 4S users might get their own jailbreak soon too). I&#8217;d been running iOS 4.3.3 on my iPhone 3GS since [...]]]></description>
			<content:encoded><![CDATA[<p>The iOS jailbreaking community got a nice holiday/new year&#8217;s gift the other week from pod2g and the dev-team: the untethered <a href="http://blog.iphone-dev.org/post/14857834236/untethered-holidays" target="_blank" class="liexternal">iOS 5.0.1 jailbreak</a> for the iPhone 3GS, iPhone 4, and original iPad (iPad 2 and iPhone 4S users might get their own jailbreak <a href="http://www.mobilemag.com/2012/01/04/iphone-4s-and-ipad-2-jailbreak-for-ios-5-on-its-way/" target="_blank" class="liexternal">soon</a> too). I&#8217;d been running iOS 4.3.3 on my iPhone 3GS since <a href="http://www.windracer.net/blog/2010/08/jailbreaking-my-iphone/" class="liinternal">last May</a> so I decided to take the plunge to upgrade to Apple&#8217;s latest software and then re-apply the jailbreak.</p>
<p><span id="more-1416"></span>To prepare, I made a final backup of my phone with iTunes and also used <a href="http://www.pragmatixconsulting.com/iphoneApps/User_Guide.html" target="_blank" class="liexternal">PkgBackup</a> to backup all of my Cydia apps and data. I also took screenshots of all of my springboard pages so I had a reference of all of my icons, folders, sort orders, etc.</p>
<p>2012 is a brand new year so to start it out fresh, I decided to <em>restore </em>my phone to iOS5 instead of <em>upgrading</em> (in hindsight, this turned out to be a mistake, but more on that later). I let iTunes start the install but kept running into a problem where my phone would hang in <a href="http://osxdaily.com/2010/06/24/iphone-dfu-mode-explained-and-how-to-enter-dfu-mode-on-your-iphone/" target="_blank" class="liexternal">DFU mode</a> and iTunes would show a <a href="http://support.apple.com/kb/ts2529" target="_blank" class="liexternal">-5000 error</a>.  None of the generic resolutions I was finding on the internet were helping, but after trying a few times the update finally installed and soon after I had a &#8220;clean&#8221; iPhone running iOS 5.0.1.</p>
<p>Next it was time to jailbreak: I fired up <a href="http://sites.google.com/a/iphone-dev.com/files/home" target="_blank" class="liexternal">redsn0w</a> 0.9.10b3 and followed the <a href="http://osxdaily.com/2011/12/27/how-to-jailbreak-ios-5-0-1-untethered-with-redsn0w/" target="_blank" class="liexternal">instructions</a>. This part went a lot smoother than the iTunes portion and just minutes later I had Cydia back on my iPhone. I ran into another small problem when I launched Cydia for the first time: it kept saying &#8220;cannot locate package&#8221; and wouldn&#8217;t let me install anything and no applications were found in any of the sources. I tried refreshing the sources as suggested by some internet posts but that didn&#8217;t work. What <em>did </em>work was tapping the Refresh button on the Changes tab, though! With Cydia finally working, I re-installed PkgBackup and then restored my backup, rebooted, and re-sprung. My final jailbreak step was to SSH into my phone and <a href="http://cydia.saurik.com/password.html" target="_blank" class="liexternal">change the root password</a>.</p>
<p>Now the full impact of doing a restore to iOS5 instead of an upgrade hit me. First I had to re-create all of my folders and set up my springboard pages (thank goodness I had taken screenshots of everything!) which was a pain since I use <a href="http://www.youtube.com/watch?v=5pCRh7gcAOs" target="_blank" class="liyoutube">FolderEnhancer</a> and thus couldn&#8217;t do it through iTunes. Then I had to re-configure just about every app. For some of them I had the foresight to back up their data with <a href="http://www.iphonehacks.com/2011/05/datadeposit-nifty-jailbreak-app-allows-you-to-save-iphone-app-data-in-the-cloud-dropbox.html" target="_blank" class="liexternal">DataDeposit</a> so I didn&#8217;t lose my saved game progress, but for others I just had to start over (mostly this involved just logging in but it was still annoying). For some reason, though, I lost all of my <a href="http://bitesms.com/" target="_blank" class="liexternal">biteSMS</a> messaging history, even though I saw those files get restored from my PkgBackup backup. I was never able to figure out how to get it back so I had to start from scratch there as well. Also, since my iPhone was completely empty, that first sync with iTunes took a <em>long</em> time as all of my music and videos had to be copied back to the device. Lastly, my voicemail password was lost so I had to reset it through the AT&amp;T web site, which inexplicably deleted my custom greeting so I had to re-record that. <em>*sigh*</em></p>
<p>I persevered through the problems and annoyances, however, and now have my iPhone 3GS jailbroken on iOS 5.0.1 and back the way I like it. A few days later I did the same thing to my iPad but this time <em>upgraded </em>instead of restoring and everything went a <em>lot </em>smoother. <img src='http://www.windracer.net/blog/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' />  Now to learn my way around iOS5 &#8230;</p>
]]></content:encoded>
			<wfw:commentRss>http://www.windracer.net/blog/2012/01/ios5-untethered-jailbreak-arrives-i-take-the-plunge-again/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Creating interactive fiction with Inform 7</title>
		<link>http://www.windracer.net/blog/2011/12/creating-interactive-fiction-with-inform-7/</link>
		<comments>http://www.windracer.net/blog/2011/12/creating-interactive-fiction-with-inform-7/#comments</comments>
		<pubDate>Thu, 29 Dec 2011 20:12:06 +0000</pubDate>
		<dc:creator>windracer</dc:creator>
				<category><![CDATA[code]]></category>
		<category><![CDATA[games]]></category>
		<category><![CDATA[ipad]]></category>
		<category><![CDATA[kids]]></category>
		<category><![CDATA[software]]></category>

		<guid isPermaLink="false">http://www.windracer.net/blog/?p=1414</guid>
		<description><![CDATA[If you owned a personal computer in the 80s and played computer games, you probably played at least one Infocom text-based adventure game like Zork or (my personal favorite) The Hitchhiker&#8217;s Guide to the Galaxy. Known as interactive fiction, or IF, these games used the most powerful computers on the planet for their processing engines [...]]]></description>
			<content:encoded><![CDATA[<p>If you owned a personal computer in the 80s and played computer games, you probably played at least one <a href="http://en.wikipedia.org/wiki/Infocom" target="_blank" rel="nofollow" class="liwikipedia">Infocom</a> text-based adventure game like <a href="http://en.wikipedia.org/wiki/Zork" target="_blank" rel="nofollow" class="liwikipedia">Zork</a> or (my personal favorite) <a href="http://en.wikipedia.org/wiki/The_Hitchhiker%27s_Guide_to_the_Galaxy_%28computer_game%29" target="_blank" rel="nofollow" class="liwikipedia">The Hitchhiker&#8217;s Guide to the Galaxy</a>. Known as interactive fiction, or <a href="http://en.wikipedia.org/wiki/Interactive_fiction" target="_blank" rel="nofollow" class="liwikipedia">IF</a>, these games used the most powerful computers on the planet for their processing engines &#8230; your imagination. Instead of fancy color graphics and digital sound effects, Infocom games were just white text on a black screen controlled by you typing in commands like &#8220;go north&#8221; or &#8220;examine the small box&#8221; and usually involved solving complicated puzzles to win.</p>
<p>I&#8217;m actually a little surprised I haven&#8217;t written about IF before on this blog considering how fond I was of playing <a href="http://en.wikipedia.org/wiki/Wishbringer" target="_blank" rel="nofollow" class="liwikipedia">Wishbringer</a> or <a href="http://en.wikipedia.org/wiki/Moonmist" target="_blank" rel="nofollow" class="liwikipedia">Moonmist</a> on my <a href="http://www.windracer.net/blog/2008/07/blast-from-the-computing-past/" title="Blast from the (computing) past" class="liinternal">Atari 800XL</a> back in the day. Even my daughter had even gotten into playing IF games on my iPad with <a href="http://itunes.apple.com/us/app/frotz/id287653015?mt=8" target="_blank" class="liexternal">Frotz</a>. She&#8217;s an avid reader and also loves playing games, so IF games are a natural fit for her. Back in late August I decided I wanted to try my hand at writing her a personalized game which eventually evolved into the idea of making the game a scavenger hunt of sorts for her birthday in December. That gave me about four months to plan, design, write, and test the game.</p>
<p><span id="more-1414"></span></p>
<p>The first thing I did was to download <a href="http://inform7.com/" target="_blank" class="liexternal">Inform 7</a> and start reading the documentation. Inform is a natural language design system for IF games which makes it pretty easy to learn. In almost no time at all, I was creating the rooms of our house, writing (a LOT of!) descriptions, linking rooms with exits, and creating objects.</p>
<p><a href="http://www.windracer.net/blog/wp-content/uploads/2011/12/inform7-screenshot.png" rel="lightbox[1414]" title="creating with Inform 7" class="liimagelink"><img class="aligncenter  wp-image-1415" title="creating with Inform 7" src="http://www.windracer.net/blog/wp-content/uploads/2011/12/inform7-screenshot.png" alt="" width="638" height="384" /></a></p>
<p>The screenshot above shows the basic Inform interface. On the left-hand side is my source code and the right-hand pane is showing the running game for testing. Tabs along the top of each pane allow you to quickly switch between different views, like the skein (a flowchart of in-game commands you&#8217;ve run, showing the branches), the map, compilation errors, etc.</p>
<p>Inform&#8217;s syntax is extremely flexible, allowing for the simplest definition of objects and rooms to more complex actions like wandering <a href="http://en.wikipedia.org/wiki/Non-player_character" target="_blank" rel="nofollow" class="liwikipedia">NPCs</a>, conversation tables, almost anything you can think of. The Inform web site contains an impressive library of user-contributed <a href="http://inform7.com/write/extensions/" target="_blank" class="liexternal">extensions</a>: re-usable modules of code you can include in your own to add features like locking doors (with keys), vehicles, or even writing games in different languages (like Spanish) which let you avoid writing all of that code from scratch.</p>
<p>Over the next few months while I worked on developing the game, I made extensive use of Inform&#8217;s built-in help system, code examples, and also participated in the <a href="http://www.intfiction.org" target="_blank" class="liexternal">Interactive Fiction Community Forum</a> whose members were very helpful when I got stuck on a particular coding problem or needed advice on how to approach something. At last, I was ready for testing so I &#8220;released&#8221; my game and published it on my Dropbox account using <a href="http://eblong.com/zarf/glulx/quixe/" target="_blank" class="liexternal">Quixe</a>, a javascript-based IF interpreter. This made it easy for my play-testers (my brother, sister, and sister-in-law) to play the game without needing to install their own Z-interpreter like <a href="http://frotz.sourceforge.net/" target="_blank" class="liexternal">Frotz</a> plus I was able to quickly re-publish new builds as I made corrections or changes to the code.</p>
<p>Finally, it was December and time for the game to be released for real. I put the final game into Frotz on my iPad told her I found a new IF game I thought she&#8217;d enjoy. Her reaction, once she realized she was playing a game as herself in her own house, was priceless, and well-worth the months of effort it took to write. Unlike my play-testers who had a hard time with some of  my puzzles (since a) they were new to IF games and b) the game was tailored for a young girl), my daughter blew through the game in just under a day and completed the scavenger hunt, laughing almost the entire time. Lucky for me she missed some of the non-critical puzzles so the game still has <a href="http://en.wikipedia.org/wiki/Replay_value" target="_blank" rel="nofollow" class="liwikipedia">replay value</a>. She has even expressed interest in writing her own IF game, which is pretty cool.</p>
<p>Of course, my new coding challenge is now &#8230; how do I top this for <em>next</em> year? <img src='http://www.windracer.net/blog/wp-includes/images/smilies/icon_biggrin.gif' alt=':-D' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://www.windracer.net/blog/2011/12/creating-interactive-fiction-with-inform-7/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Galleon&#8217;s weather app is dead</title>
		<link>http://www.windracer.net/blog/2011/11/galleons-weather-app-is-dead/</link>
		<comments>http://www.windracer.net/blog/2011/11/galleons-weather-app-is-dead/#comments</comments>
		<pubDate>Wed, 23 Nov 2011 02:29:10 +0000</pubDate>
		<dc:creator>windracer</dc:creator>
				<category><![CDATA[code]]></category>
		<category><![CDATA[software]]></category>
		<category><![CDATA[tivo]]></category>
		<category><![CDATA[weather]]></category>

		<guid isPermaLink="false">http://www.windracer.net/blog/?p=1397</guid>
		<description><![CDATA[For the past few years I&#8217;ve been trying my best to keep Galleon&#8217;s weather app running, but it appears the end-of-life for it has arrived. Once again, ajayabb on TCF pointed out that the Weather application had stopped working. I hadn&#8217;t used it in a while myself, so I tried and sure enough I just [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.windracer.net/blog/?s=galleon+weather" class="liinternal">For the past few years</a> I&#8217;ve been trying my best to keep Galleon&#8217;s weather app running, but it appears the end-of-life for it has arrived.</p>
<p><span id="more-1397"></span>Once again, ajayabb on TCF <a href="http://www.tivocommunity.com/tivo-vb/showthread.php?p=8821431#post8821431" target="_blank" class="liexternal">pointed out</a> that the Weather application had stopped working. I hadn&#8217;t used it in a while myself, so I tried and sure enough I just got a black screen on my TiVo. I did some debugging and found that the connection to retrieve local weather information from weather.com&#8217;s XML feed was returning the following:</p>
<pre dir="ltr">&lt;?xml version="1.0" encoding="UTF-8"?&gt;
  &lt;error&gt;
    &lt;err type="102"&gt;Invalid License Key.&lt;/err&gt;
  &lt;/error&gt;</pre>
<p>A few Google searches later, I found <a href="http://twcweather.com/twc40/wmws/TWC/1319140410263_155/w27076.php" target="_blank" class="liexternal">this</a>:</p>
<blockquote><p>Dear Registrant:</p>
<p>We are writing to you because our records indicate that you are a registered user of the weather.com® XML Data Feed (http://xoap.weather.com.)</p>
<p>As a valued subscriber, we want to let you know that our data feed service offerings are changing. Beginning the week of October 10th, 2011, we will be launching a new subscription service, The Weather Channel® API.</p>
<p>&#8230;</p>
<p>In order to have access to an XML data feed from The Weather Channel, you will need to subscribe to The Weather Channel® API. This letter serves as formal notice to you that your access to the weather.com® XML Data Feed will terminate at midnight Eastern time on November 15, 2011.</p></blockquote>
<p>In a nutshell, TWC has discontinued the free XML feed for weather information and moved to a subscription model. No one who currently maintains the <a href="http://sourceforge.net/projects/galleon/" target="_blank" class="liexternal">Galleon project</a> would have received this e-mail since it was the original developer (Leon Nicholls) who registered for the license. Thus, on November 15 when TWC turned off the XML feed, the app stopped working. A new multi-city subscription costs $68/month (!!) so that effectively kills the free Weather app in Galleon.</p>
<p><a href="http://www.wunderground.com/weather/api/" target="_blank" class="liexternal">Weather Underground</a> has a free developer API but even that has limits that could end up costing someone money. They mention a non-commercial license so if I feel inspired I could try and investigate that and see how much re-coding it would require to get the app functional again. But until then, the Galleon Weather app is dead, sorry. <img src='http://www.windracer.net/blog/wp-includes/images/smilies/icon_sad.gif' alt=':-(' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://www.windracer.net/blog/2011/11/galleons-weather-app-is-dead/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Amazon dumps Stanza, so I do too</title>
		<link>http://www.windracer.net/blog/2011/11/amazon-dumps-stanza-so-i-do-too/</link>
		<comments>http://www.windracer.net/blog/2011/11/amazon-dumps-stanza-so-i-do-too/#comments</comments>
		<pubDate>Tue, 15 Nov 2011 01:27:58 +0000</pubDate>
		<dc:creator>windracer</dc:creator>
				<category><![CDATA[customer service]]></category>
		<category><![CDATA[ipad]]></category>
		<category><![CDATA[iphone]]></category>
		<category><![CDATA[kindle]]></category>
		<category><![CDATA[mobile]]></category>
		<category><![CDATA[software]]></category>

		<guid isPermaLink="false">http://www.windracer.net/blog/?p=1392</guid>
		<description><![CDATA[One of the first apps I put on my iPhone 3GS was Stanza, to replace iSilo from my Treo for reading e-books. At that time, Amazon had just acquired Lexcycle and I remember wondering they would end up combining the Kindle and Stanza apps. Well, now we know the answer: nope. A recent update to [...]]]></description>
			<content:encoded><![CDATA[<p>One of the first apps I put on my iPhone 3GS was <a href="http://www.windracer.net/blog/2009/12/apple-iphone-3gs/" title="Apple iPhone 3GS" class="liinternal">Stanza</a>, to replace iSilo from my Treo for reading e-books. At that time, Amazon had just acquired Lexcycle and I remember wondering they would end up combining the Kindle and Stanza apps. Well, now we know the answer: <a href="http://www.tuaw.com/2011/11/10/stanza-ios-app-updated-but-amazon-is-abandoning-it/" target="_blank" class="liexternal">nope</a>. A recent update to the <a href="http://itunes.apple.com/us/app/stanza/id284956128?mt=8" target="_blank" class="liexternal">Stanza</a> iOS app (version 3.2) added iOS 5 compatibility, but effectively killed the app on iOS 4.x. It just <a href="http://getsatisfaction.com/stanza/topics/latest_update_3_2_crashes_the_app_immediately" target="_blank" class="liexternal">crashes immediately</a>.</p>
<p><span id="more-1392"></span>As of this writing, the only way to get Stanza to run on iOS 4.x is to find the old version 3.1 <a href="http://en.wikipedia.org/wiki/.ipa_%28file_extension%29" target="_blank" rel="nofollow" class="liwikipedia">IPA</a> file on your PC (hopefully still in your Recycle Bin or a recent iTunes backup) and re-install it, possibly losing your books, annotations, etc. in the process (I did, anyway). If you do this, you&#8217;ll always see an available update for Stanza in the App Store which means you won&#8217;t be able to use the &#8220;update all&#8221; link anymore to download updates for all of your apps at once. Instead you&#8217;ll need to download them one at a time, which is more than a minor annoyance.</p>
<p>Frustrated by the unexpected death of one of my favorite apps, I started looking for a possible replacement and found <a href="http://itunes.apple.com/us/app/megareader-2-million-free/id387136454?mt=8" target="_blank" class="liexternal">MegaReader</a>. It costs $1.99 (Stanza was free) and doesn&#8217;t have all of the features Stanza did, but it&#8217;s pretty close. The most important feature (for me) was <a href="http://opds-spec.org/about/" target="_blank" class="liexternal">OPDS</a> support, which allows me to download the books in my <a href="http://calibre-ebook.com/" target="_blank" class="liexternal">Calibre</a> library into the app. It&#8217;s very close to Stanza in the look-and-feel, navigation, and overall reading experience.</p>
<p>Some of the missing features I hope are added in the future:</p>
<ul>
<li> bulk downloading from online libraries (like Calibre)</li>
<li>support for additional file formats (MegaReader currently cannot open PDF files)</li>
<li>full-text searching in a book</li>
<li>hide the iOS status bar when reading</li>
<li>custom bookmarks (currently the only bookmark available is the last place you left off reading)</li>
</ul>
<p>I&#8217;d also like to see cross-device synchronization of bookmarks (maybe via Dropbox?), but even Stanza didn&#8217;t have that.</p>
<p>I just finished the last few chapters of &#8220;<a href="http://www.windracer.net/blog/2011/11/wijfr-zero-day/" class="liinternal">Zero Day</a>&#8221; using MegaReader (I had obviously started it in Stanza) so I haven&#8217;t used it a lot yet, but so far am satisfied with my purchase. After I complete a full book using the new app I may have more to say about it.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.windracer.net/blog/2011/11/amazon-dumps-stanza-so-i-do-too/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Obtaining the Oneiric Ocelot</title>
		<link>http://www.windracer.net/blog/2011/10/obtaining-the-oneiric-ocelot/</link>
		<comments>http://www.windracer.net/blog/2011/10/obtaining-the-oneiric-ocelot/#comments</comments>
		<pubDate>Fri, 21 Oct 2011 00:40:45 +0000</pubDate>
		<dc:creator>windracer</dc:creator>
				<category><![CDATA[linux]]></category>
		<category><![CDATA[software]]></category>
		<category><![CDATA[tech]]></category>

		<guid isPermaLink="false">http://www.windracer.net/blog/?p=1381</guid>
		<description><![CDATA[I learned my lesson last time and decided to hold off a few days before upgrading to the new release of Ubuntu 11.10, Oneiric Ocelot. That was a smart decision since the upgrade took just under two hours this time instead of over eight. I did have one (self-induced) snag during the &#8216;do-release-upgrade&#8217; step. I [...]]]></description>
			<content:encoded><![CDATA[<p>I learned my lesson <a href="http://www.windracer.net/blog/2011/04/notes-on-the-natty-narwhal/" title="Notes on the Natty Narwhal" class="liinternal">last time</a> and decided to hold off a few days before upgrading to the new release of Ubuntu 11.10, <a href="https://wiki.ubuntu.com/OneiricOcelot" target="_blank" class="liexternal">Oneiric Ocelot</a>.</p>
<p>That was a smart decision since the upgrade took just under two hours this time instead of over eight. I did have one (self-induced) snag during the &#8216;do-release-upgrade&#8217; step. I was trying to copy some text and accidentally used Control-C in my <a href="http://www.rackaid.com/resources/linux-screen-tutorial-and-how-to/" target="_blank" class="liexternal">screen</a> session which killed the process! Luckily I was able to resume it with a &#8216;dpkg &#8211;configure -a&#8217; command and I haven&#8217;t noticed any problems due to my screw-up (yet, whew!).</p>
<p>I also had fewer post-upgrade problems this time than with Natty. In fact, both issues were related to the newer version of Perl in Oneiric. They were easily fixed by re-building <a href="http://www.windracer.net/blog/2011/07/zoneminder/" title="ZoneMinder" class="liinternal">ZoneMinder</a> and <a href="http://oss.oetiker.ch/mrtg/" target="_blank" class="liexternal">MRTG</a> so I was back in business relative quickly. Since</p>
<p>Since I run Ubuntu on my server I don&#8217;t normally see (or care about) any of the user-facing changes like the Unity interface so I can&#8217;t comment on those features. The only real change for me is the new <a href="https://www.pcworld.com/businesscenter/article/236317/linux_30_a_steady_step_forward.html" target="_blank" class="liexternal">3.0 Linux kernel</a>.</p>
<p>Up next in April? <a href="http://en.wikipedia.org/wiki/List_of_Ubuntu_releases#Ubuntu_12.04_LTS_.28Precise_Pangolin.29" target="_blank" rel="nofollow" class="liwikipedia">Precise Pangolin</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.windracer.net/blog/2011/10/obtaining-the-oneiric-ocelot/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Windows 8 Developer Preview released</title>
		<link>http://www.windracer.net/blog/2011/09/windows-8-developer-preview-released/</link>
		<comments>http://www.windracer.net/blog/2011/09/windows-8-developer-preview-released/#comments</comments>
		<pubDate>Thu, 15 Sep 2011 01:46:16 +0000</pubDate>
		<dc:creator>windracer</dc:creator>
				<category><![CDATA[software]]></category>
		<category><![CDATA[tech]]></category>
		<category><![CDATA[windows]]></category>

		<guid isPermaLink="false">http://www.windracer.net/blog/?p=1356</guid>
		<description><![CDATA[This week at the Build Conference, Microsoft released a freely downloadable developer preview of Windows 8 (you can download the ISOs here). If you&#8217;re an avid reader of this blog (and which of the five of you aren&#8217;t? ) you know I like to jump on new technology early so of course I downloaded the [...]]]></description>
			<content:encoded><![CDATA[<p>This week at the <a href="http://www.buildwindows.com/" target="_blank" class="liexternal">Build Conference</a>, Microsoft released a freely downloadable <a href="http://www.winsupersite.com/article/windows8/windows-8-developer-preview-140546" target="_blank" class="liexternal">developer preview of Windows 8</a> (you can download the ISOs <a href="http://msdn.microsoft.com/en-us/windows/apps/br229516" target="_blank" class="liexternal">here</a>). If you&#8217;re an avid reader of this blog (and which of the five of you aren&#8217;t? <img src='http://www.windracer.net/blog/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' /> ) you know I like to jump on new technology early so of course I downloaded the 64-bit version and installed it in a virtual machine via <a href="http://www.virtualbox.org/" target="_blank" class="liexternal">VirtualBox</a>.</p>
<p><span id="more-1356"></span>I had a problem right off the bat in that the boot loader kept failing with a 0xC0000225 error, but after a quick <a href="http://blog.binaryfactory.ca/2009/07/0xc0000225-error-trying-to-install-windows-2008-r2-or-other-x64-windows/" target="_blank" class="liexternal">Google search</a> I enabled &#8220;IO APIC&#8221; in VirtualBox and the installer started from the DVD normally. For the most part, the install process looks just like Windows 7, but once the Start screen appears, it&#8217;s a whole new experience.</p>
<p><a href="http://www.windracer.net/gallery/d/35899-2/win8-start.png" rel="lightbox[1356]" title="Windows 8 Start screen" class="liimagelink"><img class="aligncenter" title="Windows 8 Start screen" src="http://www.windracer.net/gallery/d/35899-2/win8-start.png" alt="" width="499" height="415" /></a></p>
<p>Yep, that&#8217;s the Windows 7 Phone <a href="http://en.wikipedia.org/wiki/Metro_%28design_language%29" target="_blank" rel="nofollow" class="liwikipedia">Metro</a> UI on your desktop. You can tell right off from the bigger &#8220;buttons&#8221; and tweaked interface elements it&#8217;s meant for a touchscreen, but it works with the mouse and keyboard as well (<em>update: </em>you can, but it involves some registry hacks or unsupported <a href="http://www.ghacks.net/2011/09/17/metro-controller-disable-metro-ui-ribbon-explorer-in-windows-8/" target="_blank" class="liexternal">third-party software</a>).</p>
<p style="text-align: center;"><a href="http://www.windracer.net/gallery/d/35893-2/win8-setup.png" rel="lightbox[1356]" title="notice the slider-type controls instead of radio buttons" class="liimagelink"><img class="aligncenter" title="notice the slider-type controls instead of radio buttons" src="http://www.windracer.net/gallery/d/35893-2/win8-setup.png" alt="" width="499" height="415" /></a></p>
<p>Supposedly you can turn it off altogether and revert back to the Windows 7-style desktop as well.</p>
<p>I haven&#8217;t had a lot of time to play with it yet but it&#8217;s definitely interesting. I may try to install it on an old PC at work so I can experience the alleged <a href="http://arstechnica.com/microsoft/news/2011/09/windows-8-to-bring-10-second-boot-ups-to-new-pcs.ars" target="_blank" class="liexternal">10-second boot time</a> (something not possible inside a VM). Check back here later for more details!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.windracer.net/blog/2011/09/windows-8-developer-preview-released/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>WebOS is dead &#8230; long live, er &#8212; uh, nevermind</title>
		<link>http://www.windracer.net/blog/2011/08/webos-is-dead-long-live-er-uh-nevermind/</link>
		<comments>http://www.windracer.net/blog/2011/08/webos-is-dead-long-live-er-uh-nevermind/#comments</comments>
		<pubDate>Fri, 19 Aug 2011 01:40:27 +0000</pubDate>
		<dc:creator>windracer</dc:creator>
				<category><![CDATA[mobile]]></category>
		<category><![CDATA[software]]></category>
		<category><![CDATA[tech]]></category>

		<guid isPermaLink="false">http://www.windracer.net/blog/?p=1313</guid>
		<description><![CDATA[Today, just six short months since announcing a slew of new WebOS devices, hp announced they are discontinuing the entire WebOS line. The successor to PalmOS and its related devices like the Pre just never took off and the TouchPad was pretty much dead-on-arrival, crushed by the iPad only 49 days after its release. It&#8217;s [...]]]></description>
			<content:encoded><![CDATA[<p>Today, just <a href="http://www.windracer.net/blog/2011/02/palm-is-dead-long-live-hp/" class="liinternal">six short months since announcing</a> a slew of new WebOS devices, <a href="https://www.pcworld.com/article/238417/hp_says_so_long_to_webos_devices.html" target="_blank" class="liexternal">hp announced</a> they are discontinuing the entire WebOS line. The successor to PalmOS and its related devices like the Pre just never took off and the TouchPad was pretty much dead-on-arrival, crushed by the iPad only 49 days after its release. It&#8217;s a sad end to a long, (relatively) proud line of Palm devices, dating back to the original Pilot 1000 in 1996. I can&#8217;t really mourn the death of hp/Palm devices though &#8230; since switching from my Treo 680 to the iPhone <a href="http://www.windracer.net/blog/2009/12/apple-iphone-3gs/" class="liinternal">almost two years ago</a> I never considering going back.</p>
<p>But &#8230;</p>
<blockquote><p>HP&#8217;s press release doesn&#8217;t say that WebOS is dead. The wording instead suggests that the company will find some ways to extract value from its $1.2 billion Palm purchase, even if phones and tablets are off the table. In fact, according to a report yesterday in the <em>Wall Street Journal</em>, HP plans to expand webOS to household appliances and automobiles.</p></blockquote>
<p>So while you may not be using WebOS on your new smartphone, you might be using it to wash your clothes. <img src='http://www.windracer.net/blog/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://www.windracer.net/blog/2011/08/webos-is-dead-long-live-er-uh-nevermind/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>ZoneMinder</title>
		<link>http://www.windracer.net/blog/2011/07/zoneminder/</link>
		<comments>http://www.windracer.net/blog/2011/07/zoneminder/#comments</comments>
		<pubDate>Wed, 20 Jul 2011 02:31:24 +0000</pubDate>
		<dc:creator>windracer</dc:creator>
				<category><![CDATA[ipad]]></category>
		<category><![CDATA[iphone]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[mobile]]></category>
		<category><![CDATA[network]]></category>
		<category><![CDATA[reviews]]></category>
		<category><![CDATA[software]]></category>
		<category><![CDATA[tech]]></category>
		<category><![CDATA[wireless]]></category>

		<guid isPermaLink="false">http://www.windracer.net/blog/?p=1202</guid>
		<description><![CDATA[Last summer, my mini-tech project was installing some wireless internet cameras inside and outside the house so I could keep tabs on things while I was away. For the past year I&#8217;d just been using the built-in features of each of the cameras (motion detection, e-mail alerts, etc.) which was hit-or-miss since each manufacturer offered [...]]]></description>
			<content:encoded><![CDATA[<p>Last summer, my mini-tech project was installing some wireless internet cameras <a href="http://www.windracer.net/blog/2010/06/trendnet-internet-cameras/" class="liinternal">inside</a> and <a href="http://www.windracer.net/blog/2010/08/foscam-fi8904w-outdoor-internet-camera/" class="liinternal">outside</a> the house so I could keep tabs on things while I was away. For the past year I&#8217;d just been using the built-in features of each of the cameras (motion detection, e-mail alerts, etc.) which was hit-or-miss since each manufacturer offered different features, some better implemented than others, and none of them perfect.</p>
<p>This setup was fine, but I wanted to be able to better manage the system and maybe even store more history of events (or &#8220;live&#8221; video) without having it be all e-mail messages with static image attachments. That&#8217;s what prompted me to search for open source camera management software, and I that&#8217;s how I found <a href="http://www.zoneminder.com/" target="_blank" class="liexternal">ZoneMinder</a>.</p>
<p><span id="more-1202"></span></p>
<blockquote><p>ZoneMinder is intended for use in single or multi-camera video security applications, including commercial or home CCTV, theft prevention and child, family member or home monitoring and other domestic care scenarios such as nanny cam installations. It supports capture, analysis, recording, and monitoring of video data coming from one or more video or network cameras attached to a Linux system.</p></blockquote>
<p>ZM is free (although the author accepts <a href="http://www.zoneminder.com/donate" target="_blank" class="liexternal">donations</a>, which I&#8217;ve done) and runs on my <a href="http://www.windracer.net/blog/2010/05/acer-aspire-revo-3610/" class="liinternal">home Linux server</a>. Setting it up was relatively straightforward, but tinkering with all of the cool features to tweak the system just the way I wanted it took some time. You add each of your network cameras to the ZM Console and configure the various settings so the ZoneMinder processes can access the video stream URL of the camera.</p>
<p><a href="http://www.windracer.net/blog/wp-content/uploads/2011/07/zm-console.png" rel="lightbox[1202]" title="ZoneMinder console" class="liimagelink"><img class="size-large wp-image-1298 aligncenter" title="ZoneMinder console" src="http://www.windracer.net/blog/wp-content/uploads/2011/07/zm-console-1024x180.png" alt="" width="723" height="127" /></a></p>
<p>It has a bunch of presets for popular cameras, and even supports some basic <a href="http://en.wikipedia.org/wiki/PTZ_camera" target="_blank" rel="nofollow" class="liwikipedia">PTZ</a> functions (although I was unable to get this to work with my TrendNet units). Each camera can be set to a different function like monitor (video stream only), modect (motion detection), record (continuous recording), mocord (continuous recording plus motion detection), etc. Once you have the cameras added to the console you can create motion zones and add any event notifications.</p>
<p><a href="http://www.windracer.net/blog/wp-content/uploads/2011/07/zm-motion-zones.png" rel="lightbox[1202]" title="ZoneMinder motion zones" class="liimagelink"><img class="alignleft size-full wp-image-1299" style="margin: 10px;" title="ZoneMinder motion zones" src="http://www.windracer.net/blog/wp-content/uploads/2011/07/zm-motion-zones.png" alt="" width="268" height="271" /></a>At a high level, what ZM does is capture the video stream from the camera (at whatever frame rate you specify) as a series of still images and then performs image analysis/processing (with configurable levels of sensitivity) to determine if motion has been detected in the areas you specify. I love that you can create multiple custom-sized detection areas and even have &#8220;preclusive&#8221; zones to prevent constant triggers by changing light levels, moving plants, etc. Since the still images are all stored on your server, ZoneMinder can &#8220;play&#8221; them back in quick succession giving you a video of the event without actually storing encoded video (although you can generate a video file with ffmpeg if you want).</p>
<p>All of ZoneMinder&#8217;s configuration and logged information is stored in a MySQL database, and the images are stored on local disk (I&#8217;m using an old 1TB eSATA drive that used to be connected to one of my TiVos so I&#8217;ve got plenty of space). Since ZM is doing all of the &#8220;work&#8221; I&#8217;m no longer limited to the features of each manufacturer&#8217;s camera like the lack of time-stamping or NAS storage with the Foscams, or the limit of two square motion detection zones on the TrendNet models. ZM does, however, put a heavier load on the network (it&#8217;s constantly pulling images from the cameras) <em>and </em>on the server (there&#8217;s a separate Linux process for each camera monitor plus another process for each camera that has motion detection enabled), so that&#8217;s something to keep in mind.</p>
<p>Before switching to ZoneMinder, I used <a href="http://itunes.apple.com/us/app/eyecam/id299467234?mt=8" target="_blank" class="liexternal">eyeCam</a> on my iPhone to check on my cameras which worked very well, but now use <a href="http://www.eyezm.com/" target="_blank" class="liexternal">eyeZM</a> which is basically an iOS interface to your ZoneMinder console. The app lets you view real-time video feeds, switch monitor functions (i.e., turn motion detection on or off), and examine archived events. Unfortunately it&#8217;s not a universal binary so you have to purchase the iPhone and iPad apps separately.</p>
<p>For more details on ZoneMinder, check out the very detailed <a href="http://www.zoneminder.com/wiki/index.php/Welcome" target="_blank" class="liexternal">wiki</a>.</p>

<a href='http://www.windracer.net/blog/2011/07/zoneminder/zm-console/' title='ZoneMinder console'><img width="150" height="26" src="http://www.windracer.net/blog/wp-content/uploads/2011/07/zm-console-150x26.png" class="attachment-thumbnail" alt="ZoneMinder console" title="ZoneMinder console" /></a>
<a href='http://www.windracer.net/blog/2011/07/zoneminder/zm-motion-zones/' title='ZoneMinder motion zones'><img width="147" height="150" src="http://www.windracer.net/blog/wp-content/uploads/2011/07/zm-motion-zones-147x150.png" class="attachment-thumbnail" alt="ZoneMinder motion zones" title="ZoneMinder motion zones" /></a>
<a href='http://www.windracer.net/blog/2011/07/zoneminder/img_0323/' title='eyeZM on the iPhone, live monitor view'><img width="100" height="150" src="http://www.windracer.net/blog/wp-content/uploads/2011/07/IMG_0323-100x150.png" class="attachment-thumbnail" alt="eyeZM on the iPhone, live monitor view" title="eyeZM on the iPhone, live monitor view" /></a>
<a href='http://www.windracer.net/blog/2011/07/zoneminder/img_0322/' title='eyeZM on the iPhone, event view'><img width="100" height="150" src="http://www.windracer.net/blog/wp-content/uploads/2011/07/IMG_0322-100x150.png" class="attachment-thumbnail" alt="eyeZM on the iPhone, event view" title="eyeZM on the iPhone, event view" /></a>
<a href='http://www.windracer.net/blog/2011/07/zoneminder/img_0321/' title='eyeZM on the iPhone, monitor view'><img width="100" height="150" src="http://www.windracer.net/blog/wp-content/uploads/2011/07/IMG_0321-100x150.png" class="attachment-thumbnail" alt="eyeZM on the iPhone, monitor view" title="eyeZM on the iPhone, monitor view" /></a>
<a href='http://www.windracer.net/blog/2011/07/zoneminder/img_0268/' title='eyeZM on the iPad, event view'><img width="150" height="112" src="http://www.windracer.net/blog/wp-content/uploads/2011/07/IMG_0268-150x112.png" class="attachment-thumbnail" alt="eyeZM on the iPad, event view" title="eyeZM on the iPad, event view" /></a>
<a href='http://www.windracer.net/blog/2011/07/zoneminder/img_0267/' title='eyeZM on the iPad, monitor view'><img width="150" height="112" src="http://www.windracer.net/blog/wp-content/uploads/2011/07/IMG_0267-150x112.png" class="attachment-thumbnail" alt="eyeZM on the iPad, monitor view" title="eyeZM on the iPad, monitor view" /></a>

]]></content:encoded>
			<wfw:commentRss>http://www.windracer.net/blog/2011/07/zoneminder/feed/</wfw:commentRss>
		<slash:comments>12</slash:comments>
		</item>
	</channel>
</rss>

