<?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>Sun, 25 Dec 2011 00:57:45 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=</generator>
		<item>
		<title>ClearOS Review</title>
		<link>http://owened.net/2011/01/14/clearos-review</link>
		<comments>http://owened.net/2011/01/14/clearos-review#comments</comments>
		<pubDate>Thu, 13 Jan 2011 23:28:08 +0000</pubDate>
		<dc:creator>Owen</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[Contemplative]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Open source]]></category>
		<category><![CDATA[Reviews]]></category>
		<category><![CDATA[Software]]></category>

		<guid isPermaLink="false">http://owened.net/?p=761</guid>
		<description><![CDATA[Recently I built and set up a new ClearOS machine. ClearOS is an open-sourced router and server distro based on CentOS, the free version of Red Hat Linux. The machine is based on an Intel Atom 330 (dual-core 1.6Ghz) with 2Gb of DDR2 800Mhz RAM. It has one onboard Realtek 8168B PCIe gigabit ethernet controller [...]]]></description>
			<content:encoded><![CDATA[<p>Recently I built and set up a new ClearOS machine. ClearOS is an open-sourced router and server distro based on CentOS, the free version of Red Hat Linux.</p>
<p>The machine is based on an Intel Atom 330 (dual-core 1.6Ghz) with 2Gb of DDR2 800Mhz RAM. It has one onboard Realtek 8168B PCIe gigabit ethernet controller (LAN side) and I have installed a VIA Rhine II 100Mbit PCI network card (PPPoE/WAN side). I have also installed a Marvell 88SE9123 PCIe SATA 6.0 Gb/s SATA controller and a Silicon Image SiI 3114 3Gb/s SATA controller for extra hard disks. The Marvell chip on the former card is the same one installed on many new motherboards which boast SATA3 support, and will be until Intel, AMD, VIA et. al. start incorporating SATA3 controllers into their chipsets, so it is already well supported and will be for some time. It is only a 2-port card but that is perfect for RAID0 or RAID1 configuration, not that I am using the fakeraid hardware controller on board.</p>
<p>So far the system has had several teething problems. I am using a standard Billion 7300 modem/router as a simple ADSL2+ bridge, with the ClearOS box performing PPPoE negotiation and all routing (NAT) duties. I have left my previous modem/router, a Billion 7404VGPX configured and connected to the LAN on standby duty in case I have problems with ClearOS, which I have. All I need to do is move the phone line from the Billion 7300 to the 7404 and re-enable the DHCP server on the 7404 to revert to the old setup.</p>
<p>The ClearOS installation procedure is fairly straightfoward although it is somewhat limited by the fact that you must install from USB or CDROM if you are setting up ClearOS in Gateway mode like I have done. You cannot do an install from the internet unless you are running standalone mode. This doesn&#8217;t really make sense to me, surely it wouldn&#8217;t be hard to specify temporary network settings during the installation procedure to gain access to the internet?</p>
<p>Some of the problems I have had so far with ClearOS:</p>
<ul>
<li>Hard locks (hardware problems): the Sil 3114 card has caused some hard system locks while accessing attached disks. Considering this card has been in use for the last 3-4 years in an older fileserver with four disks attached (it now only has two), this is either indicative of the card reaching its end of life, a problem with its physical installation or some incompatibility between this and the motherboard. The latter is highly unlikely, but the former are possible. That said, it has been working well for the entire time in a well-ventilated case and is essentially &#8216;good as new&#8217;, so who really knows? I have reseated the card in the PCI slot and so far the system has been operating for 25 hours straight. Still early days, but previously it&#8217;d only worked for less than that before problems arose.</li>
<li>Soft locks (software problems): I have managed to lock the system two or three times by clicking around the web control panel. It seems as though running certain reports causes catastrophic failures somewhere, so much so that it ceases function as a router and does not even respond to SSH any longer, requiring a hard reset. This has not happened since I reseated the Sil 3114 card though, so maybe that was at play here.</li>
<li>Random service failures: the web configuration sometimes dies and comes back. Usually after performing a CPU-intensive task, like listing the currently open connections or generating a report.</li>
<li>PPPoE: doesn&#8217;t seem to receive DNS server address information from the ISP. Or if it does, it doesn&#8217;t redistribute this information via DHCP automatically. I&#8217;ve had to manually input the preferred DNS servers into the DHCP client.
<li>ClearOS doesn&#8217;t support transparent web proxying AND QoS bandwidth allocation. This is a well-discussed problem with ClearOS, apparently the developers think the problem is too hard to solve without more money. However, other freely-available Linux-based routers can do transparent web proxying and QoS bandwidth allocation. Guess it wasn&#8217;t too hard for them&#8230;</li>
<li>Also doesn&#8217;t provide NFS services out of the box.</li>
</ul>
<p>Aside from it crashing a few times (which is looking more and more like it was my fault), the system has been pretty good. It has most of the features anyone would need as an SMB or advanced home server.</p>
<p>Routing and WAN performance with routing and such is excellent. Pings to local gaming servers seem to be slightly reduced by 20-30 milliseconds. The web proxying cache seems to have sped things up a little bit, though with most of the content I access being hosted locally in Australia the speed is already there, it&#8217;s more to do with saving bandwidth on not re-downloading the same content all the time.</p>
<p>I still can&#8217;t figure out what the deal with network fileserving is. The CPU load while transferring files at gigabit speeds are around 80-90%; I guess this is owing to the fact that I am using an mdadm Linux software RAID0? Samba to Windows Vista only yeilds about 30Mb/sec; though FTP is 80-120 Mb/sec (given this high number is impossible, I am doubting the accuracy of these numbers). iperf between systems is about 850Mbit though so I know the network isn&#8217;t the problem. It will require further troubleshooting methinks.</p>
]]></content:encoded>
			<wfw:commentRss>http://owened.net/2011/01/14/clearos-review/feed</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<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>5</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>
	</channel>
</rss>

