<?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>./cmsimike &#187; experiment</title>
	<atom:link href="http://www.cmsimike.com/blog/tag/experiment/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.cmsimike.com/blog</link>
	<description>thoughts from a computer scientist</description>
	<lastBuildDate>Sun, 08 Jan 2012 22:20:29 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.5</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Twitter-Based Exception Logger</title>
		<link>http://www.cmsimike.com/blog/2009/11/20/twitter-based-exception-logger/</link>
		<comments>http://www.cmsimike.com/blog/2009/11/20/twitter-based-exception-logger/#comments</comments>
		<pubDate>Fri, 20 Nov 2009 22:38:50 +0000</pubDate>
		<dc:creator>Mike</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[experiment]]></category>
		<category><![CDATA[idea]]></category>
		<category><![CDATA[logging]]></category>
		<category><![CDATA[random]]></category>
		<category><![CDATA[twitter]]></category>

		<guid isPermaLink="false">http://www.cmsimike.com/blog/?p=172</guid>
		<description><![CDATA[
1
2
3
4
5
6
7
8
try
&#123;
   //some code goes here
&#125;
catch &#40;Exception e&#41;
&#123;
   logToTwitter&#40;&#34;Application Name&#34;, e.getStackTrace&#40;&#41;&#41;;
&#125;


It started with one Tweet from me, followed up by and Retweet from Kelly Sutton to actually give it serious thought. Instead of having to view logs, why not have an exception stack trace appear in your Twitter time line? With services [...]]]></description>
			<content:encoded><![CDATA[
<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
</pre></td><td class="code"><pre class="java" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">try</span>
<span style="color: #009900;">&#123;</span>
   <span style="color: #666666; font-style: italic;">//some code goes here</span>
<span style="color: #009900;">&#125;</span>
<span style="color: #000000; font-weight: bold;">catch</span> <span style="color: #009900;">&#40;</span><span style="color: #003399;">Exception</span> e<span style="color: #009900;">&#41;</span>
<span style="color: #009900;">&#123;</span>
   logToTwitter<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;Application Name&quot;</span>, e.<span style="color: #006633;">getStackTrace</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #009900;">&#125;</span></pre></td></tr></table></div>

<p><span id="more-172"></span><br />
It started with one <a href="http://twitter.com/cmsimike/statuses/5900818051" target="_blank">Tweet from me</a>, followed up by and <a href="http://twitter.com/KellySutton/statuses/5900871031" target="_blank">Retweet</a> from <a href="http://michaelkellysutton.com/" target="_blank">Kelly Sutton</a> to actually give it serious thought. Instead of having to view logs, why not have an exception stack trace appear in your Twitter time line? With services like <a href="http://www.twitlonger.com" target="_blank">Twitlonger</a>, one can easily shove an entire stack trace into a Tweet. Privacy can be dealt with on Twitter&#8217;s side by setting the privacy of the Twitter Bot user. Except if you&#8217;re using Twitlonger.</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
</pre></td><td class="code"><pre class="java" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">try</span>
<span style="color: #009900;">&#123;</span>
   <span style="color: #666666; font-style: italic;">//some code goes here</span>
<span style="color: #009900;">&#125;</span>
<span style="color: #000000; font-weight: bold;">catch</span> <span style="color: #009900;">&#40;</span><span style="color: #003399;">Exception</span> e<span style="color: #009900;">&#41;</span>
<span style="color: #009900;">&#123;</span>
   logToTwitter<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;Application name&quot;</span>, <span style="color: #000000; font-weight: bold;">new</span> <span style="color: #003399;">Date</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span>, e<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #009900;">&#125;</span></pre></td></tr></table></div>

<p>Instead of the entire stack trace, you can just get a one-liner of the type of exception it is along with a date/time stamp for references when digging through logs.</p>
<p>I guess the one limiting factor of this is the assumption that whatever app is using this logging method have an internet connection.</p>
<p>In any case, this has given me something to think about. I&#8217;d love to see this usefulness in actual applications. With Twitter Lists now enabled, developers can have a whole bunch of logging accounts in a separate list if they don&#8217;t want their time line polluted with exceptions. But if they are worried about that, don&#8217;t write code that will throw exceptions. <img src='http://www.cmsimike.com/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://www.cmsimike.com/blog/2009/11/20/twitter-based-exception-logger/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>iPhone Development &#8211; Is It Really That Easy? (fin)</title>
		<link>http://www.cmsimike.com/blog/2009/08/17/iphone-development-is-it-really-that-easy-fin/</link>
		<comments>http://www.cmsimike.com/blog/2009/08/17/iphone-development-is-it-really-that-easy-fin/#comments</comments>
		<pubDate>Mon, 17 Aug 2009 22:04:46 +0000</pubDate>
		<dc:creator>Mike</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[apple]]></category>
		<category><![CDATA[development]]></category>
		<category><![CDATA[education]]></category>
		<category><![CDATA[experiment]]></category>
		<category><![CDATA[iphone]]></category>
		<category><![CDATA[iphone development experiment]]></category>
		<category><![CDATA[objective-c]]></category>
		<category><![CDATA[prototype]]></category>
		<category><![CDATA[rapid development]]></category>

		<guid isPermaLink="false">http://www.cmsimike.com/blog/?p=166</guid>
		<description><![CDATA[I guess I&#8217;ve lagged on completing this blog entry series for long enough.
Indeed I was able to complete my application in the time frame I set out for. The application itself worked pretty well. I know I could have made it a lot better if I were actually able to get the application onto my [...]]]></description>
			<content:encoded><![CDATA[<p>I guess I&#8217;ve lagged on completing this blog entry series for long enough.</p>
<p>Indeed I was able to complete my application in the time frame I set out for. The application itself worked pretty well. I know I could have made it a lot better if I were actually able to get the application onto my iPhone during the development phase or have the simulator use the iTunes library as the basis for its library. I am now debating whether or not I want to put the application up on Apple&#8217;s App Store.</p>
<p><span id="more-166"></span></p>
<p>My final conclusion regarding the iPhone SDK and Objective-C shouldn&#8217;t be surprising &#8211; yes the SDK made development simple. Other than the weird memory management of Objective-C, it too was also fairly easy to learn. But at the end of the day, a language is just a language. The SDK has to be fairly robust in order to attract developers as well as help with the interaction of the phone. I&#8217;d almost say it was a pleasure to develop for the iPhone, but I won&#8217;t. I won&#8217;t because due to Apple&#8217;s policies on how the app gets onto a phone (even if you want to use a development phone), made developing for it pretty rough. Development would have been much better if I didn&#8217;t have a media player aspect to my application, however it did and since the simulator cannot simulate playing media off an iPhone&#8217;s library and since there were a thousand hoops that needed to be jumped through in order to get the app on the phone itself, it just made everything much rougher than it should have been. One can argue that you really only have to jump through the hoops once, but even in this case, once is far too much. Allow applications to be easily put on your own iPhone, Apple. Why do I have to pay you $100/year for the privilege of getting applications that I write onto my own phone?</p>
<p>I&#8217;m so glad that it is easy to jailbreak iPhones. Any developer that wants to develop applications for personal use for the iPhone should just jailbreak their iPhone and upload it that way. Don&#8217;t pay Apple money for something as asinine as this.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.cmsimike.com/blog/2009/08/17/iphone-development-is-it-really-that-easy-fin/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>iPhone Development &#8211; Is It Really That Easy? (part 4)</title>
		<link>http://www.cmsimike.com/blog/2009/07/18/iphone-development-is-it-really-that-easy-part-4/</link>
		<comments>http://www.cmsimike.com/blog/2009/07/18/iphone-development-is-it-really-that-easy-part-4/#comments</comments>
		<pubDate>Sun, 19 Jul 2009 04:08:12 +0000</pubDate>
		<dc:creator>Mike</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[apple]]></category>
		<category><![CDATA[development]]></category>
		<category><![CDATA[education]]></category>
		<category><![CDATA[experiment]]></category>
		<category><![CDATA[iphone]]></category>
		<category><![CDATA[iphone development experiment]]></category>
		<category><![CDATA[objective-c]]></category>
		<category><![CDATA[prototype]]></category>
		<category><![CDATA[rapid development]]></category>

		<guid isPermaLink="false">http://www.cmsimike.com/blog/?p=155</guid>
		<description><![CDATA[I didn&#8217;t post yesterday mainly because I knew I wasn&#8217;t going to be doing any development last night. I needed to take a night off, so this post is about what I did two nights ago.
A couple of nights ago I decided that I should just start with my application and learn as I go. [...]]]></description>
			<content:encoded><![CDATA[<p>I didn&#8217;t post yesterday mainly because I knew I wasn&#8217;t going to be doing any development last night. I needed to take a night off, so this post is about what I did two nights ago.</p>
<p>A couple of nights ago I decided that I should just start with my application and learn as I go. This actually turned out to be a pretty good idea. I didn&#8217;t have much time code at full stream, so I took the opportunity and what little time I had to set up the bare bones application, and by that I mean take what I learned in the &#8220;Hello, World&#8221; iPhone development example. I set up the buttons and label using Interface Builder as well as all the code that links up to the buttons and label.</p>
<p>There are two main parts left in my application: firing events and music control. Firing events I am working on right now which seems to be pretty straight forward. To be honest, if I wasn&#8217;t goofing around using NSLog I would probably be done with it right now. I am watching Star Wars as I code so my attention is split pretty evenly between the two.</p>
<p>Sunday, once I finish with some family time, I will get into the bulk of the music player. Thankfully I started this project after iPhone software 3.0 was released because, as it seems, controlling/playing music was not available to developers in earlier versions.</p>
<p>Wat?</p>
<p>Not sure how Apple could have thought that was a good idea. At least they saw the errors of their ways.</p>
<p>Thoughts so far: this is much easier than I had anticipated. Also setting up a new iPhone application from scratch and using Interface Builder is much easier the second time around.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.cmsimike.com/blog/2009/07/18/iphone-development-is-it-really-that-easy-part-4/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>iPhone Development &#8211; Is It Really That Easy? (part 3)</title>
		<link>http://www.cmsimike.com/blog/2009/07/15/iphone-development-is-it-really-that-easy-part-3/</link>
		<comments>http://www.cmsimike.com/blog/2009/07/15/iphone-development-is-it-really-that-easy-part-3/#comments</comments>
		<pubDate>Thu, 16 Jul 2009 01:03:54 +0000</pubDate>
		<dc:creator>Mike</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[apple]]></category>
		<category><![CDATA[development]]></category>
		<category><![CDATA[education]]></category>
		<category><![CDATA[experiment]]></category>
		<category><![CDATA[iphone]]></category>
		<category><![CDATA[iphone development experiment]]></category>
		<category><![CDATA[objective-c]]></category>
		<category><![CDATA[prototype]]></category>
		<category><![CDATA[rapid development]]></category>

		<guid isPermaLink="false">http://www.cmsimike.com/blog/?p=151</guid>
		<description><![CDATA[Having completed Apple&#8217;s Hello World tutorial application, I feel like the application I want to write will not be that hard to do. I just wish that I had more time to actually learn the language and SDK in its entirety before jumping into it. After running through the demo application, I think that the [...]]]></description>
			<content:encoded><![CDATA[<p>Having completed Apple&#8217;s Hello World tutorial application, I feel like the application I want to write will not be that hard to do. I just wish that I had more time to actually learn the language and SDK in its entirety before jumping into it. After running through the demo application, I think that the application that I want to write will be pretty easy to do using the language, but alas &#8220;easy to do&#8221; means nothing without fully knowing your tool set. But I guess that is the bulk of this experiment; can this application get done in such a short amount of time with very little prior knowledge?</p>
<p><span id="more-151"></span>Thoughts so far: Why did Apple take the idea of Visual Basic&#8217;s interface builder and seemingly make it more complicated to use? And really, a <a href="http://en.wikipedia.org/wiki/Interface_Builder" target="_blank">NIB file</a> (read about it)? Also, development without a mouse or a second monitor is barbaric. I think that the hardest part of this experiment is living without a second monitor or mouse. Sadly due to the way my environment is set up at home, a second monitor or mouse is not easy to use with a laptop.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.cmsimike.com/blog/2009/07/15/iphone-development-is-it-really-that-easy-part-3/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>iPhone Development &#8211; Is It Really That Easy? (part 2)</title>
		<link>http://www.cmsimike.com/blog/2009/07/14/iphone-development-is-it-really-that-easy-part-2/</link>
		<comments>http://www.cmsimike.com/blog/2009/07/14/iphone-development-is-it-really-that-easy-part-2/#comments</comments>
		<pubDate>Tue, 14 Jul 2009 23:44:53 +0000</pubDate>
		<dc:creator>Mike</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[apple]]></category>
		<category><![CDATA[development]]></category>
		<category><![CDATA[education]]></category>
		<category><![CDATA[experiment]]></category>
		<category><![CDATA[iphone]]></category>
		<category><![CDATA[iphone development experiment]]></category>
		<category><![CDATA[objective-c]]></category>
		<category><![CDATA[prototype]]></category>
		<category><![CDATA[rapid development]]></category>

		<guid isPermaLink="false">http://www.cmsimike.com/blog/?p=148</guid>
		<description><![CDATA[Yesterday, I began the (about) 10 day long experiment to see if I could  learn about the iPhone development process then actually write something useful. Though I haven&#8217;t written anything, I thought it would be important to at least get familiar with the language itself, Objective-C. I saw down with Apple&#8217;s Objective-C primer and [...]]]></description>
			<content:encoded><![CDATA[<p>Yesterday, I began the (about) 10 day long experiment to see if I could  learn about the iPhone development process then actually write something useful. Though I haven&#8217;t written anything, I thought it would be important to at least get familiar with the language itself, Objective-C. I saw down with Apple&#8217;s Objective-C primer and read through it. Though rather short, it did provide quite a bit of detail regarding the language syntax and semantics. Thankfully it no longer is totally foreign to me, but as I thought I still think the syntax is pretty hideous.</p>
<p><span id="more-148"></span></p>
<p>Tonight&#8217;s main objective is to get through the &#8220;Hello, World!&#8221; iPhone application and write that out long with the example and go through the demo application that kind of has to do with what I want to do with the application that I am writing. If there is time, I&#8217;d like to start the application tonight. I don&#8217;t think that will happen though, not because I am lazy, but looking up unknown Objective-C and iPhone API references will probably take a while. Getting familiar with Xcode also will be a hassle, I believe.</p>
<p>Thoughts so far: Why would anyone go to such far lengths to push their language onto everyone?</p>
<p>Note: If I get about half way into this and it is looking to be somewhat impossible, I will be switching gears and rewriting the application in another language, not because I am going to give up on iPhone development (unless what I want to do proves impossible due to Apple&#8217;s limitations on the iPhone SDK) but more so because I want this working application for a trip I am going on next Thursday (2009-07-23). I would continue with this application once I get back.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.cmsimike.com/blog/2009/07/14/iphone-development-is-it-really-that-easy-part-2/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>iPhone Development &#8211; Is It Really That Easy?</title>
		<link>http://www.cmsimike.com/blog/2009/07/13/iphone-development-is-it-really-that-easy/</link>
		<comments>http://www.cmsimike.com/blog/2009/07/13/iphone-development-is-it-really-that-easy/#comments</comments>
		<pubDate>Mon, 13 Jul 2009 23:27:54 +0000</pubDate>
		<dc:creator>Mike</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[apple]]></category>
		<category><![CDATA[development]]></category>
		<category><![CDATA[education]]></category>
		<category><![CDATA[experiment]]></category>
		<category><![CDATA[iphone]]></category>
		<category><![CDATA[iphone development experiment]]></category>
		<category><![CDATA[objective-c]]></category>
		<category><![CDATA[prototype]]></category>
		<category><![CDATA[rapid development]]></category>

		<guid isPermaLink="false">http://www.cmsimike.com/blog/?p=146</guid>
		<description><![CDATA[I&#8217;ve managed to avoid this dirty topic, however I shouldn&#8217;t any longer since I am going to begin on an experiment. How easy can it possibly be to make an iPhone application? Can a simple one be created in about 10 days time? Most would say &#8220;Yes,&#8221; however I have no prior experience with Objective-C, [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve managed to avoid this dirty topic, however I shouldn&#8217;t any longer since I am going to begin on an experiment. How easy can it possibly be to make an iPhone application? Can a simple one be created in about 10 days time? Most would say &#8220;Yes,&#8221; however I have no prior experience with <a href="http://en.wikipedia.org/wiki/Objective-C" target="_blank">Objective-C</a>, let alone the <a href="http://developer.apple.com/iphone/index.action" target="_blank">iPhone SDK</a>, or <a href="http://developer.apple.com/tools/xcode/index.html" target="_blank">Xcode</a>. With all these unknowns, can sufficient knowledge be picked up and put to use to write a rather trivial application for the iPhone?</p>
<p><span id="more-146"></span>I am not really sure on how much detail I can get into without breaking Apple&#8217;s NDA (yes I should figure that out) but I estimate a prototype application to be written in a language that I already know in about 6-10 hours time. Since I will only have about 3-5 hours a night to sit down, learn Objective-C and the iPhone SDK, then apply everything I know I am actually pretty curious myself to see how this goes.</p>
<p>From this <a href="http://www.apple.com/pr/library/2008/06/09iphone_sdk.html" target="_blank">Apple press release</a>:</p>
<blockquote><p>“The SDK allowed us to build a groundbreaking new AIM client in record time,” said Kevin Conroy, executive vice president, AOL. “The platform’s elegance and ease of use has inspired our developers to create innovative new web and SDK based experiences for iPhone and iPod touch.”</p></blockquote>
<p>I can&#8217;t help but think what I want to do is simple and can be done in the allotted time. I think it is going to be pretty interesting getting over my own preconceived notions on Objective-C. That will probably be my first real order of business beyond sitting down with some &#8220;Learn Objective-C basics&#8221; webpages.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.cmsimike.com/blog/2009/07/13/iphone-development-is-it-really-that-easy/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Moving a Family to Ubuntu &#8211; Part 2</title>
		<link>http://www.cmsimike.com/blog/2008/05/05/moving-a-family-to-ubuntu-part-2/</link>
		<comments>http://www.cmsimike.com/blog/2008/05/05/moving-a-family-to-ubuntu-part-2/#comments</comments>
		<pubDate>Mon, 05 May 2008 18:10:45 +0000</pubDate>
		<dc:creator>Mike</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[experiment]]></category>
		<category><![CDATA[switch]]></category>
		<category><![CDATA[switch to linux]]></category>
		<category><![CDATA[ubuntu]]></category>
		<category><![CDATA[windows]]></category>

		<guid isPermaLink="false">http://www.cmsimike.com/blog/?p=31</guid>
		<description><![CDATA[This is part 2 of my quest to convert my family&#8217;s PC from Windows to Ubuntu. If you missed the first part, please read it here. I thought that converting my family to an Ubuntu-based PC would be pretty painful, and to be honest, I thought I was going to have to reformat and install [...]]]></description>
			<content:encoded><![CDATA[<p>This is part 2 of my quest to convert my family&#8217;s PC from Windows to Ubuntu. If you missed the first part, please read it <a title="Moving a Famile to Ubuntu - Part 1" href="http://www.cmsimike.com/blog/2008/04/23/moving-a-family-to-ubuntu-part-1/" target="_blank">here</a>. I thought that converting my family to an Ubuntu-based PC would be pretty painful, and to be honest, I thought I was going to have to reformat and install Windows. Luckily, so far it has not been the case.</p>
<p><span id="more-31"></span></p>
<h5>The Install</h5>
<p>So I finally sat down with my family&#8217;s computer and began the install of Ubuntu 8.04. Needless to say, the install was very painless. The laptop is a Acer Aspire 5000. Nothing too fancy. Once all was said and done, the computer rebooted without a hitch.</p>
<h5>The Hitch</h5>
<p>Once the installation was done, I began my test of the system to see what works and what needs more work. Everything looked good, other than the wireless adapter. According to <a title="man lspci" href="http://linux.die.net/man/8/lspci" target="_blank">lspci</a>, the wireless adapter is a Broadcom Corporation BCM4318 [AirForce One 54g] 802.11g Wireless LAN Controller (rev 02). It <em>seemed</em> like it was working, but it would not display any wireless networks around. Going into the Restricted Drivers Manager, I saw that was a firmware/driver for it. So I downloaded that, installed it and restarted. Through some more futzing around with the wireless network menu, I got nothing. I decided to click the &#8220;wireless disable&#8221; button on the machine (tangent: these wireless disable buttons on laptops are totally worthless). All the time I thought the wireless adapter was on since the orange light was on (this meant it was active in windows). Apparently that was not the case in Ubuntu. Luckily enough everything worked smoothly after that. I don&#8217;t feel that this network card is well supported under Linux (at least, Ubuntu). It seems to cut in and out sometimes.</p>
<h5>The Configuration</h5>
<p>Using the list that my little cousin made for me, I made a quick pass one by one trying to set everything up the best I could. Went to YouTube.com and installed the Adobe Flash Player for Linux (thankfully this works well). Went to Miniclip.com however noticed that Shockwave Flash games didn&#8217;t work. After some quick googling around, I didn&#8217;t find any real answer in dealing with this, so this is one thing he will have to live without. Using Totem, I had to install the codex that are required to play WMVs and ASFs since his school requires children watch these science videos that are on a CD which are in these formats. Thought about installing gtkpod, but decided against it since I just wanted to get the computer up and running for schoolwork first and foremost.</p>
<p>Next I hit up the Skype website for a Linux version of it&#8217;s VoIP client. Thankfully there was a <a title="Skype Linux Installation packages" href="http://www.skype.com/download/skype/linux/choose/">Debian software install package</a> ready to be downloaded, however it was dependent on three other packages available in the default repositories. Even if you try to install Skype without the dependencies installed, you will get a clear message telling you exactly which packages you need. God I love apt.</p>
<p>Once I was satisfied that I installed everything that would be required, I installed openssh-server on the laptop. This was done so that when I get the VPN host set up on my router, I could then ssh into their machine and try to solve any problem remotely before having to drive over.</p>
<h5>The Education</h5>
<p>Now trying to teach a 10 year old with no concept of anything dealing with a computer or his father why certain applications will no longer will run with Ubuntu installed is a long, hard fought battle. But I thought I got the concept into their brain (spoiler: no I didn&#8217;t).</p>
<p>So I sat with my little cousin and gave him the tour. No more Start button on the bottom left,  the upper left icon has all the applications no. MSN Messenger was replace with Pidgin. Skype is still Skype. Microsoft Word is replaced by OpenOffice.org Writer. Windows Media Player is replace with Totem. I tried to explain why some games will no longer work. Also I told him not to worry about his iPod for now, we would deal with it later. So I sat him down with his new install and I went off to eat. I asked him to play around with it to try to see if he is missing anything.</p>
<p>Now onto the father. All he really wanted was PartyPoker. A quick glance at their site revealed that there is no Linux client. Sad. However! There seems to be a browser-based client for it. So I got this set up for him and quickly gave him an overview about it (from what little I used it). Both father and son looked pleased so I decided to quit for the night.</p>
<h5>The Problems</h5>
<p>A few days after leaving my family to their new computer, I got the first phone call with a problem. The wireless connection died and wouldn&#8217;t come back up. (Side note: it is always hard to diagnose problems with other people&#8217;s computers. They say they did nothing, when in actuality they did something, intentionally or not) Either way it wasn&#8217;t working. I had to drive over to their house only to figure out that all I had to do is press that wireless button. Why? I don&#8217;t know. But there really REALLY should be a way to bypass that thing. Do I have enough evidence to blame Ubuntu and the way it handles wireless? Nope, thankfully.</p>
<p>Another problem that came up is that the father didn&#8217;t want to use the in-browser version of PartyPoker to play, citing missing sounds and such. I GUESS I understand, so I tried installing Wine from the repositories and installing PartyPoker that way, however the game was, more or less, unplayable. For now I put him back on the in browser version. If it becomes a huge problem, I have decided that I will be installing Windows in a VirtualBox just for PartyPoker. An extreme waste of resources, I know. But what are you going to do?</p>
<p>Two nights ago, I was informed that while booting up the computer, the boot up process dropped itself into a root shell and said the fsck failed to run. The message was to try to run fsck manually. Well trying to talk to my little cousin over the phone to run it didn&#8217;t work. By the time I got the computer into my position, the problem seemed to have gone away. I have absolutely NO idea how this could have happened. It seems like something Ubuntu could do a little better. [Update on this: turns out the hard drive was screwed up. So I can't really blame Ubuntu for this. No matter what operating system a user has installed, broken hardware will ultimately lead to headaches for a novice.]</p>
<h5>The Remainder</h5>
<p>At this point, the only thing really left is setting up the VPN server locally, then setting up the VPN client on my family&#8217;s computer. I&#8217;ve set up gtkpod and tried it out with my little cousin, and it seems to work well. It is a simple drag and drop interface, however in the quick 5 minutes of use, I found no easy way to import a cd. I guess I will have to use an external program to rip a CD into mp3s, then have my cousin drag and drop the files into his iPod.</p>
<h5>The Conclusion</h5>
<p>Has Ubuntu made it to the point that it can start replacing Windows as a desktop operating system? As an operating system, it comes pretty well stocked. The base install of Ubuntu gives any regular user enough tools to do everything they need to do. Email? Boom! Evolution. Web browsing? Boom! Firefox. Word processing? BOOM! OpenOffice.org Writer. IM client? BOOM!!!! Pidgin. There is just such a wealth of applications ready for consumption, that an average user would rarely need to install anything else. The problem is the same problem for anything that is new, and that is the user is basically thrown into the deep end of the pool without warning where even the most simple tasks become pretty daunting, not because it is difficult to accomplish, but it could be as simple as the naming of the applications are different. Along the same lines of my experiment with my family, <a title="The Great Ubuntu-Girlfriend Experiment" href="http://contentconsumer.wordpress.com/2008/04/27/is-ubuntu-useable-enough-for-my-girlfriend/" target="_blank">The Great Ubuntu-Girlfriend Experiment</a> was conducted and much of the same results/problems followed. However, I do believe that with anything in life, jumping into something will always take time. Yes it would be nice to have a primer when you log into an account for the first time. Yes it would be nice to have an option for a tutorial on switching from Windows to Ubuntu. But the most important lesson for any new Ubuntu user to learn is that there is a wealth of information available on the internet. Someone should redo the Great Ubuntu-xxxx (where xxxx is any user who only uses windows) Experiment and give the option of using Google to look for answers. Although knowledge of one operating system rarely transcends from one to another, the concepts should be simple enough to carry on such that you know can generally can do what you want, it is just a matter of finding out what applications replaces what.</p>
<p>The only thing really missing is support from companies. Start open sourcing your applications, or at least release Linux clients. With Windows users making the switch to an Ubuntu desktop, it makes no sense that there is no Linux version of your application (I&#8217;m looking at you, PartyPoker). And no, the web-based Client is not enough. Simple things like sound don&#8217;t seem to work. Kudos, however, deserve to go to <a title="Open Screen Project" href="http://www.adobe.com/openscreenproject/" target="_blank">Adobe for open sourcing some of their products</a>.</p>
<h5>The Conclusion (From the Family View)</h5>
<p>After about a week of using the Ubuntu, the only problems my family has run into is with proprietary software/codecs missing with no Linux replacement available. For instance some WMVs/ASFs play the video but not the sound, or don&#8217;t play at all, even after installing the Codec package Totem recommended. Also there is also the problem of PartyPoker not having a native Linux installer and the application failing miserably with Wine.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.cmsimike.com/blog/2008/05/05/moving-a-family-to-ubuntu-part-2/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Moving a Family to Ubuntu &#8211; Part 1</title>
		<link>http://www.cmsimike.com/blog/2008/04/23/moving-a-family-to-ubuntu-part-1/</link>
		<comments>http://www.cmsimike.com/blog/2008/04/23/moving-a-family-to-ubuntu-part-1/#comments</comments>
		<pubDate>Thu, 24 Apr 2008 02:24:04 +0000</pubDate>
		<dc:creator>Mike</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[experiment]]></category>
		<category><![CDATA[switch]]></category>
		<category><![CDATA[switch to linux]]></category>
		<category><![CDATA[ubuntu]]></category>
		<category><![CDATA[windows]]></category>

		<guid isPermaLink="false">http://www.xekm.com/blog/?p=30</guid>
		<description><![CDATA[The Back Story
Since I am the token computer scientist of my family, of course everyone comes to me for all their computer problems, which most of the time is due to spyware/malware. It happens. I get it, despite my best efforts it happens. I tell them to use Firefox, someone slips up and uses Internet [...]]]></description>
			<content:encoded><![CDATA[<h5>The Back Story</h5>
<p>Since I am the token computer scientist of my family, of course everyone comes to me for all their computer problems, which most of the time is due to spyware/malware. It happens. I get it, despite my best efforts it happens. I tell them to use Firefox, someone slips up and uses Internet Explorer the one day they go to a bad site. Even if they use Firefox, someone downloads something and runs it there-by borking (technical term) their system. Files get deleted, changed, what have you. Things just go wrong. Yes it is ultimately the user&#8217;s fault, however I do believe the operating system takes some of the blame for allowing things like this to be done in the first place. Well it has come to that time again for format another laptop and reinstall everything. Fine. I don&#8217;t mind it at all. They are family. However I am not going to just reinstall Windows again. It is time for an experiment. This time I am going to install <a title="Ubuntu 8.04 Hardy Heron" href="http://www.ubuntu.com/" target="_blank">Ubuntu 8.04</a>.</p>
<p><span id="more-28"></span></p>
<p>Here&#8217;s the experiment: take a family that has been using a Windows-based computer for about two years and no real affinity for how things are done and throw them into the world of safe computing with Ubuntu. Can it work? Has Ubuntu finally gotten to a point of maturity where anyone can start using it comfortably? Drivers won&#8217;t be an issue other than the first initial install since nothing will be upgraded on the laptop. And here&#8217;s to hoping that Ubuntu picks everything up from the get-go. The only important thing is the wireless adapter which Ubuntu 7.10 (on a live cd) picked up. The video card is some on board trashy one so that really is a non-issue.</p>
<h5>The Preparation</h5>
<p>I asked my little cousin to write down a list of things he and his father do on the computer. His father doesn&#8217;t do anything more than check his web-based email, and play PartyPoker (both can be done within the browser), so that is taken care of. However my cousin, being (of this writing) 10 years old, is the more technical one in his family and by that, I mean uses the computer the most and can figure out what to do when I tell him things over the phone. He plays his flash-based games, and thankfully there is a decent Flash plug-in, school work which Open Office can take care of and load up his Ipod which I guess (but I&#8217;ve never used) <a title="gtkpod" href="http://www.gtkpod.org/" target="_blank">gtkpod</a> takes care of.  I have yet to check the list myself, but I don&#8217;t foresee it being a huge problem. If worse comes to worse, <a title="Wine" href="http://www.winehq.org/" target="_blank">Wine</a> is at a fairly mature level and will suffice. But lets not jump the gun yet.</p>
<p>The list will be what I base my install and configuration on. I hope to get everything set up on Thursday (2008-04-24) night since that is the release day of Ubuntu 8.04 with LTS. Then give it back this weekend and spend a few hours helping everyone get accustomed to the new operating system. If all goes well, I shouldn&#8217;t need to touch their computer again for at least 3 years. But we&#8217;ll see.</p>
<p>One thing I would love set up is a VPN solution so that if need be, I can ssh into the computer over the vpn. Unless their internet goes down, I should never really need to leave my house to solve their problems. I have <a title="OpenWRT - Wireless Freedom" href="http://openwrt.org/" target="_blank">OpenWRT</a> installed on my Linksys WRT54GL so it would be nice to be able to take leverage that of that and the vpn to accomplish this.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.cmsimike.com/blog/2008/04/23/moving-a-family-to-ubuntu-part-1/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>

