<?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/"
	xmlns:georss="http://www.georss.org/georss" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:media="http://search.yahoo.com/mrss/"
	>

<channel>
	<title>CaptainRichard&#039;s Blog</title>
	<atom:link href="http://captainrichard.wordpress.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://captainrichard.wordpress.com</link>
	<description>All the random (mis)adventures that are fit to print!</description>
	<lastBuildDate>Sun, 29 Jan 2012 15:49:46 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.com/</generator>
<cloud domain='captainrichard.wordpress.com' port='80' path='/?rsscloud=notify' registerProcedure='' protocol='http-post' />
<image>
		<url>http://s2.wp.com/i/buttonw-com.png</url>
		<title>CaptainRichard&#039;s Blog</title>
		<link>http://captainrichard.wordpress.com</link>
	</image>
	<atom:link rel="search" type="application/opensearchdescription+xml" href="http://captainrichard.wordpress.com/osd.xml" title="CaptainRichard&#039;s Blog" />
	<atom:link rel='hub' href='http://captainrichard.wordpress.com/?pushpress=hub'/>
		<item>
		<title>My TiVo Elegy, Part 2</title>
		<link>http://captainrichard.wordpress.com/2010/11/30/my-tivo-elegy-part-2/</link>
		<comments>http://captainrichard.wordpress.com/2010/11/30/my-tivo-elegy-part-2/#comments</comments>
		<pubDate>Tue, 30 Nov 2010 05:41:02 +0000</pubDate>
		<dc:creator>Richard</dc:creator>
				<category><![CDATA[rants]]></category>

		<guid isPermaLink="false">http://captainrichard.wordpress.com/?p=418</guid>
		<description><![CDATA[So TiVo is officially on my shit list now. I was all excited when I noticed that Amazon.com had Premieres available for under $100, since that&#8217;s about what the box is worth in my estimation, given the lack of new &#8230; <a href="http://captainrichard.wordpress.com/2010/11/30/my-tivo-elegy-part-2/">Continue reading <span class="meta-nav">&#8594;</span></a><img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=captainrichard.wordpress.com&amp;blog=9185794&amp;post=418&amp;subd=captainrichard&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>So TiVo is officially on my shit list now. I was all excited when I noticed that Amazon.com had Premieres available for under $100, since that&#8217;s about what the box is worth in my estimation, given the lack of new features I actually care about and all the problems it still has. Then I noticed the fine print that says they jack up the monthly fee if you buy the box at a lower price.</p>
<p>Seriously TiVo, WTF?!? You <strong>do</strong> realize you&#8217;re completely screwing yourselves over here, right? Your most valuable assets aren&#8217;t your hardware or your software; they&#8217;re your <strong>relationships</strong> with your <strong>customers</strong>. Even the most die-hard TiVo fans like yours truly are now souring on you because of what you&#8217;ve done and what you&#8217;re continuing to do.</p>
<p>The Premiere is a dud. Period. You know this. But instead of just admitting it and saying, &#8220;Yeah, we fucked up and we know it, but please stay with us. We promise to make this right,&#8221; instead, you&#8217;ve tried to argue that the Premiere is what everyone was hoping it would be. It&#8217;s not, and it won&#8217;t be for a <span style="text-decoration:underline;">very</span> long time, maybe not ever. And now that people have seen through the advertisements, the spin, and the hype, and recognize this fact, nobody&#8217;s biting. Your underhanded sales tactics are just another insult to your customers.</p>
<p>The TiVo that I knew and loved is quite clearly gone. I hope it&#8217;ll come back at some point in the future, but until then, I can&#8217;t buy another TiVo, nor can I recommend doing so to anyone else in good conscience. Here&#8217;s to hoping the company will be under new management soon&#8230; management that&#8217;s actually competent.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/captainrichard.wordpress.com/418/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/captainrichard.wordpress.com/418/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/captainrichard.wordpress.com/418/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/captainrichard.wordpress.com/418/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/captainrichard.wordpress.com/418/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/captainrichard.wordpress.com/418/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/captainrichard.wordpress.com/418/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/captainrichard.wordpress.com/418/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/captainrichard.wordpress.com/418/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/captainrichard.wordpress.com/418/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/captainrichard.wordpress.com/418/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/captainrichard.wordpress.com/418/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/captainrichard.wordpress.com/418/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/captainrichard.wordpress.com/418/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=captainrichard.wordpress.com&amp;blog=9185794&amp;post=418&amp;subd=captainrichard&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://captainrichard.wordpress.com/2010/11/30/my-tivo-elegy-part-2/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/4a9ecb596a21b9b4662e0c87becd6029?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Richard</media:title>
		</media:content>
	</item>
		<item>
		<title>News Roundup</title>
		<link>http://captainrichard.wordpress.com/2010/10/18/news-roundup/</link>
		<comments>http://captainrichard.wordpress.com/2010/10/18/news-roundup/#comments</comments>
		<pubDate>Tue, 19 Oct 2010 02:38:36 +0000</pubDate>
		<dc:creator>Richard</dc:creator>
				<category><![CDATA[Epic fails]]></category>
		<category><![CDATA[IQP]]></category>
		<category><![CDATA[rants]]></category>

		<guid isPermaLink="false">http://captainrichard.wordpress.com/?p=415</guid>
		<description><![CDATA[Quick updates on a few things, then I have a rant to share. After much ado, I decided against upgrading my Series2 TiVo. I decided that the picture quality is good enough, so Series3/4 are not significant enough upgrades to &#8230; <a href="http://captainrichard.wordpress.com/2010/10/18/news-roundup/">Continue reading <span class="meta-nav">&#8594;</span></a><img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=captainrichard.wordpress.com&amp;blog=9185794&amp;post=415&amp;subd=captainrichard&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Quick updates on a few things, then I have a rant to share.</p>
<ul>
<li>After much ado, I decided against upgrading my Series2 TiVo. I decided that the picture quality is good enough, so Series3/4 are not significant enough upgrades to justify the expense.</li>
<li>The IQP is officially over. Now I get to deal with BS/MS paperwork instead.</li>
<li>My &#8220;Content Fail&#8221; post was itself a fail, mostly because I talked about the MQP blog and then utterly failed to provide a link to it. You can find it <a href="http://gfp1004.wordpress.com" target="_blank">here</a>.</li>
</ul>
<p>Now, on to the rant. Our story begins about two weeks ago. WPI&#8217;s chapter of Upsilon Pi Epsilon, the Computer Science honor society, holds an event at the end of each term called &#8220;Burning the Midnight Oil&#8221;. Basically, the idea is that CS students who are having trouble finishing projects or studying for exams can come pick our honorable brains for a few hours. We scheduled the event for Sunday, October 10th, from 8PM to midnight. There was just one problem: where to hold it.</p>
<p>Previously, the event had been held in the ADP Lab, located on the basement level of Fuller Labs. This summer, the ADP Lab was eliminated. All of the computers that were located there were moved, along with the CCC Helpdesk, to entrance floor of the Gordon Library.</p>
<p>So, since we couldn&#8217;t hold the event in the non-existent ADP Lab, we tried to move it to the IMGD Lab. This attempt was quickly rebuffed by The Powers That Be, who deemed that the IMGD Lab would already be very busy and adding more students would be counterproductive. That, and the fact that the IMGD Lab is card-access controlled, and only IMGD majors have access to it.</p>
<p>Not to be deterred, we then tried to secure the use of the TA Lab, located in the Fuller sub-basement. We were quickly rebuffed here as well, as the staff of various CS courses had already reserved it.</p>
<p>Giving up on securing an actual lab, we ended up holding the event in Fuller&#8217;s third floor lounge, using laptops rented from the ATC. Suffice it to say that this was less than optimal. Between WPI&#8217;s dodgy WiFi and the lack of comfortably elevated surfaces to put the laptops on, getting any work done was next to impossible. (Although this may also have had something to do with the spontaneous decision to watch <em>Serenity</em> around 10:30.)</p>
<p>Kara, our chapter&#8217;s president, expressed frustration with this situation, as did everyone else at the event. We all agreed that it&#8217;s utterly ridiculous that the <em>CS department building <strong>no longer has a lab</strong> that CS majors can actually use</em>!</p>
<p>It&#8217;s absurd, but true. All the other computer labs in Fuller fall into one of two categories: either they&#8217;re restricted to students in another major (like the IMGD Lab) or they&#8217;re special-purpose labs restricted to specific courses or research areas (like the Fossil Lab).</p>
<p>This has caused me some additional headaches since then. This past Monday, for instance, my MQP team was supposed to have its regularly scheduled meeting with our advisor, Professor Pollice, at 11AM. I got to his office, located in the Fuller basement almost directly across from where the ADP Lab used to be, a few minutes early, only to find that it was closed, locked, and apparently empty. So was the meeting cancelled? I figured I had better check my e-mail.</p>
<p>Well, as a habit, I don&#8217;t usually bring my phone with me to campus, so I needed to find a computer lab. Since Fuller no longer has any labs I can use, I had to walk back up three flights of stairs and walk across to Salisbury Labs to use one of the computers in the ground-floor lab there.</p>
<p>Am I the only one who sees something wrong with this picture?</p>
<p>It&#8217;s not like the ADP Lab was unused either. Far from it, in fact. There were always people in there every time I went to use it. Project teams used it regularly, as it was one of the few good substitutes for the heavily-used, but for some reason, incredibly low in number tech suites.</p>
<p>The biggest problem created by the lack of a CS lab in the CS building, however, is that it kills social relations within the department. When the ADP Lab was around, I would often run into lots of other CS students I knew, even if we didn&#8217;t have any classes in common that term, and we would swap stories and help solve each others&#8217; problems. Now that it&#8217;s gone, CS students really have nowhere to congregate. It seems a little strange to be feeling all nostalgic when the &#8220;good old days&#8221; weren&#8217;t even a year ago, but here we are.</p>
<p>So we&#8217;ve decided it&#8217;s going to be UPE&#8217;s mission this year to get a CS lab in the CS building. Over break, or early in B term, I&#8217;m going to write an opinion article for The Towers, our campus newspaper (which has surprisingly high readership for a print publication in this day and age) and coordinate publishing it with the release of a petition on the issue. I&#8217;m confident such a petition will garner many signatures. Other students I&#8217;ve talked to about this have had responses ranging from &#8220;I&#8217;m mad about that too&#8221; to &#8220;You&#8217;re not the only one who&#8217;s mad about that.&#8221;</p>
<p>I think we&#8217;ve got a good argument, but it all depends on The Powers That Be and whether they actually give a damn about us or if we&#8217;re just $40,000 a year checks to them. We&#8217;ll soon find out.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/captainrichard.wordpress.com/415/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/captainrichard.wordpress.com/415/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/captainrichard.wordpress.com/415/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/captainrichard.wordpress.com/415/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/captainrichard.wordpress.com/415/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/captainrichard.wordpress.com/415/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/captainrichard.wordpress.com/415/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/captainrichard.wordpress.com/415/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/captainrichard.wordpress.com/415/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/captainrichard.wordpress.com/415/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/captainrichard.wordpress.com/415/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/captainrichard.wordpress.com/415/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/captainrichard.wordpress.com/415/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/captainrichard.wordpress.com/415/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=captainrichard.wordpress.com&amp;blog=9185794&amp;post=415&amp;subd=captainrichard&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://captainrichard.wordpress.com/2010/10/18/news-roundup/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/4a9ecb596a21b9b4662e0c87becd6029?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Richard</media:title>
		</media:content>
	</item>
		<item>
		<title>Content Fail</title>
		<link>http://captainrichard.wordpress.com/2010/09/15/content-fail/</link>
		<comments>http://captainrichard.wordpress.com/2010/09/15/content-fail/#comments</comments>
		<pubDate>Wed, 15 Sep 2010 18:01:34 +0000</pubDate>
		<dc:creator>Richard</dc:creator>
				<category><![CDATA[Epic fails]]></category>
		<category><![CDATA[IQP]]></category>

		<guid isPermaLink="false">http://captainrichard.wordpress.com/?p=412</guid>
		<description><![CDATA[Not that anybody cares, because nobody reads this, but&#8230; I dunno, maybe the spiders that occasionally crawl my site will be interested. You may have noticed that I haven&#8217;t been posting, well, anything, despite the fact that we&#8217;re now three weeks &#8230; <a href="http://captainrichard.wordpress.com/2010/09/15/content-fail/">Continue reading <span class="meta-nav">&#8594;</span></a><img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=captainrichard.wordpress.com&amp;blog=9185794&amp;post=412&amp;subd=captainrichard&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Not that anybody cares, because nobody reads this, but&#8230; I dunno, maybe the spiders that occasionally crawl my site will be interested. You may have noticed that I haven&#8217;t been posting, well, <strong>anything</strong>, despite the fact that we&#8217;re now three weeks into A term. That&#8217;s because I&#8217;m sharing another blog with two teammates for my MQP. Don&#8217;t expect to see me posting a lot of stuff here for the forseeable future. But I am planning to post here at least once every few weeks, and on the MQP blog a couple times a week.</p>
<p>In other news, the IQP is almost officially over. After much ado, Matt and I managed to register for a 1/6 credit for this term. The Registrar&#8217;s office was a little mad though&#8230; in a content fail of their own, they missed updating a few copies of the IQP registration form on their site, and we ended up using an old version. Fortunately, they took the forms anyway, so this post doesn&#8217;t qualify for the Rants category.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/captainrichard.wordpress.com/412/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/captainrichard.wordpress.com/412/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/captainrichard.wordpress.com/412/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/captainrichard.wordpress.com/412/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/captainrichard.wordpress.com/412/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/captainrichard.wordpress.com/412/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/captainrichard.wordpress.com/412/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/captainrichard.wordpress.com/412/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/captainrichard.wordpress.com/412/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/captainrichard.wordpress.com/412/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/captainrichard.wordpress.com/412/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/captainrichard.wordpress.com/412/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/captainrichard.wordpress.com/412/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/captainrichard.wordpress.com/412/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=captainrichard.wordpress.com&amp;blog=9185794&amp;post=412&amp;subd=captainrichard&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://captainrichard.wordpress.com/2010/09/15/content-fail/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/4a9ecb596a21b9b4662e0c87becd6029?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Richard</media:title>
		</media:content>
	</item>
		<item>
		<title>An Update on the Adobe Boycott</title>
		<link>http://captainrichard.wordpress.com/2010/08/23/an-update-on-the-adobe-boycott/</link>
		<comments>http://captainrichard.wordpress.com/2010/08/23/an-update-on-the-adobe-boycott/#comments</comments>
		<pubDate>Mon, 23 Aug 2010 20:26:48 +0000</pubDate>
		<dc:creator>Richard</dc:creator>
				<category><![CDATA[Home]]></category>

		<guid isPermaLink="false">http://captainrichard.wordpress.com/?p=407</guid>
		<description><![CDATA[A while back, I posted that I was going to start an Adobe boycott because of what a huge epic fail Adobe is. My goal was to eliminate all Adobe software from my computers. So, was I successful? Unfortunately, no. &#8230; <a href="http://captainrichard.wordpress.com/2010/08/23/an-update-on-the-adobe-boycott/">Continue reading <span class="meta-nav">&#8594;</span></a><img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=captainrichard.wordpress.com&amp;blog=9185794&amp;post=407&amp;subd=captainrichard&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>A while back, I posted that I was going to start an Adobe boycott because of what a huge epic fail Adobe is. My goal was to eliminate all Adobe software from my computers. So, was I successful?</p>
<p>Unfortunately, no.</p>
<p>At the start, I had only three pieces of Adobe software on my computer: Flash Builder (for the IQP), Reader (for PDF files), and Flash Player (for YouTube, Hulu, etc). Eliminating Flash Builder was easy: I just uninstalled it. I have no desire to build a Flash-based program <strong>ever again</strong>.</p>
<p>Eliminating Adobe Reader was a little more involved, but not by much. I had to locate an alternative, since I do need the functionality it provides. The obvious choice was <a href="http://www.foxitsoftware.com/pdf/reader/" target="_blank">Foxit Reader</a>. I&#8217;d heard lots of good things about it and initially planned to try that. But before I downloaded it, I got wind of <a href="http://www.nitroreader.com/" target="_blank">Nitro PDF Reader</a>. Let me tell you, it is <em>amazing</em>. If you&#8217;re using Adobe Reader, you should definitely give it a shot. I would even recommend trying it if you&#8217;re using Foxit. It has all kinds of features that Adobe Reader <em>should</em> have but doesn&#8217;t, like being able to save forms that you fill out. It has a much nicer, more streamlined interface. It even includes a virtual PDF printer that you can use to convert any document into a PDF! So it&#8217;s not <strong>just</strong> a reader, it&#8217;s also a writer. The one caveat is that Nitro doesn&#8217;t currently include a browser plug-in, so you can&#8217;t view PDF files online without launching the full program. At first, I was worried this might be a deal-breaker, but I actually don&#8217;t mind. Probably because Nitro loads lickety-split, unlike Adobe, which takes forever and a day to launch.</p>
<p>So all that remains is Flash Player, which it appears we&#8217;re all going to be stuck with for a while to come. Flash Player is just a VM, and with enough time and effort, an alternative version could eventually be produced. According to Wikipedia, some have been, but the only ones that are actually complete are all commercial (i.e. you have to pay for them) and are aimed at specific uses rather than being general-purpose. <a href="http://gnashdev.org/" target="_blank">Gnash</a> appears to be the most promising free, general-purpose alternative right now. According to their documentation, they have nearly full support for everything up to SWFv7 and ActionScript 2. Support for SWFv8 and v9, along with ActionScript 3, are currently lacking. As a result, some sites don&#8217;t work properly. I&#8217;m not willing to take a gamble on this right now, especially given the apparent lack of pre-built Windows binaries. I wish the Gnash team the best of luck, and hope that all of Adobe&#8217;s WTFs (which they have to duplicate) don&#8217;t drive them insane.</p>
<p>So the final count is one thing that I got rid of wholesale, one thing I replaced, and one thing for which no adequate replacements currently exist. At least we&#8217;re making <em>some</em> progress.</p>
<p>On a related note, I still haven&#8217;t made up my mind as far as what to do about the TiVo situation. TiVo finally rolled out 14.5 to all Premiere boxes, and the reaction seems to be an overwhelming &#8220;meh&#8221;. Some people report that it fixed their stability problems, but others are reporting that it created new stability problems where none existed before. Still zero progress on the issues of enabling the second core and finishing the new menus. As a result, I&#8217;m leaning towards a factory-renewed HD XL. It&#8217;s cheaper than a Premiere, it has more recording space, and most importantly, I can be fairly sure I won&#8217;t have any problems with it.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/captainrichard.wordpress.com/407/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/captainrichard.wordpress.com/407/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/captainrichard.wordpress.com/407/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/captainrichard.wordpress.com/407/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/captainrichard.wordpress.com/407/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/captainrichard.wordpress.com/407/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/captainrichard.wordpress.com/407/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/captainrichard.wordpress.com/407/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/captainrichard.wordpress.com/407/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/captainrichard.wordpress.com/407/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/captainrichard.wordpress.com/407/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/captainrichard.wordpress.com/407/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/captainrichard.wordpress.com/407/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/captainrichard.wordpress.com/407/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=captainrichard.wordpress.com&amp;blog=9185794&amp;post=407&amp;subd=captainrichard&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://captainrichard.wordpress.com/2010/08/23/an-update-on-the-adobe-boycott/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/4a9ecb596a21b9b4662e0c87becd6029?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Richard</media:title>
		</media:content>
	</item>
		<item>
		<title>My TiVo Elegy</title>
		<link>http://captainrichard.wordpress.com/2010/07/25/my-tivo-elegy/</link>
		<comments>http://captainrichard.wordpress.com/2010/07/25/my-tivo-elegy/#comments</comments>
		<pubDate>Mon, 26 Jul 2010 04:47:30 +0000</pubDate>
		<dc:creator>Richard</dc:creator>
				<category><![CDATA[Epic fails]]></category>
		<category><![CDATA[Home]]></category>
		<category><![CDATA[rants]]></category>

		<guid isPermaLink="false">http://captainrichard.wordpress.com/?p=403</guid>
		<description><![CDATA[Alas, poor TiVo! I knew him, Horatio; a DVR of simple menus, of most excellent user-friendliness; he hath recorded my TV shows a thousand times; and now, how abhorred in my imagination it is! My gorge rises at it. Here was &#8230; <a href="http://captainrichard.wordpress.com/2010/07/25/my-tivo-elegy/">Continue reading <span class="meta-nav">&#8594;</span></a><img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=captainrichard.wordpress.com&amp;blog=9185794&amp;post=403&amp;subd=captainrichard&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<blockquote><p>Alas, poor TiVo! I <em>knew</em> him, Horatio; a DVR of simple menus, of most excellent user-friendliness; he hath recorded my TV shows a thousand times; and now, how abhorred in my imagination it is! My gorge rises at it. Here was that TiVo button that I have pressed I know not how oft. Where be your quality control now?</p></blockquote>
<p>My apologies to William Shakespeare. But I fear that TiVo&#8217;s days are numbered now&#8230; and my arch-nemesis, Adobe, is to blame! Well, okay, <strong>maybe</strong> not <em>entirely</em> but certainly <em>mostly</em>. You see, I&#8217;ve been getting e-mails and even snail mails from TiVo for the past few weeks now, advertising their new Premiere box (or Series4 box, if you prefer). Then last week, I got my monthly cable bill for my apartment, which included a copy of the pricing guide and channel line-up that cable providers are required by law to send out to their customers once a year.</p>
<p>I have a recent-model Panasonic plasma TV in my apartment and I considered going HD there after we went HD here at home. The quality really is something to behold, but I decided not to. After all, I had a perfectly good dual-tuner Series2 box and I figured HD would cost me extra. Then I got the pricing guide, at which point I discovered that I was actually <em>already</em> getting the HD channels in the package I was already paying for! Then I took a closer look and discovered that the &#8220;digital receiver&#8221; (read: cable box) and &#8220;interactive guide services&#8221; (which I&#8217;ve never used) are adding $5 a month to my bill. On the other hand, a CableCard, which I would need instead for an HD-capable TiVo, is only $2 a month. Of course, the box itself goes for $300, and I have to pay for the TiVo service. But I figured that HD quality would be worth having, and TiVo&#8217;s willing to give me a $60 break if I transfer the service to a Premiere from my current unit.</p>
<p>So I started looking into it. My first problem was just trying to log into Charter&#8217;s website. I literally have not logged in since just after my cable service was activated, about two years ago now. It took a few days and a <strong>lot</strong> of guessing, but I managed to get into the account I had created. Fortunately, I created the account using the same username I use in most other places and I was miraculously able to guess the password I&#8217;d chosen.</p>
<p>Side rant: Charter uses the &#8220;secret question&#8221; system if you can&#8217;t remember your username/password&#8230; and as usual, I had less of a clue what answer I gave to the stupid question than I did of what my password is! Why this is even necessary is beyond me, because just to <strong>reach</strong> the secret question step, I had to enter my account number and security code, the latter of which is <strong>only</strong> found on the first page of my monthly statement. Basically, this is <a href="http://thedailywtf.com/Articles/WishItWas-TwoFactor-.aspx" target="_blank">Wish-It-Was-Two-Factor</a> authentication at it&#8217;s finest. The worst part is that it&#8217;s even more unnecessary than it seems: even if you decide that the security code isn&#8217;t enough to prove that I am who I say I am, Charter requires you to supply an e-mail address for contact purposes. This e-mail address doesn&#8217;t have to be a Charter e-mail address, and even if it is, the two systems aren&#8217;t linked, so your Charter <em>account</em> username and password can be completely different from your Charter <em>e-mail</em> username and password. So why wouldn&#8217;t you just e-mail me a &#8220;Forgot your password? Click here to change it!&#8221; message? It&#8217;d be a hell of a lot simpler. And yes, I know I&#8217;ve ranted about this bullshit secret question business before, but I felt the need to re-emphasize how stupid this challenge system is. Especially when it could be defeated by anyone who&#8217;s known me for more than two years (and thus presumably knows the make and color of the first car I owned).</p>
<p>But I digress. After poking around Charter&#8217;s website, I determined that upgrading was probably going to be painful. I&#8217;ve already done this song and dance with Comcast (or Crapcast, if you prefer) and it was <em>not</em> fun. Both companies insist that they have to send a truck out to you to install the CableCard. <em><strong>WHY?!?</strong></em> All the tech does is push the CableCard into the slot and call the office to activate it, which requires them to read off some numbers that the TiVo helpfully pops up onto the screen when you insert the card. Seriously, <em>a trained <strong>monkey</strong></em> could do this! The Comcast guy was here for <strong>an hour and a half</strong> installing the CableCards in our TiVo HD, not because there was a problem with the cards or the installation process but because the <strong>MORONS</strong> in the office couldn&#8217;t activate the stupid things properly and bounced us back and forth between two departments <strong>FOUR TIMES</strong>, each time with a 10-minute wait in the phone queue. It was frustrating as hell, but rolling a truck out has zero impact on the problem. This is something that has caught the FCC&#8217;s attention, and <a href="http://www.broadband.gov/plan/4-broadband-competition-and-innovation-policy/#r4-13" target="_blank">they&#8217;ve issued new rules</a> to take effect in the Fall of this year, one of which basically says that if the cable company offers a set-top box self-install option, they should offer a CableCard self-install option as well. So maybe this won&#8217;t be an issue in the future.</p>
<p>After I figured all that out, I noticed that TiVo is trying to clear out their remaining inventory of Series3/HD boxes by offering a huge discount: the same TiVo HD that cost me around $300 a year or two ago is now a mere $99. So I wondered whether the Premiere was really worth the extra $140. I poked around review sites and the TiVo Community forum&#8230; and read about the <strong>horrors</strong> Premiere owners have endured. There are all kinds of stability issues: I&#8217;ve seen widespread reports of frequent lock-ups, crashes, and reboots. If it&#8217;s stable, it&#8217;s still as slow as cold molasses, because apparently there were <em>even MORE</em> stability issues with the second core on the Premiere&#8217;s dual-core processor enabled, so TiVo has it disabled for now. Of course, they probably wouldn&#8217;t <strong>need</strong> a dual-core processor in the first place, if not for the fact that their new HD interface is built on Adobe&#8217;s buggy, slow, shit-ass Flash platform, which I&#8217;ve already repeatedly ranted about. I don&#8217;t agree with Steve Jobs on much, but I agree with him on this: Adobe needs to be taken out back, shot, then burned at the stake, and finally, launched into the sun, along with all their craptastic &#8220;platforms&#8221; and &#8220;programming languages&#8221;.</p>
<p>There&#8217;s also the fact that I couldn&#8217;t find any killer new features. TiVo&#8217;s touting the fact that the Premiere can interface with all sorts of online streaming services like Amazon VOD, Netflix, Blockbuster, and the like, but I don&#8217;t care because I don&#8217;t use any of those services. The only other thing that&#8217;s really new is their &#8220;reimagined, visually stunning HD interface&#8221;. According to what I&#8217;ve read, &#8220;reimagined&#8221; would be better stated as &#8220;incrementally improved&#8221;, not to mention that this interface appears to account for a large number of the stability problems people have. Well, that&#8217;s what you get for writing it in Flash. There&#8217;s also the fact that it&#8217;s mostly incomplete; apparently, most screens are still their standard-definition selves, largely unchanged from the Series1 days.</p>
<p>What pisses me off the most is the fact that after all this time, the Premiere is still only a dual-tuner unit. This used to be more of a hardware limitation back in the Series2 days, but multi-stream CableCards, from what I&#8217;ve read, are capable of decoding four or even six streams at once! Seriously, TiVo, I think even the <em>cable company DVRs</em> can do three streams at once now! What gives?</p>
<p>As you can tell, I&#8217;m not happy about this. It sounds to me like TiVo desperately needed some revenue and ended up shipping a not-even-half-baked product. Combined with the fact that the US PTO recently invalidated one of their most important patents, I&#8217;m left feeling like TiVo&#8217;s on borrowed time here. They need to turn this ship around and FAST, or else we&#8217;re all going to be stuck with those <strong>abominations</strong> that cable companies call DVRs. And yes, I <em>am</em> speaking from experience here. My mother has one of those&#8230; <strong>things</strong>. It&#8217;s just like a TiVo&#8230; except that it has to reload all of its data after a power outage, sometimes randomly forgets to record shows, and has an interface that rates somewhere around -92 on a scale of 1 to 10 for user-friendliness.</p>
<p>Fortunately, there does appear to be <em>some</em> hope. There are initial reports from some Premiere owners that a recent software update fixes most of the stability and speed issues. Even if not, you can always turn off the HD interface and go back to the good old SD interface that TiVo owners have known and loved for the past decade. Of course, that just means that now the product actually does what it was supposed to do six months ago. C&#8217;mon, TiVo, you can do better than this! I&#8217;ll even help you out with some free advice: <strong>DITCH FLASH</strong>. Yes, I know, you&#8217;ve probably spent a lot of development time and money building this new-fangled HD interface in Flash, but it&#8217;s obviously giving you WAY more headaches than it&#8217;s worth. It can be hard to admit failure, but you can&#8217;t deny that this <em>is</em> a failure of epic proportions. Time to wipe the slate clean and start fresh.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/captainrichard.wordpress.com/403/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/captainrichard.wordpress.com/403/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/captainrichard.wordpress.com/403/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/captainrichard.wordpress.com/403/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/captainrichard.wordpress.com/403/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/captainrichard.wordpress.com/403/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/captainrichard.wordpress.com/403/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/captainrichard.wordpress.com/403/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/captainrichard.wordpress.com/403/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/captainrichard.wordpress.com/403/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/captainrichard.wordpress.com/403/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/captainrichard.wordpress.com/403/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/captainrichard.wordpress.com/403/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/captainrichard.wordpress.com/403/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=captainrichard.wordpress.com&amp;blog=9185794&amp;post=403&amp;subd=captainrichard&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://captainrichard.wordpress.com/2010/07/25/my-tivo-elegy/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/4a9ecb596a21b9b4662e0c87becd6029?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Richard</media:title>
		</media:content>
	</item>
		<item>
		<title>Flex Sucks: Greatest Hits!</title>
		<link>http://captainrichard.wordpress.com/2010/07/06/flex-sucks-greatest-hits/</link>
		<comments>http://captainrichard.wordpress.com/2010/07/06/flex-sucks-greatest-hits/#comments</comments>
		<pubDate>Wed, 07 Jul 2010 01:44:58 +0000</pubDate>
		<dc:creator>Richard</dc:creator>
				<category><![CDATA[IQP]]></category>
		<category><![CDATA[rants]]></category>

		<guid isPermaLink="false">http://captainrichard.wordpress.com/?p=398</guid>
		<description><![CDATA[So I kept promising I would eventually do a compilation post of all the bullshit I encountered while dealing with that&#8230; thing known as Adobe Flex. Well here it is, finally, in all its glory. I decided the best way &#8230; <a href="http://captainrichard.wordpress.com/2010/07/06/flex-sucks-greatest-hits/">Continue reading <span class="meta-nav">&#8594;</span></a><img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=captainrichard.wordpress.com&amp;blog=9185794&amp;post=398&amp;subd=captainrichard&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>So I kept promising I would eventually do a compilation post of all the bullshit I encountered while dealing with that&#8230; thing known as Adobe Flex. Well here it is, finally, in all its glory. I decided the best way to present this would be to categorize all the bugs, missing features, and epic fails I&#8217;ve encountered rather than talking about them in chronological order. And mind you, I didn&#8217;t even post about some of the WTFs I encountered, so this is really just a sampling.</p>
<h2><span style="text-decoration:underline;">Bugs</span></h2>
<p>The first bug I encountered was the fact that HTTP messages with status &gt;200 <a href="http://captainrichard.wordpress.com/2009/09/09/soap-epic-fail/" target="_blank">didn&#8217;t make it to the Flash Player plug-in</a>, for some reason. I was able to hack-fix the problem, but Adobe later (quietly) fixed it correctly, which resulted in the infamous <a href="http://captainrichard.wordpress.com/2010/02/26/post-mortem-the-beta-bug/" target="_blank">Beta Bug</a>.</p>
<p>Another fun bug was the one where you couldn&#8217;t use the less than symbol (&lt;) or the ampersand (&amp;) in any text fields. The problem turned out to be an <a href="http://captainrichard.wordpress.com/2009/11/18/yaaef/" target="_blank">XML double-encoding bug</a> that was supposedly fixed 3 SDKs ago. Why the greater than symbol (&gt;) was not affected by this is anyone&#8217;s guess.</p>
<p>The other major bugs I found were all related to Adobe&#8217;s web service code auto-generator.</p>
<p>First, there was the problem where the parameter order of RPC SOAP operations <a href="http://captainrichard.wordpress.com/2009/09/15/flex-builder-epic-fail/" target="_blank">got completely messed up</a>. I ended up &#8220;solving&#8221; this problem by <a href="http://captainrichard.wordpress.com/2009/09/15/wsdl-hell/" target="_blank">using document/literal SOAP</a> instead of RPC/encoded.</p>
<p>Second, there was the problem where I wanted to have a SOAP operation called GetProjectResponse, fitting in with the project jargon. This <a href="http://captainrichard.wordpress.com/2009/10/12/progress/" target="_blank">made the auto-generator shit its pants</a>, so I had to call the operation GetProjectAnswer instead. Fortunately, data types were not afflicted by this problem.</p>
<p>Third, there was the issue that the auto-generator <a href="http://captainrichard.wordpress.com/2010/02/17/more-fun-with-soap/" target="_blank">doesn&#8217;t remove the files it created</a> for data types and operations that you remove from your web service. So I had to do it all by hand, which was a real treat considering the number of files that got generated for every operation.</p>
<h2><span style="text-decoration:underline;">Missing Features</span></h2>
<p>Flex/ActionScript is missing a <strong>ton</strong> of features that nearly <em>all</em> other object-oriented languages have. Adobe tries to dismiss this problem by saying that they didn&#8217;t want ActionScript to get out of compliance with the ECMAScript standard, but then they went off and based AS3 on a draft version of ECMAScript 4, assuming it would pass. <a href="http://whydoeseverythingsuck.com/2008/08/ru-roh-adobe-screwed-by-ecmascript.html" target="_blank">Which it didn&#8217;t.</a> Oops.</p>
<ul>
<li>AS is a wonderful world of <a href="http://captainrichard.wordpress.com/2009/09/28/flex-headaches/" target="_blank">no generics</a>. This means any object you pull out of a collection has to be cast from Object to the type you expect it to be. Or, if you&#8217;d like, you can create a subclass of ArrayCollection for <strong>every data type</strong> for which you need to be able to pass collections/lists/etc around.</li>
<li>Compounding that problem, if a cast fails, no exception is generated. It just fails silently and the variable you tried to assign the casted object to is simply set to null.</li>
<li>AS <a href="http://captainrichard.wordpress.com/2009/10/05/i-need-a-fly-swatter/" target="_blank">doesn&#8217;t support hotkeys</a>. Except that it sorts does. But not really.</li>
<li>Flex has this wonderful UI widget called a DataGrid, and it&#8217;s fantastic. Except that it <a href="http://captainrichard.wordpress.com/2009/11/18/projects²-and-mw2-reviewed/" target="_blank">doesn&#8217;t support nested sub-fields</a> in the data source you bind to it. Solutions range from ugly hacks to rewriting half the DataGrid class.</li>
<li>AS <a href="http://captainrichard.wordpress.com/2009/12/04/the-100th-commit-party/" target="_blank">doesn&#8217;t have the concept of an abstract class</a>. Or an abstract <strong>anything</strong> for that matter.</li>
<li>It also <a href="http://captainrichard.wordpress.com/2010/01/01/happy-new-year/" target="_blank">doesn&#8217;t have destructors</a>. Although that might be a good thing, because it prevented me from being an idiot in that one case.</li>
<li>Java has apparently been spoiling us developers with its wonderful equals() method. AS <a href="http://captainrichard.wordpress.com/2010/02/18/to-beta-or-not-to-beta/" target="_blank">doesn&#8217;t have this either</a>, making comparisons between objects absurdly complex.</li>
<li>MXML files <a href="http://captainrichard.wordpress.com/2010/01/28/the-last-two-weeks/" target="_blank">can&#8217;t have custom constructors</a>, for reasons utterly unknown to me. I get that a no-argument constructor is necessary, but why can&#8217;t we define constructors that take parameters?</li>
</ul>
<h2><span style="text-decoration:underline;">Epic Fails</span></h2>
<p>This is crap that simply has no excuse. Period.</p>
<ul>
<li>Migrating anything more than the simplest code from Flex 3 to Flex 4 is ridiculously complicated. It took me the <a href="http://captainrichard.wordpress.com/2009/10/27/on-flash-builder-4/" target="_blank">better</a> <a href="http://captainrichard.wordpress.com/2009/10/27/migrating-to-flex-4/" target="_blank">part</a> <a href="http://captainrichard.wordpress.com/2009/10/28/migrating-to-flex-4-part-ii/" target="_blank">of</a> <a href="http://captainrichard.wordpress.com/2009/10/29/migrating-to-flex-4-part-iii/" target="_blank">a</a> <a href="http://captainrichard.wordpress.com/2009/10/30/migrating-to-flex-4-the-finale/" target="_blank">week</a> to migrate our code base. And the migration technically isn&#8217;t finished!</li>
<li>The very <em>existence</em> of <a href="http://captainrichard.wordpress.com/2009/11/11/when-life-gives-you-lemons/" target="_blank">ObjectProxy</a>. Seriously, who comes up with this shit?!?</li>
<li>Flash Builder <a href="http://captainrichard.wordpress.com/2009/12/16/windows-7-redux/" target="_blank">doesn&#8217;t come in 64-bit trim</a>. But I guess that&#8217;s okay because Flash Player doesn&#8217;t either. Wait&#8230;</li>
<li>FB4 has an <a href="http://captainrichard.wordpress.com/2010/02/25/beta-baby/" target="_blank">overzealous import organizer</a> and complains about duplicate variable definitions, despite the fact that the code paths were mutually exclusive.</li>
<li>Flex&#8217;s implementation of printing <strong>sucks</strong>, to put it mildly. <em>Adobe</em> Flex also <a href="http://captainrichard.wordpress.com/2010/04/02/the-end-is-near/" target="_blank">lacks native support</a> for generating <em>Adobe</em> PDF files. And their beta software doesn&#8217;t warn you when it&#8217;s about to expire. But that&#8217;s okay, because the licensing service is fooled by the oldest trick in the book.</li>
</ul>
<p>And this is why I&#8217;m starting a boycott of all things Adobe. Expect a post in the near future on how that&#8217;s working out for me.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/captainrichard.wordpress.com/398/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/captainrichard.wordpress.com/398/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/captainrichard.wordpress.com/398/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/captainrichard.wordpress.com/398/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/captainrichard.wordpress.com/398/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/captainrichard.wordpress.com/398/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/captainrichard.wordpress.com/398/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/captainrichard.wordpress.com/398/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/captainrichard.wordpress.com/398/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/captainrichard.wordpress.com/398/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/captainrichard.wordpress.com/398/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/captainrichard.wordpress.com/398/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/captainrichard.wordpress.com/398/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/captainrichard.wordpress.com/398/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=captainrichard.wordpress.com&amp;blog=9185794&amp;post=398&amp;subd=captainrichard&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://captainrichard.wordpress.com/2010/07/06/flex-sucks-greatest-hits/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/4a9ecb596a21b9b4662e0c87becd6029?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Richard</media:title>
		</media:content>
	</item>
		<item>
		<title>Mass Effect 2, Playthrough 1: Post-mortem</title>
		<link>http://captainrichard.wordpress.com/2010/06/15/mass-effect-2-playthrough-1-post-mortem/</link>
		<comments>http://captainrichard.wordpress.com/2010/06/15/mass-effect-2-playthrough-1-post-mortem/#comments</comments>
		<pubDate>Tue, 15 Jun 2010 06:39:07 +0000</pubDate>
		<dc:creator>Richard</dc:creator>
				<category><![CDATA[Gaming]]></category>

		<guid isPermaLink="false">http://captainrichard.wordpress.com/?p=394</guid>
		<description><![CDATA[So I just finished my first play-through of Mass Effect 2. I know what you&#8217;re thinking. Really? Dude&#8230; that game&#8217;s been out for like six months, and you JUST STARTED PLAYING IT?!? Well, yeah! I was busy with other crap, &#8230; <a href="http://captainrichard.wordpress.com/2010/06/15/mass-effect-2-playthrough-1-post-mortem/">Continue reading <span class="meta-nav">&#8594;</span></a><img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=captainrichard.wordpress.com&amp;blog=9185794&amp;post=394&amp;subd=captainrichard&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>So I just finished my first play-through of Mass Effect 2. I know what you&#8217;re thinking.</p>
<p><em>Really? Dude&#8230; that game&#8217;s been out for like six months, and you JUST STARTED PLAYING IT?!?</em></p>
<p>Well, yeah! I was busy with other crap, like dealing with Adobe&#8217;s shit-ass programming languages. There was also the fact that I wasn&#8217;t sure it was worth the sixty bucks. DarkSydePhil&#8217;s play-through convinced me though, so a couple weeks ago, I bought a copy. Only $40 for a brand new copy, too: there&#8217;s something to be said for waiting to get a game.</p>
<p>So, what happened in my play-through, you ask?</p>
<p><em>Actually, I don&#8217;t give a frak.</em></p>
<p>Too bad. You&#8217;re gonna find out anyway.</p>
<p><em>Aww, man&#8230;</em></p>
<p>To start, I knew a bunch of things about the game from watching DSP&#8217;s play-through, so I wasn&#8217;t going into this totally blind. Even so, early on in the game, I made some mistakes.</p>
<ol>
<li>When spending squad points, I focused too much on the passive, character-unique powers that bolster health and weapon damage. This meant I had some problems beating a couple parts of the game, even though I only played on normal difficulty, because not having strong active powers made it really hard to kill stuff in some cases.</li>
<li>I focused on paragon choices, but made plenty of renegade decisions too. As a result, by the end of the game, my renegade bar was about 1/4 full, but my paragon bar was only 7/8 full. Securing the loyalty of some squad mates became a problem later on.</li>
</ol>
<p>As for how the game went, I did all of the main missions. I recruited all characters (including Legion and Zaeed, but not Kasumi because I don&#8217;t have that DLC) and did all the loyalty missions (although some characters were not loyal by the end, as mentioned). I got the game new, so I have access to the Cerberus Network DLC. I did the Normandy crash site mission and some of the Firewalker missions. I didn&#8217;t spend money on anything I didn&#8217;t absolutely need, so I was able to buy most of the available upgrades. I didn&#8217;t do most of the side missions, because I didn&#8217;t scan the planets they were on.</p>
<p>I didn&#8217;t play ME1, so I started with a new character. I opted for the Infiltrator class. If you have ME2 and you haven&#8217;t tried being an Infiltrator, you should. This class is seriously awesome. Why?</p>
<ol>
<li>You get access to sniper rifles right from the start, and sniper rifles kick <strong>tons of ass</strong> in ME2. Even better, your unique passive power as an Infiltrator slows down time when you first scope in, making it that much easier to get those awesome headshots and then watch as your enemy&#8217;s head explodes in slow motion.</li>
<li>If that&#8217;s not good enough for you, the Infiltrator&#8217;s unique active power is a cloaking device! This cloak makes it so almost <strong>all enemies</strong> can&#8217;t see you and stop shooting at you. Even Harbinger can&#8217;t see through this sucker; the one exception is the Oculus, which kept attacking me even when I turned the cloak on, but you only have to fight that thing once per play-through anyway. As if that weren&#8217;t awesome enough, the cloak also gives a <strong>damage bonus</strong> to shots fired while you&#8217;re using it! The one drawback is that using the cloak halts shield and health re-generation, so its usefulness is limited if you&#8217;re getting swarmed.</li>
<li>Infiltrators, being a cross between combat and tech, also get Incinerate as an active power. Heavy Incinerate is beyond awesome. It can kill <strong>any</strong> unshielded target in one hit. It also burns through armor like crazy. It&#8217;s ineffective against shields and biotic barriers&#8230;</li>
<li>&#8230;but that&#8217;s less of a problem when you have Disrupter Ammo available. It&#8217;s no good against armor or biotic barriers, but rips through shields like a knife through butter. You also get Cryo Ammo, but I didn&#8217;t end up with enough squad points to spare in order to tinker with it. DSP played as a Sentinel and put some points into Cryo Blast, which seemed to be mostly useless because it can&#8217;t be used against targets with shields, armor, or biotic barriers; I figured Cryo Ammo probably has similar limitations.</li>
<li>You also get AI Hacking as an active power. This isn&#8217;t particularly useful, since it can only be used against synthetic enemies (i.e. geth). It can be helpful on those select occasions, but you&#8217;ve already got Disrupter Ammo, which tears through shields and synthetics, perfect for use against the geth.</li>
</ol>
<p>So the only real problem you have is dealing with biotic barriers. This is easily dealt with by dragging a biotic who has the Warp ability around with you. Conveniently, you get such a person (Miranda) at the beginning of the game. Infiltrators are also not a good choice for melee combat because they lack a defense-boosting ability like Tech Armor, Barrier, or Fortification. Of course, this is also fairly easily solved: you can use Advanced Training to gain the Barrier skill as soon as you&#8217;ve completed Jacob&#8217;s loyalty mission. Said loyalty mission is the first one you get. I didn&#8217;t actually do this in my play-through: I needed the eezo (ME slang for Element Zero) I had for other things, like biotic and tech damage upgrades. Having said that, I plan to try this on my next play-through. Also, I picked assault rifles as my specialization on the Collector Ship mission; they&#8217;re very good, but well-upgraded SMGs beat out non-upgraded ARs, even considering the poor accuracy SMGs exhibit, and you don&#8217;t get a lot of AR damage upgrades until later in the game.</p>
<p>So, new character, meaning no starting bonuses. And I did make some mistakes, as mentioned earlier. How did the &#8220;suicide mission&#8221; go?</p>
<p>Perfectly.</p>
<p>I waited to do the Jack and Zaeed loyalty missions until just before going to get the Reaper IFF. My paragon bar wasn&#8217;t full and, having watched DSP&#8217;s play-through, I knew I&#8217;d probably need some serious paragon after these missions. That part didn&#8217;t go according to plan. I did Zaeed&#8217;s mission and took the paragon route (opting to save the refinery workers) but failed the paragon check at the end of the level that was necessary to gain Zaeed&#8217;s loyalty. Then I did Jack&#8217;s mission, immediately after which she and Miranda had it out. I didn&#8217;t have enough paragon or renegade to keep the loyalty of both characters. I&#8217;d been pursuing Miranda romantically and figured that siding against her would probably have some consequences there, so I told Jack to shove off, losing her loyalty. There&#8217;s a conversation option to regain Jack&#8217;s loyalty, but I didn&#8217;t have enough paragon or renegade for <em>that</em> either.</p>
<p>After retrieving the IFF, I opted to keep Legion and did his loyalty mission, as mentioned. I was concerned about the Legion/Tali dispute (similar to the Miranda/Jack dispute) that occurs afterwards and decided in advance that if I couldn&#8217;t keep the loyalty of both characters, I&#8217;d side with Tali. Fortunately, either I gained enough paragon or the amount needed was lower than the Miranda/Jack fight, and I was able to keep the loyalties of both characters.</p>
<p>Then, of course, my crew got taken away by the Collectors. I made a small detour to Illium to spend the last of my credits to obtain the final tech damage upgrade, then proceeded to do the suicide mission. I did most of the ship upgrades (all of the ones that matter; I skipped the med bay upgrade and the probe bay upgrade), so nobody died on the way in. For the first part of the mission, I picked Legion as the tech to go through the ventilation system, Garrus to lead the second team, and took Miranda and Grunt as my team. For the second part, I picked Samara to generate the biotic field, Garrus as second team leader (again), Mordin to escort the crew back to the ship, and took Miranda and Tali as my team. For the final part, I took Miranda and Legion to fight the human-reaper larva.</p>
<p>I chose to blow up the base. If you haven&#8217;t taken Miranda with you to the final fight and chosen to blow up the base, you should. When the Illusive Man gets pissed at you and orders Miranda to stop you, she tells him to go pound sand and that he should consider that her resignation. It&#8217;s <em>very</em> satisfying to watch as the staunch Cerberus loyalist tells her prick of a boss to shove off.</p>
<p>Then, of course, I had to fight the larva. Man, that sucker is TOUGH to kill! It&#8217;s important, clearly, to make extensive use of your and your teammates&#8217; active powers earlier in the mission, because there&#8217;s not a lot of ammo to pick up along the way, and you&#8217;ll need a ton of ammo to kill this thing. Powers seem to have little effect on it, probably because it&#8217;s so far away that they take forever to hit, and the thing has a ton of health anyway.</p>
<p>I picked the ML-77 missile launcher as my heavy weapon for the fight. I considered the Particle Beam but the larva moves around a lot and I&#8217;d noticed that my heavily upgraded weapons, especially my sniper rifle, were often doing more damage than the Particle Beam late in the game. I also had the flamethrower but that&#8217;s no good because it&#8217;s a short-range weapon, and I doubted that the cryo gun or Arc Projector would be much use. I didn&#8217;t get the Collector&#8217;s Edition, so I didn&#8217;t have access to the black hole gun (which looked ridiculously over-powered in DSP&#8217;s play-through). I could&#8217;ve used the nuke gun, but I knew I&#8217;d probably only get one shot with it, and after DSP&#8217;s epic miss, I didn&#8217;t feel brave enough to try. The ML-77 actually turned out to be a pretty good choice; it&#8217;s basically fire and forget, which is useful since the larva moves around and makes it hard to aim.</p>
<p>I went through <em>all</em> 21 missiles I had, taking out about half the larva&#8217;s health. Then I went through all 200 or so rounds I had left in my assault rifle. Then I pulled out my SMG and used 100 or so rounds for that. Then I switched to my heavy pistol and went through all 60 rounds I had for <em>that</em>. And <em><strong>then</strong></em>, I switched to my sniper rifle and used up about half of the 60 rounds in <strong>THAT</strong> gun! Finally, the larva died.</p>
<p>Insert the obligatory &#8220;station-blowing-up, teammates-knocked-out, making-a-run-for-the-ship, walkway-collapses-so-you-have-to-do-a-heroic-jump&#8221; scene. What were the final results?</p>
<p>Everybody lived. <em><strong>NAILED IT!</strong></em></p>
<p>For my next play-through, I&#8217;m going to import one of the ME1 Shepards from masseffectsaves.com to get some variety. I&#8217;m also going to be much more completionist; I intend to do absolutely <em>every</em> side mission. I may do more play-throughs after that to experiment with different classes, but I&#8217;m not sure yet.</p>
<p>I have to say, BioWare did an <em>amazing</em> job with this game. It&#8217;s like watching a movie, except you get to participate and it can change in significant ways from one &#8220;viewing&#8221; to the next. There&#8217;s also the fact that the game is <em>really</em> long: this fairly bare-bones play-through took me 25 hours or so to do and I was rarely bored because of the variety of missions, enemies, and dialog. Having said that, I do have a couple gripes:</p>
<ol>
<li><strong>The planet-scanning mini-game.</strong> Pretty much <em>everyone</em> who&#8217;s played ME2 has complained about this. It&#8217;s boring as hell and doesn&#8217;t require any skill. Besides, you need to buy probes to get the damn minerals, so in the end it boils down to paying for resources. Eliminating the middle step would be a <em>massive</em> improvement (no pun intended).</li>
<li><strong>The Collector attack on the Normandy.</strong> The excuse for why the whole team is off the ship is kind of weak and pathetic, but the real problem is the <em>goddamn freakin&#8217; LOADING SCREENS</em><em>!</em> Seriously, BioWare, WTF IS WRONG WITH YOU?!? You&#8217;ve got this epic sequence where a guy who&#8217;s more-or-less a cripple has to crawl around the ship&#8217;s access tunnels while avoiding the Collectors that are attacking the crew, who are trying to protect him while he tries to get the ship working again. You&#8217;ve got epic music playing in the background. You&#8217;ve got this epic atmosphere with all this tension, knowing that you just got the IFF and are (presumably) about to go kick some Collector ass&#8230; and then you&#8217;ve got all these epic-killing loading screens sandwiched in the middle. FAIL.</li>
<li><strong>The team size limit on story missions.</strong> Limiting team size on missions is an integral game mechanic; I get it. It forces you to choose who best compliments your play style and your character&#8217;s class. And it can be justified from a story point-of-view: your team can&#8217;t train, build upgrades, et cetera if you&#8217;re taking all of them on missions all the time. But why can&#8217;t I bring my whole team to Horizon, or to the first Collector ship? The whole point of recruiting them is to fight the Collectors, so why the hell can&#8217;t I actually <em>use</em> most of them in any such capacity until the end of the game?</li>
<li><strong>Not available on the PS3.</strong> That just blows, for those of us who don&#8217;t have an XBox 360. I got ME2 on the PC, and it&#8217;s just like it was in DSP&#8217;s play-through on the 360, but it kinda sucks that I can&#8217;t use that awesome home theater set-up we&#8217;ve got downstairs. You can&#8217;t even just get it on the PC and fake like it&#8217;s a console, because they don&#8217;t provide for gamepad input. Sure, there are ways to rig that (translating gamepad inputs to keyboard/mouse inputs), but the interface is significantly different, especially the squad command menu for changing weapons and using powers, which would probably make using a rigged gamepad system really hard. Not having played a shooter on a PC before, I had some trouble adjusting to the mouse and keyboard controls, but I think I&#8217;ve got the hang of it now. <em>BLATANT MICROSOFT MARKETING BULLSHIT FOR THE LOSS.</em></li>
</ol>
<p>Well, that&#8217;s it for this post-mortem. I may post a similar write-up after my second play-through, but I&#8217;ve been neglecting other work, so don&#8217;t expect that soon.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/captainrichard.wordpress.com/394/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/captainrichard.wordpress.com/394/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/captainrichard.wordpress.com/394/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/captainrichard.wordpress.com/394/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/captainrichard.wordpress.com/394/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/captainrichard.wordpress.com/394/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/captainrichard.wordpress.com/394/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/captainrichard.wordpress.com/394/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/captainrichard.wordpress.com/394/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/captainrichard.wordpress.com/394/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/captainrichard.wordpress.com/394/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/captainrichard.wordpress.com/394/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/captainrichard.wordpress.com/394/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/captainrichard.wordpress.com/394/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=captainrichard.wordpress.com&amp;blog=9185794&amp;post=394&amp;subd=captainrichard&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://captainrichard.wordpress.com/2010/06/15/mass-effect-2-playthrough-1-post-mortem/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/4a9ecb596a21b9b4662e0c87becd6029?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Richard</media:title>
		</media:content>
	</item>
		<item>
		<title>A Tale of Two Programs</title>
		<link>http://captainrichard.wordpress.com/2010/06/05/a-tale-of-two-programs/</link>
		<comments>http://captainrichard.wordpress.com/2010/06/05/a-tale-of-two-programs/#comments</comments>
		<pubDate>Sat, 05 Jun 2010 06:26:01 +0000</pubDate>
		<dc:creator>Richard</dc:creator>
				<category><![CDATA[Home]]></category>

		<guid isPermaLink="false">http://captainrichard.wordpress.com/?p=385</guid>
		<description><![CDATA[For those readers who don&#8217;t know (probably none, because nobody reads this blog!), my mother runs a self-storage business. Profit margins were never exactly fat back when business was booming and nowadays, said margin is practically nonexistent. Consequently, I get &#8230; <a href="http://captainrichard.wordpress.com/2010/06/05/a-tale-of-two-programs/">Continue reading <span class="meta-nav">&#8594;</span></a><img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=captainrichard.wordpress.com&amp;blog=9185794&amp;post=385&amp;subd=captainrichard&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>For those readers who don&#8217;t know (probably none, because nobody reads this blog!), my mother runs a self-storage business. Profit margins were never exactly fat back when business was booming and nowadays, said margin is practically nonexistent. Consequently, I get drafted whenever there&#8217;s a technical problem. And recently, we&#8217;ve had a rather serious technical problem.</p>
<p>Before we get to that though, some background is necessary. The business first got computerized back in the late &#8217;80s. The software originally ran on a Hyundai 286 running an early version of DOS with a monochrome screen and a loud dot-matrix printer. It wasn&#8217;t exactly sophisticated, but it sure beat paper records. This setup worked great until the mid-90s. Some time in 1996, if memory serves, the screen started to die. Rather than try to find a new screen that would be compatible, my mother opted to buy a whole new system and migrate the software over to it.</p>
<p>How, exactly, this was accomplished, I don&#8217;t know. I was only 7 at the time, hardly qualified to do the work. I used to be good friends with the guy that did the migration, but we drifted apart and it&#8217;s been years since I&#8217;ve even spoken to him. Anyhow, the software&#8217;s new home, a 100MHz Pentium running Windows 95, only lasted a few years. In spite of our best efforts to keep the system covered up, the power supply sucked in a bit too much plaster dust when the office was re-modeled in the late &#8217;90s and died. I can&#8217;t remember if that power supply was replaced or not, but if it was, the second one lived an even shorter life than the first one.</p>
<p>Enter the system that this 20-year-old software now called home: a 700MHz Pentium III running Windows 98. This system had served us well for the last decade, but recently it began exhibiting random lock-ups requiring a hard reboot to resolve, sometimes repeatedly. Clearly, the hardware was starting to give up the ghost. As I mentioned before, we&#8217;ve lost touch with the guy that migrated it twice before, so it came down to me to figure out what to do about this situation. Three options presented themselves:</p>
<ol>
<li><strong>Repair the existing system.</strong> Normally, this is probably the option I would have pursued. But this wasn&#8217;t a normal situation, for two reasons. First, this was the only system we had running this software, so if I tried to fix the problem and accidentally ended up creating another one, we could have been seriously hosed. Yes, we had backups&#8230; if you&#8217;re willing to trust floppy disks. Remember, it&#8217;s a Windows 98 system, so flash drives aren&#8217;t plug-and-play. I&#8217;d need to have loaded a driver first, and I wasn&#8217;t thrilled with the idea of mucking with a fragile production system. Second, the case happens to be of the proprietary small form factor variety. I&#8217;m not even sure how to <em>open</em> the thing, let alone what physical standards the components inside adhere to (if any).</li>
<li><strong>Get new software.</strong> Been there, done that. In 1999, we found out that this old DOS software was not Y2K-compliant. The vendor issued a patch to fix this problem, but it ended up creating a bunch of other strange bugs that only occurred in certain situations. Fortunately, there were no bugs in the parts of the software we use on a day-to-day basis, so we applied the patch and kept on truckin&#8217;. In 2002, I finally convinced my mother that it might be time for an upgrade. To my surprise, she agreed. (Some perspective: this is a woman who regularly sits on a couch that&#8217;s older than I am and has been re-covered at least twice.) Many thousands of dollars later, we had a shiny new 1.1GHz Duron running Windows 2000 and the latest version of the vendor&#8217;s software, complete with fancy GUI. The new version was&#8230; underwhelming, to say the least. It has a lot of new features that we use, but it also implements a lot of business rules differently than the old DOS software (read: it implements them in ways my mother doesn&#8217;t like). On top of that, it&#8217;s slow, and it&#8217;s only gotten slower over time. End-of-day procedures to generate reports and charges on customer accounts (among other things) took 3 minutes when we installed the system. Seven years later, they were taking 30, and we finally upgraded the system to a Pentium E6300 just to make it faster. The aforementioned procedures <em>still</em> takes eight minutes. Anyhow, getting back on track, our original plan was to run both systems in parallel for a month or two to make sure any bugs in the new system got fully ironed out. Eight years later, we&#8217;re <em>still</em> running both systems.</li>
<li><strong>Upgrade to new hardware and migrate the software. Again.</strong> This was the best of the three options. The first two (metaphorically) involved walking into an irradiated wasteland; this option, by comparison, merely required me to traverse a dense minefield without a metal detector. All I knew going in was that it had been done twice before, but I had no idea how and no way to contact the person who <em>did</em> know.</li>
</ol>
<p>I was confident that I could pull it off, I just wasn&#8217;t sure how. I knew the program was originally designed for a now-antiquated version of the x86 architecture and an equally antiquated version of DOS, so I inferred that the previous two migrations were probably successful because, effectively, they just involved moving to newer versions that were still backwards-compatible with what the software expected to find. I also knew that wasn&#8217;t going to be the case here; I was not about to build a shiny new system and stuff Windows 98 (or, God forbid, Windows ME) on it. This system would be running Windows XP at the very least, preferably Windows 7 if I could manage it.</p>
<p>There was also the fact that I knew that some parts of the software package had been mickey-moused to work on the newer systems. For example, the software didn&#8217;t originally include backup to floppies; that was a feature that got added in somehow after the migration to the P-III system. The directory the software lives in was also littered with old versions of executables and batch scripts.</p>
<p>Once again, I stopped to assess my options. The best outcome was somehow getting it to run directly on 32-bit Windows 7. (I knew I&#8217;d never get it to run directly on any 64-bit version of Windows, being 16-bit software.) The second-best outcome was getting it to run directly on Windows XP. My fall-back position was the virtual machine option; if I couldn&#8217;t make it run on XP or Win7, I could create a virtual Windows 98 system just like the one it was already working on and move it to that.</p>
<p>Well, I tried option #1. There were some interesting graphical issues, but nothing severe enough to make the software unusable. I figured that was already more than I could have hoped for and prepared to deliver the new system. Then I ran into a more serious problem. When I tried to run the end-of-day procedures, I got a friendly four-word error message:</p>
<p><strong>FCB unavailable. Abort, fail?</strong></p>
<p>Being a Computer Science major and having taken an operating systems class, I surmised that FCB stood for &#8220;File Control Block&#8221; and figured that the software was probably trying to use some API call that no longer existed (or maybe had never existed in the NT architecture), or at least no longer did anything.</p>
<p>So I moved on to option #2. And encountered the exact same problems on XP as I had on Win7. This seemed to bolster my previous reasoning.</p>
<p>At some point in the middle of all this, I discovered an option #4: DOSBox. I figured this was a long-shot; official builds of DOSBox don&#8217;t provide any support for parallel ports or printing, and DOSBox is more aimed at getting old games to run than old business software. I started with the official build. No dice: our old software requires that you print the daily reports before it will let you run end-of-day procedures. Then I tried the unofficial MegaBuild. This build includes handling of parallel ports and printers, which solved the problem I had with the official build. Unfortunately, when I tried to run the end-of-day procedure, the software froze up. I tinkered with both builds some more and eventually discovered that, for some reason, if I printed the reports, exited the software, then re-opened the software, the end-of-day procedure worked perfectly. It solved the problem, but was hardly feasible for a production environment. (Some perspective: my mother struggles to understand how to open e-mail attachments and has only recently figured out how to add contacts to her cell phone.)</p>
<p>So all I was left with was the nuclear option. I reluctantly dug out my OEM copy of Windows 98SE from the bottom of my desk drawer and installed it into a virtual machine. I copied in the old DOS software&#8230; and promptly encountered the exact same problems I had in XP and Win7. What the frak? I <em>knew</em> it worked in Windows 98&#8230; it was on a Win98 system already! What was going on?</p>
<p>It was at this point that I finally did what I should have done three paragraphs ago: I looked up &#8220;FCB unavailable&#8221; online in the hopes of finding out what exactly that error was, what caused it, and how to fix it. Ask Google and ye shall receive. As it turned out, it was possible to set the number of FCBs in config.sys. Ahh, now doesn&#8217;t <em>that</em> bring back some memories! I can remember the days when I spent more time in DOS mucking around with the likes of config.sys, autoexec.bat, and friends than I did in Windows. Back then, I knew every command you could type into a DOS shell. Having to install Windows 98 again, even if it was only into a virtual machine, reminded me just how far Windows has come. And not just in terms of installation and ease of use: the good ole&#8217; &#8220;Illegal Operation&#8221; error message box made a few appearances.</p>
<p>Anyhow, having wasted all that time, at least I knew I was on the right path: when I added &#8220;FCBS=32&#8243; to Win98&#8242;s config.sys, the software started humming right along. I decided to have a look at the config.sys on the production machine to see what else was in the secret sauce. Lo and behold, in addition to &#8220;FCBS=60&#8243;, the production config.sys also contained the line &#8220;device=c:\windows\command\ansi.sys&#8221;. A-ha! Another Google search later and I was certain that would resolve the graphical glitching I&#8217;d observed.</p>
<p>Now in the middle of all that Googling, I&#8217;d discovered that all of the NT-based versions of Windows include command.com, a shell vastly inferior to the cmd.exe native to NT, but one compatible with the 9x DOS shell. NT&#8217;s command.com conveniently dovetails with config.nt, the creatively named twin of config.sys.</p>
<p>So there you have it: software originally designed for a 286 and an early version of DOS&#8230; running on an Athlon II X3 and Windows 7. The things we do for legacy software&#8230;</p>
<ol></ol>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/captainrichard.wordpress.com/385/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/captainrichard.wordpress.com/385/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/captainrichard.wordpress.com/385/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/captainrichard.wordpress.com/385/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/captainrichard.wordpress.com/385/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/captainrichard.wordpress.com/385/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/captainrichard.wordpress.com/385/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/captainrichard.wordpress.com/385/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/captainrichard.wordpress.com/385/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/captainrichard.wordpress.com/385/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/captainrichard.wordpress.com/385/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/captainrichard.wordpress.com/385/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/captainrichard.wordpress.com/385/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/captainrichard.wordpress.com/385/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=captainrichard.wordpress.com&amp;blog=9185794&amp;post=385&amp;subd=captainrichard&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://captainrichard.wordpress.com/2010/06/05/a-tale-of-two-programs/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/4a9ecb596a21b9b4662e0c87becd6029?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Richard</media:title>
		</media:content>
	</item>
		<item>
		<title>IT&#8217;S OVER!</title>
		<link>http://captainrichard.wordpress.com/2010/05/03/its-over/</link>
		<comments>http://captainrichard.wordpress.com/2010/05/03/its-over/#comments</comments>
		<pubDate>Mon, 03 May 2010 23:47:40 +0000</pubDate>
		<dc:creator>Richard</dc:creator>
				<category><![CDATA[IQP]]></category>

		<guid isPermaLink="false">http://captainrichard.wordpress.com/?p=381</guid>
		<description><![CDATA[Almost. I&#8217;m in the process of writing the IQP report now and I hope to have it finished in the next few hours. But I had to stop and tell everyone something. Something huge. Something so disturbing it might make &#8230; <a href="http://captainrichard.wordpress.com/2010/05/03/its-over/">Continue reading <span class="meta-nav">&#8594;</span></a><img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=captainrichard.wordpress.com&amp;blog=9185794&amp;post=381&amp;subd=captainrichard&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Almost. I&#8217;m in the process of writing the IQP report now and I hope to have it finished in the next few hours. But I had to stop and tell everyone something. Something huge. Something so disturbing it might make your jaw fall off.</p>
<p>Adobe&#8230; actually <strong>did something right</strong>.</p>
<p>I&#8217;ll give you a moment to compose yourself. Done? Okay, here&#8217;s what happened.</p>
<p>As I was writing the report, I was perusing through the documentation we&#8217;ve accumulated on the SourceForge wiki. We use two libraries: NuSoap and FlexSpy. I figured I&#8217;d check to see if either of them had been updated. Well, lo and behold, NuSoap finally got an update after about three years. I tried the new version but it breaks stuff, so the next team will have to look into that problem. But it got me thinking about the hacks I added back in September so that it would return HTTP status 200 for SOAP faults even though you&#8217;re supposed to return status 500. See, at that time, Flash Player had a bug where HTTP messages with status &gt;200 got ignored.</p>
<p>Well, apparently, Adobe actually <strong>fixed this bug</strong> at some point! This is probably the reason for some strange behavior I&#8217;d been noticing, where things that should have caused errors didn&#8217;t anymore. I hacked NuSoap to work around their bug, then they fixed their bug and the hackfix broke stuff.</p>
<p>Adobe actually doing something right. It&#8217;s astonishing, I know. Don&#8217;t worry though, I&#8217;m sure they&#8217;re already back to being their usual incompetent selves&#8230;</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/captainrichard.wordpress.com/381/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/captainrichard.wordpress.com/381/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/captainrichard.wordpress.com/381/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/captainrichard.wordpress.com/381/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/captainrichard.wordpress.com/381/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/captainrichard.wordpress.com/381/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/captainrichard.wordpress.com/381/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/captainrichard.wordpress.com/381/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/captainrichard.wordpress.com/381/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/captainrichard.wordpress.com/381/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/captainrichard.wordpress.com/381/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/captainrichard.wordpress.com/381/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/captainrichard.wordpress.com/381/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/captainrichard.wordpress.com/381/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=captainrichard.wordpress.com&amp;blog=9185794&amp;post=381&amp;subd=captainrichard&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://captainrichard.wordpress.com/2010/05/03/its-over/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/4a9ecb596a21b9b4662e0c87becd6029?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Richard</media:title>
		</media:content>
	</item>
		<item>
		<title>One More Reason To Hate Adobe</title>
		<link>http://captainrichard.wordpress.com/2010/04/07/one-more-reason-to-hate-adobe/</link>
		<comments>http://captainrichard.wordpress.com/2010/04/07/one-more-reason-to-hate-adobe/#comments</comments>
		<pubDate>Wed, 07 Apr 2010 15:43:31 +0000</pubDate>
		<dc:creator>Richard</dc:creator>
				<category><![CDATA[Epic fails]]></category>
		<category><![CDATA[IQP]]></category>

		<guid isPermaLink="false">http://captainrichard.wordpress.com/?p=371</guid>
		<description><![CDATA[So if anyone else out there is like me, you&#8217;ve been encountering a car wreck at the intersection of Outlook 2007 and Adobe Reader since October. Or maybe longer. October was when I started migrating my computers to Windows 7, &#8230; <a href="http://captainrichard.wordpress.com/2010/04/07/one-more-reason-to-hate-adobe/">Continue reading <span class="meta-nav">&#8594;</span></a><img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=captainrichard.wordpress.com&amp;blog=9185794&amp;post=371&amp;subd=captainrichard&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>So if anyone else out there is like me, you&#8217;ve been encountering a car wreck at the intersection of Outlook 2007 and Adobe Reader since October. Or maybe longer.</p>
<p>October was when I started migrating my computers to Windows 7, and since we&#8217;re in the 21st century now, I figured it was time to bid 32-bit Windows adieu and move on to a 64-bit flavor. Which was when I discovered a really annoying bug. On 64-bit Windows 7 (and 64-bit Vista as well) the Adobe Reader previewer doesn&#8217;t work in Outlook. So if a PDF is attached to a message, I can&#8217;t look at it without firing up the Reader application. Not a <em>huge</em> problem, just an annoying one.</p>
<p>Not knowing about the fact that it was a problem in 64-bit Vista too (since that was an abomination that I absolutely despised), I figured this was an issue with Adobe Reader that would get fixed soon. HA! Earlier today, I got fed up with this and decided to see if anyone out on the Intertubes had a solution or a workaround. <a href="http://forums.adobe.com/thread/303008" target="_blank">This thread</a> on Adobe&#8217;s forums was the first thing I stumbled on to. Apparently, this is a bug that <em>everyone knows about</em> but Adobe has <strong>ignored</strong> for <em><strong>three frakkin&#8217; YEARS!</strong></em></p>
<p>It gets worse: the fix is drop-dead simple. Change two registry keys and you&#8217;re good to go! One of the posts in that thread linked to <a href="http://www.pretentiousname.com/adobe_pdf_x64_fix/index.html" target="_blank">this page</a> which provides a small program that applies the necessary changes. Naturally, as always when dealing with Adobe, there is a catch: Adobe&#8217;s installer will change the registry keys back to the wrong values when you update or re-install Adobe Reader. So you&#8217;ll need to hang on to that link and/or the program and re-apply the fix from time to time.</p>
<p>Words cannot express how angry this kind of crap makes me. I am seriously going to start a personal boycott of all things Adobe. Shouldn&#8217;t be too hard since the only thing I use (other than Flash Builder, which is another abomination that will be eradicated from my computers once the IQP is finished) is Adobe Reader. I&#8217;ve heard good things about Foxit Reader, which I&#8217;m going to try out. I might make another post later about my experiences with that.</p>
<p>And now, in IQP news:</p>
<p>After I bitched in my last post about how Adobe said that it could take up to two weeks to approve my request for a free FB4 license, Professor Danneels e-mailed us to say that, &#8220;previously this approval happened very quickly&#8221; so we wouldn&#8217;t be waiting too long. HA! Earlier this morning, I got an e-mail from Adobe in response to my e-mail asking them to expedite my request:</p>
<blockquote><p>Hi</p>
<p>I’m afraid there is a back log due to the large volumes of registrations. Your registration will be viewed shortly.</p></blockquote>
<blockquote><p>Alistair Hill</p></blockquote>
<p>I&#8217;m not sure what&#8217;s more pathetic: the fact that it took them <em>four business days</em> to answer my e-mail or the fact that the response is completely unhelpful. It doesn&#8217;t even tell me exactly <em>when</em> they&#8217;ll review my request, just that it&#8217;ll happen &#8220;shortly&#8221; which could be Adobe-speak for a day, a <em>year</em>, or an <strong>eternity</strong> for all I know. Their response (or rather, the lack thereof) to the PDF previewer bug certainly is not encouraging. Once again, thanks for nothing, Adobe&#8230;</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/captainrichard.wordpress.com/371/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/captainrichard.wordpress.com/371/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/captainrichard.wordpress.com/371/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/captainrichard.wordpress.com/371/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/captainrichard.wordpress.com/371/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/captainrichard.wordpress.com/371/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/captainrichard.wordpress.com/371/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/captainrichard.wordpress.com/371/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/captainrichard.wordpress.com/371/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/captainrichard.wordpress.com/371/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/captainrichard.wordpress.com/371/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/captainrichard.wordpress.com/371/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/captainrichard.wordpress.com/371/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/captainrichard.wordpress.com/371/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=captainrichard.wordpress.com&amp;blog=9185794&amp;post=371&amp;subd=captainrichard&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://captainrichard.wordpress.com/2010/04/07/one-more-reason-to-hate-adobe/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/4a9ecb596a21b9b4662e0c87becd6029?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Richard</media:title>
		</media:content>
	</item>
	</channel>
</rss>
