<?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>if it&#039;s owən &#187; Software</title>
	<atom:link href="http://owened.net/tag/software/feed" rel="self" type="application/rss+xml" />
	<link>http://owened.net</link>
	<description>it&#039;s probably awesome</description>
	<lastBuildDate>Fri, 30 Jul 2010 06:04:39 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=abc</generator>
		<item>
		<title>Building a NAS: Stage 2 (Software and Maintenance)</title>
		<link>http://owened.net/2010/04/25/building-a-nas-stage-2-software-and-maintenance</link>
		<comments>http://owened.net/2010/04/25/building-a-nas-stage-2-software-and-maintenance#comments</comments>
		<pubDate>Sat, 24 Apr 2010 23:42:58 +0000</pubDate>
		<dc:creator>Owen</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[Tech-geek]]></category>

		<guid isPermaLink="false">http://owened.net/?p=698</guid>
		<description><![CDATA[With the system up and running, it made sense for me to make an effort to see it stayed that way. I needed to be able to have the following things happening without any intervention on my behalf: Users&#8217; Windows PCs backing up automatically to their respective folder on the network These backups being automatically [...]]]></description>
			<content:encoded><![CDATA[<p>With the system up and running, it made sense for me to make an effort to see it stayed that way. I needed to be able to have the following things happening without any intervention on my behalf:</p>
<ul>
<li>Users&#8217; Windows PCs backing up automatically to their respective folder on the network</li>
<li>These backups being automatically rsync&#8217;d with an external disk, for a true backup</li>
<li>Reports on the status of the machine being made available to me at regular intervals</li>
</ul>
<p>The first is turning out to be the most difficult. Initially I wanted to write a batch script that handled this for me and then configure it to run once a week using Task Scheduler in Windows. However, there are three different versions of Windows for me to contend with out of my five users, (XP, Vista, 7), so it wasn&#8217;t as straightforward as I thought it would be, with Vista and 7 including &#8220;Robocopy&#8221; out of the box, and XP not. However, we all know the most straightforward solution isn&#8217;t always the best one. Even with Robocopy, you cannot do incremental/differential file copies. You can coarsely say &#8220;all files changed after some date&#8221;, but it still copies everything in full.</p>
<p>Enter <a href="http://www.cyberkiko.com/page/FTPSync.aspx">FTPSync</a>, a nice little FTP tool which has a built-in differencing algorithm and allows full, incremental and differential backups. Its configuration is somewhat obscure, but nothing too difficult to understand with the help of their online documentation (which as it always happens, was actually down the first time I wanted to access it). After some initial tests on a small dataset, I think it will be most suitable for my purposes, for two reasons: (a) incremental/differential backups, saving time, and (b) it does this over FTP, which is the most CPU-efficient protocol for my underpowered file server.</p>
<p>Setting up the user home directories was pretty easy: just enable the [homes] share in your Samba configuration, and you&#8217;re away. Mine are actually redirected via symlinks to another disk, so you also have to add &#8220;symlinks = yes&#8221; to the [global] section of your config, or your home directories won&#8217;t appear as intended. The rsync configuration was also pretty straightforward, but I&#8217;ll include my backup script here for your reference:</p>
<div class="dean_ch" style="white-space: wrap;">
<ol>
<li class="li1">
<div class="de1"><span class="re3">#!/bin/sh</span></div>
</li>
<li class="li1">
<div class="de1"><span class="re3"># 200GB is <span class="nu0">209715200</span> bytes</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1"><span class="re3"># rsync.<span class="kw3">pwd</span> <span class="kw2">file</span> must be owned by root <span class="kw2">as</span> script is executed from roots crontab</span></div>
</li>
<li class="li2">
<div class="de2">&nbsp;</div>
</li>
<li class="li1">
<div class="de1"><span class="re2">RSYNC=</span>/usr/bin/rsync</div>
</li>
<li class="li1">
<div class="de1"><span class="re2">SSH=</span>/usr/bin/<span class="kw2">ssh</span></div>
</li>
<li class="li1">
<div class="de1"><span class="re2">KEY=</span>/home/owen/ssh-key/owen-rsync-key</div>
</li>
<li class="li1">
<div class="de1"><span class="re2">RUSER=</span>owen</div>
</li>
<li class="li2">
<div class="de2"><span class="re2">RHOST=</span><span class="nu0">192.168</span><span class="nu0">.1</span><span class="nu0">.50</span></div>
</li>
<li class="li1">
<div class="de1"><span class="re2">RPATH=</span>/home/owen/backup/fileserver-backups/owen/</div>
</li>
<li class="li1">
<div class="de1"><span class="re2">LPATH=</span>/var/data/owen</div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1"><span class="re3"># <span class="re1">$RSYNC</span> -az -e </span><span class="st0">&quot;$SSH -p 768 -i $KEY&quot;</span> <span class="re1">$RUSER</span>@<span class="re1">$RHOST</span>:<span class="re1">$RPATH</span> <span class="re1">$LPATH</span></div>
</li>
<li class="li2">
<div class="de2"><span class="re3"># rsync -az /var/data/owen/ owen@boxenmkiv::owen &#8211;password-<span class="kw2">file</span> /home/owen/rsync.pwd</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1"><span class="re2">homeSize=</span>`<span class="kw2">du</span> -sD <span class="re1">$LPATH</span> | <span class="kw2">cut</span> -f <span class="nu0">1</span>`</div>
</li>
<li class="li1">
<div class="de1"><span class="re2">emailMSG=</span><span class="st0">&quot;&quot;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="re2">MAILSUBJ=</span><span class="st0">&quot;Backup summary for $LPATH on `date`&quot;</span></div>
</li>
<li class="li2">
<div class="de2"><span class="re2">RECIPIENT=</span><span class="st0">&quot;owen&quot;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1"><span class="kw1">if</span> <span class="br0">&#91;</span> <span class="re1">$homeSize</span> -gt <span class="nu0">209715200</span> <span class="br0">&#93;</span>; <span class="kw1">then</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="re2">emailMSG=</span><span class="st0">&quot;User $RUSER rsync backup failed.<span class="es0">\n</span>Reason: $LPATH size is ~ $(($homeSize/1024/1024)) Gb&quot;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="kw1">else</span></div>
</li>
<li class="li2">
<div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; <span class="re2">emailMSG=</span><span class="st0">&quot;$LPATH is ~ $(($homeSize/1024/1024)) Gb, proceeding with backup at `date`.<span class="es0">\n</span>&quot;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="re3"># <span class="re1">$RSYNC</span> -az -e </span><span class="st0">&quot;$SSH -p 768 -i $KEY&quot;</span> <span class="re1">$RUSER</span>@<span class="re1">$RHOST</span>:<span class="re1">$RPATH</span> <span class="re1">$LPATH</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; rsync -az /var/data/owen/ owen@boxenmkiv::owen &#8211;password-<span class="kw2">file</span> /home/owen/rsync.<span class="kw3">pwd</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="re2">emailMSG=</span><span class="re1">$emailMSG</span><span class="st0">&quot;$LPATH backup completed at `date`.&quot;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="kw1">fi</span></div>
</li>
<li class="li2">
<div class="de2"><span class="kw3">echo</span> <span class="re1">$emailMSG</span> | nail -r <span class="st0">&quot;my@email.net&quot;</span> -s <span class="st0">&quot;Owen&#8217;s Backup Result for `date`&quot;</span> my@email.net</div>
</li>
</ol>
</div>
<p>There&#8217;s actually a lot of junk at the start of the script which I haven&#8217;t cleaned out yet (since changing from an rsync over SSH approach), but the important part, the part that does all the work, is the rsync call on line 28. The simple if construction checks the size of the data to be backed up, and then proceeds if below 200Gb, otherwise does nothing. The result of the script is e-mailed to me when it finishes. Also, I have created a little script which runs every now and then to collect the temperature of the hard disks, a df output or two, and some other info, which is also e-mailed to me periodically, just to keep an eye on things.</p>
<p>There is a version of the above script for each of the five users on my system, and they are all executed using roots cron daemon. As noted in the script, the rsync.pwd file must be owned by root for this to work.</p>
]]></content:encoded>
			<wfw:commentRss>http://owened.net/2010/04/25/building-a-nas-stage-2-software-and-maintenance/feed</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Mythbuntu 9.10 + PulseAudio + IEC958 (S/PDIF)</title>
		<link>http://owened.net/2009/11/03/mythbuntu-9-10-pulseaudio-iec958-spdif</link>
		<comments>http://owened.net/2009/11/03/mythbuntu-9-10-pulseaudio-iec958-spdif#comments</comments>
		<pubDate>Tue, 03 Nov 2009 05:24:10 +0000</pubDate>
		<dc:creator>Owen</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[awesome]]></category>
		<category><![CDATA[Cool stuff]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Open source]]></category>
		<category><![CDATA[Software]]></category>

		<guid isPermaLink="false">http://owened.net/?p=627</guid>
		<description><![CDATA[Setting up PulseAudio on Mythtbuntu 9.10 is really quite easy. sudo apt-get install pulseaudio All of the GUI tools should be installed along with it, but if they aren&#8217;t, pop this into your console: sudo apt-get install pavumeter paman padevchooser paprefs padevchooser is being deprecated, but it will be supported at least until Mythbuntu 11.04. [...]]]></description>
			<content:encoded><![CDATA[<p>Setting up PulseAudio on Mythtbuntu 9.10 is really quite easy.<br />
<code>sudo apt-get install pulseaudio</code><br />
All of the GUI tools should be installed along with it, but if they aren&#8217;t, pop this into your console:<br />
<code>sudo apt-get install pavumeter paman padevchooser paprefs</code><br />
padevchooser is being deprecated, but it will be supported at least until Mythbuntu 11.04. The first thing you&#8217;ll want to do is launch padevchooser which will put an icon in your tray. From here, you can control all aspects of PulseAudio.</p>
<ol>
<li>Left-click the icon and select &#8216;Preferences&#8217;; click the checkbox next to &#8216;Start applet on session login&#8217; and close the dialogue.</li>
<li>Next, left-click the icon and select &#8216;Configure local sound server&#8217;; click the &#8216;Network Server&#8217; tab and check the boxes next to &#8216;Enable network access to local sound devices&#8217; and then &#8216;Don&#8217;t require authentication&#8217;. This allows applications to stream audio data direct to PulseAudio instead of through PulseAudio&#8217;s implementation of the ALSA API. This is necessary for all applications that support talking directly to PulseAudio.</li>
</ol>
<p>Next, you&#8217;ll want to open the Volume Control from the tray icon menu and select your output device on the Configuration tab. PulseAudio should have enumerated all of the available combinations on your system, so choose the option you want. If you&#8217;re using optical output to your A/V receiver or television, choose digital, SPDIF or IEC958.</p>
<p>Setting up mpd for use with PulseAudio is straightforward. Open your /etc/mpd.conf file and comment out all the configuration related to alsa, then scroll down a bit and you should see a commented-out section related to PulseAudio. Make your config look like the below, and restart mpd.<br />
<code><br />
# An example of an ALSA output:<br />
#<br />
#audio_output {<br />
#       type            "alsa"<br />
#       name            "My ALSA Device"<br />
#       device          "hw:0,1"        # optional<br />
#       format          "44100:16:2"    # optional<br />
#       mixer_device    "default"       # optional<br />
#       mixer_control   "PCM"           # optional<br />
#       mixer_index     "0"             # optional<br />
#}<br />
audio_output {<br />
        type            "pulse"<br />
        name            "My Pulse Output"<br />
#       server          "remote_server"         # optional<br />
#       sink            "remote_server_sink"    # optional<br />
}<br />
</code><br />
Next, you&#8217;ll need to setup MythTV. This is pretty straightforward, all I did was go through the General settings to the audio options menu and set the following options:</p>
<p><em>Update! MythTV trunk supports PulseAudio, so all you need to do is select &#8216;PulseAudio:default&#8217; as the audio output device.</em></p>
<ul>
<li>Output:ALSA:plughw:0,1 (0,1 being the card id, device id key, obtainable through the command &#8216;aplay -l&#8217;; you may have something different in your setup but you can freely edit this text field for the correct device)</li>
<li>Passthrough output device: Default</li>
<li>Max audio channels: Stereo</li>
<li>Upmix: passive</li>
<li>Enable AC3 to SPDIF passthrough: no (force AC3 decoding by MythTV if your receiver can&#8217;t do it)</li>
<li>Enable DTS to SPDIF passthrough: yes (pass Dolby/DTS to your receiver, for DVDs)</li>
</ul>
<p>And that&#8217;s it! All done. You should now have mpd and MythTV routable through PulseAudio which allows you to make use of the excellent <a href="http://projectm.sourceforge.net/">projectM</a> audio visualisation suite (basically an implementation of Milkdrop in OpenGL for Linux). Excellent for parties!</p>
<p>A note: This does actually output PCM 44.1Khz correctly. I was previously routing my audio through HDMI cable to the television, then from the television to the receiver. The TV was outputing a 48Khz signal; direct from the computer via optical, it&#8217;s a sweet 44.1Khz. Nice!</p>
]]></content:encoded>
			<wfw:commentRss>http://owened.net/2009/11/03/mythbuntu-9-10-pulseaudio-iec958-spdif/feed</wfw:commentRss>
		<slash:comments>8</slash:comments>
		</item>
		<item>
		<title>A smarter way to copy large numbers of files</title>
		<link>http://owened.net/2009/04/28/a-smarter-way-to-copy-large-numbers-of-files</link>
		<comments>http://owened.net/2009/04/28/a-smarter-way-to-copy-large-numbers-of-files#comments</comments>
		<pubDate>Tue, 28 Apr 2009 02:11:20 +0000</pubDate>
		<dc:creator>Owen</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[Software]]></category>

		<guid isPermaLink="false">http://owened.net/2009/04/28/a-smarter-way-to-copy-large-numbers-of-files/</guid>
		<description><![CDATA[Aside from the bit I did in uni, I am not much of a programmer. But from what I understand of data structures and I/O, I believe that large file transfers (as in: large numbers of files and folders, as well as large file sizes) could be better implemented. Now, I&#8217;m not specifically talking about [...]]]></description>
			<content:encoded><![CDATA[<p>Aside from the bit I did in uni, I am not much of a programmer. But from what I understand of data structures and I/O, I believe that large file transfers (as in: large numbers of files and folders, as well as large file sizes) could be better implemented.</p>
<p>Now, I&#8217;m not specifically talking about any operating system or platform, but I will use Windows Vista and Ubuntu Linux 9.04 as examples, as they are the latest (and supposedly smartest) versions of their respective lines.</p>
<p>Over the weekend I backed up my Linux laptop onto my Vista desktop so I could install the latest Ubuntu (9.04). I did that and then started the process of copying all my old files back onto my laptop.</p>
<p>To make the whole process easier for me, I simply backed up my entire home directory. This meant that when I went to copy it into the new installation, some common files and folders would require a conflict resolution (eg /home/owen/Desktop). Of course, I hadn&#8217;t thought about this at the time and went away for a few hours, only to come back and find the transfer stalled, waiting for me to resolve a conflict.</p>
<p>My question is: why are file transfers not smarter than this? Surely my 95Gb of files could have been copied faster if only there was a more intelligent way. For example: why can the list of files to be copied be some kind of linked list, as opposed to a FIFO queue? In that case, if a file conflict arises, and no response is received within some sane time, the file causing the conflict is removed from its current position in the list and placed further down, so that the next file may be copied in the background while the conflict resolution for the previous file is on hold. With this action, the bulk of non-conflicting files could then be copied in the background, thus saving time later.</p>
]]></content:encoded>
			<wfw:commentRss>http://owened.net/2009/04/28/a-smarter-way-to-copy-large-numbers-of-files/feed</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>Media Centre Musings (Part 1 &#8211; The Theory)</title>
		<link>http://owened.net/2009/02/10/media-centre-musings-part-1-the-theory</link>
		<comments>http://owened.net/2009/02/10/media-centre-musings-part-1-the-theory#comments</comments>
		<pubDate>Tue, 10 Feb 2009 05:31:24 +0000</pubDate>
		<dc:creator>Owen</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[awesome]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Music]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[Tech-geek]]></category>

		<guid isPermaLink="false">http://owened.net/?p=465</guid>
		<description><![CDATA[This post is part one of a five-part series. Skip to related posts: Media Centre Musings: Part 1 &#8211; The Theory Media Centre Musings: Part 2 &#8211; The Plan Media Centre Musings: Part 3 &#8211; Third Time&#8217;s the Charm Media Centre Musings: Part 4 &#8211; Starting Implementation Media Centre Musings: Part 5 &#8211; Putting it [...]]]></description>
			<content:encoded><![CDATA[<p>This post is part one of a five-part series. Skip to related posts:</p>
<ol>
<li><a href="http://owened.net/2009/02/10/media-centre-musings-part-1-the-theory">Media Centre Musings: Part 1 &#8211; The Theory</a></li>
<li><a href="http://owened.net/2009/05/11/media-centre-musings-part-2-the-plan">Media Centre Musings: Part 2 &#8211; The Plan</a></li>
<li><a href="http://owened.net/2009/10/21/media-centre-musings-part-3-third-times-the-charm">Media Centre Musings: Part 3 &#8211; Third Time&#8217;s the Charm</a></li>
<li><a href="http://owened.net/2009/10/27/media-centre-musings-part-4-starting-implementation">Media Centre Musings: Part 4 &#8211; Starting Implementation</a></li>
<li><a href="http://owened.net/2009/10/31/media-centre-musings-part-5-putting-it-all-together">Media Centre Musings: Part 5 &#8211; Putting it all Together</a></li>
</ol>
<h4>Introduction</h4>
<p>As I am now living in my own place with people of my generation who understand my desire to have &#8220;everything now&#8221; (as most other late Generation X-ers and early Generation Y-ers will understand), I have decided that it is time to build myself a media centre for use in the lounge/common room.</p>
<p>The popularity of digital media management solutions has steadily risen over the past few years. Solutions based around commodity PC hardware and open-source operating systems have been around <a href="http://en.wikipedia.org/wiki/MythTV#History">since 2002</a> at least, with commercial options such as <a href="http://en.wikipedia.org/wiki/Tivo#History">TiVo</a> being available for a few years beforehand.</p>
<p>Although TiVo has been available in America and surrounding countries for nearly 10 years now, it has only recently become avilable in countries such as Australia, Taiwan etc <a href="http://en.wikipedia.org/wiki/Tivo#Service_availability">more recently</a>. Thus contributing to the popularisation (amongst geeks at least) of free/open-source solutions such as the aforementioned <a href="http://en.wikipedia.org/wiki/MythTV">MythTV</a>.</p>
<h4>Software</h4>
<p>It is this software system, on top of my <a href="http://www.archlinux.org/">as always favourite Linux operating system</a> that I will build my media centre solution. I have decided that using Arch will be ideal for a few reasons:</p>
<ol>
<li>it&#8217;s fast. With my older hardware, this is important, especially when considering playback of HD content</li>
<li>I know how to use it.</li>
<li>I prefer some &#8220;under the hood&#8221; access &#8211; configuring everything from scratch, for me, is not a chore. I prefer it to having everything set to defaults like with <a href="http://www.ubuntu.com/">Ubuntu</a>/<a href="http://www.mythbuntu.org/">Mythbuntu</a>. With either of those distributions, I&#8217;d end up changing all the defaults anyway.</li>
</ol>
<h4>Hardware</h4>
<p>My hardware of choice is my ex-gaming PC, a veteran system by today&#8217;s standards which is over four years old now!</p>
<ul>
<li>AMD Athlon64 3400+ (2400Mhz)</li>
<li>DFI LANParty UT nForce 250GB</li>
<li>2x512Mb Corsair Dual-Channel RAM</li>
<li>Albatron nVidia GeForce 6800GT 256Mb</li>
<li>Creative Sound Blaster Live! 5.1</li>
</ul>
<h4>Storage</h4>
<p>Currently the system has about 480GB of storage spread across three seperate hard drives (the joys of incremental upgrades). However, due to the planned dual-role of this computer as media centre and secure backup/storage system, I will be buying some new drives and setting up a simple software RAID system of SATA disks. With the ridiculous cost of hard disk storage solutions these days, where off-the-shelf 1TB drives command an approximate cost of <b>16 cents per gigabyte</b>, there will be no shortage of disk space.</p>
<p>For reasons of performance and reliability I will buy at least two identical drives (probably a pair of Western Digital 7200RPM &#8216;Green Power&#8217; drives) and place them in a RAID1 configuration. Whether I will use the onboard RAID capabilities of the system board or an implementation in software (mdadm) is largely irrelevant in terms of performance as both rely on the CPU to perform RAID-related calculations. However, using the software solution will abstract the RAID functions from the hardware, which will eliminate the single point of failure. If the motherboard were to be replaced, I would effectively lose my RAID system, and all data with it. The underlying hardware is irrelevant in this scenario when using software RAID.</p>
<h4>Video Capture</h4>
<p>Finding the right video capture card isn&#8217;t going to be as easy as the rest of the hardware. While there is a lot of information (<a href="http://www.mythtv.org/wiki/Category:Video_capture_cards">MythTV hardware wiki</a>, <a href="http://www.overclockers.com.au/wiki/MythTV#Supported_TV_tuner_adapters">OCAU MythTV Wiki</a>) available about which are the best cards to buy, it is a matter of matching the exact cards which are known as fully working to those actually available for purchase.</p>
<p>For example, the Leadtek DTV-2000H is a well-rounded card which offers the features I require. However, there are two different revisions available, the &#8216;I&#8217; revision and the &#8216;J&#8217; revision. The former works flawlessly and the latter has intermittent problems and requires a lot more tweaking to get it to play nicely. Both cards use the same highly recommended chipset (Connextant 2388x) but apparently are different enough to cause problems (see <a href="http://www.mythtv.org/wiki/Leadtek_DTV-2000H">the MythTV wiki entry for this card</a>). This makes my choice a very difficult one as retailers generally aren&#8217;t too happy about having customers open boxes and inspect hardware version numbers prior to a purchase being made.</p>
<h4>Remote Control</h4>
<p>The only other hardware consideration I have is what remote control to use. Some of the available video capture cards come with their own, or I may buy another. It is an incidental cost in the grand scheme of things but adds so much functionality to the system. I do not want to have a keyboard and mouse hanging around in my loungeroom if I can avoid it, and indeed, I can. More to the point, though, a remote control with familiar buttons makes the system much more accessible to the non-technical people who will be using the system, and that increases the chances it&#8217;ll be used.</p>
<h4>Conclusion</h4>
<p>As this is only part one of my upcoming series of posts on the matter, you will have to wait a week or two until I&#8217;ve properly researched my hardware choices, made my purchases and begun the build. Rest assured though, I&#8217;ll do a full write-up!</p>
]]></content:encoded>
			<wfw:commentRss>http://owened.net/2009/02/10/media-centre-musings-part-1-the-theory/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Improving developer  client communication</title>
		<link>http://owened.net/2008/05/18/improving-developer-client-communication</link>
		<comments>http://owened.net/2008/05/18/improving-developer-client-communication#comments</comments>
		<pubDate>Sun, 18 May 2008 00:44:27 +0000</pubDate>
		<dc:creator>Owen</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[communication]]></category>
		<category><![CDATA[developer]]></category>
		<category><![CDATA[Software]]></category>

		<guid isPermaLink="false">http://owened.net/?p=366</guid>
		<description><![CDATA[At work, I&#8217;ve been developing an a semi-automated spreadsheet to help make life easier for the guys who need to manipulate a lot of data easily. I&#8217;ve been using a lot of VBA and some built-in Excel functions, and I&#8217;ve been working on the project for about six weeks now, on and off. Over that [...]]]></description>
			<content:encoded><![CDATA[<p>At work, I&#8217;ve been developing an a semi-automated spreadsheet to help make life easier for the guys who need to manipulate a lot of data easily. I&#8217;ve been using a lot of VBA and some built-in Excel functions, and I&#8217;ve been working on the project for about six weeks now, on and off.</p>
<p>Over that time period, I&#8217;ve come to appreciate the level of understanding that the people I&#8217;m developing for have of what I&#8217;m doing: very little. But, the little understanding they do have has enabled me to build a sturdy communique with them.</p>
<p>At uni, we&#8217;re taught one of the major problems that face software developers is properly understanding what it is they&#8217;re being asked to develop. To that end, we&#8217;ve been told a few horror stories, where the developers meet with the clients, the clients say &#8220;we want an X, and we want it to do Y, Z and B&#8221;. Then, the developers go away for a long time and they come back with what they think X looks like, doing what they think Y, Z and B should look like. Usually they get it completely wrong and the clients are furious.</p>
<p>So, we are taught that one of the most important parts of software development is having an almost always open dialogue between the developers and the clients in order to ensure that what the developers are developing matches up with what the clients think they&#8217;re developing. Initially, the guys at work didn&#8217;t really understand that. I don&#8217;t blame them, because I even asked, &#8220;have you ever had anyone develop software for you before?&#8221; to which they replied simply, &#8220;no.&#8221; </p>
<p>So, my task was to try to educate them on how to properly interact with me when it came to developing software. I explained that they couldn&#8217;t simply say &#8220;we want a PQR&#8221;, leave me alone for two weeks, and have me come back with exactly what they were after. As they&#8217;re quite receptive people, they understood.</p>
<p>But, how do you deal with people who aren&#8217;t receptive? More specifically, how can you convince your boss, a non-technical person, that you need to allow for certain timeframes and certain communications when you are trying to create something new for someone? So far I&#8217;ve not had much luck with my boss. I explain to him the same things I explained to the others, but I don&#8217;t know if he gets it or not. He usually responds with a nod, says &#8220;OK&#8221;, and changes the subject. He&#8217;s a solutions-oriented man; he talks about solutions, final products, and results like they&#8217;re simply a matter of moving from A to B. I need to find some way of leveraging this type of thought process to my advantage, so I may communicate with him more effectively.</p>
]]></content:encoded>
			<wfw:commentRss>http://owened.net/2008/05/18/improving-developer-client-communication/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Creative sucks. Hard.</title>
		<link>http://owened.net/2008/03/31/creative-sucks-hard</link>
		<comments>http://owened.net/2008/03/31/creative-sucks-hard#comments</comments>
		<pubDate>Mon, 31 Mar 2008 01:47:46 +0000</pubDate>
		<dc:creator>Owen</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[Angry]]></category>
		<category><![CDATA[creative]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[sucks]]></category>

		<guid isPermaLink="false">http://owened.net/?p=327</guid>
		<description><![CDATA[Creative are screwing around again Get the community driver packs here View the complete unedited thread here My hatred for Creative is apparently not only justified, but shared by thousands. An excerpt: Daniel_K: We are aware that you have been assisting owners of our Creative sound cards for some time now, by providing unofficial driver [...]]]></description>
			<content:encoded><![CDATA[<p><code>Creative are <a href="http://forums.creative.com/creativelabs/board/message?board.id=soundblaster&#038;thread.id=116332">screwing around again</a><br />
Get the community driver packs <a href="http://nomoregoatsoup.wordpress.com/">here</a><br />
View the complete unedited thread <a href="http://creative.edited.us/">here</a></code><br />
My <a href="http://owened.net/2007/01/25/i-hate-creative/">hatred for Creative</a> is apparently <a href="http://forums.creative.com/creativelabs/board/message?board.id=soundblaster&#038;thread.id=116332">not only justified, but shared by thousands</a>.</p>
<p>An excerpt: </p>
<blockquote><p>
Daniel_K:</p>
<p>We are aware that you have been assisting owners of our Creative sound cards for some time now, by providing unofficial driver packages for Vista that deliver more of the original functionality that was found in the equivalent XP packages for those sound cards.  In principle we don&#8217;t have a problem with you helping users in this way, so long as they understand that any driver packages you supply are not supported by Creative.  Where we do have a problem is when technology and IP owned by Creative or other companies that Creative has licensed from, are made to run on other products for which they are not intended.  We took action to remove your thread because, like you, Creative and its technology partners think it is only fair to be compensated for goods and services.  The difference in this case is that we own the rights to the materials that you are distributing.  By enabling our technology and IP to run on sound cards for which it was not originally offered or intended, you are in effect, stealing our goods.  When you solicit donations for providing packages like this, you are profiting from something that you do not own.  If we choose to develop and provide host-based processing features with certain sound cards and not others, that is a business decision that only we have the right to make.</p>
<p>Although you say you have discontinued your practice of distributing unauthorized software packages for Creative sound cards we have seen evidence of them elsewhere along with donation requests from you.  We also note in a recent post of yours on these forums, that you appear to be contemplating the release of further packages.  To be clear, we are asking you to respect our legal rights in this matter and cease all further unauthorized distribution of our technology and IP.  In addition we request that you observe our forum rules and respect our right to enforce those rules.  If you are in any doubt as to what we would consider unacceptable then please request clarification through one of our forum moderators before posting.</p>
<p>Phil O&#8217;Shaughnessy<br />
VP Corporate Communications<br />
Creative Labs Inc.</p>
<p>Forum Moderator<br />
Creative Labs
</p></blockquote>
<p>Essentially, Creative has a bad history of customer support. Their driver packs typically provide less features than are advertised. Whenever a new operating system comes along (or in my case, even a new service pack for an existing operating system), Creative throw their hands in the air and shout &#8220;no!&#8221; &#8212; they refuse to support older products on new operating systems. At all.</p>
<p>Some of you might say, &#8220;fair enough&#8221; &#8212; but that&#8217;s not entirely the issue here. A forum member, Daniel_K, was packaging and releasing &#8212; for free &#8212; to the public updated driver packs that as I understand it were created using chopped-up existing driver packs. This was all fine and dandy until of course Creative stepped in and instructed Daniel_K to discontinue this activity, as apparently it was a breach of Creative&#8217;s copyrights.</p>
<p>It&#8217;s absolutely ridiculous; but you don&#8217;t need me to tell you that. You can read the thread <a href="http://forums.creative.com/creativelabs/board/message?board.id=soundblaster&#038;thread.id=116332">here</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://owened.net/2008/03/31/creative-sucks-hard/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Protected: MS06-049: patch KB920958 data loss bug</title>
		<link>http://owened.net/2006/09/12/ms06-049-patch-kb920958-data-loss-bug</link>
		<comments>http://owened.net/2006/09/12/ms06-049-patch-kb920958-data-loss-bug#comments</comments>
		<pubDate>Tue, 12 Sep 2006 05:58:59 +0000</pubDate>
		<dc:creator>Owen</dc:creator>
				<category><![CDATA[Bugs]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[Windows]]></category>

		<guid isPermaLink="false">http://owened.net/2006/09/12/ms06-049-patch-kb920958-data-loss-bug/</guid>
		<description><![CDATA[There is no excerpt because this is a protected post.]]></description>
			<content:encoded><![CDATA[<form action="http://owened.net/wp-pass.php" method="post">
<p>This post is password protected. To view it please enter your password below:</p>
<p><label for="pwbox-153">Password:<br />
<input name="post_password" id="pwbox-153" type="password" size="20" /></label><br />
<input type="submit" name="Submit" value="Submit" /></p></form>
]]></content:encoded>
			<wfw:commentRss>http://owened.net/2006/09/12/ms06-049-patch-kb920958-data-loss-bug/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Protected: GPL guffaws: Jin vs. IChessU</title>
		<link>http://owened.net/2006/09/06/gpl-guffaws-jin-vs-ichessu</link>
		<comments>http://owened.net/2006/09/06/gpl-guffaws-jin-vs-ichessu#comments</comments>
		<pubDate>Tue, 05 Sep 2006 23:47:29 +0000</pubDate>
		<dc:creator>Owen</dc:creator>
				<category><![CDATA[Open source]]></category>
		<category><![CDATA[Software]]></category>

		<guid isPermaLink="false">http://owened.net/2006/09/06/gpl-guffaws-jin-vs-ichessu/</guid>
		<description><![CDATA[There is no excerpt because this is a protected post.]]></description>
			<content:encoded><![CDATA[<form action="http://owened.net/wp-pass.php" method="post">
<p>This post is password protected. To view it please enter your password below:</p>
<p><label for="pwbox-151">Password:<br />
<input name="post_password" id="pwbox-151" type="password" size="20" /></label><br />
<input type="submit" name="Submit" value="Submit" /></p></form>
]]></content:encoded>
			<wfw:commentRss>http://owened.net/2006/09/06/gpl-guffaws-jin-vs-ichessu/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>OSS is transparent, interoperable and efficient</title>
		<link>http://owened.net/2006/08/23/oss-is-transparent-interoperable-and-efficient</link>
		<comments>http://owened.net/2006/08/23/oss-is-transparent-interoperable-and-efficient#comments</comments>
		<pubDate>Wed, 23 Aug 2006 00:18:21 +0000</pubDate>
		<dc:creator>Owen</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Open source]]></category>
		<category><![CDATA[Software]]></category>

		<guid isPermaLink="false">http://owened.net/2006/08/23/oss-is-transparent-interoperable-and-efficient/</guid>
		<description><![CDATA[The benefits of open-source software have been known to its proponents since the concept&#8217;s inception. Open source, by its very nature, is open software that allows for addition and modification of source code by any and all who choose to do so. Consequently, follow-on benefits become apparent: this open nature is conducive for producing an [...]]]></description>
			<content:encoded><![CDATA[<p><img src="http://users.on.net/stickley/blog/opensource-logo.gif" alt="Open Source Institute" style="float: right;"><br />
The benefits of open-source software have been known to its proponents since the concept&#8217;s inception. Open source, by its very nature, is open software that allows for addition and modification of source code by any and all who choose to do so. Consequently, follow-on benefits become apparent: this open nature is conducive for producing an IT environment powered and supported by open technologies that are transparent, interoperable, and efficient.</p>
<p>Instead of being restricted by proprietary licencing and arbitrarily enforced limitations, open-source software leaves developers and users alike to make free choices about the software they use. Unrestricted by vendor lock-in, users are free to switch software solutions as they please, allowing IT departments and home users alike to make quick and resolute decisions concerning software they use.</p>
<p>This of course is much to the chagrin of large software organisations that <a href="http://en.wikipedia.org/wiki/Vendor_lock-in">rely on said vendor lock-in</a> to maintain market share. This has been one of the main sticking points for many governments, businesses and other organisations plans to transition to free and open-source software solutions. However, recently the US Department of Defence and the Croatian government have both made serious efforts toward evaluating and implementing open-source software solutions for use in their day-to-day tasks; the Croatian government has implemented an open-source software policy for all government departments, which encompasses the following guidelines:</p>
<blockquote>
<ul>
<li>Government institutions will choose and/or develop open source solutions as much as possible, instead of using closed source alternatives.</li>
<li>The government will support development of closed source solutions that use open standards for protocols and file formats, and which are developed in Croatia.</li>
<li>The government will support the use of open source programs and open standards outside of its institutions.</li>
<li>The government will support the use of open source solutions in educational institutions; both closed and open source solutions will be equally presented to students.</li>
</ul>
</blockquote>
<p>(provided by NewsForge, &#8220;<a href="http://business.newsforge.com/article.pl?sid=06/08/11/1855229">Croatian Government adopts open-source software policy</a>&#8220;)</p>
<p>Indeed, from the NewsForge article linked above, here are the words of Domagoj Juricic, deputy state secretary at the Central State Administrative Office for e-Croatia, who is the leader of Croatia&#8217;s Open Source Software Policy project: </p>
<blockquote><p>
&#8220;The use of information technology in government administration bodies is increasingly becoming important. So far, most of the software we use is proprietary software, so we cannot modify or complement it, or link software from different vendors. These software products impose rigid commercial conditions of use and limit our possibilities. In this way, government administration bodies may be led into a dependent position on the supplier of the software. This could lead to closed information systems, which make the success and efficiency of our eAdministration project more difficult.&#8221;
</p></blockquote>
<p>Similar sentiments are put forward by the US Deparment of Defence&#8217;s report, <a href="http://www.acq.osd.mil/actd/articles/OTDRoadmapFinal.pdf">The Open Technology Road Map</a>. The report identifies critical differences between the acqusition of physical goods vs the aquisition and use of digital media. While currently, many proprietary software programmes are treated the same way as a physical good, the report argues the arbitrary limitations of proprietary software, stating: </p>
<blockquote><p>
Digital goods (software code, music, movies, etc.) once created can be copied perfectly with relative ease: limiting distribution enforces scarcity, but that scarcity is arbitrary and negotiated, rather than an innate property of the product.
</p></blockquote>
<p>This arbitrary limitation of software availability also has an impact on inter-departmental software sharing:</p>
<blockquote><p>
Currently within DoD, there is no internal distribution policy or mechanism for DoD developed and paid for software code. By not enabling internal distribution, DoD creates an arbitrary scarcity of its own software code, which increases the development and maintenance costs of information technology across the Department. Other negative consequences include lock-in to obsolete proprietary technologies, the inability to extend existing capabilities in months vs. years, and snarls of interoperability that stem from the opacity and stove-piping of information systems.
</p></blockquote>
<p>Alongside vendor lock-in and the consequent reliance upon the software vendor, proprietary software suffers from lack of features, as well slow turnaround time for bugfixes and feature requests. Open software does not suffer the same limitations, as software developers can be contracted as needed to make additions to existing software, without the arbitrary licencing restrictions placed upon alternative proprietary software. Software developed for use in one department can be easily deployed in other departments, and collaboration of efforts between inter-departmental software development is made easier.</p>
<p>If the Croatian government and the US Department of Defence can adopt open-source ideals, technology and software, there is no reason why other governments and government departments cannot do the same. Open software allows for consistent interoperability (code-sharing, systems compatability, data management), offers system transparency (ease of auditing, bugtracking and fixing, feature implementations) and improves efficiency (reduction of code duplication through code re-use, ease of integration of new features and technology, streamlining of developer contracting) and overall, produces not only a better system of software, but at the same time reduces cost, eliminates vendor lock-in, and produces community-friendly code, which benefits everyone.</p>
]]></content:encoded>
			<wfw:commentRss>http://owened.net/2006/08/23/oss-is-transparent-interoperable-and-efficient/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Protected: It&#8217;s not Real: a solution to Windows Media under Linux</title>
		<link>http://owened.net/2006/08/18/its-not-real-a-solution-to-windows-media-under-linux</link>
		<comments>http://owened.net/2006/08/18/its-not-real-a-solution-to-windows-media-under-linux#comments</comments>
		<pubDate>Fri, 18 Aug 2006 21:46:12 +0000</pubDate>
		<dc:creator>Owen</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Software]]></category>

		<guid isPermaLink="false">http://owened.net/2006/08/18/its-not-real-a-solution-to-windows-media-under-linux/</guid>
		<description><![CDATA[There is no excerpt because this is a protected post.]]></description>
			<content:encoded><![CDATA[<form action="http://owened.net/wp-pass.php" method="post">
<p>This post is password protected. To view it please enter your password below:</p>
<p><label for="pwbox-138">Password:<br />
<input name="post_password" id="pwbox-138" type="password" size="20" /></label><br />
<input type="submit" name="Submit" value="Submit" /></p></form>
]]></content:encoded>
			<wfw:commentRss>http://owened.net/2006/08/18/its-not-real-a-solution-to-windows-media-under-linux/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
	</channel>
</rss>
