<?xml version="1.0" encoding="UTF-8"?>
<!-- generator="wordpress/2.2" -->
<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/"
	>

<channel>
	<title>Garoth.com</title>
	<link>http://garoth.com</link>
	<description>Digital Home of Andrei "Garoth" Thorp</description>
	<pubDate>Tue, 24 May 2011 14:27:20 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.2</generator>
	<language>en</language>
			<item>
		<title>Android Tablets</title>
		<link>http://garoth.com/?p=82</link>
		<comments>http://garoth.com/?p=82#comments</comments>
		<pubDate>Tue, 24 May 2011 14:27:20 +0000</pubDate>
		<dc:creator>Garoth</dc:creator>
		
		<category><![CDATA[Computers]]></category>

		<guid isPermaLink="false">http://garoth.com/?p=82</guid>
		<description><![CDATA[I&#8217;ve been a long-time Google fanboy, and quite frankly, they have all my personal data. They have my calendar, all of my e-mails, all of my search history, most of my documents, some of my code, my website statistics, RSS feeds, and most of everything else. In my spare time, I enjoy YouTube and chat [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve been a long-time Google fanboy, and quite frankly, they have all my personal data. They have my calendar, all of my e-mails, all of my search history, most of my documents, some of my code, my website statistics, RSS feeds, and most of everything else. In my spare time, I enjoy YouTube and chat with friends on Google Talk. (In fact, I refuse to use anything except Google Talk and Skype.)</p>

<p>So for me, the Android platform is amazing. I was recently given an awesome Motorola Xoom tablet running Android 3.1. I was very skeptical about tablets before this &#8212; I mean, what are they really good for? They don&#8217;t have a screen as big as my monitor for watching video, they don&#8217;t have a keyboard good enough for serious typing, they aren&#8217;t phones, and they don&#8217;t work particularly well for note-taking. However, what niche they really fill, I realized, is convenience.</p>

<p>For example, I play my music via a client-server system called MPD (Music Player Daemon). Basically, the client and music playing services are decoupled, and you can connect to the daemon remotely. Sure enough, there are a dozen MPD clients written for Android. So I can be lounging in my living room with my computer in the corner, open my Android MPD client, select what tracks I want to play in a rich GUI, and have my more powerful sound system play it.</p>

<p>So imagine the time when rich, touch based interfaces are simply lying around everywhere and you have these powerful quick utility, always-on devices on hand. In the not too distant future, we can be sitting in our smart homes and thinking about how the lights are just not romantic enough. We&#8217;d reach over to the table beside our couch, press a button on our tablet, and have the lights be dimmed. Or perhaps we&#8217;d change our air conditioner settings by dragging a slider rather than fighting with an irritating 3-button 8-bit interface that desperately wants to confuse you.</p>

<p>There&#8217;s a lot of potential for tablets being convenient interfaces to these low-level devices or services. In the air conditioner example,  air conditioner manufacturers would love to cut costs by designing devices that just have a simple api rather than a complex physical user interface. You would plug your air conditioner controller to your tablet via USB. There, a wizard would guide you through setting up the controller with the wireless network information. Then, you unplug your tablet. The air conditioner controller connects to the wireless, where it is discovered with a zero-conf system on the network. You open your tablet&#8217;s air conditioner application and suddenly have a simple, rich interface to use. On a tablet, it&#8217;s very easy to program a rich interface. In a small, cheap electronic gadget like an ac controller, it&#8217;s pretty complex and hard to do. This separation of tasks is great for both users as well as manufacturers.</p>

<p>Android&#8217;s a very promising platform that&#8217;s backed by one of my favourite companies, using all the technology that I&#8217;m already familiar with. I&#8217;m really excited about where it&#8217;ll go next, and to see how deeply we integrate these new-age devices into our lives in the forthcoming years. With that said, I <em>really</em> need to finish learning how to develop for the system. It seems like it&#8217;s right up my alley &#8212; being Java and Linux.</p>

<p>&#8220;Why not iPad!?&#8221; some may shout. Because we deserve better, as a species, than to be forever in the hands of Apple, like we have been in the hands of Microsoft. Open platforms, like open standards, are better grounds for innovation and overall advancement than closed systems. This is why Linux is quickly growing in share, why IBM&#8217;s open-hardware architecture won, and why HTML 5 is so much more promising that Flash ever was.</p>
]]></content:encoded>
			<wfw:commentRss>http://garoth.com/?feed=rss2&amp;p=82</wfw:commentRss>
		</item>
		<item>
		<title>University of Waterloo eduroam Network netcfg Example</title>
		<link>http://garoth.com/?p=81</link>
		<comments>http://garoth.com/?p=81#comments</comments>
		<pubDate>Tue, 24 May 2011 13:36:54 +0000</pubDate>
		<dc:creator>Garoth</dc:creator>
		
		<category><![CDATA[Computers]]></category>

		<guid isPermaLink="false">http://garoth.com/?p=81</guid>
		<description><![CDATA[Dear Archlinux users at The University of Waterloo, the following is the wpa_supplicant/netcfg configuration file that will work with the eduroam network found around campus. It was a pain to figure out

CONNECTION='wireless'
INTERFACE=wlan0
SECURITY='wpa-configsection'
ESSID='eduroam'
IP='dhcp'
DHCP_TIMEOUT=40
CONFIGSECTION='
    ssid="eduroam"
    scan_ssid="0"
    proto=RSN
    key_mgmt=WPA-EAP
    group=CCMP
    [...]]]></description>
			<content:encoded><![CDATA[<p>Dear Archlinux users at The University of Waterloo, the following is the wpa_supplicant/netcfg configuration file that will work with the eduroam network found around campus. It was a pain to figure out</p>

<pre><code>CONNECTION='wireless'
INTERFACE=wlan0
SECURITY='wpa-configsection'
ESSID='eduroam'
IP='dhcp'
DHCP_TIMEOUT=40
CONFIGSECTION='
    ssid="eduroam"
    scan_ssid="0"
    proto=RSN
    key_mgmt=WPA-EAP
    group=CCMP
    eap=PEAP
    identity="USERID@uwaterloo.ca"
    password="PASSWORD"
    ca_cert="/usr/share/ca-certificates/mozilla/GlobalSign_Root_CA.crt"
    phase2="auth=MSCHAPV2"
'
</code></pre>
]]></content:encoded>
			<wfw:commentRss>http://garoth.com/?feed=rss2&amp;p=81</wfw:commentRss>
		</item>
		<item>
		<title>Announcing gem2arch: Automatic Arch Packages for Ruby Gems</title>
		<link>http://garoth.com/?p=80</link>
		<comments>http://garoth.com/?p=80#comments</comments>
		<pubDate>Sun, 11 Apr 2010 21:19:13 +0000</pubDate>
		<dc:creator>Garoth</dc:creator>
		
		<category><![CDATA[Programming]]></category>

		<guid isPermaLink="false">http://garoth.com/?p=80</guid>
		<description><![CDATA[Good day.

I&#8217;d like to announce the completion of the gem2arch script to the 1.0 feature set. This script has several interesting features:


Invoked as &#8220;gem2arch sup&#8221;, it will generate a PKGBUILD for sup with the dependencies from the gem specfile. It will automatically fetch the gem specfile from the gem server. This PKGBUILD should be nearly [...]]]></description>
			<content:encoded><![CDATA[<p>Good day.</p>

<p>I&#8217;d like to announce the completion of the gem2arch script to the 1.0 feature set. This script has several interesting features:</p>

<ul>
<li>Invoked as &#8220;gem2arch sup&#8221;, it will generate a PKGBUILD for sup with the dependencies from the gem specfile. It will automatically fetch the gem specfile from the gem server. This PKGBUILD should be nearly immediately usable (but will lack md5sum line). The script will pull in the description and use your name from makepkg.conf if it is set there.</li>
<li>Invoked as &#8220;gem2arch -dq sup&#8221;, it will list the dependencies that are given in the sup gem. The purpose of this is to be able to write shell loops along the lines of: <code>gem2arch sup &amp;&amp; gem2arch -dq sup | grep -Ev "list|of|dependencies|to|ignore" | while read dependency; do gem2arch ${dependency}; done</code></li>
<li>A man page is included with the tarball.</li>
</ul>

<p>Anyway, you can get the script here: <a href="http://git.mercenariesguild.net/releases/gem2arch/gem2arch-1.0.tar.gz">gem2arch-1.0.tar.gz</a>. Alternatively, you can get a git clone: git clone git://git.mercenariesguild.net/gem2arch-garoth.git</p>

<p>In general, the focus of this program was clear code and very simple usefulness. There is another gem2arch script on the web that predates this script, but the code was somewhat unpleasant and the old script required more work to use. This gem2arch&#8217;s in no part uses the old gem2arch&#8217;s code &#8212; it is a fresh rewrite.</p>

<p>I must massively credit David &#8220;davekong&#8221; Campbell for his work on this gem2arch script. I started working on this script many months ago, but lost interest (as I am apt to do&#8230;). Recently, he came along and wrote me many patches that improved the code and fixed up the rough parts. He also very graciously helped me in creating all of the side things that I was lazy with such as man pages and so forth. I also very much appreciate him beating me with a stick and forcing me to drop some of the crazier features that my original script had or planned to have. I can only do him the honour of calling him a co-author, but really, this wouldn&#8217;t have been pushed through the finish line without him. What a great guy he is to help a stranger randomly, eh?</p>
]]></content:encoded>
			<wfw:commentRss>http://garoth.com/?feed=rss2&amp;p=80</wfw:commentRss>
		</item>
	</channel>
</rss>

