<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Neural Core Dump &#187; Technology</title>
	<atom:link href="http://www.jeffdarlington.com/category/technology/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.jeffdarlington.com</link>
	<description>The personal blog of Jeffrey T. Darlington, creator of General Protection Fault</description>
	<lastBuildDate>Sat, 06 Mar 2010 15:00:00 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>WinHasher 1.6</title>
		<link>http://www.jeffdarlington.com/2010/02/08/winhasher-1-6/</link>
		<comments>http://www.jeffdarlington.com/2010/02/08/winhasher-1-6/#comments</comments>
		<pubDate>Mon, 08 Feb 2010 16:57:21 +0000</pubDate>
		<dc:creator>Jeff</dc:creator>
				<category><![CDATA[Security]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[Technology]]></category>
		<category><![CDATA[WinHasher]]></category>

		<guid isPermaLink="false">http://www.jeffdarlington.com/?p=356</guid>
		<description><![CDATA[Wow! A non-Twitter digest post! Amazing!
This is a quickie to let you guys now I&#8217;ve just released WinHasher 1.6. This is a minor release containing a few cosmetic and minor functional changes, so there&#8217;s no need to upgrade unless the features or bug fixes listed below seem worth the effort.

Added a progress indication message for [...]]]></description>
			<content:encoded><![CDATA[<p>Wow! A non-Twitter digest post! Amazing!</p>
<p>This is a quickie to let you guys now I&#8217;ve just released <a title="WinHasher" href="http://www.gpf-comics.com/dl/winhasher/">WinHasher</a> 1.6. This is a minor release containing a few cosmetic and minor functional changes, so there&#8217;s no need to upgrade unless the features or bug fixes listed below seem worth the effort.</p>
<ul>
<li>Added a progress indication message for all the console applications. Previously, these programs simply went off into lala land when you kicked them off, kind of like the original GUI version did, giving you no indication how far along things have come.  Now the program displays what it&#8217;s doing (&#8220;Computing SHA-1 of&#8230;&#8221;) and then a percentage complete as it works.  Once complete, it displays the resulting hash as it did before. I thought about making the progress indicator &#8220;graphical&#8221; with little periods, hyphens, or equal signs, but the percentage was a lot easier to do (and I&#8217;m lazy).</li>
<li>Added a &#8220;case kludge&#8221; for comparing computed hashes against reference hashes (i.e. digests copied from a website). Typically, most sites will display hashes as a lower-case hexadecimal string, which is why I made that the default. However, I and other users have run into occasions where a download site presents the hash as upper-case hexadecimal. Unfortunately, if you paste this value into the comparison field on either the main WinHasher form or the &#8220;Send To&#8221; result dialog, the comparison will fail simply because the case does not match, even if the actual hash values do. Technically, you can tweak the command line of the &#8220;Send To&#8221; shortcut or change the output type on the main form, but either can be a pain when you know what you expect to see. So I&#8217;ve added a little bit of code that looks at what the comparison expects (i.e. &#8220;I&#8217;m looking for a lower-case hex string&#8221;) and adjusts the case of the comparison field if necessary. This means lower-case hex and Bubble Babble comparisons are forced to lower-case, while upper-case hex is forced to upper-case, no matter what case the original pasted-in string was. In the case of Base64, which includes mixed case characters, the comparison string is compared unaltered. After any case adjustment, the hash comparison occurs as previously designed.</li>
<li>Fixed a bug that wasn&#8217;t displaying the icon correctly within the application itself. Oopsy.</li>
</ul>
<p>For those who don&#8217;t know, WinHasher is a cryptographic hash generator for Microsoft .NET. It is roughly analogous to digest programs on other platforms (such as &#8220;openssl dgst&#8221; from OpenSSL) but designed for Windows and other .NET platforms. It lets you verify the integrity of downloads and determine whether changes have been made to files. It does <em><strong>NOT</strong></em> guarantee the authenticity of a file; for that, use cryptographic signatures such those produced by PGP or GnuPG. It also lets you create hashes of arbitrary text, which is handy for generating strong &#8220;passwords&#8221;, although I&#8217;m working on a different project that will do a much better job of this particular task. [Looks around shifty-eyed.]</p>]]></content:encoded>
			<wfw:commentRss>http://www.jeffdarlington.com/2010/02/08/winhasher-1-6/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Why there isn&#8217;t (and likely never will be) a GPF iPhone app</title>
		<link>http://www.jeffdarlington.com/2009/11/30/why-there-isnt-and-likely-never-will-be-a-gpf-iphone-app/</link>
		<comments>http://www.jeffdarlington.com/2009/11/30/why-there-isnt-and-likely-never-will-be-a-gpf-iphone-app/#comments</comments>
		<pubDate>Mon, 30 Nov 2009 20:38:21 +0000</pubDate>
		<dc:creator>Jeff</dc:creator>
				<category><![CDATA[GPF]]></category>
		<category><![CDATA[Gadgets]]></category>
		<category><![CDATA[Technology]]></category>
		<category><![CDATA[Webcomics]]></category>
		<category><![CDATA[iPhone]]></category>

		<guid isPermaLink="false">http://www.jeffdarlington.com/?p=329</guid>
		<description><![CDATA[There&#8217;s an interesting trend in webcomics for a push onto mobile devices. I think it started with Clickwheel.com (which apparently no longer exists, hence no link), which tried to bring comics to the iPod by encoding them as short video files syndicated like a podcast. I thought this was an interesting idea, and I was [...]]]></description>
			<content:encoded><![CDATA[<p>There&#8217;s an interesting trend in webcomics for a push onto mobile devices. I think it started with Clickwheel.com (which apparently no longer exists, hence no link), which tried to bring comics to the <a title="iPod article on Wikipedia" href="http://en.wikipedia.org/wiki/IPod">iPod</a> by encoding them as short video files syndicated like a <a title="Podcast article on Wikipedia" href="http://en.wikipedia.org/wiki/Podcast">podcast</a>. I thought this was an interesting idea, and I was even offered an opportunity to get into it on the ground flood, right when it started. However, I had a number of technical and rights management questions about the service and dragged my feet, eventually losing out on the deal and never following up on it. Given that the domain is now owned by a Norwegian ISP that <a title="Google Safe Browsing diagnostic page for AS34989 (SERVETHEWORLD)" href="http://google.com/safebrowsing/diagnostic?site=AS:34989">apparently serves up malware</a>, I&#8217;d say apathy may have been the right choice.</p>
<p>Nowadays the hot new distribution medium is to put an app on the (seemingly) ubiquitous <a title="iPhone article on Wikipedia" href="http://en.wikipedia.org/wiki/IPhone">iPhone</a> (or its <a title="GSM article on Wikipedia" href="http://en.wikipedia.org/wiki/GSM">GSM</a>-crippled sibling, the iPod Touch). <a title="Keenspot" href="http://www.keenspot.com/">Keenspot</a> was the first place I remember seeing webcomic iPhone apps showing up, although I can&#8217;t say for certain that they started the trend. Since then, I&#8217;ve seen iPhone apps for various comics popping up here and there. The one I&#8217;ve been watching the closest has been Howard Tayler&#8217;s <a title="Schlock Mercenary" href="http://www.schlockmercenary.com/"><em>Schlock Mercenary</em></a> (since Howard and I follow each other on <a title="Twitter" href="http://twitter.com/">Twitter</a> and <a title="Facebook" href="http://www.facebook.com/">Facebook</a>). It&#8217;s a curious trend to be certain, and it certainly has an element of &#8220;hipness&#8221; to it. After all, the iPhone is the &#8220;it&#8221; mobile device these days. And one thing <em>every</em> webcartoonist wants is more eyeballs reading their comics. Certainly it makes sense to go where those eyeballs are, to reach as many potential readers as possible.</p>
<p>Then a thought occurred to me: No one has really asked <em>me</em> why there&#8217;s no <a title="General Protection Fault" href="http://www.gpf-comics.com/">GPF</a> iPhone app. Certainly it&#8217;s a valid question, and I&#8217;m even more surprised it hasn&#8217;t been brought up yet. I <em>know</em> a number of you out there use iPhones, as I&#8217;ve read your comments and seen your screen shots of the GPF site in the past. So I thought about this for a while and came up with a list of reasons why we don&#8217;t have an app, then decided to document those reasons here so I can point folks to one place so I won&#8217;t have to repeat myself. I thought about putting this in the <a title="GPF News" href="http://www.gpf-comics.com/news/">GPF News</a>, but since it&#8217;s more of an opinion piece than a news item, it probably belongs here instead. (There will probably be links from the <a title="The GPF FAQ" href="http://www.gpf-comics.com/faq.php">FAQ</a> eventually, if nothing else.)</p>
<p>The primary reason there is no dedicated GPF app for the iPhone will surely come as a shock to those out there who can&#8217;t get enough of their favorite beloved Apple device. I&#8217;ve never been one for great diplomacy or delicacy, so I&#8217;m afraid I can only be my blunt, bullish, blundering self. I really hate to say this, but it has to be said:</p>
<p>The iPhone isn&#8217;t the last word in mobile computing.</p>
<p>Now, before the fan boys start picking up your torches and pitchforks, let me elaborate. I have nothing against the iPhone. In fact, at one point, I seriously considered getting one. The GPF Year Nine story <a title="GPF Archive: Monday, May 26, 2008" href="http://www.gpf-comics.com/archive.php?d=20080526">&#8220;iDilemma&#8221;</a> is actually semi-autobiographical. (<a title="GPF Premium" href="http://www.gpf-comics.com/premium/">GPF Premium</a> subscribers should check out the Author&#8217;s Notes for that story to see how it diverges from real life.) In the end, it all boiled down to economics, just as it did for Nick and Ki; it was less expensive for me to buy my current <a title="Treo 700p article on Wikipedia" href="http://en.wikipedia.org/wiki/Treo_700p">Treo 700p</a> without subsidy than for me to break my contract with my current carrier, switch to AT&amp;T, buy the iPhone plus another phone for my wife, and so on. While I passed on the device itself, several of my coworkers at my day job have iPhones, so I can pretty much get access to one to play with any time I wish. Thus I&#8217;m familiar enough with how it works and all the whiz-bang spiffiness it purports to have. I know a thing or two about what it does right, what it does wrong, and how it&#8217;s revolutionized the mobile computing or &#8220;<a title="Smartphone article on Wikipedia" href="http://en.wikipedia.org/wiki/Smartphone">smartphone</a>&#8221; industry.</p>
<p>That said, the iPhone&#8217;s 30+ million units pales in comparison to the number of <a title="BlackBerry article on Wikipedia" href="http://en.wikipedia.org/wiki/BlackBerry">BlackBerry</a> devices in circulation. The iPhone represents one device, one platform, on one network. BlackBerries are available in many form factors from almost every wireless carrier. On top of that, <a title="Android (operating system) article on Wikipedia" href="http://en.wikipedia.org/wiki/Android_%28operating_system%29">Android</a> is a rapidly-growing platform; while it hasn&#8217;t yet matched the numbers of the iPhone, like the BlackBerry it comes in many flavors from many manufacturers and can be found on almost every network. It won&#8217;t be long before Android phones overtake iPhones in number by mere aggregation of disparate devices. And while some folks dismiss <a title="Palm, Inc. article on Wikipedia" href="http://en.wikipedia.org/wiki/Palm,_Inc.">Palm</a> as a has-been in the market, the <a title="Palm Pre article on Wikipedia" href="http://en.wikipedia.org/wiki/Palm_Pre">Pre</a> and the <a title="Palm Pixi article on Wikipedia" href="http://en.wikipedia.org/wiki/Palm_Pixi">Pixi</a> are selling modestly and may represent a comeback for the company. (Don&#8217;t forget the many of us who, ahem, still use good ol&#8217; <a title="Palm OS article on Wikipedia" href="http://en.wikipedia.org/wiki/Palm_OS">Palm OS</a>, myself included, despite its age.) No matter how much we&#8217;d all wish it just went away, <a title="Windows Mobile article on Wikipedia" href="http://en.wikipedia.org/wiki/Windows_Mobile">Windows Mobile</a> still exists and people are still suckered into buying phones with it installed. And all of this ignores the biggest player of all in the field: <a title="Symbian OS article on Wikipedia" href="http://en.wikipedia.org/wiki/Symbian_OS">Symbian</a>, which runs about half of all mobile phones in the world.</p>
<p>Right there, I&#8217;ve listed off seven mobile platforms, including the iPhone. To pick one would severely limit the potential to reach new customers. To pick one with such a small market share (~14% as of Q2 2009) would be even more limiting. If my goal were to reach as many eyeballs as possible, why would I focus on one tiny segment of the market, simply because it&#8217;s the one everyone is talking about at the moment? After all, everyone might be talking about something else in a couple months.</p>
<p>Of course, this plethora of platforms opens up another can of worms. My goal with GPF has always been to be as accessible as possible to as many people as possible. Although the comic is (currently) confined to the English speaking world, it <em>is</em> available to just about anyone with a Web browser. I carefully designed the site to be as cross-browser compatible as possible, sometimes even sticking with older technologies longer than I should so the site will keep working in older browsers. If nothing else, it degrades gracefully and is still functional if you don&#8217;t have something top of the line. For that matter, thanks t0 our <a title="Oh No Robot" href="http://www.ohnorobot.com/">Oh No Robot</a> transcriptions, you can even read 95+% of the archives with a text browser! That also means screen readers for the visually impaired can be used to enjoy the strip. It&#8217;s not ideal, of course, but it&#8217;s functional, and it&#8217;s helped us garner fans in ways you might not expect.</p>
<p>So if I&#8217;m not going limit myself by building a specialized app for <em>one</em> mobile platform, does that mean I&#8217;m going to end up making applications for <em>all</em> mobile platforms? No, that too is an exercise in futility. Every mobile platform has its own <a title="Software development kit article on Wikipedia" href="http://en.wikipedia.org/wiki/Software_development_kit">SDK</a> with its own quirks. The iPhone and <a title="webOS article on wikipedia" href="http://en.wikipedia.org/wiki/WebOS">webOS</a> use HTML/CSS/JavaScript, Android uses its own version of Java, and BlackBerry, Palm OS, Symbian, and everything else requires specialized cross-compilers and development environments. No, developing for individual platforms isn&#8217;t the answer. It just turns everything into a development and maintenance nightmare, one that is ridiculously expensive from a financial, time, and resource perspective. What I need is something that works <em>everywhere,</em> regardless of platform, using resources common to all devices out there.</p>
<p>And the answer, my friend, is the same as it is the desktop: the Web browser.</p>
<p>What piece of software do all the nifty little gadgets listed above have in common? A Web browser, of course. Some make it the core of everything the device does, like in webOS and to some extent the iPhone. To others, it&#8217;s just another app available among many. But even the most rudimentary phones have simple browsers these days, enough to grab small snippets of HTML and display it competently. Even my Treo, which most iPhone users would likely scoff at, allows me to do the odd bit of online banking, news reading, and forum checking. While no single mobile platform is ubiquitous, the Web browser itself comes alarmingly close.</p>
<p>So I&#8217;m happy to announce the creation of GPF Mobile, the official mobile-optimized version of the GPF site. There&#8217;s nothing special to learn or type in; just visit the main GPF site at the usual URL and it will detect your mobile device and bounce it to the mobile site seamlessly. With the exception of one or two multimedia-rich updates, you can read the entire comic archive, browse the News archive, read the <a title="GPF Forums" href="http://www.gpf-comics.com/forum/">forum</a>, or search the <a title="The Official GPF Wiki" href="http://www.gpf-comics.com/wiki/">wiki</a>. If you are a Premium subscriber, you can do all of this ad free, as well as get mobile access to the Jeff&#8217;s Sketchbook and Rumor Mill archives. The entire mobile site is specially optimized to minimize clutter and trim bandwidth, so it loads fast and doesn&#8217;t break your data plan. But if you have a smartphone with a bit more horsepower and a fatter pipe, switching to the &#8220;full&#8221; site is as simple as a few extra clicks. Just use our site to set a cookie (and you choose its duration) and have access to the full size for as long as you choose. I&#8217;ve been using the mobile site myself for months now, especially to keep track of the forum while I&#8217;m on the road, and it&#8217;s been beta-tested by a number of hand-picked Faulties. It&#8217;s not necessarily pretty (in fact, it&#8217;s downright Spartan), but it <em>does</em> let you get your GPF fix on the go.</p>
<p>Best of all, it works with BlackBerries, Android, webOS, Palm OS, Symbian, Windows Mobile, and&#8230; yes, folks, wait for it&#8230; the iPhone. I guarantee that bookmark will take up less valuable storage space than some bloated, unnecessary &#8220;app&#8221;.</p>]]></content:encoded>
			<wfw:commentRss>http://www.jeffdarlington.com/2009/11/30/why-there-isnt-and-likely-never-will-be-a-gpf-iphone-app/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>A/V Harmony</title>
		<link>http://www.jeffdarlington.com/2009/11/19/av-harmony/</link>
		<comments>http://www.jeffdarlington.com/2009/11/19/av-harmony/#comments</comments>
		<pubDate>Thu, 19 Nov 2009 18:21:51 +0000</pubDate>
		<dc:creator>Jeff</dc:creator>
				<category><![CDATA[Gadgets]]></category>
		<category><![CDATA[Technology]]></category>

		<guid isPermaLink="false">http://www.jeffdarlington.com/?p=323</guid>
		<description><![CDATA[Recently, our family took a long, hard look at some stock options my wife had been sitting on for a while and discovered that, even in the current questionable economic client, these options were looking pretty good. Well, a bit better than just &#8220;pretty good&#8221;. How about we say, &#8220;even after taxes, &#8216;pretty good&#8217; still [...]]]></description>
			<content:encoded><![CDATA[<p>Recently, our family took a long, hard look at some stock options my wife had been sitting on for a while and discovered that, even in the current questionable economic client, these options were looking pretty good. Well, a bit better than just &#8220;pretty good&#8221;. How about we say, &#8220;even after taxes, &#8216;pretty good&#8217; still looks like an understatement&#8221;. After agonizing for a while over whether we should pull them all now or wait for the chance for the stock to go up even further, we decided to pull the trigger and take them all at once. After immediately moving the money to the savings account (where it will earn the most interest while still remaining liquid), we sat down and rationed how to slice up our piping hot and fresh money pie. Healthy chunks have or will go into numerous investments, of course, including the boy&#8217;s college fund and both long and short-term investments with decent returns. But we also wanted to keep some of that for ourselves, just to have a little fun. We&#8217;re planning on getting Ben a nice play set next spring or summer, and earmarked some to buy a few &#8220;toys&#8221; for ourselves.</p>
<p>The biggest &#8220;toys&#8221; are a new 55&#8243; (139.7 cm for you metric-heads) LED <a title="LCD television article on Wikipedia" href="http://en.wikipedia.org/wiki/LCD_television">LCD high-definition television</a>, wall mounted, and a <a title="Blu-ray Disc article on Wikipedia" href="http://en.wikipedia.org/wiki/Blu-ray_Disc">Blu-ray</a> capable home theater system. Let me tell you folks, I was one of those people skeptical of the &#8220;<a title="High-definition television article on Wikipedia" href="http://en.wikipedia.org/wiki/High-definition_television">high definition</a>&#8221; craze when I had no basis of comparison. But after watching good ol&#8217; standard DVDs on this thing and comparing them to what we got on our old 57&#8243; (144.78 cm) projection TV, the difference is amazing. And that&#8217;s with &#8220;standard&#8221; definition DVDs! I think we still haven&#8217;t played an actual Blu-ray disc in this thing yet. And while <a title="Surround sound article on Wikipedia" href="http://en.wikipedia.org/wiki/Surround_sound">surround sound</a> is generally relegated to a gimmick in my book, I will admit that at times it&#8217;s a pretty <em>good</em> gimmick. I only wish now I actually had time to <em>watch</em> anything.</p>
<p>But none of that is the point of this post.</p>
<p>Rather, this is about the unilateral proliferation of the ubiquitous remote control. You know what I&#8217;m talking about. Every <a title="Audio-visual article on Wikipedia" href="http://en.wikipedia.org/wiki/Audio-visual">A/V</a> device comes with one, and no matter what the manual tells you, you can <em>try</em> to program it to control your other devices, but you inevitably <em>can&#8217;t.</em> Either one device partially works but the rest don&#8217;t, or there&#8217;s one or two critical buttons that you absolutely need that never get mapped, or your device <em>x</em> from manufacturer <em>y</em> is not supported by the remote for device <em>a</em> from manufacturer <em>b.</em> So you end up with three or more remote controls sitting on the arm of your couch, each dedicated to one device and only halfheartedly supporting one or more others, if you&#8217;re lucky. You might be able to use the DVD player remote to turn on the TV and control the volume, but you have to switch back to the TV remote to get the aspect ratio right or switch the input mode.</p>
<p>Our recent purchase made our ever-breeding collection of remotes even worse. We were fortunate enough that the <a title="TiVo article on Wikipedia" href="http://en.wikipedia.org/wiki/TiVo">Tivo</a> remote fully replaced the cable box remote (since the Tivo controls the cable box anyway), but now we were stuck with the Tivo, the TV, the home theater, and the old five-disc DVD player (kept in the loop mostly for its multi-disc capacity), all leaving remotes on the couch. (After about ten seconds of thought, we opted to retire the old <a title="Videocassette recorder article on Wikipedia" href="http://en.wikipedia.org/wiki/Videocassette_recorder">VCR</a> completely, eliminating a potential <em>fifth</em> remote.) Turning things on or switching activities required the &#8220;remote shuffle&#8221;, switching from one device to another to get everything just right. Worst of all, many times there were only a handful of buttons on each remote that were really needed for everyday use, meaning a lot of space, plastic, and silicon was being wasted.</p>
<p>Like any good geek, I thought that there <em>had</em> to be a better way. <a title="Larry Wall article on Wikipedia" href="http://en.wikipedia.org/wiki/Larry_Wall">Larry Wall</a>&#8217;s first and second virtues of a great programmer are laziness and impatience, and I have both in spades. (Hubris, the third virtue, is something I struggle with as I have a chronic case of humility.) If only there were a way for me to consolidate all those useless logs into one, a single device that would let me push a single button and have everything just do what it needed to do: turn on what needed to be on and <em>only</em> those devices, put the TV and home theater on the right inputs, adjust settings for a device for one activity and then again when the activity changes, and make sure everything gets turned off when we&#8217;re heading out the door.  I wanted something &#8220;scriptable&#8221;, something that with one button press would send off a chain of commands and &#8220;just do it&#8221;. Yes, there are &#8220;universal&#8221; remotes with macro languages out there that you can program to do just that. But I&#8217;m lazy (virtue #1); I wouldn&#8217;t mind a good starting point where most of the work is already done, and I don&#8217;t want to exert any more effort that I have to to make everything &#8220;just right&#8221;.</p>
<p>If you hadn&#8217;t guessed, we eventually purchased a <a title="Logitech Harmony Remote article on Wikipedia" href="http://en.wikipedia.org/wiki/Logitech_Harmony_Remote">Logitech Harmony remote</a>, a Harmony One to be exact. For those whose definition of a &#8220;<a title="Universal remote article on Wikipedia" href="http://en.wikipedia.org/wiki/Universal_remote">universal remote</a>&#8221; consists of a $25-50 cheap plastic brick you can pick up at any drug store that &#8220;learns&#8221; by you pressing buttons on the old remote while pointing it at the new one, the Harmony line might seem like overkill. With prices <em>starting</em> around $100 and skyrocketing from there, Harmony remotes aren&#8217;t cheap. But for the premium price you get a ton of premium features that quickly make you wonder why you ever put up with the remote shuffle in the first place.</p>
<p>Harmony remotes are driven primarily by a single online database of devices. Using the Harmony software, you enter all the model numbers and it will look them up in the database, returning a pretty good mapping for all their remote keys. The database is pretty extensive, with tens of thousands of devices from thousands of manufacturers. Even our brand new TV (just released when we purchased it according to the manufacturer&#8217;s website) and home theater (which <em>still</em> doesn&#8217;t show up on their website) were there, ready to go. Best of all, <em>all</em> of the Harmony remotes share the same database, so the cheapest of the line can control the exact same devices as the most expensive. Of course, sometimes the database entries are inaccurate or incomplete since they are often populated by other users. However, Harmony remotes can learn just like the cheap URs can. I&#8217;ve been able to add a number of buttons from our home theater remote that were missed in the database import, and hopefully others will be able to share that effort.</p>
<p>To control your devices, Harmony uses an &#8220;activity&#8221; based process that may take a little bit of getting used to. You first need to decide what activities you plan to perform with your devices, such as &#8220;watch TV&#8221;, &#8220;watch DVD&#8221;, &#8220;play a game console&#8221;, etc. Once you have this list, you select what devices are needed for each activity and either let the software map the buttons for you or manually map them yourself. For example, our &#8220;watch TV&#8221; activity involves the TV, home theater (f0r audio), and Tivo box (which controls the cable). Many of the buttons on the remote map to the Tivo&#8217;s controls, so that&#8217;s how we switch channels, control video flow, etc. The volume and mute buttons are mapped to the home theater (the TV speakers are turned off). For the Harmony One, old remote buttons that don&#8217;t have an easy mapping (like the infamous Tivo &#8220;thumbs up&#8221; and &#8220;thumbs down&#8221; buttons) are mapped to &#8220;soft buttons&#8221; on an LCD touch screen; cheaper Harmony remotes have a simpler text LCD with hard buttons next to each option. Default mappings are easy enough to modify with the Harmony software. When the activity is started, all the relevant devices are turned on if necessary and are switched to whatever inputs and settings you specify. While you remain in that activity, the buttons remain mapped to where you set them. At any time you can switch to a &#8220;device mode&#8221; that controls a single device exclusively, mapping all the buttons to control that once device. Once you&#8217;re done with taht, you can simply switch back to activity mode to restore the activity mappings. When you finish the activity or switch to a different one, devices are turned off and reconfigured as necessary to fit the new role and your button mappings change as appropriate. Hitting the &#8220;power&#8221; button doesn&#8217;t technically turn everything off, but rather ends the current activity and turns off all the devices currently in use&#8230; which is often the same thing.</p>
<p>The Harmony is not without its quirks, of course. As previously mentioned, the database isn&#8217;t always accurate and most likely you&#8217;ll need to learn a few commands and remap a few keys. This is simple enough and just requires a few minutes button pressing and a sync with your computer. Initial setup isn&#8217;t for the faint of heart, so non-techies may want their favorite tech-savvy relative set things up for them at first. After that, though, using the remote can be very intuitive if your key mappings are set up correctly. Although technically not the Harmony&#8217;s fault, some devices still require you to tweak things after an activity has started. For example, our TV does not provide a direct way to specify the aspect ratio (i.e. you have to cycle through the options by repeatedly pressing a single button), so that can&#8217;t be scripted as part of the activity. However, it&#8217;s easy enough to map the TV aspect ratio button to a soft button in any activity, making that function readily available at all times. It obviously can&#8217;t control hardware switches—for example, our five-disc DVD and the Wii share the same component video input on the TV, so a small splitter box combines both streams into one—so you may still have to walk up and flip a switch every now and then. And while it often does a good enough job of it, the remote occasionally forgets what state a certain device is in and turns it off when it&#8217;s supposed to be turning it on. That, however, is simple enough to fix using an integrated help function. (You can&#8217;t just go in and turn the device back on in device mode, though; you have to use the help so the device state manager <em>knows</em> that the device is supposed to be on.)</p>
<p>So now we have a single remote controlling, either directly or indirectly, five A/V devices. We&#8217;ve only pulled out the old remotes once or twice, primarily to learn the missing keys and add them to the Harmony database. We feel more confident that we can hand this remote to one of our less tech-savvy relatives and not come back with infinite picture-in-picture nesting going on and with all the colors shifted blue. I definitely think this thing was a worth-while purchase for us, and I&#8217;d heartily recommend it for anyone tired of doing the remote shuffle.</p>
<p>(I should add the disclaimer, of course, that I was not paid for this &#8220;endorsement&#8221;, nor was I given any promotions, samples, or &#8220;freebies&#8221; in return for a favorable review. No, I&#8217;m just a happy customer who paid full price for a nifty device that I really enjoy and I want to share that enjoyment with others. Make of that claim anything you see fit.)</p>]]></content:encoded>
			<wfw:commentRss>http://www.jeffdarlington.com/2009/11/19/av-harmony/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Need help: Removing old certificate revocation lists in Windows</title>
		<link>http://www.jeffdarlington.com/2009/07/09/need-help-removing-old-certificate-revocation-lists-in-windows/</link>
		<comments>http://www.jeffdarlington.com/2009/07/09/need-help-removing-old-certificate-revocation-lists-in-windows/#comments</comments>
		<pubDate>Thu, 09 Jul 2009 18:50:45 +0000</pubDate>
		<dc:creator>Jeff</dc:creator>
				<category><![CDATA[Security]]></category>
		<category><![CDATA[Technology]]></category>
		<category><![CDATA[.NET]]></category>
		<category><![CDATA[authentication]]></category>
		<category><![CDATA[C#]]></category>
		<category><![CDATA[client certificate]]></category>
		<category><![CDATA[CRL]]></category>
		<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[Windows]]></category>

		<guid isPermaLink="false">http://www.jeffdarlington.com/?p=260</guid>
		<description><![CDATA[I have a bit of a quandary that&#8217;s got me effectively stuck on a task at my day job. Thus far, Google and every other resource I&#8217;ve searched have been little help. In the unlikely event somebody out there that reads this blog (or at least gets the update notices via RSS, Twitter, or the [...]]]></description>
			<content:encoded><![CDATA[<p>I have a bit of a quandary that&#8217;s got me effectively stuck on a task at my day job. Thus far, Google and every other resource I&#8217;ve searched have been little help. In the unlikely event somebody out there that reads this blog (or at least gets the update notices via RSS, Twitter, or the other various feeds) can help me, I&#8217;m going throw this out and hope it garners some feedback.</p>
<p>I&#8217;ll try to keep this as short as possible. Our production Web site, built in ASP.NET and C# and running in IIS on Windows Server 2003, recently added authentication via client certificates stored on users&#8217; smart cards. We allow users to attach their smart card certificates to their existing account, then authenticate them by verifying their certificate, looking up the user account by that certificate&#8217;s fingerprint, and loading their profile. These certificates are signed by a trusted third-party certificate authority (CA) owned by the client and every morning we download the latest certificate revocation lists (CRLs) so we can reject certificates as they are revoked by the CA. My download process is working fine and dandy, so that&#8217;s not the problem; neither is the actual import process, as I know the command line options for Microsoft&#8217;s <code>certutil</code> command that will import the CRLs.</p>
<p>My problem stems from removing the <em>old</em> CRLs, which so far I haven&#8217;t been able to accomplish without going into the Microsoft Management Console and clicking through the GUI. We&#8217;ve had problems with the size of the certificate store, as the CRLs tend to be very large and we have to remove the old ones before the new ones can be imported. I&#8217;ve tried the few suggestions I&#8217;ve found online that haven&#8217;t seemed to work, such as a command-line switch for <code>certutil</code> that&#8217;s supposed to overwrite the old CRL with the new one (it just imports the new one and leaves the old one in place). We want to automate this process into a scheduled task, so it can run early in the morning when our users aren&#8217;t on the system and without human intervention.</p>
<p>Here are the tools available to me:</p>
<ul>
<li>As previously stated, <code>certutil</code> (part of Microsoft&#8217;s Certificate Services package);</li>
<li>Windows PowerShell;</li>
<li>Anything I can throw into a .NET assembly and build an executable out of (preferably C# code);</li>
<li>Good old fashioned batch files.</li>
</ul>
<p>I&#8217;ll tell you, I&#8217;m pretty frustrated and exhausted by this task. It&#8217;s not that I can&#8217;t do the research and figure it out for myself; I <em>have</em> done the research, and everything I&#8217;ve read applies to certificates and not CRLs, and they&#8217;re not exactly a direct swap in usage. I&#8217;d prefer not to provide much more detail than this for security reasons.</p>
<p>For the time being, I&#8217;ve been manually removing the old CRLs through MMC and then running a batch script to do the import every morning as my first task. That&#8217;s working fine for now, when I&#8217;m in the office every morning, but I&#8217;ll be taking some vacation time soon that will start to cause problems. I swear, if this was OpenSSL and Apache on Linux, I&#8217;d have this solved in a heartbeat (or at least an afternoon). If you have any suggestions, please feel to post a comment or shoot me a direct e-mail at the usual address.</p>]]></content:encoded>
			<wfw:commentRss>http://www.jeffdarlington.com/2009/07/09/need-help-removing-old-certificate-revocation-lists-in-windows/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>WinHasher 1.5 Released</title>
		<link>http://www.jeffdarlington.com/2009/07/09/winhasher-1-5-released/</link>
		<comments>http://www.jeffdarlington.com/2009/07/09/winhasher-1-5-released/#comments</comments>
		<pubDate>Thu, 09 Jul 2009 15:43:03 +0000</pubDate>
		<dc:creator>Jeff</dc:creator>
				<category><![CDATA[Software]]></category>
		<category><![CDATA[Technology]]></category>
		<category><![CDATA[WinHasher]]></category>

		<guid isPermaLink="false">http://www.jeffdarlington.com/?p=257</guid>
		<description><![CDATA[Just posting a quick note to let you guys know I&#8217;ve bumped good ol&#8217; WinHahser to version 1.5. This is both a bug and feature release, so both of you using it will probably want to upgrade. Here&#8217;s a quick list of the changes:

Bug fix: When I wrote the hashing engine, I made sure to [...]]]></description>
			<content:encoded><![CDATA[<p>Just posting a quick note to let you guys know I&#8217;ve bumped good ol&#8217; <a title="WinHasher" href="http://www.gpf-comics.com/dl/winhasher/">WinHahser</a> to version 1.5. This is both a bug and feature release, so both of you using it will probably want to upgrade. Here&#8217;s a quick list of the changes:</p>
<ul>
<li>Bug fix: When I wrote the hashing engine, I made sure to use a 64-bit integer when computing the total sum of the size of all files in a multi-file comparison. This allowed for a whopping total of 8.05EB (exabytes, or millions of gigabytes) of data to be compared. Unfortunately, I used the wrong data type when running this calculation on a <em>single</em> file, using a 32-bit integer instead. That put the cap on a single file at around 2GB, which can easily be exceeded by a decent-sized DVD ISO. The really embarrassing thing here is that .NET&#8217;s <code>System.IO.FileStream</code> object uses a 64-bit integer for its <code>Length</code> attribute, meaning this was totally my mistake, not Microsoft&#8217;s. The end result here is that WinHasher would crash on files larger than 2GB since it would end up trying to calculate its percent complete on an overflowed negative value. I&#8217;ve updated the code so that the single-file length calculations also use 64-bit integers and now I can finally validate that <a title="The Fedora Linux Project" href="http://fedoraproject.org/">Fedora</a> 11 DVD ISO download. Note that there&#8217;s still a hard cap at 8.05EB whether your hashing a single file or you sum up multiple files together. While it&#8217;s possible to bump this up to an unsigned 64-bit integer and go for even more ridiculous large numbers, I seriously doubt anyone is going to be running a SHA-1 hash that large any time soon.</li>
<li>The &#8220;Send To&#8221; shortcuts call the GUI app via the command line to hash a file and throw the result up into a dialog box, making it convenient to right-click a file and quickly get a hash. Unfortunately, I was using a standard <code>MessageBox</code> object for this, meaning the hash was displayed in a read-only form that couldn&#8217;t be copied and pasted elsewhere to be compared. (It&#8217;s much easier to copy and paste two hashes into a text editor, for example, and visually scan the two lines for differences.) Well, I wasn&#8217;t the only one to find this annoying.  WinHasher user Todd Henry had issues with this too and suggested that I either put the hash result in a text box that could be copied and pasted elsewhere, or add a box where an externally produced hash (say from a Web site) could be pasted into the dialog and have WinHasher compare them. Interestingly enough, I was already planning to make that change when he wrote me, and now it&#8217;s there. Once WinHasher is done, it will display a new result dialog with both a copyable hash result field and a new &#8220;compare to&#8221; field that will take an external hash string and tell you if it matches or not.</li>
<li>The Hash Single File tab in the main GUI app also has a new &#8220;compare to&#8221; field that works in an identical fashion to the one in the result dialog described above. I didn&#8217;t see a need to add it to the Hash Text tab, and it would be redundant on the Compare Files tab.</li>
<li>And in the completely useless trivia department, I&#8217;ve added hooks in to my <a title="Subversion" href="http://subversion.tigris.org/">Subversion</a> clients to add the SVN revision number as the last part of the version number. This is more for my purposes than anything else, but now if you have a problem and can give me the full version number of the app, I know exactly what revision of the code you&#8217;re using.</li>
</ul>
<p>I realized after I updated the files and the site that I forgot to make any changes to the documentation to reflect these updates. Oh, well. I don&#8217;t think they&#8217;re major enough to sweat over, so I&#8217;ll leave those alone for now and make sure they get updated by the next release.</p>]]></content:encoded>
			<wfw:commentRss>http://www.jeffdarlington.com/2009/07/09/winhasher-1-5-released/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Why I&#8217;m dropping TWiT</title>
		<link>http://www.jeffdarlington.com/2009/04/21/why-im-dropping-twit/</link>
		<comments>http://www.jeffdarlington.com/2009/04/21/why-im-dropping-twit/#comments</comments>
		<pubDate>Tue, 21 Apr 2009 14:29:25 +0000</pubDate>
		<dc:creator>Jeff</dc:creator>
				<category><![CDATA[Miscellaneous]]></category>
		<category><![CDATA[Technology]]></category>
		<category><![CDATA[Leo Laporte]]></category>
		<category><![CDATA[podcast]]></category>
		<category><![CDATA[TWiT]]></category>

		<guid isPermaLink="false">http://www.jeffdarlington.com/?p=212</guid>
		<description><![CDATA[I hate breaking the drought of (real, non-Twitter summary) updates with a gripe fest, but this has been bothering me for a couple weeks and I just wanted to get this off my chest. If you don&#8217;t listen to the podcast &#8220;This Week in Tech&#8221; (or TWiT), feel free to ignore this post. Of course, [...]]]></description>
			<content:encoded><![CDATA[<p>I hate breaking the drought of (real, non-<a title="Twitter: jeffdarlington" href="https://twitter.com/jeffdarlington">Twitter</a> summary) updates with a gripe fest, but this has been bothering me for a couple weeks and I just wanted to get this off my chest. If you don&#8217;t listen to the podcast <a title="This Week in Tech" href="http://twit.tv/twit">&#8220;This Week in Tech&#8221;</a> (or TWiT), feel free to ignore this post. Of course, if you&#8217;ve <em>considered</em> listening but haven&#8217;t gotten around to it yet, this <em>might</em> be informative enough to help you reconsider, but I&#8217;ll leave that up to you to decide.</p>
<p>I&#8217;ve been a fan of <a title="Leoville.com" href="http://leoville.com/">Leo Laporte</a> for a number of years, ever since we first discovered <a title="TechTV article on Wikipedia" href="http://en.wikipedia.org/wiki/TechTV">TechTV</a> (before it died a miserable death at the hands of <a title="Paul Allen article on Wikipedia" href="http://en.wikipedia.org/wiki/Paul_Allen">Paul Allen</a> and <a title="G4 (TV channel) article on Wikipedia" href="http://en.wikipedia.org/wiki/G4_(TV_channel)">G4</a>). <a title="The Screen Savers article on Wikipedia" href="http://en.wikipedia.org/wiki/The_Screen_Savers">&#8220;The Screen Savers&#8221;</a> was one of our favorite shows and became a nightly staple in our house for several years. When Laporte left TechTV and &#8220;The Screen Savers&#8221; was canceled (or, more properly, devolved into <a title="Attack of the Show article on Wikipedia" href="http://en.wikipedia.org/wiki/Attack_of_the_Show">&#8220;Attack of the Show&#8221;</a>), we had a small sense of loss. The show was entertaining and informative, and a big part of the entertainment value was Laporte&#8217;s friendliness and personality. The network was never the same after that, and now we largely ignore G4&#8217;s existence on our cable listings. (<a title="X-Play article on Wikipedia" href="http://en.wikipedia.org/wiki/X-Play">&#8220;X-Play&#8221;</a>, the only remaining show from TechTV&#8217;s original line-up, is the only thing still worth watching on G4, and even then it&#8217;s not nearly as good as it used to be.)</p>
<p>When I discovered a year or so ago that Laporte had gone on to create his own <a title="The TWiT Netcast Network" href="http://twit.tv/">podcasting network</a>, I was thrilled. Several old TechTV allumni were among the guests and cohosts, and the selection of podcasts has been diverse, engaging, and ever expanding. The flagship of the network, of course, is TWiT, a weekly roundtable of tech industry players and journalists discussing the latest tech news. The show is often wild and unpredictable, spiraling down rabbit holes and meandering in bizarre directions, but that&#8217;s often part of the fun of the show. The bottom line, though, was that the show was about <em>tech news,</em> and it and <a title="Slashdot" href="http://slashdot.org/">Slashdot</a> were two of my main ways of keeping on top of what&#8217;s been happening in the tech world.</p>
<p>Something happened in recent weeks to change that, however. Since I can&#8217;t follow the live streams (both for practical and technical reasons), I can only guess the sequence of events based on what&#8217;s been released in the podcasts or written by others after the fact. But from what I can tell, the TWiTters have been hosting a live wine tasting show right before TWiT starts recording on Sundays. Now I&#8217;m a teetotaler myself, but I won&#8217;t condemn anyone who wants to imbibe their spirits if they really want to. What self-destructive behavior they engage in on their own time is up to them. As long as no one&#8217;s forcing me or anyone else to participate and nobody&#8217;s operating motorized vehicles, they are free to destroy their own livers to their hearts content. But what&#8217;s <em>really</em> annoying is that once TWiT starts taping, everyone in the studio is already tipsy, if not totally soused. The wine continues to flow as the show progresses, and what follows is a train wreck of drunken giddiness and squabbling that&#8217;s only really entertaining to those who are equally inebriated. To top everything off, from what I&#8217;ve read the final podcast (what <em>I&#8217;m</em> actually hearing and complaining about) is heavily edited before it&#8217;s released; the live feed is even <em>worse.</em></p>
<p>The <a title="TWiT #191: Corked" href="http://twit.tv/191">latest episode</a> is a perfect example. Subtitled &#8220;Corked&#8221; (which is appropriate; I originally intended to say &#8220;ironically&#8221; but I&#8217;m pretty sure the choice of subtitle was intentional), the show is a disaster of panelists talking on top of each other about nothing worth talking about. Leo, who is usually an excellent host and often does a great job of keeping everyone else in line, is interrupting his guests and spinning things even further out of control. <a title="Channel Dvorak" href="http://channeldvorak.com/">John C. Dvorak</a>, whose input I always find amusing and often enlightening, is equally rude and—from what I&#8217;ve read from those who saw the live feed—apparently egged on the other guests to get them even further inebriated. I was originally going to complain that neither of the female guests, <a title="Mostly Lisa" href="http://mostlylisa.com/">Lisa Bettany</a> or <a title="ShiraLazar.com" href="http://shiralazar.com/">Shira Lazar</a>, could manage to finish a sentence before being trampled upon by Leo or Dvorak, but Lazar was just drunk enough to be an unstoppable stampede of rambling who couldn&#8217;t let a topic go. As previously stated, one of the appeals of TWiT is its unpredictable nature, but this show was so far off the beaten path that there was no path left to beat. Somewhere, deep inside the tangled mess of four people talking at once about Twitter drinking games, is only the vaguest <em>hint</em> of tech news, a thin whiff of the scent of information that rapidly gets swept away by the torrent of uselessness that follows. And for the cherry on top, several times during the show Leo pauses to read complaints from the live chat room about how terrible the show has become&#8230; and <em>makes fun of them.</em> This following a single glimmer of insightfulness in a discussion about <em>how important the community has become</em> in modern online media.</p>
<p>Now, I&#8217;ve been a webcartoonist for a decade, so I&#8217;m no stranger to the vast swing between amateurism and professionalism when it comes to online media. Before there were basement-dwelling podcasters, there were basement-dwelling webcartoonists, and you can tell in both cases which ones take their craft seriously and which just throw things out without any care for quality. I consider Laporte an accomplished pro, and virtually every other show on his network stands as shining proof of that. <a title="Security Now!" href="http://twit.tv/sn">&#8220;Security Now!&#8221;</a> is brilliantly informative (and my personal favorite), <a title="FLOSS Weekly" href="http://twit.tv/FLOSS">&#8220;FLOSS Weekly&#8221;</a> (when it updates) shines the spotlight on some great open source projects, and <a title="Jumping Monkeys" href="http://twit.tv/jm">&#8220;Jumping Monkeys&#8221;</a> (before it went on indefinite hiatus) was a great parenting podcast for tech-savvy parental units. In all three of these examples, Leo is an excellent cohost to the show&#8217;s main star, showing his versatility with rare skill. He asks the questions many of us are thinking, assuming the role of the everyman so the expert can answer to the fullest. The TWiT Network as a whole is an example that many podcasters should look up to, a yardstick of professionalism by which all others should be compared.</p>
<p>All except for TWiT itself. Leo, what the <em>heck</em> happened?</p>
<p>I won&#8217;t stop listening to &#8220;Security Now!&#8221; or &#8220;FLOSS Weekly&#8221;, both of which I enjoy immensely. If &#8220;Jumping Monkeys&#8221; ever comes back, I&#8217;ll resubscribe in a heartbeat. My wife loves <a title="net@nite" href="http://twit.tv/natn">&#8220;net@nite&#8221;</a>, <a title="The Daily Giz Whiz" href="http://twit.tv/DGW">&#8220;The Daily Giz Whiz&#8221;</a>, and <a title="Munchcast" href="http://twit.tv/mc">&#8220;Munchcast&#8221;</a> and keeps bugging me to listen to them. But TWiT&#8230; oh, TWiT, how the mighty have fallen. What was arguably the best show on the network is now the worst.</p>
<p>What&#8217;s incredibly ironic is that in a recent episode of &#8220;net@nite&#8221; (unfortunately, I don&#8217;t know which, but my wife thinks it&#8217;s either <a title="net@nite #85" href="http://twit.tv/natn85">#85</a> or <a title="net@nite #86" href="http://twit.tv/natn86">#86</a>), Leo chastized <a title="Kevin Rose article on Wikipedia" href="http://en.wikipedia.org/wiki/Kevin_Rose">Kevin Rose</a> for a <a title="ReadWriteWeb: Kevin Rose Apologizes for Sexist Joke on Diggnation" href="http://www.readwriteweb.com/archives/kevin_rose_apologizes_for_sexi.php">drunken comment</a> he made on-air that caused a bit of an Internet stir. He commented that in today&#8217;s world of streaming media, celebrities have to assume that they&#8217;re always on the air and that anything and everything they do will be rebroadcast repeatedly, even stating that it&#8217;s a big mistake to be <em>drunk while recording.</em> Maybe it&#8217;s time Leo listened to his own advice.</p>
<p>I&#8217;m still not sure whether or not I&#8217;m dropping TWiT now or if I&#8217;ll give it one last chance. <a title="FriendFeed: Leo Laporte" href="http://friendfeed.com/e/abe8eef3-82aa-4cf0-9535-c2c4fd15fb40/OK-message-received-A-little-less-wine-and-a/">Leo posted on FriendFeed</a> that the &#8220;message [was] received&#8221; and, based on overwhelmingly negative feedback, there will be &#8220;a little less wine and a little more tech in future TWiTs&#8221;. We&#8217;ll see. What&#8217;s ironic is that it was <a title="Audible.com" href="http://www.audible.com/">Audible.com</a>&#8217;s sponsorship of TWiT that turned me on to audio books, and now there&#8217;s a good chance that audio books will completely replace TWiT during my long, boring commute each morning. It&#8217;s Leo&#8217;s loss, not mine.</p>]]></content:encoded>
			<wfw:commentRss>http://www.jeffdarlington.com/2009/04/21/why-im-dropping-twit/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>set_bugs = 0;</title>
		<link>http://www.jeffdarlington.com/2009/02/10/set-bugs-equal-zero/</link>
		<comments>http://www.jeffdarlington.com/2009/02/10/set-bugs-equal-zero/#comments</comments>
		<pubDate>Tue, 10 Feb 2009 17:21:33 +0000</pubDate>
		<dc:creator>Jeff</dc:creator>
				<category><![CDATA[Internet]]></category>
		<category><![CDATA[Technology]]></category>
		<category><![CDATA[.NET]]></category>
		<category><![CDATA[AJAX]]></category>
		<category><![CDATA[C#]]></category>
		<category><![CDATA[GPF]]></category>
		<category><![CDATA[Help Desk]]></category>
		<category><![CDATA[humor]]></category>
		<category><![CDATA[Microsoft]]></category>

		<guid isPermaLink="false">http://www.jeffdarlington.com/?p=196</guid>
		<description><![CDATA[This week an couple errors were reported in the custom CMS application I built at work a couple years ago. I haven&#8217;t touched this code in at least a year, so it took me bit to swap some mental virtual memory and recall how everything worked. I&#8217;m not sure if these &#8220;bugs&#8221; were something new [...]]]></description>
			<content:encoded><![CDATA[<p>This week an couple errors were reported in the custom <a title="Content Management System article on Wikipedia" href="http://en.wikipedia.org/wiki/Content_management_system">CMS</a> application I built at work a couple years ago. I haven&#8217;t touched this code in at least a year, so it took me bit to swap some mental virtual memory and recall how everything worked. I&#8217;m not sure if these &#8220;bugs&#8221; were something new that had manifested themselves after a recent platform upgrade or design flaws that had been there since the beginning only to be recently noticed. None of that really matters for the sake of this post, however. Suffice it to say there were two problems, one of which was likely to be entirely my fault but relatively easy to fix with a little bit of <a title="C# (programming language) article on Wikipedia" href="http://en.wikipedia.org/wiki/C_Sharp_(programming_language)">C#</a> hacking.</p>
<p>The other problem was a bit obscure. The application is built in <a title="ASP.NET article on Wikipedia" href="http://en.wikipedia.org/wiki/ASP.NET">ASP.NET</a> 2.0 and written entirely in C#. It also makes use of <a title="Microsoft" href="http://www.microsoft.com/">Microsoft</a>&#8217;s <a title="AJAX (programming) article on Wikipedia" href="http://en.wikipedia.org/wiki/Ajax_(programming)">AJAX</a> Toolkit for ASP.NET to &#8220;pretty up&#8221; some of the interface interactions. Unfortunately, one particular user began to experience problems with the system recently. Since she&#8217;s the project manager, needless to say the problem was escalated to top priority with little to no delay. To make things more difficult, the problem was especially cryptic. In true Microsoft fashion, the pop-up <a title="JavaScript article on Wikipedia" href="http://en.wikipedia.org/wiki/JavaScript">JavaScript</a> error dialog offered little to no useful information:</p>
<blockquote><p>Sys.WebForms.PageRequestManagerServerErrorException: An unknown error occurred while processing the request on the server. The status code returned from the server was: 500</p></blockquote>
<p><a title="Google" href="http://www.google.com/">Google</a>, of course, is my friend and found <a title="Google search for PageRequestManagerServerErrorException" href="http://www.google.com/search?q=PageRequestManagerServerErrorException">no shortage of pages</a> where this turned up. The odd thing was that none of the purported causes for the error were anything that I was using.</p>
<p>After much searching, I finally happened upon <a title="Andornot Developers' Blog: ASP.NET AJAX and Sys.Webforms.PageRequestManagerServerErrorException" href="http://www.andornot.com/about/developerblog/2007/07/aspnet-ajax-and-syswebformspagerequestm.aspx">this site</a>. It seems Ted Jardine hit the same problem I did. He had narrowed it down to something to do with the .NET session, which he wasn&#8217;t really using but I was using extensively. What I found most interesting was his solution:</p>
<blockquote><p>So, based on one of the comments in one of the above posts, even though I&#8217;m not touching session on one of the problem pages, I tried a hack in one of the problem page&#8217;s Page_Load:</p>
<p>Session["FixAJAXSysBug"] = true;</p>
<p>And lo and behold, we&#8217;re good to go!</p></blockquote>
<p>I followed the various links he provided—as well as <a title="Google search for FixAJAXSysBug" href="http://www.google.com/search?q=FixAJAXSysBug">Googling for &#8220;FixAJAXSysBug&#8221;</a> itself—and found lots more anecdotal evidence to support its usefulness. I applied this &#8220;fix&#8221; to the common header of the application to make sure it took affect everywhere and, so far, all reports seem to indicate its success.</p>
<p>Needless to say, I was instantly reminded of <a title="GPF Archive: Wednesday, January 31, 2001" href="http://www.gpf-comics.com/archive.php?d=20010131">this GPF strip</a> from the crossover with <a title="Help Desk" href="http://ubersoft.net/">Help Desk</a>. I can&#8217;t remember now if that joke was my idea or Chris Wright&#8217;s. It doesn&#8217;t matter now, really&#8230; it audacity is as brilliant now as it was eight years ago. The idea of setting a simple Boolean flag to &#8220;turn off bugs&#8221; is something I will always find hilarious.</p>
<p>Now if only <em>all</em> Microsoft bugs were so easy to fix&#8230;.</p>]]></content:encoded>
			<wfw:commentRss>http://www.jeffdarlington.com/2009/02/10/set-bugs-equal-zero/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>When it rains, it pours&#8230;</title>
		<link>http://www.jeffdarlington.com/2009/01/20/when-it-rains-it-pours/</link>
		<comments>http://www.jeffdarlington.com/2009/01/20/when-it-rains-it-pours/#comments</comments>
		<pubDate>Tue, 20 Jan 2009 14:50:39 +0000</pubDate>
		<dc:creator>Jeff</dc:creator>
				<category><![CDATA[GPF]]></category>
		<category><![CDATA[Hardware]]></category>
		<category><![CDATA[Internet]]></category>
		<category><![CDATA[Personal]]></category>
		<category><![CDATA[Technology]]></category>
		<category><![CDATA[Athena]]></category>
		<category><![CDATA[Demeter]]></category>
		<category><![CDATA[Diana]]></category>
		<category><![CDATA[hard drive]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[schedule]]></category>
		<category><![CDATA[server]]></category>
		<category><![CDATA[SVN]]></category>

		<guid isPermaLink="false">http://www.jeffdarlington.com/?p=188</guid>
		<description><![CDATA[Here&#8217;s a clarification of my recent Tweet about Diana. Sometime over the weekend Diana, our primary Linux box that serves as the backbone of our home network (DNS, file server, internal Web server, SSH gateway, SVN repository server, etc.), gave up the ghost. I only discovered this yesterday evening, so I haven&#8217;t had much time [...]]]></description>
			<content:encoded><![CDATA[<p>Here&#8217;s a clarification of <a title="Twitter / Jeff Darlington" href="http://twitter.com/jeffdarlington/status/1131618568">my recent Tweet</a> about Diana. Sometime over the weekend Diana, our primary Linux box that serves as the backbone of our home network (DNS, file server, internal Web server, SSH gateway, SVN repository server, etc.), gave up the ghost. I only discovered this yesterday evening, so I haven&#8217;t had much time to diagnose the problem. It&#8217;s almost certainly a hardware issue. I&#8217;m thinking it&#8217;s the power supply or the motherboard, as when I try to power her up, nothing happens. The power light comes on, I can watch the CPU fan twitch like it wants to start spinning, but otherwise nothing else visible occurs. No output makes its way to the monitor so there are no error messages to follow.</p>
<p>At this point, I&#8217;m not sure of the status of the hard drives. My hope is that they&#8217;re fine; the obvious problem appears to be occurring before they even start to spin, as if they&#8217;re not getting any power (and that&#8217;s why I suspect it&#8217;s a power supply issue). The good news is that Demeter, her predecessor, has been sitting idle and collecting dust and has since been rapidly pressed back into service. I should be able to slip Diana&#8217;s disks into Demeter, check their integrity, and hopefully recover the data. That&#8217;s the core thing right now, getting the data off; hardware is replaceable, data is not. The only hitch is that Demeter is old enough that I&#8217;m not sure her BIOS will read Diana&#8217;s larger disks. Demeter&#8217;s current HD is already larger than her BIOS supports, though, and Linux seems to work fine in this situation, so I&#8217;m hoping that won&#8217;t be a problem. A worst-case scenario might be to throw a live Linux distro into Athena, our current &#8220;alpha&#8221; Windows XP desktop, and try to grab the data that way. (Diana&#8217;s disks are in ext3, which obviously Windows can&#8217;t read.) Both Demeter and Diana have EIDE drives while Athena uses SATA, but I&#8217;m almost certain Athena also has legacy EIDE on the motherboard somewhere; if not, I&#8217;m hosed there.</p>
<p>Why might this be a concern to you? Well, for one thing, Diana was one of several redundant backup locations for storing my my high-resolution original strips. Fortunately, everything from Year Nine and back has already been backed up to multiple DVDs stored in multiple physical locations, while Year Ten&#8217;s files are stored across three redundant drives (two in separate physical machines and one external USB drive). More importantly, Diana was my SVN repository server, housing all the source code for the GPF site. I have working copies of that repository in multiple locations so I&#8217;m not hurting there, but with the repository down I&#8217;m stuck manually keeping those working copies in sync. The biggest problem that may affect you guys is the humongous time sink this will be for me to repair/replace Diana and get all our internal mechanisms working again. With my day job, two hours of commute, and toddler patrol vying for my time, my comic production schedule is severely squeezed as it is. This is probably going to impact that buffer I was forced to take a hiatus in December to reclaim as I wasn&#8217;t able to increase my production, just maintain the status quo.</p>
<p>For those of you who might care, I&#8217;ll post updates here when I can. More frequent cries of frustration will likely come through the <a title="Twitter / Jeff Darlington" href="http://twitter.com/jeffdarlington">Twitter feed</a>. If the comic will be severely impacted, you&#8217;ll get something in the <a title="GPF News" href="http://www.gpf-comics.com/news/">GPF News</a>. So keep watching those RSS feeds.</p>]]></content:encoded>
			<wfw:commentRss>http://www.jeffdarlington.com/2009/01/20/when-it-rains-it-pours/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Geeky Christmas Loot, Part Two</title>
		<link>http://www.jeffdarlington.com/2008/12/30/geeky-christmas-loot-part-two/</link>
		<comments>http://www.jeffdarlington.com/2008/12/30/geeky-christmas-loot-part-two/#comments</comments>
		<pubDate>Tue, 30 Dec 2008 16:02:09 +0000</pubDate>
		<dc:creator>Jeff</dc:creator>
				<category><![CDATA[Gadgets]]></category>
		<category><![CDATA[Personal]]></category>
		<category><![CDATA[Technology]]></category>
		<category><![CDATA[camera]]></category>
		<category><![CDATA[Christmas]]></category>
		<category><![CDATA[Doctor Who]]></category>
		<category><![CDATA[gifts]]></category>
		<category><![CDATA[GPF]]></category>
		<category><![CDATA[Nikon]]></category>
		<category><![CDATA[quilt]]></category>
		<category><![CDATA[SLR]]></category>
		<category><![CDATA[Wii]]></category>

		<guid isPermaLink="false">http://www.jeffdarlington.com/?p=178</guid>
		<description><![CDATA[Sorry again for the long dry spell. As hinted at in the latest GPF News post, things have been hectic in the Darlington household these past few months, with tons of minute issues slowly chipping away at the overall allotment of free time. The good news for GPF fans, though, is that I should have [...]]]></description>
			<content:encoded><![CDATA[<p>Sorry again for the long dry spell. As hinted at in the <a title="GPF News Archive: December 8, 2008" href="http://www.gpf-comics.com/news/archive.php?d=20081208">latest GPF News post</a>, things have been hectic in the Darlington household these past few months, with tons of minute issues slowly chipping away at the overall allotment of free time. The good news for <a title="General Protection Fault" href="http://www.gpf-comics.com/">GPF</a> fans, though, is that I should have a good month&#8217;s worth of comics in the buffer when the comic restarts on January 5th, and with the holidays behind us I should be able to concentrate more on getting things done and on time.</p>
<p>In the tradition of <a title="Geeky Christmas loot, December 31st, 2007" href="http://www.jeffdarlington.com/2007/12/31/geeky-christmas-loot/">last year&#8217;s &#8220;Christmas loot&#8221; post</a>, I thought I&#8217;d post some of the awesome things I received as gifts this year. I know some people might look at this as a bit of bragging—and I can see how it can be read that way—but it&#8217;s really not. It&#8217;s an honest, geeky desire to share some of the exciting things my friends and family blessed me with out of love and happiness. If you want to read bragging into this, well, that&#8217;s your choice and you&#8217;re free to ignore this post. Otherwise, let me squeal with geeky glee as I delineate some of the cool things I was blessed to receive from people I love.</p>
<p>I&#8217;ll start off with a note to the folks: I know some of my family reads this blog, so don&#8217;t be offended if I didn&#8217;t mention something in particular that you got me. It&#8217;s not that it wasn&#8217;t memorable or that I didn&#8217;t like it; it&#8217;s because you know I have the memory of a sieve and I didn&#8217;t take copious notes after each present was opened. Since I&#8217;m composing this away from where the presents are stashed, I&#8217;m doing everything from memory. I also spent most of my time during the present opening ceremonies assembling and subsequently helping Ben play with his new toys, so there were lots of interruptions. So here&#8217;s my apologies in advance and don&#8217;t forget that blog posts can thankfully be edited.</p>
<p>My favorite gift, by far, is the one given to me by my wife. (Well, she signed Ben&#8217;s name on the tag, but I know he has neither the budget nor expertise to have picked it out himself. Just remember that if you read this years later, my son.) She got me a <a title="Nikon D60 (NikonUSA.com)" href="http://www.nikonusa.com/Find-Your-Nikon/Product/Digital-SLR/25438/D60.html">Nikon D60</a> <a title="Digital Single-Lens Reflex Camera article on Wikipedia" href="http://en.wikipedia.org/wiki/Digital_single-lens_reflex_camera">digital SLR camera</a>. As I <a title="Twitter: Jeff Darlington" href="https://twitter.com/jeffdarlington/status/1081770669">previously Tweeted</a>, &#8220;It&#8217;s like giving a 16-year-old with a beat-up &#8216;85 <a title="Honda Civic article on Wikipedia" href="http://en.wikipedia.org/wiki/Honda_Civic">Civic</a> the keys to a sports car.&#8221; 10.2 <a title="Megapixel article on Wikipedia" href="http://en.wikipedia.org/wiki/Pixel#Megapixel">megapixels</a>, &#8220;real&#8221; lenses, tons of preset and manual options&#8230; it may technically be a &#8220;<a title="Prosumer article on Wikipedia" href="http://en.wikipedia.org/wiki/Prosumer#Professional_consumer">prosumer</a>&#8221; or low-end professional camera, but it&#8217;s definitely the best I&#8217;ve ever had.</p>
<p>I&#8217;ve always wanted to learn more about photography, but have had neither the time nor capital to really invest in more than casual picture taking. We&#8217;ve had a succession of digital cameras over the years, all of which have served us very well (the <a title="GPF Shows &amp; Cons" href="http://www.gpf-comics.com/shows/">Shows &amp; Cons</a> subsite is loaded with the results). However, they&#8217;ve all been relatively cheap, low-end models geared for amateur consumers. Our previous family camera was a nice little <a title="Olympus Corporation article on Wikipedia" href="http://en.wikipedia.org/wiki/Olympus_Corporation">Olympus</a> that only topped out at three megapixels and still used <a title="SmartMedia article on Wikipedia" href="http://en.wikipedia.org/wiki/SmartMedia">SmartMedia</a> cards. Do you have any idea how hard those things are to find these days? While still functional, it was definitely showing its age. However, like many consumer cameras, it did all the automagic focus and lighting settings, making it a simple point-and-shoot device. This new Nikon can do point-and-shoot well, but it has enough manual options to make it a good learning platform for a curious amateur to graduate to a serious hobbyist. Now my biggest problem is <a title="Twitter: Jeff Darlington" href="https://twitter.com/jeffdarlington/status/1083219984">finding time to actually play with it</a>&#8230;. <img src='http://www.jeffdarlington.com/wp-includes/images/smilies/icon_biggrin.gif' alt=':D' class='wp-smiley' /> </p>
<p>As an ironic side note, as I mentioned in the previous &#8220;Christmas loot&#8221; post, my wife&#8217;s birthday is also in December, and guess what I got <em>her?</em> That&#8217;s right, a new camera. Her&#8217;s is admittedly not as nice, but it <em>is</em> exactly what she wanted: a small little point-and-shooter that she can tuck away in her purse for those spur-of-the-moment photo ops where lugging the old Olympus around (and, for that matter, my new Nikon) would be inconvenient. As she so succinctly put it, &#8220;Who knew we were going to have such a photogenic holiday?&#8221;</p>
<p>Other items of note:</p>
<ul>
<li>My sister made me a wonderful GPF quilt/wall-hanging with members of the cast. It&#8217;s technically incomplete because I&#8217;m supposed to sign my name to the old GPF logo in the center with a white paint pen, and I haven&#8217;t gotten around to doing that yet. Here&#8217;s a picture:</li>
</ul>
<div id="attachment_179" class="wp-caption aligncenter" style="width: 410px"><img class="size-full wp-image-179" title="My sister's GPF quilt/wall-hanging" src="http://www.jeffdarlington.com/wp-content/uploads/2008/12/gpf_quilt.jpg" alt="My sister's GPF quilt/wall-hanging" width="400" height="263" /><p class="wp-caption-text">My sister&#39;s GPF quilt/wall-hanging</p></div>
<ul>
<li>A nice commemorative <a title="Star Trek article on Wikipedia" href="http://en.wikipedia.org/wiki/Star_Trek"><em>Star Trek</em></a> watch from my parents.</li>
<li>Several classic <a title="Tom Baker article on Wikipedia" href="http://en.wikipedia.org/wiki/Tom_Baker">Tom Baker</a> <a title="Doctor Who article on Wikipedia" href="http://en.wikipedia.org/wiki/Doctor_Who"><em>Doctor Who</em></a> episodes on DVD. Surprisingly, nobody got me the <a title="Amazon.com: Doctor Who: The Complete Fourth Series" href="http://www.amazon.com/exec/obidos/ASIN/B001DJ7PQ4/generalprotectio">fourth series</a> of the <a title="Russell T. Davies article on Wikipedia" href="http://en.wikipedia.org/wiki/Russell_T_Davies">Russell T. Davies</a>/<a title="David Tennant article on Wikipedia" href="http://en.wikipedia.org/wiki/David_Tennant">David Tennant</a> series. That&#8217;s nothing that a quick trip to <a title="Amazon.com" href="http://www.amazon.com/">Amazon</a> can&#8217;t fix, of course.</li>
<li>Several other movies on DVD. (I <em>knew</em> I should have kept notes.)</li>
<li>A pair of new <a title="Wii article on Wikipedia" href="http://en.wikipedia.org/wiki/Wii">Wii</a> remotes and Wii Wheels from my parents and in-laws, respectively. Now we no longer have to borrow my nephew&#8217;s &#8220;Wiimotes&#8221; whenever friends come over to visit. (Not to self: Make new friends. Appendium to previous note: That means &#8220;befriend more geographically convenient humans&#8221; rather than &#8220;construct new &#8216;friends&#8217; from random inanimate objects&#8221;.)</li>
<li>Several new Wii games. (Again&#8230; must&#8230; take&#8230; notes&#8230;.)</li>
<li><a title="Amazon.Com: The DC Vault" href="http://www.amazon.com/exec/obidos/ASIN/0762432578/generalprotectio">The DC Vault: A Museum in a Box</a> and a hardcover copy of <a title="Amazon.com: The Watchmen" href="http://www.amazon.com/exec/obidos/ASIN/1401219268/generalprotectio"><em>The Watchmen</em></a> from my sister-in-law and her husband.</li>
<li>The prerequisite jeans, sweaters, after shave, etc. They may not be as exciting, of course, but they&#8217;re always appreciated.</li>
</ul>
<p>So, what did Santa leave in <em>your</em> stocking this year? <img src='http://www.jeffdarlington.com/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>]]></content:encoded>
			<wfw:commentRss>http://www.jeffdarlington.com/2008/12/30/geeky-christmas-loot-part-two/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Bill Gates now inhabits my dreams&#8230;</title>
		<link>http://www.jeffdarlington.com/2008/09/09/bill-gates-now-inhabits-my-dreams/</link>
		<comments>http://www.jeffdarlington.com/2008/09/09/bill-gates-now-inhabits-my-dreams/#comments</comments>
		<pubDate>Tue, 09 Sep 2008 14:12:57 +0000</pubDate>
		<dc:creator>Jeff</dc:creator>
				<category><![CDATA[Personal]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[Technology]]></category>
		<category><![CDATA[advertising]]></category>
		<category><![CDATA[Bill Gates]]></category>
		<category><![CDATA[humor]]></category>
		<category><![CDATA[Jerry Seinfeld]]></category>
		<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[TWiT]]></category>
		<category><![CDATA[Windows]]></category>

		<guid isPermaLink="false">http://www.jeffdarlington.com/?p=161</guid>
		<description><![CDATA[So I was listening to this week&#8217;s edition of TWiT, during which Leo Laporte and the usual band of miscreants psychoanalyze Microsoft&#8217;s new ad campaign featuring Bill Gates and Jerry Seinfeld. I had not seen the ad yet myself—apparently it debuted during an NFL opening game, and considering that I don&#8217;t watch professional sports and [...]]]></description>
			<content:encoded><![CDATA[<p>So I was listening to <a title="TWiT 159: That’s Not My Churro" href="http://www.twit.tv/159">this week&#8217;s edition of TWiT</a>, during which <a title="Leoville.Com" href="http://leoville.com/">Leo Laporte</a> and the usual band of miscreants psychoanalyze <a title="Microsoft" href="http://www.microsoft.com/">Microsoft</a>&#8217;s new ad campaign featuring <a title="Bill Gates article on Wikipedia" href="http://en.wikipedia.org/wiki/Bill_Gates">Bill Gates</a> and <a title="Jerry Seinfeld article on Wikipedia" href="http://en.wikipedia.org/wiki/Jerry_Seinfeld">Jerry Seinfeld</a>. I had not seen the ad yet myself—apparently it debuted during an <a title="National Football League article on Wikipedia" href="http://en.wikipedia.org/wiki/National_Football_League">NFL</a> opening game, and considering that I don&#8217;t watch professional sports and the overwhelming majority of my television watching now consists of shows containing <a title="Dora the Explorer article on Wikipedia" href="http://en.wikipedia.org/wiki/Dora_the_Explorer">magic backpacks and talking monkeys that wear red boots</a>, it hadn&#8217;t come to my attention yet—so the discussion naturally raised my morbid curiosity. So I dug around a little on <a title="YouTube" href="http://www.youtube.com/">YouTube</a> and found <a title="YouTube - Jerry Seinfeld Microsoft Commercial (Better Quality)" href="http://www.youtube.com/watch?v=tM_72QXCtN4">this</a>. I must admit, it&#8217;s as surreal as I was led to believe. I won&#8217;t attempt to try and mine this thing for hidden meaning like <a title="gdgt" href="http://gdgt.com/">Ryan Block</a> did; the only comment I think I can really make about it is that it tells me absolutely <em>nothing</em> about Microsoft, <a title="Microsoft Windows article on Wikipedia" href="http://en.wikipedia.org/wiki/Microsoft_Windows">Windows</a>, or any other product they may have in the pipeline, and after watching it I am no more inclined to pick Microsoft options over the competition than I was before. I thought that was the <em>point</em> of advertising&#8230;.</p>
<p>But that&#8217;s not the weirdest part. Last night, I dreamed about Bill Gates. Maybe it was exhaustion, maybe it was a prescription-drug fueled haze (I&#8217;m currently in the middle of my quarterly bout with bronchitis), but it was not something I was particularly expecting. There&#8217;s nothing really interesting to say about the dream, though. In what little I remember, Mr. Gates was there, tying his shoes. He wasn&#8217;t necessarily trying on new ones, nor was there any indication that the shoes were noticeably old. They were shiny, brown leather dress shoes, so they could have been either new or well maintained. Mr. Seinfeld was nowhere in sight. The setting was unclear; I can&#8217;t say that it was a shoe store, a men&#8217;s locker room, or any other recognizable setting. I know only that I was seated on a wooden bench which I believe was painted a dark green and that Bill Gates stood next to me, lifted one leg, and set the foot on the bench, then proceeded to tie his shoe laces. Then he left without saying a word and the dream moved on to wherever it went after that. I remember nothing else about the dream, and to my knowledge Mr. Gates appeared nowhere else within it.</p>
<p>I have no desire to do any research on what kind of <a title="Sigmund Frued article on Wikipedia" href="http://en.wikipedia.org/wiki/Sigmund_Freud">Fruedian</a> analysis can be drawn from watching a billionare-CEO-turned-philanthropist from one of the world&#8217;s largest and most reviled software companies tying his shoes next to me. I&#8217;d be afraid of what I&#8217;d find. So I&#8217;ll just say it was the prescription cough syrup working its magic and go back to talking to the <a title="How to Catch a Pink Elephant" href="http://www.gpf-comics.com/fun/stories/pinkelephant.php">pink elephant</a> and the green roast beef sandwich on either side of me. It&#8217;s a conversation about world politics and an economy built entirely around edible golf balls will solve the world&#8217;s energy crisis. It&#8217;s very enlightening. Maybe, somehow, some way, we&#8217;ll figure out exactly what makes Windows &#8220;delicious&#8221; while we&#8217;re at it. Drug-enduced hysteria is about the only way I can think of in my current semi-lucid state to make an operating system taste delicious. It makes me begin to wonder, though&#8230; what would other OSes taste like? Would Mac OS be crunchy? Would Linux be spicy? Would my Treo&#8217;s PalmOS be light in calories? I certainly hope so&#8230; I <em>am</em> trying to lose weight&#8230;.</p>]]></content:encoded>
			<wfw:commentRss>http://www.jeffdarlington.com/2008/09/09/bill-gates-now-inhabits-my-dreams/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
