<?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"
	>

<channel>
	<title>Gordaen's Blog</title>
	<atom:link href="http://blog.gordaen.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.gordaen.com</link>
	<description>Ramblings about art, education, Linux and a lot more</description>
	<pubDate>Thu, 15 May 2008 07:20:01 +0000</pubDate>
	<language>en</language>
			<item>
		<title>Presidential Election Results</title>
		<link>http://blog.gordaen.com/2008/05/15/presidential-election-results/</link>
		<comments>http://blog.gordaen.com/2008/05/15/presidential-election-results/#comments</comments>
		<pubDate>Thu, 15 May 2008 07:19:46 +0000</pubDate>
		<dc:creator>Ian Clifton</dc:creator>
		
		<category><![CDATA[Political]]></category>

		<guid isPermaLink="false">http://blog.gordaen.com/?p=426</guid>
		<description><![CDATA[Future-me called, expressing his appreciation of my solid money management and lack of credit card debt.  In reward, he let slip that Obama won the presidential election with John Edwards as his running mate, netting 56% of the popular vote.  Surprisingly, Obama didn&#8217;t swear in using the Koran and his secret terrorist buddies [...]]]></description>
			<content:encoded><![CDATA[<p>Future-me called, expressing his appreciation of my solid money management and lack of credit card debt.  In reward, he let slip that Obama won the presidential election with John Edwards as his running mate, netting 56% of the popular vote.  Surprisingly, Obama didn&#8217;t swear in using the Koran and his secret terrorist buddies haven&#8217;t taken over yet.  Some witnesses did claim that he wore a flag lapel, making him a flip-flopper and thereby revealing the final sign of the apocalypse.  Distant-future-me hasn&#8217;t called from after Armageddon, so I suspect that Hell doesn&#8217;t have the best cell phone reception.  That&#8217;s probably a good thing though, because I&#8217;d hate to think I would get text-message spam while there.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.gordaen.com/2008/05/15/presidential-election-results/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Ubuntu 8.04 And My Tablet</title>
		<link>http://blog.gordaen.com/2008/05/11/ubuntu-804-and-my-tablet/</link>
		<comments>http://blog.gordaen.com/2008/05/11/ubuntu-804-and-my-tablet/#comments</comments>
		<pubDate>Sun, 11 May 2008 20:00:17 +0000</pubDate>
		<dc:creator>Ian Clifton</dc:creator>
		
		<category><![CDATA[Linux]]></category>

		<guid isPermaLink="false">http://blog.gordaen.com/?p=425</guid>
		<description><![CDATA[I had a few quirky things happen when I upgraded from Ubuntu 7.10 (Gutsy Gibbon) to 8.04 (Hardy Heron).  One was sudo not working.  It complained about my hosts file, which was weird but I fixed it by used &#8220;gksudo gedit,&#8221; since I couldn&#8217;t use &#8220;regular&#8221; sudo to get to it.  The [...]]]></description>
			<content:encoded><![CDATA[<p>I had a few quirky things happen when I upgraded from Ubuntu 7.10 (Gutsy Gibbon) to 8.04 (Hardy Heron).  One was sudo not working.  It complained about my hosts file, which was weird but I fixed it by used &#8220;gksudo gedit,&#8221; since I couldn&#8217;t use &#8220;regular&#8221; sudo to get to it.  The other major problem was my that my Genius MousePen 8&#215;6 Graphics Tablet quit working.</p>
<p><span id="more-425"></span></p>
<p>I had previously followed a <a href="https://help.ubuntu.com/community/TabletSetupWizardpen">great tablet tutorial</a> and everything worked perfectly.  After the upgrade, the tablet essentially quit working.  Apparently, the problem was related to changes in XOrg 7.3.  I won&#8217;t bore you with the details, but I&#8217;ll sum up what I learned by reading through <a href="http://www.stud.fit.vutbr.cz/~xhorak28/unb/forum.php.windows-1251?req=thread&#038;id=71&#038;nocount=1">this huge thread</a> about it.  This assumes you followed the original tutorial.</p>
<p>Replace the old driver with the new one (<a href="http://specificcrap.arbitrarycrap.com/wizardpen_drv.so">precompiled for Hardy i386</a> or by compiling your own from <a href="http://specificcrap.arbitrarycrap.com/wizardpen-0.6.0.2.tar.gz">source</a>).  Make sure that you remove both copies of the old one if you put it in two locations (e.g., &#8220;/usr/lib/xorg/modules/&#8221; and the &#8220;input&#8221; directory there); just put a copy of the new one in the input directory.</p>
<p><code>sudo rm /usr/lib/xorg/modules/input/wizardpen_drv.so<br />
sudo rm /usr/lib/xorg/modules/wizardpen_drv.so<br />
wget http://specificcrap.arbitrarycrap.com/wizardpen_drv.so<br />
sudo mv wizardpen_drv.so /usr/lib/xorg/modules/input/</code></p>
<p>Make a backup of your current xorg.conf:</p>
<p><code>sudo cp /etc/X11/xorg.conf /etc/X11/xorg.conf.bak</code></p>
<p>Open the xorg.conf for editing in your favorite editor (use gedit if you don&#8217;t know vim):</p>
<p><code>sudo vim /etc/X11/xorg.conf<br />
#or<br />
gksudo gedit /etc/X11/xorg.conf</code></p>
<p>Make sure that the input device for your tablet has the mode set to &#8220;absolute&#8221; and comment out (by adding &#8220;#&#8221; to the front of the line) any of the CorePointer or SendCoreEvents options.  Your ServerLayout section should enable the tablet using the identifier from the tablet&#8217;s InputDevice section and set &#8220;SendCoreEvents,&#8221; e.g.:</p>
<p><code>InputDevice "WizardPen Tablet" "SendCoreEvents"</code></p>
<p>Save the changes and close the file.  Now you can restart X (ctrl+alt+backspace).  It works&#8230; hopefully.  Be sure to configure GIMP and any other apps that you&#8217;ll need the tablet for.  You may encounter some problems&#8230;.</p>
<p><strong>If tablet tip causes &#8220;middle&#8221; clicking</strong>: Make sure you do not have the &#8220;Emulate3Buttons&#8221; option enabled anywhere in your xorg.conf.</p>
<p><strong>If you can&#8217;t &#8220;drag&#8221; in GIMP</strong>: Make sure your mouse&#8217;s InputDevice section sets the device to a specific mouse and not the generic mice input (e.g., it could be &#8220;/dev/input/mouse2&#8243; rather than &#8220;/dev/input/mice&#8221;).  If you&#8217;re unsure which mouse it should be, you can start with mouse0 and work your way up.  Restart X after each change.  For me, 0 disabled the mouse and 1 prevented me from logging in.  Use ctrl+alt+f1 to switch to a terminal and change the device if you run into trouble and ctrl+alt+f9 to switch back to X (be sure to restart it after making changes).</p>
<p><strong>Other problem</strong>: Try running <code>cat /var/log/Xorg.0.log | grep Tablet</code> to see if you have any errors.</p>
<p>Here are the relevant chunks of my xorg.conf:</p>
<pre><code>Section "InputDevice"
    Identifier    "Configured Mouse"
    Driver        "mouse"
    Option        "CorePointer"
    Option        "Device"        "/dev/input/mouse2"
    Option        "Protocol"      "ImPS/2"
    Option        "ZAxisMapping"  "4 5"
EndSection

Section "InputDevice"
    Identifier    "WizardPen Tablet"
    Driver        "wizardpen"
    Option        "Mode"        "absolute"
    Option        "Device"      "/dev/tablet-event"
    Option        "TopX"        "826"
    Option        "TopY"        "2626"
    Option        "BottomX"     "32747"
    Option        "BottomY"     "32762"
    Option        "MaxX"        "32747"
    Option        "MaxY"        "32762"
    Option        "TopZ"        "35"
    Option        "BottomZ"     "511"
EndSection

Section "ServerLayout"
    Identifier    "Default Layout"
    Screen        "screen0"
    InputDevice   "Generic Keyboard"
    InputDevice   "Configured Mouse"
    InputDevice   "WizardPen Tablet" "SendCoreEvents"
EndSection</code></pre>
]]></content:encoded>
			<wfw:commentRss>http://blog.gordaen.com/2008/05/11/ubuntu-804-and-my-tablet/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Visual Bias Via Saturation Adjustments?</title>
		<link>http://blog.gordaen.com/2008/05/10/visual-bias-via-saturation-adjustments/</link>
		<comments>http://blog.gordaen.com/2008/05/10/visual-bias-via-saturation-adjustments/#comments</comments>
		<pubDate>Sun, 11 May 2008 02:47:49 +0000</pubDate>
		<dc:creator>Ian Clifton</dc:creator>
		
		<category><![CDATA[Political]]></category>

		<guid isPermaLink="false">http://blog.gordaen.com/?p=424</guid>
		<description><![CDATA[In creating a 90-day unit plan, I wanted to focus a few lessons on teaching students how to discern opinion, fact, and bias in news stories.  I thought it would be a good idea to show two articles covering the same topic, so that the students could analyze how the wording changed the tone [...]]]></description>
			<content:encoded><![CDATA[<p>In creating a 90-day unit plan, I wanted to focus a few lessons on teaching students how to discern opinion, fact, and bias in news stories.  I thought it would be a good idea to show two articles covering the same topic, so that the students could analyze how the wording changed the tone of the articles, but I noticed a very different way of affecting readers&#8217; beliefs: (de)saturation.</p>
<p><span id="more-424"></span></p>
<p style="float: left; margin-right: 1em;"><a href="/wp-content/uploads/2008/05/desaturation.jpg" rel="standard"><img src="/wp-content/uploads/2008/05/.thumbs/.desaturation.jpg" alt="Photos of presidential candidates and 50 Cent, showing various saturation levels" title="Which are the originals?" width="92" height="200" border="0" /></a></p>
<p style="margin-top: 2em;">In the included image, I have organized it so that all of the low saturation images are on the left.  It&#8217;s pretty clear that these images are less flattering and make each of the people in them look worse than the ones that are saturated.  Here&#8217;s the test for you: Try to guess which images are the originals (i.e., the ones that I simply copied and pasted from the source sites) and which are the ones I modified in <a href="http://www.gimp.org/">GIMP</a> (by modifying saturation by +/-67).  Your only clue: The second image set (counting in pairs from the top, so the second pair is Obama, the fifth is McCain) comes from Barack Obama&#8217;s website and the rest are from Fox News (the first and last are from AP, the rest are unattributed).</p>
<p style="clear: left;">First pair: The desaturated image is the original (<a href="http://elections.foxnews.com/2008/05/10/obama-picks-up-utah-superdelegate/">source</a>).</p>
<p>Second pair: The saturated image is the original (<a href="http://my.barackobama.com/page/s/iaoprahcr">source</a>).</p>
<p>Third pair: The desaturated image is the original (<a href="http://elections.foxnews.com/candidates/">source</a>).</p>
<p>Fourth pair: The saturated image is the original (<a href="http://elections.foxnews.com/candidates/">source</a>).</p>
<p>Fifth pair: The saturated image is the original (<a href="http://elections.foxnews.com/candidates/">source</a>).</p>
<p>Sixth pair: The saturated image is the original (<a href="http://www.foxnews.com/entertainment/celebrity/50cent/index.html">source</a>).</p>
<p>Of the three political candidate sets at the bottom, Obama&#8217;s is clearly under-saturated, Hillary&#8217;s is clearly over-saturated, and McCain&#8217;s is just right&#8230;. Curiously, McCain&#8217;s is also the only one with a background.  I threw in the final shot of 50 Cent to show how much difference saturation makes on skin tones.</p>
<p>To think that those images seem to suggest that they favor this candidate:</p>
<p><img src="/wp-content/uploads/2008/05/mccain.jpg" alt="Modified photo of McCain" title="Do you think he's related to the emperor in Star Wars?" width="200" height="200" border="0" /></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.gordaen.com/2008/05/10/visual-bias-via-saturation-adjustments/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Feature Lacking In MP3 Players</title>
		<link>http://blog.gordaen.com/2008/05/09/feature-lacking-in-mp3-players/</link>
		<comments>http://blog.gordaen.com/2008/05/09/feature-lacking-in-mp3-players/#comments</comments>
		<pubDate>Fri, 09 May 2008 07:19:59 +0000</pubDate>
		<dc:creator>Ian Clifton</dc:creator>
		
		<category><![CDATA[Random Thought]]></category>

		<guid isPermaLink="false">http://blog.gordaen.com/?p=423</guid>
		<description><![CDATA[Surely we should be able to tag music as &#8220;Christmas&#8221; and have our music players only play it for one hour on December 25th each year.  Rudolph, I can&#8217;t even pretend to care about you.  It&#8217;s May.  Quit picking your nose and it will not be so red, sheesh.
]]></description>
			<content:encoded><![CDATA[<p>Surely we should be able to tag music as &#8220;Christmas&#8221; and have our music players only play it for one hour on December 25th each year.  Rudolph, I can&#8217;t even pretend to care about you.  It&#8217;s May.  Quit picking your nose and it will not be so red, sheesh.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.gordaen.com/2008/05/09/feature-lacking-in-mp3-players/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Early Morning Rambling</title>
		<link>http://blog.gordaen.com/2008/04/28/early-morning-rambling/</link>
		<comments>http://blog.gordaen.com/2008/04/28/early-morning-rambling/#comments</comments>
		<pubDate>Tue, 29 Apr 2008 06:55:28 +0000</pubDate>
		<dc:creator>Ian Clifton</dc:creator>
		
		<category><![CDATA[Writing]]></category>

		<guid isPermaLink="false">http://blog.gordaen.com/?p=422</guid>
		<description><![CDATA[Last week, Enzo (one of the two trouble-making cats who graciously allow me to sleep in their apartment) developed a schedule of waking me up at 4:34am.  The first time, I just remembered looking at the clock and it was four-something in the morning.  The next time, I saw that it was 4:34. [...]]]></description>
			<content:encoded><![CDATA[<p>Last week, Enzo (one of the two trouble-making cats who graciously allow me to sleep in their apartment) developed a schedule of waking me up at 4:34am.  The first time, I just remembered looking at the clock and it was four-something in the morning.  The next time, I saw that it was 4:34.  The day after that, he did it again at the exact same time.  After my brain solidified from the wild, goo-like state it takes during sleep, I felt like writing.  I&#8217;ve always been most creatively inspired at early hours (2-4am is not uncommon), perhaps because the logical part of my brain that would be saying, &#8220;Go back to sleep, you idiot!&#8221; was actually sleeping, which left only the insane part to do the work.  Anyway, the following is the result of that early morning.  Beware that it&#8217;s extremely rough, saturated with cynicism, and jumping with <acronym title="Attention Deficit Disorder">ADD</acronym>.</p>
<p>I stayed up far too late last night to be waking up to the sound of my alarm at four in the morning.  I&#8217;ve never been able to just go to sleep earlier when I needed to wake up extra early.  It&#8217;s a problem like misplaced eggs.  You can spend a lot of time up front to fix things or you can wait a few days, when the situation really starts to stink, and then the solution presents itself.<span id="more-422"></span></p>
<p>Not that <em>I</em> have ever misplaced eggs before&#8230;</p>
<p>Did you know birds chirp at four in the morning?  What the hell is there to chirp about this early?  I&#8217;m convinced that other animals have figured out the secret to life but humans still aren&#8217;t even looking.  But at least we have opposable thumbs that we can target with our hammers.</p>
<p>I checked in my cupboard, but I didn&#8217;t find the secret there, so I grabbed a bowl and some cereal from the secretless cupboard and briefly wondered why cupboards have doors.  After deciding that it keeps carpenters employed and that people like to put obstacles in the way of their goals, I added the cereal to the bowl and then completed my masterful breakfast with milk from the fridge (see, that is something where doors make sense) and a spoon from the silverware drawer.</p>
<p>I carried the breakfast and the box of cereal to the table.  Laboriously crunching away with less and less noise as the milk slowly defeated the crisp cereal, I read the words on the cereal box.  You never know, the manufacturer may have discovered the secret, but it&#8217;s a long shot since they can&#8217;t even figure out how to keep me from being hungry an hour after eating their cereal.</p>
<p>If you&#8217;re wondering what cereal I eat, don&#8217;t waste your time; it&#8217;s not integral to the story.  I buy whichever kind has the highest number next to &#8220;calories.&#8221;  I don&#8217;t understand how food manufacturers can keep tricking people into buying their food by advertising that it has fewer calories.  That&#8217;s like a gas station advertising &#8220;Pay for two gallons and receive just one!&#8221;  I guess most people have really fallen for the &#8220;starving ribcage with legs and a square foot of fabric that costs enough to feed me for a week&#8221; look.  Animals are smart enough to eat every chance they have.  That brings the score to animals: 2, humanity: 0.</p>
<p>At this point, I should probably apologize for not warning you about my tendency to ramble&mdash;though I guess I just did warn you.  And if you haven&#8217;t figured it out by now anyway, you&#8217;re probably still wondering what cereal I eat.  Besides, how was I supposed to know that you&#8217;d start the book at the beginning instead of this paragraph?  Of course, you could be one of those people who reads the last page first, but I threw that page in there because of people like you.  It&#8217;s not really connected to the last chapter.</p>
<p>Wow, all these pages and I&#8217;m no closer to the interesting part of the story.  And those damned birds are still gloating.  And people who think I shouldn&#8217;t start sentences with conjunctions want to throw this book across the room.  But they can&#8217;t, because they wasted all their energy with trivial constructs.  And they&#8217;re no closer to finding the secret of life either.</p>
<p>The end&#8230; of chapter one.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.gordaen.com/2008/04/28/early-morning-rambling/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Various WordPress Issues</title>
		<link>http://blog.gordaen.com/2008/04/10/various-wordpress-issues/</link>
		<comments>http://blog.gordaen.com/2008/04/10/various-wordpress-issues/#comments</comments>
		<pubDate>Fri, 11 Apr 2008 04:40:34 +0000</pubDate>
		<dc:creator>Ian Clifton</dc:creator>
		
		<category><![CDATA[Software]]></category>

		<guid isPermaLink="false">http://blog.gordaen.com/?p=408</guid>
		<description><![CDATA[I&#8217;ve mentioned a few times here and there that I am working on my own blogging software.  I had actually hoped to be switched over to it by the middle of this month, but I&#8217;ve been working two jobs (and doing that crazy school thing), so I haven&#8217;t had as much free time as [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve mentioned a few times here and there that I am working on my own blogging software.  I had actually hoped to be switched over to it by the middle of this month, but I&#8217;ve been working two jobs (and doing that crazy school thing), so I haven&#8217;t had as much free time as I&#8217;d like.  Plus, I&#8217;ve been spending quite a bit of the free time that I do have on artistic ventures.  Anyway, the reason I am writing my own software is because I haven&#8217;t been fully satisfied with any of the solutions I&#8217;ve tried.  Right now, I am using WordPress, which is just not &#8220;doing it&#8221; for me anymore.  These are various issues with WordPress that I have had.  I either started using plugins or gave up on the issue.<span id="more-408"></span></p>
<p><strong>Plastering of version number everywhere</strong><br />
This is especially great for people with malicious intent.  &#8220;What&#8217;s that you say, WordPress version blah has X vulnerability?  Let me just do a quick Google search for victims&#8230;&#8221;  It&#8217;s annoying enough to have software that is self-advertising, but I can tolerate that when the software is free.  When software starts advertising its exact version to people who don&#8217;t need to know (i.e., everyone but me), I have a problem.</p>
<p><strong>Query-happy</strong><br />
A fairly simple install of WordPress will run about forty queries to generate the main page.  If you start adding in customizations, you can easily be looking at 50-60.  Why?  Is there some way for me to see these queries so I can understand why the hell it takes that many?</p>
<p><strong>Image thumbnails</strong><br />
This issue has been somewhat fixed in WP2.5, but the image management is still painful.  Uploading a bunch of images is no problem at all&#8230; unless the directory permissions are set incorrectly.  It&#8217;s nice enough to tell you that the permissions are bad&#8230; for every single file you picked to upload!  It doesn&#8217;t just detect the error and abort the attempt to manipulate and save each of the images.  It is painful to add a large number of images to a post, because you have to open the dialog box every time (and what&#8217;s worse is that your settings, such as picking to use a thumbnail, are not kept; you have to reselect the options every single time).  Need to change an image&#8217;s size for a particular post?  Good luck&#8230;</p>
<p><strong>Spam control</strong><br />
Does anything really have to be said here?  WP&#8217;s handling of spam is terrible.  There are some good plugins, but the software alone is pretty much a spam magnet.  Their solution?  Add &#8220;nofollow&#8221; to every single link that a guest creates&#8230; I love ideas that punish people who use the system correctly rather than truly solving the problem in the first place.  Now all the real visitors don&#8217;t even get &#8220;search credit&#8221; for their comments, spammers continue to spam because they&#8217;re bound to get victims regardless of the search engines, and nothing has been done to stop the hundreds/thousands of spams from occurring in the first place.</p>
<p><strong>Caching (queries and pages)</strong><br />
This ties into the query-happy nature of WordPress.  Again, there are plugins for caching, but this should be built in if the software is going to be bombarding the database.  Query results can be cached; partial templates can be cached.</p>
<p><strong>Miscellaneous</strong><br />
I feel like drafts are fairly hidden now.  The delete links for comments, posts, etc. are very small and not easily seen.  It&#8217;s easier than ever to forget about categorizing new posts.  There&#8217;s a &#8220;manage&#8221; link in the admin section, presumably for managing things, but &#8220;comments&#8221; has its own link that goes to a page called &#8220;Manage Comments.&#8221;  There&#8217;s a random blob of bright orange in the dashboard that is harsh on the eyes and rather out of place.  Why does the new magical plugin updating feature require FTP and not just use CURL?  I&#8217;m sure there are other things I am forgetting, but this is a decent start.</p>
<p>WordPress is definitely solid software, improving with each release, but I need more control.  Hopefully I&#8217;ll have enough time in the near future to really get going on my own blogging software&#8230; maybe I shouldn&#8217;t be spending my time with posts like this, haha.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.gordaen.com/2008/04/10/various-wordpress-issues/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Various Error Screenshots</title>
		<link>http://blog.gordaen.com/2008/04/10/various-error-screenshots/</link>
		<comments>http://blog.gordaen.com/2008/04/10/various-error-screenshots/#comments</comments>
		<pubDate>Fri, 11 Apr 2008 03:58:01 +0000</pubDate>
		<dc:creator>Ian Clifton</dc:creator>
		
		<category><![CDATA[Ridiculing Stupidity]]></category>

		<category><![CDATA[Software]]></category>

		<guid isPermaLink="false">http://blog.gordaen.com/?p=414</guid>
		<description><![CDATA[






These are just various errors that I&#8217;ve come across recently.  I think all of these are excellent examples as to how NOT to show errors (with the exception of the Facebook problem, which isn&#8217;t a browser error).  The 401 error in IE actually links support personnel to the Microsoft site and tells them [...]]]></description>
			<content:encoded><![CDATA[<p style="margin-bottom: 1em;"><a href="/wp-content/uploads/2008/04/blackboard_invalid.png" rel="lightbox"  ><img style="float: left;" src="/wp-content/uploads/2008/04/.thumbs/.blackboard_invalid.png" alt="Blackboard error screenshot showing 'Invalid access to memory location'" title="A Blackboard error, no surprise there" width="200" height="165" border="0" /></a><br />
<a href="/wp-content/uploads/2008/04/facebook_php_script.png" rel="lightbox"  ><img style="float: right;" src="/wp-content/uploads/2008/04/.thumbs/.facebook_php_script.png" alt="Facebook screenshot showing a download of a PHP file" title="The profile is mine, all mine!" width="200" height="147" border="0" /></a></p>
<p style="margin-bottom: 1em;"><a href="/wp-content/uploads/2008/04/ie_401.png" rel="lightbox"  ><img style="clear: both; float: left;" src="/wp-content/uploads/2008/04/.thumbs/.ie_401.png" alt="An Internet Explorer 401 error" title="Note the help offered for support people..." width="175" height="200" border="0" /></a><br />
<a href="/wp-content/uploads/2008/04/ie_405.png" rel="lightbox"  ><img style="float: right;" src="/wp-content/uploads/2008/04/.thumbs/.ie_405.png" alt="An Internet Explorer 405 error" title="Apparently, I do not know Google's address" width="174" height="200" border="0" /></a></p>
<p style="margin-bottom: 1em;"><a href="/wp-content/uploads/2008/04/cannot_copy_error.png" rel="lightbox"  ><img style="clear: botht; float: left;" src="/wp-content/uploads/2008/04/.thumbs/.cannot_copy_error.png" alt="Error while copying a file" title="I don't even have a guess on this one" width="200" height="49" border="0" /></a><br />
<a href="/wp-content/uploads/2008/04/incorrect_response.png" rel="lightbox"  ><img style="float: right;" src="/wp-content/uploads/2008/04/.thumbs/.incorrect_response.png" alt="An 'incorrect response' error" title="Dang, error -12250 is way worse than positive 12250" width="200" height="46" border="0" /></a>
</p>
<p style="clear: both;">These are just various errors that I&#8217;ve come across recently.  I think all of these are excellent examples as to how NOT to show errors <span id="more-414"></span>(with the exception of the Facebook problem, which isn&#8217;t a browser error).  The 401 error in IE actually links support personnel to the Microsoft site and tells them to run a search from there!  Apparently, linking to the article (or at least the search results) is impossible.  What would the average user do with these errors?  What would you do?</p>
<p>P.S. I realize this post is pretty ugly.  After fighting with WordPress for half an hour, I decided this is good enough and all the more reason for me to get back to work on my own blogging software.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.gordaen.com/2008/04/10/various-error-screenshots/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Guido On Django In 2006</title>
		<link>http://blog.gordaen.com/2008/04/03/guido-on-django-in-2006/</link>
		<comments>http://blog.gordaen.com/2008/04/03/guido-on-django-in-2006/#comments</comments>
		<pubDate>Fri, 04 Apr 2008 01:23:06 +0000</pubDate>
		<dc:creator>Ian Clifton</dc:creator>
		
		<category><![CDATA[Tech-Rambling]]></category>

		<guid isPermaLink="false">http://blog.gordaen.com/?p=413</guid>
		<description><![CDATA[Having to work with Django the past few weeks has been quite the&#8230; adventure.  My prior experience has primarily been with PHP with only a little Python exposure, so I am largely learning the programming language and the framework at the same time.  Today, I had a typical &#8220;what the heck is going [...]]]></description>
			<content:encoded><![CDATA[<p>Having to work with Django the past few weeks has been quite the&#8230; adventure.  My prior experience has primarily been with PHP with only a little Python exposure, so I am largely learning the programming language and the framework at the same time.  Today, I had a typical &#8220;what the heck is going on&#8221; moment and jumped into the Django documentation and then to other sites leading farther and farther from the original search.  I stumbled across the opinion(s) of Guido van Rossum (Python&#8217;s creator and &#8220;Benevolent Dictator for Life&#8221;) about Django (a Python-based web framework) from 2006.<span id="more-413"></span></p>
<p>The first instance I saw of Guido van Rossum&#8217;s opinion comes from <a href="http://www.artima.com/weblogs/viewpost.jsp?thread=146149">January 27, 2006</a>:</p>
<blockquote><p>&#8230;I&#8217;m not keen on the particular tools they provide (it doesn&#8217;t help that they begin every example with &#8220;from mumble.something import *&#8221;). For example, Django&#8217;s templating language is rich and powerful, but it doesn&#8217;t look very Pythonic to me &#8212; in fact, it&#8217;s so rich and powerful that it might as well be PHP. Similarly, I&#8217;m not keen on their object-relational mapping approach. There&#8217;s too much magic based on name correspondence, and the automatically generated APIs feel a bit unpythonic (e.g. lots of getter and setter methods where a normal Python object would use public attributes and perhaps properties).</p></blockquote>
<p>The next reference was just a few days later on <a href="http://www.artima.com/weblogs/viewpost.jsp?thread=146503">January 30, 2006</a>:</p>
<blockquote><p>Maybe the current crop of Python web frameworks (as well as Rails BTW) have it all wrong.</p></blockquote>
<p>The <a href="http://www.artima.com/weblogs/viewpost.jsp?thread=146606">next day</a>, Van Rossum&#8217;s opinion seemed to start shifting:</p>
<blockquote><p>Django definitely feels more &#8220;modern&#8221; than Cheetah. The templating languages are fairly similar, with Django writing {{foo.bar}} where Cheetah writes $foo.bar or ${foo.bar} for variable interpolation (== substitution). The biggest difference is that Cheetah allows pretty much arbitrary Python call syntax&#8230;</p></blockquote>
<blockquote><p>Django&#8217;s template compilation is much simpler and IMO more elegant than Cheetah: Django parses the template text into nodes of various types using a big regular expression, and each node has an appropriate render() method. Rendering the template in a given context simply concatenates the results of rendering each node in that context.</p></blockquote>
<p>Van Rossum made it pretty clear that his feelings were different on <a href="http://www.twit.tv/floss11">August 4, 2006</a> than they were in January:</p>
<blockquote><p>My personal favorite and I expect that will remain personal favorite for a long time is something named Django.</p></blockquote>
<p>And on <a href="http://pyre.third-bit.com/blog/archives/613.html">August 17, 2006</a>, Van Rossum said:</p>
<blockquote><p>Django is <em>the</em> web framework</p></blockquote>
<p>This is by no means a &#8220;comprehensive&#8221; list as these are simply the links that I stumbled upon that were related to his opinion of Django.  I chuckled at the PHP reference.  That&#8217;s one of the good (depending on your perspective) things about PHP: It is easily used as a templating language.  Though I&#8217;ve found it funny that I&#8217;ve come across complaints about PHP &#8220;silently&#8221; ignoring use of undeclared variables on the Python mailing list even though that&#8217;s what Django does with its templates (though you can obviously change the error reporting level in PHP and even log the notices; I would suspect there is a way to turn on &#8220;notices&#8221; for Django templates, but it doesn&#8217;t have its own logging module).  I also thought it was a bit curious that Django&#8217;s templates were declared to be like PHP but Cheetah&#8217;s allow &#8220;pretty much arbitrary Python call syntax.&#8221;</p>
<p>I&#8217;ve found that Django templates are too limiting in some regards (I don&#8217;t know how much they have changed since Guido&#8217;s comments).  For instance, trying to do something like &#8220;if blah_date < other_date&#8221; throws an exception.  I suppose this is meant to keep the templates &#8220;simple,&#8221; but I wouldn&#8217;t say something that requires 118K+ of HTML to explain is simple anyway.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.gordaen.com/2008/04/03/guido-on-django-in-2006/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Features A Blog Should Have</title>
		<link>http://blog.gordaen.com/2008/03/31/features-a-blog-should-have/</link>
		<comments>http://blog.gordaen.com/2008/03/31/features-a-blog-should-have/#comments</comments>
		<pubDate>Tue, 01 Apr 2008 06:03:53 +0000</pubDate>
		<dc:creator>Ian Clifton</dc:creator>
		
		<category><![CDATA[Software]]></category>

		<category><![CDATA[Tech-Rambling]]></category>

		<category><![CDATA[Web Pages]]></category>

		<guid isPermaLink="false">http://blog.gordaen.com/?p=412</guid>
		<description><![CDATA[I&#8217;ve been developing my own blog software based on CodeIgniter in order to fill my few free minutes (though I&#8217;m also painting and taking on a lot of other projects; not unusual for me).  I spent more than a week up front just brainstorming, thinking about what I want it to do.  After [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve been developing my own blog software based on <a href="http://www.codeigniter.com">CodeIgniter</a> in order to fill my few free minutes (though I&#8217;m also painting and taking on a lot of other projects; not unusual for me).  I spent more than a week up front just <em>brainstorming</em>, thinking about what I want it to do.  After that, I thought about how the database should be organized.  It wasn&#8217;t until a while later that I started to look at the way other blogs did things and I realized how different my expectations were than what many blogging platforms offered.  Some of the smaller names were closer, but I was not entirely willing to trust a new name to be going strong in two years.<span id="more-412"></span></p>
<p>First, blogging software needs to effectively combat spam.  There are two issues here: 1) users don&#8217;t want that crap on their blogs, 2) when blogs are easy to spam, it encourages more spamming.  The whole <a href="http://codex.wordpress.org/Nofollow">nofollow</a> issue saddens me.  Spammers aren&#8217;t going to avoid spamming just because it doesn&#8217;t directly help them with Google PageRank and similar systems.  If spamming is easy, they&#8217;ll do it regardless and net a few suckers.  Maybe a few of those suckers will even buy whatever it is or even link to it.</p>
<p>A blog&#8217;s approach to stopping spam doesn&#8217;t have to be as complex as what I&#8217;ve <a href="http://blog.gordaen.com/2007/05/30/how-to-analyze-and-stop-comment-spam/">previous talked about</a>, but it should do <em>something</em>.  At the very least, generate IDs that require spammers to at least LOAD the page they are going to spam.  I am amazed that so many blogging systems have little or no spam protection built in.</p>
<p>It should be extremely easy to upload media, especially images.  There&#8217;s no excuse for making the user pre-size his/her image when the <a href="http://www.libgd.org/Main_Page">GD library</a>, <a href="http://www.imagemagick.org/script/index.php">ImageMagick</a>, and so many other tools out there.  At the very least, a user should be able to set a default thumbnail size, whether full-size images should be resized (and to what size), easily upload a large number of images, and override any of the defaults (&#8221;This thumbnail would be so much better at 200&#215;200 instead of 100&#215;100&#8230;&#8221;).  A blogging system that goes beyond the minimum would allow custom cropping and maybe even basic touch ups.</p>
<p>All blogging systems should be &#8220;self advertising&#8221; in the sense that they generate RSS feeds, create sitemaps, ping appropriate services and other blog posts, show post relationships (i.e., X post is related to Y post or the &#8220;If you like X, you might also like&#8230;&#8221;), and give the ability to subscribe to the comments on a post.  It&#8217;s frustrating to find an interesting new blog, make a comment, and then forget to ever go back.  One of the cool things about blogs is that they are more community-focused than a magazine article, so let&#8217;s work on that <strong>communi</strong>cation!</p>
<p>One has to be able to preview posts and comments, show code snippets, create excerpts, tag posts (I hate categories), customize links, search, cache, etc.  Some of these absolutely basic features are still missing from major blogging software.  Sure, they can be plugins, but in that case there need to be &#8220;official&#8221; plugins for these features pre-installed (with the ability to easy replace them with community-contributed alternatives).</p>
<p>What features do you find missing from blogging software?</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.gordaen.com/2008/03/31/features-a-blog-should-have/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Bottom Of USPS Box</title>
		<link>http://blog.gordaen.com/2008/03/31/bottom-of-usps-box/</link>
		<comments>http://blog.gordaen.com/2008/03/31/bottom-of-usps-box/#comments</comments>
		<pubDate>Tue, 01 Apr 2008 01:02:24 +0000</pubDate>
		<dc:creator>Ian Clifton</dc:creator>
		
		<category><![CDATA[Small Talk]]></category>

		<guid isPermaLink="false">http://blog.gordaen.com/2008/03/31/bottom-of-usps-box/</guid>
		<description><![CDATA[
I&#8217;ve been slowly trying to organize the photos on my computer, especially since I have been using my desktop more than my laptop, and I came across this photo that I took a while back.  This is the bottom of a United States Postal Service (USPS) box.  I highlighted the part that caught [...]]]></description>
			<content:encoded><![CDATA[<p><a href="/wp-content/uploads/2008/03/usps_canada.jpg" rel="standard"><img src="/wp-content/uploads/2008/03/.thumbs/.usps_canada.jpg" alt="Photo of USPS box bottom showing that it is a product of Canada" title="Bottom of USPS box" border="0" /></a></p>
<p>I&#8217;ve been slowly trying to organize the photos on my computer, especially since I have been using my desktop more than my laptop, and I came across this photo that I took a while back.  This is the bottom of a United States Postal Service (USPS) box.  I highlighted the part that caught my eye.  USPS box&#8230; product of Canada.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.gordaen.com/2008/03/31/bottom-of-usps-box/feed/</wfw:commentRss>
		</item>
	</channel>
</rss>
