<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
  <channel>
    <title>Josh's Blog</title>
    <link>http://blogs.thewehners.net/josh/posts/index</link>
    <pubDate>Thu, 03 Jul 2008 15:04:14 GMT</pubDate>
    <description>Posts from Josh's Blog</description>
    <item>
      <title>Creative storytelling with signage</title>
      <link>http://blogs.thewehners.net/josh/posts/view/379-creative-storytelling-with-signage</link>
      <description>&lt;p&gt;&lt;object width="400" height="323"&gt; &lt;param name="movie" value="http://www.youtube.com/v/G2FueFv5eDo&amp;hl=en&amp;fs=1"&gt; &lt;/param&gt; &lt;param name="allowFullScreen" value="true"&gt; &lt;/param&gt; &lt;embed src="http://www.youtube.com/v/G2FueFv5eDo&amp;hl=en&amp;fs=1" type="application/x-shockwave-flash" allowfullscreen="true" width="400" height="323"&gt; &lt;/embed&gt; &lt;/object&gt;&lt;/p&gt;

&lt;p style="display: none"&gt;&lt;strong&gt;Tagged: &lt;/strong&gt;&lt;a href="http://blogs.thewehners.net/posts/tagged/enviro?author=josh" rel="tag"&gt;enviro&lt;/a&gt;, &lt;a href="http://blogs.thewehners.net/posts/tagged/video?author=josh" rel="tag"&gt;video&lt;/a&gt;&lt;/p&gt;</description>
      <pubDate>Thu, 03 Jul 2008 15:04:14 GMT</pubDate>
      <guid>http://blogs.thewehners.net/josh/posts/view/379-creative-storytelling-with-signage</guid>
      <author>blog_spam_joshua@thewehners.net</author>
    </item>
    <item>
      <title>Geeking out (part 2)</title>
      <link>http://blogs.thewehners.net/josh/posts/view/378-geeking-out-part-2</link>
      <description>&lt;p style="float:right"&gt;&lt;img src="http://farm1.static.flickr.com/81/223318835_b6797eff54_m.jpg" alt="" /&gt;&lt;/p&gt;


	&lt;p&gt;&lt;a href="http://blogs.thewehners.net/josh/posts/view/377-geeking-out-part-1"&gt;More&lt;/a&gt; on the changes to D&amp;#38;D in 4th edition:&lt;/p&gt;


	&lt;h4&gt;Dungeon Master&amp;#8217;s Guide&lt;/h4&gt;


	&lt;ul&gt;
	&lt;li&gt;The 4th edition Dungeon Master&amp;#8217;s Guide takes it&amp;#8217;s name literally: it&amp;#8217;s genuinely full of &lt;em&gt;extremely practical&lt;/em&gt; advice for actually running a game. &lt;/li&gt;
		&lt;li&gt;Page 42 is the best new thing in 4th edition: advice and a simple table on dealing (coping) with improvised player actions. There&amp;#8217;s also a brilliant, easy-to-follow walkthrough, using these tools to play out the kind of &amp;#8220;swing on the chandelier and kick him into the fire&amp;#8221; action that typically drives GMs mad.&lt;/li&gt;
		&lt;li&gt;There are now rules for running &amp;#8220;skill challenges&amp;#8221; &amp;#8211; multi-round, skill-based alternatives to hack-n-slash combat. The examples cover everything from court intrigue to interrogation to getting lost in the woods. This solves one of my biggest complaints with 3rd edition D&amp;#38;D, explicitly encouraging non-combat encounters that don&amp;#8217;t melt down into arbitrary die rolls. &lt;/li&gt;
		&lt;li&gt;The old encounter planning guideliness &amp;#8211; Encounter Level (EL) and Challenge Rating (CR) &amp;#8211; are largely gone. Based on the number and level of the PCs, you have an XP &amp;#8220;budget&amp;#8221;, which you spend to buy monsters, traps and so forth. Individual monster XP is largely based on level, but can be adjusted with simple add-ons.&lt;/li&gt;
	&lt;/ul&gt;


	&lt;h4&gt;Monster Manual&lt;/h4&gt;


	&lt;ul&gt;
	&lt;li&gt;Much about monsters has changed. In 3rd edition, monsters are built like characters, with all the same technical minutiae. 4th edition monsters are slimmed-down, simplified characters, with a compressed presentation that, for even the highest level monster, would fit on an index card.&lt;/li&gt;
		&lt;li&gt;The 4th edition Monster Manual &lt;em&gt;does &lt;strong&gt;not&lt;/strong&gt;&lt;/em&gt; include much, if indeed any, information on what the monsters eat, where they sleep, or their favorite color. (This was easily half the text in the 3rd edition.) The new manual &lt;em&gt;does&lt;/em&gt; include detailed tactical advice, or suggested attack sequences, for almost every monster. &lt;/li&gt;
		&lt;li&gt;Most kinds of monsters are available in two or more configurations, either at lower/higher levels, or with different roles (goblin archer, goblin brute; kobold slinger, kobold wyrmpriest; etc.) &lt;/li&gt;
		&lt;li&gt;One nearly universal monster option is the &amp;#8220;minion&amp;#8221; (or &amp;#8220;mook&amp;#8221;, if you&amp;#8217;ve been playing &lt;a href="http://www.atlas-games.com/fengshui/"&gt;Feng Shui&lt;/a&gt;). Minion monsters still attack and threaten the PCs, but have essentially one hit point. For those &amp;#8220;Stormtrooper&amp;#8221; moments, when you want the PCs to hack through dozens of bad guys each turn, minions are great.&lt;/li&gt;
		&lt;li&gt;Every monster &amp;#8220;category&amp;#8221; includes a variety of suggested encounter groups by level, such as &amp;#8220;5 goblin thugs, 3 goblin archers, 3 dire wolves&amp;#8221;. You could easily put together such an interesting encounter at a moment&amp;#8217;s notice.&lt;/li&gt;
		&lt;li&gt;Monster traits are less common among different monster types (in other words, instead of 10 monsters with some kind of &amp;#8220;improved grab&amp;#8221; or &amp;#8220;flyby attack&amp;#8221;, traits are more likely to be unique, or at least, unique to a broad &amp;#8220;kind&amp;#8221; of monster).&lt;/li&gt;
		&lt;li&gt;I didn&amp;#8217;t see any monsters with spell resistance, easily one of the most frustrating properties to play against in 3rd edition.&lt;/li&gt;
		&lt;li&gt;Humanoid monsters (goblins, drow, gnomes, etc.) are presented in a special appendix of racial traits, all the information needed to create more detailed, PC-like NPCs.&lt;/li&gt;
	&lt;/ul&gt;


	&lt;h4&gt;Thoughts&lt;/h4&gt;


	&lt;p&gt;In case it doesn&amp;#8217;t show, I quite like this edition of D&amp;#38;D. While I didn&amp;#8217;t quite &lt;em&gt;hate&lt;/em&gt; 3rd edition, I didn&amp;#8217;t very much &lt;em&gt;like&lt;/em&gt; it, either.&lt;/p&gt;


	&lt;p&gt;I&amp;#8217;m not a die-hard, life-long D&amp;#38;D fan. I&amp;#8217;ve played more games in the last few years from &lt;a href="http://www.indie-rpgs.com/"&gt;the forge&lt;/a&gt; than D&amp;#38;D. But I&amp;#8217;ve long wished that D&amp;#38;D would plant itself firmly in the &amp;#8220;gamist&amp;#8221; niche &amp;#8211; a niche that indie games largely avoid. Sure, maybe I don&amp;#8217;t want tactical combat every week, but when I do, I&amp;#8217;d like there to be a brilliant game that handles it smoothly. 3rd edition D&amp;#38;D, despite it&amp;#8217;s best efforts, was never going to be that game &amp;#8211; not for me, anyway.&lt;/p&gt;


	&lt;p&gt;I think 4th edition could be that game.&lt;/p&gt;


	&lt;p&gt;It&amp;#8217;s bizarre but &amp;#8211; mainly by losing lots of it&amp;#8217;s 30 years of established cruft &amp;#8211; this very mainstream game now feels eerily like an indie game. Albeit one that&amp;#8217;s less open-ended, less narrativist than most indie games, sure. But, still. Unlike 3rd edition&amp;#8217;s &amp;#8220;one game to rule them all&amp;#8221; sprawling everygame, 4th edition draws a tighter focus on the &lt;a href="http://www.hmfy.com/masterplan/10"&gt;three big questions&lt;/a&gt; &amp;#8211; questions that have grown out of the indie rpg movement.&lt;/p&gt;


	&lt;p&gt;D&amp;#38;D4 may not be the &amp;#8220;game I&amp;#8217;d take to a desert island&amp;#8221; (I&amp;#8217;m looking at you, &lt;a href="http://www.daysofwonder.com/tickettoride/en/index/europe/"&gt;Ticket to Ride: Europe&lt;/a&gt;), but it&amp;#8217;s the best &amp;#8220;go into a dungeon, fight bad guys, take their stuff&amp;#8221; game I&amp;#8217;ve seen yet.&lt;/p&gt;

&lt;p style="display: none"&gt;&lt;strong&gt;Tagged: &lt;/strong&gt;&lt;a href="http://blogs.thewehners.net/posts/tagged/D%26D?author=josh" rel="tag"&gt;D&amp;D&lt;/a&gt;, &lt;a href="http://blogs.thewehners.net/posts/tagged/gaming?author=josh" rel="tag"&gt;gaming&lt;/a&gt;&lt;/p&gt;</description>
      <pubDate>Sat, 28 Jun 2008 15:03:13 GMT</pubDate>
      <guid>http://blogs.thewehners.net/josh/posts/view/378-geeking-out-part-2</guid>
      <author>blog_spam_joshua@thewehners.net</author>
    </item>
    <item>
      <title>Geeking out (part 1)</title>
      <link>http://blogs.thewehners.net/josh/posts/view/377-geeking-out-part-1</link>
      <description>&lt;p style="float:right"&gt;&lt;a href="http://www.flickr.com/photos/54427463@N00/1580588896/"&gt;&lt;img src="http://farm3.static.flickr.com/2267/1580588896_017f594a8b_m.jpg" alt="" /&gt;&lt;/a&gt; 
&lt;br /&gt;&lt;em&gt;Magical d20&lt;/em&gt; by &lt;a href="http://www.flickr.com/photos/kirklau/"&gt;kirk lau&lt;/a&gt;&lt;/p&gt;


	&lt;p&gt;So, there&amp;#8217;s a new version of &lt;a href="http://www.wizards.com/dnd/"&gt;Dungeons &amp;#38; Dragons&lt;/a&gt; out, just released a few weeks ago. I got the new 4th Edition D&amp;#38;D books this week, and I&amp;#8217;m reading them at a rapid pace. I&amp;#8217;m trying to keep track of things that have changed between editions, and it&amp;#8217;s not always as easy as it sounds. Some things are new, some have moved, others have been renamed, others are just gone. I know, there was a &amp;#8220;preview&amp;#8221; book put out by Wizards of the Coast a few months back, but I don&amp;#8217;t think it went into sufficiently gory detail.&lt;/p&gt;


	&lt;p&gt;Here&amp;#8217;s what I&amp;#8217;ve put together for the player&amp;#8217;s handbook so far:&lt;/p&gt;


	&lt;h5&gt;Races &amp;#38; Powers&lt;/h5&gt;


	&lt;ul&gt;
	&lt;li&gt;Gnomes and half-orcs are gone; Dragonborn (beefy humanoid dragon-ish people) and Eladrin (high-falutin&amp;#8217; elves) are in.&lt;/li&gt;
		&lt;li&gt;3rd edition races advantages and disadvantages tended to balance out, 4th edition races generally give a net bonus.&lt;/li&gt;
		&lt;li&gt;In 4th edition, every level of every class offers you a choice of &amp;#8220;powers&amp;#8221; (aka spells, tricks, maneuvers, prayers, and so on.) In general, everyone gets the same number of powers at each level, but the range of choices to each class at each level differs. Some character races offer their own additional powers.&lt;/li&gt;
		&lt;li&gt;Powers are classified as either &amp;#8220;at-will&amp;#8221; (any time you want, all day long), &amp;#8220;per encounter&amp;#8221; (needs a 5 minute rest to re-charge), &amp;#8220;daily&amp;#8221; (needs a 6 hour rest) or &amp;#8220;utility&amp;#8221; (typically encounter or daily, but separated for character creation purposes).&lt;/li&gt;
	&lt;/ul&gt;


	&lt;h5&gt;Classes&lt;/h5&gt;


	&lt;ul&gt;
	&lt;li&gt;Instead of 3rd edition&amp;#8217;s &amp;#8220;tables everywhere&amp;#8221; layout, where each class has it&amp;#8217;s own confusing table, 4th edition has &lt;strong&gt;one big table&lt;/strong&gt; that applies to every character.&lt;/li&gt;
		&lt;li&gt;No more Sorceror (good riddance), the new Warlocks are an interesting potential replacement, but they are a more combat-focused class. At any rate, those who liked playing Sorcerors in the past will probably be happy with the Wizard now.&lt;/li&gt;
		&lt;li&gt;No more Bard, for better or worse. Several &amp;#8220;bard-like&amp;#8221; traits are available from other classes, but you may want to multi-class to recreate the exact mix you like best.&lt;/li&gt;
		&lt;li&gt;No Barbarian or Druid (and none of the other classes do a very good job replicating either), but there&amp;#8217;s a theory floating around that they&amp;#8217;ll be sold in a future product.&lt;/li&gt;
		&lt;li&gt;I could see the new Fighter feeling very different for some players. (Not bad, just different.) Previously, you could build a variety of different characters from this one class. The Fighter now has a more explicit role (&amp;#8220;hold the line&amp;#8221;); players who went the two-weapon route before should look at the Ranger, others might like the &amp;#8220;brutal Rogue&amp;#8221; options.&lt;/li&gt;
		&lt;li&gt;Fighters, Paladins and some monsters have a poorly defined ability to &lt;strong&gt;mark&lt;/strong&gt; one or more of their opponents. A mark basically says &amp;#8220;deal with me or else!&amp;#8221; Marked opponents have -2 on attacks that don&amp;#8217;t include the marker. There may be additional effects, that vary by class and power selection. &lt;/li&gt;
		&lt;li&gt;Rogue&amp;#8217;s still have &lt;strong&gt;sneak attack&lt;/strong&gt; bonus damage (but it&amp;#8217;s much more widely applicable), and the bonus runs on a separate track that goes up automatically with your level.&lt;/li&gt;
		&lt;li&gt;Wizards don&amp;#8217;t have &lt;strong&gt;familiars&lt;/strong&gt; anymore. &lt;/li&gt;
		&lt;li&gt;Wizards get to know additional daily powers, but have to prepare a sub-set at the start of the day. Also, their spells are now standard attacks, meaning that Magic Missile can now &lt;em&gt;miss&lt;/em&gt;.&lt;/li&gt;
		&lt;li&gt;Magic-using classes now have weapons &amp;#8211; sorry, &amp;#8220;implements&amp;#8221; &amp;#8211; staffs, wands, rods, etc. In 3rd edition, a wand was a disposable spell gun, in 4th edition, it adds a bonus to your attack roll with a certain class of spells.&lt;/li&gt;
	&lt;/ul&gt;


	&lt;h5&gt;Feats and Skills&lt;/h5&gt;


	&lt;ul&gt;
	&lt;li&gt;I haven&amp;#8217;t kept track of all of them, but many 3rd edition feats, like &lt;strong&gt;Trip&lt;/strong&gt; and &lt;strong&gt;Cleave&lt;/strong&gt;, for example, are now class powers.&lt;/li&gt;
		&lt;li&gt;&lt;strong&gt;Multi-classing&lt;/strong&gt; is now done with feats. Each class has an intro feat, that lets you gain a specific power from the class in question, and there are generic &amp;#8220;power swap&amp;#8221; feats, for additional powers. Around level 11, you get additional options, depending on which of these feats you&amp;#8217;ve taken. In general, it&amp;#8217;s a lot harder to make &amp;#8220;half this and half that&amp;#8221; characters now, but &amp;#8220;this, plus a wee bit of that&amp;#8221; is now a lot easier, less likely to &lt;em&gt;suck&lt;/em&gt; at everything.&lt;/li&gt;
		&lt;li&gt;&lt;strong&gt;Two Weapon Fighting&lt;/strong&gt; is quite a bit different. With the exception of some Ranger class powers, characters in 4th edition have just &lt;em&gt;one&lt;/em&gt; attack each round. You are explicitly allowed to hold an additional, light weapon in your off-hand, but you don&amp;#8217;t typically gain anything from this.&lt;/li&gt;
		&lt;li&gt;Skills are now much simplified and consolidated. There are no &amp;#8220;skill ranks&amp;#8221;&amp;#8212;you automatically get half your level + the revelant ability + 5 if you chose the skill at first level.&lt;/li&gt;
		&lt;li&gt;Most &amp;#8220;programmed&amp;#8221; skill-based combat maneuvers (tumbling through an opponent&amp;#8217;s space, using bluff to feint, etc.) are now class powers. (But see how the new Dungeon Master&amp;#8217;s Guide for improvising combat maneuvers using skills.)&lt;/li&gt;
	&lt;/ul&gt;


	&lt;h5&gt;Equipment&lt;/h5&gt;


	&lt;ul&gt;
	&lt;li&gt;The Player&amp;#8217;s Handbook now includes magic items and all the character creation options. (In 3rd edition, the Dungeon Master&amp;#8217;s Guide had all the non-mundane equipment and all the prestige classes&amp;#8212;which were an optional but common focus of character creation, especially at higher levels.) If you don&amp;#8217;t think you&amp;#8217;ll DM, you can safely buy &lt;em&gt;just&lt;/em&gt; the player&amp;#8217;s book, and save money on the other two.&lt;/li&gt;
		&lt;li&gt;4th edition &lt;strong&gt;weapon proficiency&lt;/strong&gt; is new and different: any character can use any kind of weapon, but class-granted proficiency &lt;em&gt;allows&lt;/em&gt; you to add a &amp;#8220;proficiency bonus&amp;#8221;, which is different for each weapon (though it tends to follow a pattern).&lt;/li&gt;
		&lt;li&gt;Magic weapons now &amp;#8220;scale&amp;#8221; with character level: a weapon that grants a +1 bonus at 2nd level might give a +2 by level 7. Similar things happen with armor. Magic shields typically &lt;strong&gt;don&amp;#8217;t&lt;/strong&gt; offer armor bonuses, but various other defensive buffs, like damage resistance.&lt;/li&gt;
	&lt;/ul&gt;


	&lt;h5&gt;Combat Action&lt;/h5&gt;


	&lt;ul&gt;
	&lt;li&gt;Your turn in combat now has three &amp;#8220;phases&amp;#8221;: take on-going damage at the start, take actions, make saves against on-going effects.&lt;/li&gt;
		&lt;li&gt;There are now four kinds of combat actions: standard (attacks), move, minor (draw a weapon) and free (talk). You typically get 1 standard, 1 move and 1 minor action, but you can convert down (standard &amp;gt; move &amp;gt; minor). There are no full round actions.&lt;/li&gt;
		&lt;li&gt;There&amp;#8217;s now just &lt;em&gt;one&lt;/em&gt; Armor Class score (no more flat-footed, touch, etc.) However, Fort, Reflex and Will are now &lt;em&gt;defenses&lt;/em&gt;. A &amp;#8220;save&amp;#8221; in 4th edition is just a simple &amp;#8220;beat 10&amp;#8221; roll, against most on-going effects (paralysis, poison damage, etc.) Different powers target different defenses. In play, this means calling out which defense you&amp;#8217;re targeting along with the to-hit roll (&amp;#8220;18 versus AC&amp;#8221;, &amp;#8220;21 against his Will&amp;#8221;, etc.)&lt;/li&gt;
		&lt;li&gt;The core game now has Action Points, but they work differently. Once per encounter, you can spend a point to get a bonus standard, move or minor action. You gain a new action point every two fights without sleeping. When you sleep, you are reset to 1. (3rd edition action points, in Eberron anyway, gave you bonus dice on a d20 roll.)&lt;/li&gt;
		&lt;li&gt;A natural 20 is an automatic hit. If the roll + bonuses &lt;em&gt;would&lt;/em&gt; hit the target&amp;#8217;s defense, it&amp;#8217;s a critical hit. Instead of doubling the damage, 4th edition critical hits deal the &lt;strong&gt;maximum&lt;/strong&gt; damage. Some weapons and powers offer additional effects on a critical hit. Note that &lt;strong&gt;all&lt;/strong&gt; attacks can now critical (including spells!)&lt;/li&gt;
		&lt;li&gt;Charge works similarly, but is described awkwardly, so it seems more different than it is. Charge is now a standard action that bundles a move and an attack. Effectively, this means you still move twice and attack. This bonus for charging is a smaller now.&lt;/li&gt;
		&lt;li&gt;Grapple, now called &amp;#8220;grab&amp;#8221;, is &lt;em&gt;hugely&lt;/em&gt; less complicated, and should have a higher success rate for most characters.&lt;/li&gt;
		&lt;li&gt;&amp;#8220;5 foot step&amp;#8221; is now a move action called &lt;strong&gt;shift&lt;/strong&gt;. The re-definition allows for powers to affect shifting (with less clunky writing)&amp;#8212;for example, a power might grant you a longer shift, or stop another character from shifting away from you.&lt;/li&gt;
	&lt;/ul&gt;

&lt;p style="display: none"&gt;&lt;strong&gt;Tagged: &lt;/strong&gt;&lt;a href="http://blogs.thewehners.net/posts/tagged/D%26D?author=josh" rel="tag"&gt;D&amp;D&lt;/a&gt;, &lt;a href="http://blogs.thewehners.net/posts/tagged/gaming?author=josh" rel="tag"&gt;gaming&lt;/a&gt;&lt;/p&gt;</description>
      <pubDate>Sat, 28 Jun 2008 14:57:14 GMT</pubDate>
      <guid>http://blogs.thewehners.net/josh/posts/view/377-geeking-out-part-1</guid>
      <author>blog_spam_joshua@thewehners.net</author>
    </item>
    <item>
      <title>"Brave N00b World"</title>
      <link>http://blogs.thewehners.net/josh/posts/view/376-brave-n00b-world</link>
      <description>&lt;p&gt;A fun talk on mapping a virtual world by James Wallis:&lt;/p&gt;


&lt;object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" width="420" height="318" id="viddler"&gt;&lt;param name="movie" value="http://www.viddler.com//simple_on_site/a10494c4" /&gt;&lt;param name="allowScriptAccess" value="always" /&gt;&lt;param name="allowFullScreen" value="true" /&gt;&lt;embed src="http://www.viddler.com//simple_on_site/a10494c4" width="420" height="318" type="application/x-shockwave-flash" allowScriptAccess="always" allowFullScreen="true" name="viddler" &gt;&lt;/embed&gt;&lt;/object&gt;

&lt;p style="display: none"&gt;&lt;strong&gt;Tagged: &lt;/strong&gt;&lt;a href="http://blogs.thewehners.net/posts/tagged/gaming?author=josh" rel="tag"&gt;gaming&lt;/a&gt;, &lt;a href="http://blogs.thewehners.net/posts/tagged/wow?author=josh" rel="tag"&gt;wow&lt;/a&gt;&lt;/p&gt;</description>
      <pubDate>Thu, 26 Jun 2008 15:19:27 GMT</pubDate>
      <guid>http://blogs.thewehners.net/josh/posts/view/376-brave-n00b-world</guid>
      <author>blog_spam_joshua@thewehners.net</author>
    </item>
    <item>
      <title>Tech talk</title>
      <link>http://blogs.thewehners.net/josh/posts/view/375-tech-talk</link>
      <description>&lt;p&gt;I&amp;#8217;ve been thinking lately about how many of the talks at tech conferences are bizarrely &lt;em&gt;impractical&lt;/em&gt;. For a counter-example, Rands has this &lt;a href="http://www.randsinrepose.com/archives/2008/04/21/saving_seconds.html"&gt;seemingly un-radical suggestion&lt;/a&gt;&lt;/p&gt;


&lt;blockquote&gt;&lt;p&gt;This is the presentation I want to see at the next conference: in a room full of people, anyone is welcome to walk up to the mic and plug their laptop in to the projector. They&#8217;ll be asked to complete three simple tasks:&lt;/p&gt;


	&lt;ol&gt;
	&lt;li&gt;Send a mail to a friend&lt;/li&gt;
		&lt;li&gt;Find something on the Internet&lt;/li&gt;
		&lt;li&gt;Save a bookmark or an image.&lt;/li&gt;
	&lt;/ol&gt;


	&lt;p&gt;I would be fixated.&lt;/p&gt;


&lt;/blockquote&gt;

	&lt;p&gt;I&amp;#8217;d love that.&lt;/p&gt;


	&lt;p&gt;If developers are the builders, why don&amp;#8217;t we talk more about &lt;strong&gt;craft&lt;/strong&gt;? Why are there so many conference presentations about lofty topics, and so &lt;em&gt;few&lt;/em&gt; about dispensing with down-to-earth, day-to-day chores?&lt;/p&gt;


	&lt;p&gt;One of my favorite BarCamp sessions was a group &amp;#8220;show-and-tell&amp;#8221;&amp;#8212;we took turns introducing the rest of the crowd to one tool in our arsenal. I talked about &lt;a href="http://www.getfirebug.com/"&gt;FireBug&lt;/a&gt;, someone talked about &lt;a href="http://docs.google.com/"&gt;Google Spreadsheets&lt;/a&gt;, someone else talked about &lt;a href="http://selenium.openqa.org/"&gt;Selenium&lt;/a&gt;. I&amp;#8217;d love to see more of that kind of thing.&lt;/p&gt;


	&lt;p&gt;If you&amp;#8217;re planning a conference, and can&amp;#8217;t squeeze one &amp;#8220;practical nuggets&amp;#8221; session into the schedule, &lt;em&gt;why not&lt;/em&gt;?&lt;/p&gt;

&lt;p style="display: none"&gt;&lt;strong&gt;Tagged: &lt;/strong&gt;&lt;a href="http://blogs.thewehners.net/posts/tagged/conferences?author=josh" rel="tag"&gt;conferences&lt;/a&gt;, &lt;a href="http://blogs.thewehners.net/posts/tagged/programming?author=josh" rel="tag"&gt;programming&lt;/a&gt;, &lt;a href="http://blogs.thewehners.net/posts/tagged/rant?author=josh" rel="tag"&gt;rant&lt;/a&gt;&lt;/p&gt;</description>
      <pubDate>Mon, 16 Jun 2008 12:30:54 GMT</pubDate>
      <guid>http://blogs.thewehners.net/josh/posts/view/375-tech-talk</guid>
      <author>blog_spam_joshua@thewehners.net</author>
    </item>
    <item>
      <title>It's the economy, stupid</title>
      <link>http://blogs.thewehners.net/josh/posts/view/374-its-the-economy-stupid</link>
      <description>&lt;p&gt;Hidden in the intro to &lt;a href="http://www.businessweek.com/magazine/content/06_39/b4002001.htm"&gt;this BusinessWeek article&lt;/a&gt; - ostensibly about the health-care industry - is an jaw-dropping nugget of information. See if you find it:&lt;/p&gt;


&lt;blockquote&gt;&lt;p&gt;If you really want to understand what makes the U.S. economy tick these days, don&amp;#8217;t go to Silicon Valley, Wall Street, or Washington. Just take a short trip to your local hospital. Park where you don&amp;#8217;t block the ambulances, and watch the unending flow of doctors, nurses, technicians, and support personnel. You&amp;#8217;ll have a front-row seat at the health-care economy.&lt;/p&gt;


	&lt;p&gt;For years, everyone from politicians on both sides of the aisle to corporate execs to your Aunt Tilly have justifiably bemoaned American health care&amp;#8212;the out-of-control costs, the vast inefficiencies, the lack of access, and the often inexplicable blunders.&lt;/p&gt;


	&lt;p&gt;But the very real problems with the health-care system mask a simple fact: Without it the nation&amp;#8217;s labor market would be in a deep coma. Since 2001, 1.7 million new jobs have been added in the health-care sector, which includes related industries such as pharmaceuticals and health insurance. Meanwhile, the number of private-sector jobs outside of health care is no higher than it was five years ago.&lt;/p&gt;


&lt;/blockquote&gt;

	&lt;p&gt;Did you catch it? Here, let me highlight it for you:&lt;/p&gt;


&lt;blockquote&gt;the number of private-sector jobs outside of health care is &lt;strong&gt;no higher than it was five years ago&lt;/strong&gt;&lt;/blockquote&gt;

	&lt;p&gt;Or, phrase it the other way around:&lt;/p&gt;


&lt;blockquote&gt;the &lt;strong&gt;only sector&lt;/strong&gt; that produced &lt;strong&gt;any&lt;/strong&gt; net new jobs in the U.S. economy between 2001 and 2006 was health care&lt;/blockquote&gt;

	&lt;p&gt;For even more mind-boggling details, &lt;a href="http://www.cjr.org/the_audit/turning_point_middle_class_und.php?page=all"&gt;read the latest installment&lt;/a&gt; in &lt;span class="caps"&gt;CJR&lt;/span&gt;&amp;#8217;s series on the looming general election, which links a number of reports on the state of the US economy.&lt;/p&gt;


	&lt;p&gt;Shorter version: it&amp;#8217;s much, much worse than I thought.&lt;/p&gt;

&lt;p style="display: none"&gt;&lt;strong&gt;Tagged: &lt;/strong&gt;&lt;a href="http://blogs.thewehners.net/posts/tagged/2008+election?author=josh" rel="tag"&gt;2008 election&lt;/a&gt;, &lt;a href="http://blogs.thewehners.net/posts/tagged/econ?author=josh" rel="tag"&gt;econ&lt;/a&gt;, &lt;a href="http://blogs.thewehners.net/posts/tagged/journalism?author=josh" rel="tag"&gt;journalism&lt;/a&gt;&lt;/p&gt;</description>
      <pubDate>Fri, 13 Jun 2008 13:06:26 GMT</pubDate>
      <guid>http://blogs.thewehners.net/josh/posts/view/374-its-the-economy-stupid</guid>
      <author>blog_spam_joshua@thewehners.net</author>
    </item>
    <item>
      <title>RubyEnRails Tidbits</title>
      <link>http://blogs.thewehners.net/josh/posts/view/373-rubyenrails-tidbits</link>
      <description>&lt;p style="float:right"&gt;&lt;a href="http://www.flickr.com/photos/97414294@N00/2568021529/"&gt;&lt;img src="http://farm4.static.flickr.com/3125/2568021529_99705b1ca7_m.jpg" alt="" /&gt;&lt;/a&gt;&lt;/p&gt;


	&lt;p&gt;I&amp;#8217;m &lt;em&gt;way&lt;/em&gt; too attention-deprived to &amp;#8220;live blog&amp;#8221; at a conference, so here&amp;#8217;s some of my notes transcribed from paper to the interwebs&amp;#8230;&lt;/p&gt;


	&lt;h5&gt;Zed Shaw&amp;#8217;s opener&lt;/h5&gt;


	&lt;ul&gt;
	&lt;li&gt;Stop doing math demos as benchmarks &amp;#8211; math&amp;#8217;s not the problem, IO &lt;strong&gt;is&lt;/strong&gt; (talk to the database, write to a file, respond to client)&lt;/li&gt;
		&lt;li&gt;&lt;a href="http://en.wikipedia.org/wiki/Amdahl%27s_law"&gt;Amdahl&amp;#8217;s Law&lt;/a&gt;: throwing more hardware at bad code doesn&amp;#8217;t really help &amp;#8211; better code trumps faster hardware&lt;/li&gt;
	&lt;/ul&gt;


	&lt;h5&gt;Obie Fernandez&amp;#8217; &amp;#8220;Worst Rails Code&amp;#8221;&lt;/h5&gt;


	&lt;ul&gt;
	&lt;li&gt;There&amp;#8217;s a Ruby anti-patterns book in the works. If it includes &amp;#8220;how to do it better&amp;#8221;, this could be cool.&lt;/li&gt;
		&lt;li&gt;Suggested: There should be more &amp;#8220;how to re-factor this&amp;#8221; blog posts, take up the &lt;a href="http://www.therailsway.com/"&gt;Rails Way&lt;/a&gt; slack.&lt;/li&gt;
	&lt;/ul&gt;


	&lt;p&gt;I didn&amp;#8217;t particularly enjoy Obie&amp;#8217;s talk. It seems like an easy &amp;#8220;win&amp;#8221; to look at someone else&amp;#8217;s code, say &amp;#8220;FAIL&amp;#8221;, and laugh; it&amp;#8217;s harder to point to a better way.&lt;/p&gt;


	&lt;p&gt;The new and inexperienced write bad code, because they don&amp;#8217;t know better. But the way they learn is by writing; does publicly shaming the bad code make them learn faster? I don&amp;#8217;t think so.&lt;/p&gt;


	&lt;p style="float:right"&gt;&lt;a href="http://www.flickr.com/photos/97414294@N00/2568023495/"&gt;&lt;img src="http://farm4.static.flickr.com/3155/2568023495_decc9ff2b2_m.jpg" alt="" /&gt;&lt;/a&gt;&lt;/p&gt;


	&lt;h5&gt;Sam Aaron &amp;#8220;Code Aesthetics&amp;#8221;&lt;/h5&gt;


	&lt;p&gt;Sam&amp;#8217;s talk was very conversational, I didn&amp;#8217;t take very interesting notes. &lt;a href="http://ruby.sadi.st/Flog.html"&gt;Flog&lt;/a&gt; looks interesting.&lt;/p&gt;


	&lt;h5&gt;Ninh Bui &amp;#38; Hongli Lai &amp;#8220;Phusion Passenger (mod_rails)&amp;#8221;&lt;/h5&gt;


	&lt;p&gt;This was probably my favorite talk of the day; a good blend of practical information (including how-to videos) and high-level theory. Passenger 2.0 looks really cool.&lt;/p&gt;


	&lt;p style="float:right"&gt;&lt;a href="http://www.flickr.com/photos/97414294@N00/2568952838/"&gt;&lt;img src="http://farm4.static.flickr.com/3157/2568952838_d81c64a6a9_m.jpg" alt="" /&gt;&lt;/a&gt;&lt;/p&gt;


	&lt;h5&gt;Charles Nutter &amp;#8220;JRuby&amp;#8221;&lt;/h5&gt;


	&lt;p&gt;I don&amp;#8217;t have a need of JRuby just now, but I was nonetheless impressed. I expected setup and deployment to be much more complicated than it looked like here. I noticed that Charles frequently used the expression &amp;#8220;package it up &amp;#38; ship it out&amp;#8221;, whereas the mainstream Ruby community may be more accustomed to &amp;#8220;clone the latest from git and check it out&amp;#8221;&amp;#8212;it&amp;#8217;s a different metaphor for software delivery.&lt;/p&gt;


	&lt;p style="float:right"&gt;&lt;a href="http://www.flickr.com/photos/97414294@N00/2568970242/"&gt;&lt;img src="http://farm4.static.flickr.com/3161/2568970242_c0bdb62600_m.jpg" alt="" /&gt;&lt;/a&gt;&lt;/p&gt;


	&lt;h5&gt;Miscellaneous&lt;/h5&gt;


	&lt;ul&gt;
	&lt;li&gt;There seems to be a rift growing between the &amp;#8220;write what you know / optimize programmer happiness / programmer time is expensive&amp;#8221; camp and the &amp;#8220;performance is an issue / &amp;#8216;worst rails code ever&amp;#8217; / optimize now&amp;#8221; camp. The last group seems to spend more time in &lt;a href="http://en.wikipedia.org/wiki/The_Black_Swan_%28book%29#Part_1_Umberto_Eco.27s_antilibrary.2C_or_how_we_seek_validation"&gt;extremistan&lt;/a&gt; than the former, for better or worse.&lt;/li&gt;
		&lt;li&gt;A lot of time yesterday was spent talking about performance. Maybe this was an accident, but I think it&amp;#8217;s reflected in the larger community (there are &lt;em&gt;how many&lt;/em&gt; projects working on newer/better/faster Ruby VMs?) Is this really a good use of our time? &lt;/li&gt;
		&lt;li&gt;Here&amp;#8217;s my short list of &amp;#8220;what we aren&amp;#8217;t talking about, because &amp;#8216;performance&amp;#8217; has taken all the air out of the room&amp;#8221;&amp;#8212;testing, globalization, contributing to Rails, &lt;a href="http://datamapper.org/"&gt;alternatives to ActiveRecord&lt;/a&gt;.&lt;/li&gt;
		&lt;li&gt;Both Obie and David are bothered by re-inventing wheels. Haven&amp;#8217;t we &lt;a href="http://c2.com/cgi/wiki?ReinventingTheWheel"&gt;been through this before&lt;/a&gt;? If joining a programming cult doesn&amp;#8217;t save me from inane dogma, what will?&lt;/li&gt;
	&lt;/ul&gt;


	&lt;h5&gt;Community&lt;/h5&gt;


	&lt;p&gt;If you&amp;#8217;re a local and haven&amp;#8217;t yet, you really ought to check out the monthly &amp;#8221;.rb&amp;#8221; pub meetings (&lt;a href="http://groups.google.com/group/amsterdam-rb"&gt;Amsterdam&lt;/a&gt; or &lt;a href="http://groups.google.com/group/utrecht-rb"&gt;Utrecht&lt;/a&gt;, so far), or the sporadic &lt;a href="http://www.fngtps.com/sections/Meetings"&gt;coffee meetings&lt;/a&gt;.&lt;/p&gt;


	&lt;p&gt;&lt;cite&gt;Photos from &lt;a href="http://www.flickr.com/photos/dannynet/"&gt;danny_l&lt;/a&gt;&lt;/cite&gt;&lt;/p&gt;

&lt;p style="display: none"&gt;&lt;strong&gt;Tagged: &lt;/strong&gt;&lt;a href="http://blogs.thewehners.net/posts/tagged/ruby+on+rails?author=josh" rel="tag"&gt;ruby on rails&lt;/a&gt;, &lt;a href="http://blogs.thewehners.net/posts/tagged/rubyenrails2008?author=josh" rel="tag"&gt;rubyenrails2008&lt;/a&gt;&lt;/p&gt;</description>
      <pubDate>Wed, 11 Jun 2008 10:59:50 GMT</pubDate>
      <guid>http://blogs.thewehners.net/josh/posts/view/373-rubyenrails-tidbits</guid>
      <author>blog_spam_joshua@thewehners.net</author>
    </item>
    <item>
      <title>"Alle welpies helpen"</title>
      <link>http://blogs.thewehners.net/josh/posts/view/372-alle-welpies-helpen</link>
      <description>&lt;p&gt;I just saw this on TV. It's hilarious:&lt;/p&gt;

&lt;p&gt;&lt;object width="425" height="344"&gt; &lt;param name="movie" value="http://www.youtube.com/v/OaIdhFPMET0&amp;hl=en"&gt; &lt;/param&gt; &lt;embed src="http://www.youtube.com/v/OaIdhFPMET0&amp;hl=en" type="application/x-shockwave-flash" width="425" height="344"&gt; &lt;/embed&gt; &lt;/object&gt;&lt;/p&gt;

&lt;p style="display: none"&gt;&lt;strong&gt;Tagged: &lt;/strong&gt;&lt;a href="http://blogs.thewehners.net/posts/tagged/netherlands?author=josh" rel="tag"&gt;netherlands&lt;/a&gt;, &lt;a href="http://blogs.thewehners.net/posts/tagged/tv?author=josh" rel="tag"&gt;tv&lt;/a&gt;&lt;/p&gt;</description>
      <pubDate>Mon, 09 Jun 2008 19:37:54 GMT</pubDate>
      <guid>http://blogs.thewehners.net/josh/posts/view/372-alle-welpies-helpen</guid>
      <author>blog_spam_joshua@thewehners.net</author>
    </item>
    <item>
      <title>The Internet is down!</title>
      <link>http://blogs.thewehners.net/josh/posts/view/371-the-internet-is-down</link>
      <description>&lt;p&gt;&lt;embed src="http://media.mtvnservices.com/mgid:cms:item:southparkstudios.com:166182::::" type="application/x-shockwave-flash" wmode="window" width="420" height="315" allowFullscreen="true" scriptAccess="always"&gt; &lt;/embed&gt;&lt;/p&gt;

&lt;p style="display: none"&gt;&lt;strong&gt;Tagged: &lt;/strong&gt;&lt;a href="http://blogs.thewehners.net/posts/tagged/addiction?author=josh" rel="tag"&gt;addiction&lt;/a&gt;, &lt;a href="http://blogs.thewehners.net/posts/tagged/internet?author=josh" rel="tag"&gt;internet&lt;/a&gt;, &lt;a href="http://blogs.thewehners.net/posts/tagged/tv?author=josh" rel="tag"&gt;tv&lt;/a&gt;&lt;/p&gt;</description>
      <pubDate>Tue, 13 May 2008 19:15:24 GMT</pubDate>
      <guid>http://blogs.thewehners.net/josh/posts/view/371-the-internet-is-down</guid>
      <author>blog_spam_joshua@thewehners.net</author>
    </item>
    <item>
      <title>Love Thy Neighbor</title>
      <link>http://blogs.thewehners.net/josh/posts/view/370-love-thy-neighbor</link>
      <description>&lt;p&gt;&lt;a href="http://www.cjr.org/review/love_thy_neighbor.php?page=all"&gt;Indeed!&lt;/a&gt;&lt;/p&gt;


&lt;blockquote&gt;&lt;p&gt;I had covered the groundbreaking of the minaret&#8212;the first to be built in St. Louis. The mayor had been there to praise pluralism and throw a little dirt around for the cameras&amp;#8230; Now I wrote a second story, which was maybe twelve column-inches long and ran the next day on the bottom of B2&amp;#8230;&lt;/p&gt;


	&lt;p&gt;I quoted the imam, who confirmed what I&#8217;d already written&#8212;that the minaret had no sound system or speakers and would not be used to call Muslims to prayer. I also quoted an &lt;span class="caps"&gt;FBI&lt;/span&gt; spokesman as well as a &lt;span class="caps"&gt;CAIR&lt;/span&gt; spokesman, and then detailed some of the comments that had alarmed Muslims and caused them to inform the &lt;span class="caps"&gt;FBI&lt;/span&gt;.&lt;/p&gt;


	&lt;p&gt;For example, one visitor to Gateway Pundit had written: &#8220;It is really hard on us white, nonMuslims to have to live with these folks taking over our neighborhood and community. Our government helping these people relocate into America&#8217;s heartland is like inviting the enemy into your camp. It&#8217;s totally disgusting.&#8221; On another blog, Little Green Footballs, a visitor named &#8220;Amer1can&#8221; upped the ante: &#8220;Would be a shame if it were to be vandalized or destroyed. Just a shame I tell you&#8230;.wink wink &lt;span class="caps"&gt;STL&lt;/span&gt; youth.&#8221; Another visitor to the same blog added: &#8220;I suppose dynamite would be considered an extreme response.&#8221;&lt;/p&gt;


	&lt;p&gt;...The next morning, the e-mails started coming in at around nine. Many of them complained that I had written a story &#8220;planted&#8221; by &lt;span class="caps"&gt;CAIR&lt;/span&gt;, which was, I was told over and over again, a front for Hamas and the Muslim Brotherhood, and a fundraising arm for other Islamist terrorist organizations. But it was only after my testy e-mail exchange with Charles Johnson, the proprietor of Little Green Footballs, that the real fun began&#8212;especially after Johnson posted our correspondence on the blog.&lt;/p&gt;


	&lt;p&gt;Over the next two days, I received more than one hundred e-mails from Little Green Footballs readers. One suggested I should look into a job at Taco Bell, since I was obviously going to be fired for messing with Johnson. (Little Green Footballs fans credit Johnson with taking down Dan Rather after his 60 Minutes story on George W. Bush&#8217;s National Guard service.) Another called me &#8220;a self-righteous numskull with the literary prowess of a dodo bird. A dodo bird that dropped out of college and is on drugs.&#8221; Still another suggested that there was &#8220;no way you could possibly be any more of a dick.&#8221;&lt;/p&gt;


	&lt;p&gt;In two related threads on Johnson&#8217;s blog, which ran to nearly 1,500 comments, my photo, bio, and home address were all posted&amp;#8230;&lt;/p&gt;


	&lt;p&gt;Besides being called ignorant, arrogant, balding, stupid, rude, fat (my new nickname was Burger Boy), lazy, and incompetent, I was depicted as a Satanic baby. My mother was insulted. I was accused of lying about my academic degrees, having a comb-over, being a paid agent of the Saudi government, and acquiring &#8220;numerous social diseases.&#8221; I was, apparently, a plagiarist and a terrorist. Someone did a search to see if I was a pedophile&amp;#8230;&lt;/p&gt;


	&lt;p&gt;Finally, there were suggestions that I should be murdered. To his credit, Johnson deleted the death threats and the comments with my address. Blessed are the peacemakers.&lt;/p&gt;


&lt;/blockquote&gt;

&lt;p style="display: none"&gt;&lt;strong&gt;Tagged: &lt;/strong&gt;&lt;a href="http://blogs.thewehners.net/posts/tagged/blogs?author=josh" rel="tag"&gt;blogs&lt;/a&gt;, &lt;a href="http://blogs.thewehners.net/posts/tagged/journalism?author=josh" rel="tag"&gt;journalism&lt;/a&gt;, &lt;a href="http://blogs.thewehners.net/posts/tagged/religion?author=josh" rel="tag"&gt;religion&lt;/a&gt;, &lt;a href="http://blogs.thewehners.net/posts/tagged/words?author=josh" rel="tag"&gt;words&lt;/a&gt;&lt;/p&gt;</description>
      <pubDate>Thu, 08 May 2008 21:01:05 GMT</pubDate>
      <guid>http://blogs.thewehners.net/josh/posts/view/370-love-thy-neighbor</guid>
      <author>blog_spam_joshua@thewehners.net</author>
    </item>
    <item>
      <title>The Tales of Beedle the Bard</title>
      <link>http://blogs.thewehners.net/josh/posts/view/369-the-tales-of-beedle-the-bard</link>
      <description>&lt;p&gt;Mmmmm, &lt;a href="http://blogs.thewehners.net/josh/posts/www.amazon.com/beedlebard"&gt;hand-crafted fairy-tale book&lt;/a&gt;:&lt;/p&gt;


&lt;blockquote&gt;&lt;p&gt;&lt;img src="http://www.thewehners.net/joshua/grfx/tales_of_beedle_320.jpg" align="right" style="margin: 0 0 10px 10px" /&gt; We&amp;#8217;re incredibly excited to announce that Amazon has purchased J.K. Rowling&#8217;s &lt;cite&gt;The Tales of Beedle the Bard&lt;/cite&gt; at an auction held by Sotheby&#8217;s in London. The book of five wizarding fairy tales, referenced in the last book of the Harry Potter series, &lt;cite&gt;Harry Potter and the Deathly Hallows&lt;/cite&gt;, is one of only &lt;strong&gt;seven handmade copies in existence.&lt;/strong&gt; The purchase price was &#163;1,950,000, and Ms. Rowling is donating the proceeds to &lt;a href="http://www.chlg.org/"&gt;The Children&amp;#8217;s Voice campaign&lt;/a&gt;, a charity she co-founded to help improve the lives of institutionalized children across Europe.&lt;/p&gt;


	&lt;p&gt;&lt;cite&gt;The Tales of Beedle the Bard&lt;/cite&gt; is extensively illustrated and handwritten by the bard herself&amp;#8212;all 157 pages of it. It&amp;#8217;s bound in brown Moroccan leather and embellished with five hand-chased hallmarked sterling silver ornaments and mounted moonstones.&lt;/p&gt;


&lt;/blockquote&gt;

	&lt;p&gt;&lt;em&gt;(emphasis mine)&lt;/em&gt;&lt;/p&gt;


	&lt;p&gt;That&amp;#8217;s just cool.&lt;/p&gt;

&lt;p style="display: none"&gt;&lt;strong&gt;Tagged: &lt;/strong&gt;&lt;a href="http://blogs.thewehners.net/posts/tagged/books?author=josh" rel="tag"&gt;books&lt;/a&gt;, &lt;a href="http://blogs.thewehners.net/posts/tagged/harry+potter?author=josh" rel="tag"&gt;harry potter&lt;/a&gt;, &lt;a href="http://blogs.thewehners.net/posts/tagged/amazon?author=josh" rel="tag"&gt;amazon&lt;/a&gt;&lt;/p&gt;</description>
      <pubDate>Thu, 08 May 2008 20:12:56 GMT</pubDate>
      <guid>http://blogs.thewehners.net/josh/posts/view/369-the-tales-of-beedle-the-bard</guid>
      <author>blog_spam_joshua@thewehners.net</author>
    </item>
    <item>
      <title>An All-White Elephant</title>
      <link>http://blogs.thewehners.net/josh/posts/view/368-an-all-white-elephant</link>
      <description>&lt;p&gt;&lt;a href="http://www.nytimes.com/2008/05/04/opinion/04rich.html?em&amp;#38;ex=1210046400&amp;#38;en=1ab063165842695f&amp;#38;ei=5087%0A"&gt;This&lt;/a&gt; is an excellent, surprisingly well-linked, op-ed by the NY Times&amp;#8217; Frank Rich on race issues in this year&amp;#8217;s US election. I particularly like this quote:&lt;/p&gt;


&lt;blockquote&gt;If we&#8217;re to judge black candidates on their most controversial associates &#8212; and how quickly, sternly and completely they disown them &#8212; we must judge white politicians by the same yardstick.&lt;/blockquote&gt;

&lt;p style="display: none"&gt;&lt;strong&gt;Tagged: &lt;/strong&gt;&lt;a href="http://blogs.thewehners.net/posts/tagged/2008+election?author=josh" rel="tag"&gt;2008 election&lt;/a&gt;, &lt;a href="http://blogs.thewehners.net/posts/tagged/politics?author=josh" rel="tag"&gt;politics&lt;/a&gt;&lt;/p&gt;</description>
      <pubDate>Mon, 05 May 2008 10:04:01 GMT</pubDate>
      <guid>http://blogs.thewehners.net/josh/posts/view/368-an-all-white-elephant</guid>
      <author>blog_spam_joshua@thewehners.net</author>
    </item>
    <item>
      <title>Interview with Jad Abumrad and Robert Krulwich @ The A.V. Club</title>
      <link>http://blogs.thewehners.net/josh/posts/view/367-interview-with-jad-abumrad-and-robert-krulwich-the-av-club</link>
      <description>&lt;p&gt;I like &lt;a href="http://www.wnyc.org/shows/radiolab/"&gt;RadioLab&lt;/a&gt;, and I really like &lt;a href="http://www.avclub.com/content/interview/jad_abumrad_and_robert"&gt;this interview&lt;/a&gt; at the AV Club. I love this quote:&lt;/p&gt;


&lt;blockquote&gt;&lt;p&gt;&lt;span class="caps"&gt;AVC&lt;/span&gt;: What was the weirdest scenario you found yourself in while doing the stories for this season?&lt;/p&gt;


	&lt;p&gt;RK: We were talking to these kids who work with this bacteria called E. coli that smells like poop. It&amp;#8217;s uncomfortable. So as a matter-of-fact solution to their practical problem, they designed a different E. coli. A friend of theirs at Purdue sent them a wintergreen gene, plucked from some other creature, and they plopped in the wintergreen to mask the poop smell, thereby solving the yuck factor of being in the lab by simply creating an E. coli that had never existed in the 70- to 100-million-year history of E. coli. Suddenly, their lab is smelling wintergreeny as opposed to poopy. Then they have another problem: How long do they have to wait to work with it? So they put a trigger onto the E. coli, which when it actually slows down its multiplication rate, it smells like a big, rich, creamy banana. If they smell banana, then they go in and do their work. I sat them down and said, &amp;#8220;Did any of you consider the sheer awesomeness of what you just did? You created essentially a creature new to nature.&amp;#8221; And this 19-year-old goes, &amp;#8220;Uh, yeah?&amp;#8221;&lt;/p&gt;


&lt;/blockquote&gt;

&lt;p style="display: none"&gt;&lt;strong&gt;Tagged: &lt;/strong&gt;&lt;a href="http://blogs.thewehners.net/posts/tagged/radiolab?author=josh" rel="tag"&gt;radiolab&lt;/a&gt;, &lt;a href="http://blogs.thewehners.net/posts/tagged/science?author=josh" rel="tag"&gt;science&lt;/a&gt;&lt;/p&gt;</description>
      <pubDate>Fri, 02 May 2008 19:33:11 GMT</pubDate>
      <guid>http://blogs.thewehners.net/josh/posts/view/367-interview-with-jad-abumrad-and-robert-krulwich-the-av-club</guid>
      <author>blog_spam_joshua@thewehners.net</author>
    </item>
    <item>
      <title>Bowling 1, Health Care 0 - New York Times</title>
      <link>http://blogs.thewehners.net/josh/posts/view/366-bowling-1-health-care-0---new-york-times</link>
      <description>&lt;p&gt;&lt;a href="http://www.nytimes.com/2008/04/27/opinion/27edwards.html?_r=1&amp;#38;oref=slogin&amp;#38;pagewanted=all"&gt;This&lt;/a&gt; is a brilliant op-ed / media criticism by &lt;a href="http://en.wikipedia.org/wiki/Elizabeth_Edwards"&gt;Elizabeth Edwards&lt;/a&gt; for the New York Times. It&amp;#8217;s remarkably well-written, and I particularly like this quote:&lt;/p&gt;


&lt;blockquote&gt;Watching the campaign unfold, I saw how the press gravitated toward a narrative template for the campaign, searching out characters as if for a novel: on one side, a self-described 9/11 hero with a colorful personal life, a former senator who had played a president in the movies, a genuine war hero with a stunning wife and an intriguing temperament, and a handsome governor with a beautiful family and a high school sweetheart as his bride. And on the other side, a senator who had been first lady, a young African-American senator with an Ivy League diploma, a Hispanic governor with a self-deprecating sense of humor and even a former senator from the South standing loyally beside his ill wife. Issues that could make a difference in the lives of Americans didn&#8217;t fit into the narrative template and, therefore, took a back seat to these superficialities.&lt;/blockquote&gt;

&lt;p style="display: none"&gt;&lt;strong&gt;Tagged: &lt;/strong&gt;&lt;a href="http://blogs.thewehners.net/posts/tagged/2008+election?author=josh" rel="tag"&gt;2008 election&lt;/a&gt;, &lt;a href="http://blogs.thewehners.net/posts/tagged/media?author=josh" rel="tag"&gt;media&lt;/a&gt;, &lt;a href="http://blogs.thewehners.net/posts/tagged/politics?author=josh" rel="tag"&gt;politics&lt;/a&gt;&lt;/p&gt;</description>
      <pubDate>Thu, 01 May 2008 15:52:25 GMT</pubDate>
      <guid>http://blogs.thewehners.net/josh/posts/view/366-bowling-1-health-care-0---new-york-times</guid>
      <author>blog_spam_joshua@thewehners.net</author>
    </item>
    <item>
      <title>"A screen that ships without a mouse ships broken"</title>
      <link>http://blogs.thewehners.net/josh/posts/view/365-a-screen-that-ships-without-a-mouse-ships-broken</link>
      <description>&lt;p&gt;I&amp;#8217;ve been reading Clay Shirky&amp;#8217;s writing on social patterns in new media for a few years now, and I love this quote from this video (15 mins):&lt;/p&gt;


&lt;object type="application/x-shockwave-flash" data="http://blip.tv/scripts/flash/showplayer.swf?enablejs=true&amp;#38;feedurl=http%3A%2F%2Fweb2expo%2Eblip%2Etv%2Frss&amp;#38;file=http%3A%2F%2Fblip%2Etv%2Frss%2Fflash%2F862384%3Freferrer%3Dblip%2Etv%26source%3D1&amp;#38;showplayerpath=http%3A%2F%2Fblip%2Etv%2Fscripts%2Fflash%2Fshowplayer%2Eswf" width="400" height="255" allowfullscreen="true" id="showplayer"&gt;&lt;param name="movie" value="http://blip.tv/scripts/flash/showplayer.swf?enablejs=true&amp;#38;feedurl=http%3A%2F%2Fweb2expo%2Eblip%2Etv%2Frss&amp;#38;file=http%3A%2F%2Fblip%2Etv%2Frss%2Fflash%2F862384%3Freferrer%3Dblip%2Etv%26source%3D1&amp;#38;showplayerpath=http%3A%2F%2Fblip%2Etv%2Fscripts%2Fflash%2Fshowplayer%2Eswf" /&gt;&lt;param name="quality" value="best" /&gt;&lt;embed src="http://blip.tv/scripts/flash/showplayer.swf?enablejs=true&amp;#38;feedurl=http%3A%2F%2Fweb2expo%2Eblip%2Etv%2Frss&amp;#38;file=http%3A%2F%2Fblip%2Etv%2Frss%2Fflash%2F862384%3Freferrer%3Dblip%2Etv%26source%3D1&amp;#38;showplayerpath=http%3A%2F%2Fblip%2Etv%2Fscripts%2Fflash%2Fshowplayer%2Eswf" quality="best" width="400" height="255" name="showplayer" type="application/x-shockwave-flash"&gt;&lt;/embed&gt;&lt;/object&gt;

	&lt;p&gt;(Found at &lt;a href="http://lifehacker.com/385296/where-you-find-the-time-to-spend-online"&gt;Lifehacker&lt;/a&gt;)&lt;/p&gt;

&lt;p style="display: none"&gt;&lt;strong&gt;Tagged: &lt;/strong&gt;&lt;a href="http://blogs.thewehners.net/posts/tagged/geek-culture?author=josh" rel="tag"&gt;geek-culture&lt;/a&gt;, &lt;a href="http://blogs.thewehners.net/posts/tagged/tv?author=josh" rel="tag"&gt;tv&lt;/a&gt;, &lt;a href="http://blogs.thewehners.net/posts/tagged/web?author=josh" rel="tag"&gt;web&lt;/a&gt;, &lt;a href="http://blogs.thewehners.net/posts/tagged/wow?author=josh" rel="tag"&gt;wow&lt;/a&gt;&lt;/p&gt;</description>
      <pubDate>Wed, 30 Apr 2008 20:27:20 GMT</pubDate>
      <guid>http://blogs.thewehners.net/josh/posts/view/365-a-screen-that-ships-without-a-mouse-ships-broken</guid>
      <author>blog_spam_joshua@thewehners.net</author>
    </item>
    <item>
      <title>Three cheers for Time Machine!</title>
      <link>http://blogs.thewehners.net/josh/posts/view/363-three-cheers-for-time-machine</link>
      <description>&lt;p&gt;A few weeks ago, I discovered (via Disk Utility) that my laptop's hard drive was failing. Modern hard drives have a standardized reporting system (called S.M.A.R.T.) that produces reasonably early warnings about this sort of thing. (I wish Apple made these warnings a bit more obvious, though.)&lt;/p&gt;

&lt;p&gt;I wish I could say that Western Digital, the drive manufacturer, made this easy, but they were reasonably quick at shipping the drive to a family member in the US, who then shipped it on to me, here. The replacement operation itself was nearly painless, after a quick trip to the annoying neighborhood hardware store for a set of small screwdrivers.&lt;/p&gt;

&lt;p&gt;After installing the new drive, and booting from the Leopard disc, I chose the "Restore from Time Machine" menu item, and 2 or so hours later, I was back up and running... very... slowly... It took another 3 hours for Spotlight to finish indexing the new drive, and an unknown amount of time (while I went to sleep) for Time Machine to update its backup.&lt;/p&gt;

&lt;p&gt;This isn't my first "imminent drive failure event", but it's the easiest so far. Time Machine deserves an enormous hunk of credit for this; restoring data from the backups felt like magic. In a couple hours' time, it was as if nothing had changed under-the-hood. It's indescribably impressive how well this "free" application is in these kinds of situations. (I've heard of people using this function for upgrades, as well.)&lt;/p&gt;

&lt;p&gt;Beyond that, though, it feels like so much of my data now lives "in the cloud" (email via IMAP or GMail, code in git or subversion, etc.) that astonishing little "lives" on the drive itself now. &lt;/p&gt;

&lt;p style="display: none"&gt;&lt;strong&gt;Tagged: &lt;/strong&gt;&lt;a href="http://blogs.thewehners.net/posts/tagged/apple?author=josh" rel="tag"&gt;apple&lt;/a&gt;, &lt;a href="http://blogs.thewehners.net/posts/tagged/hardware+failure?author=josh" rel="tag"&gt;hardware failure&lt;/a&gt;, &lt;a href="http://blogs.thewehners.net/posts/tagged/leopard?author=josh" rel="tag"&gt;leopard&lt;/a&gt;&lt;/p&gt;</description>
      <pubDate>Fri, 18 Apr 2008 17:10:33 GMT</pubDate>
      <guid>http://blogs.thewehners.net/josh/posts/view/363-three-cheers-for-time-machine</guid>
      <author>blog_spam_joshua@thewehners.net</author>
    </item>
    <item>
      <title>Ryan McMinn: Online dating science</title>
      <link>http://blogs.thewehners.net/josh/posts/view/362-ryan-mcminn-online-dating-science</link>
      <description>&lt;p&gt;My good friend &lt;a href="http://blog.ryanmcminn.com/2008/04/15/my-ignite-talk-video-got-posted/"&gt;Ryan McMinn&lt;/a&gt; posted the video from a talk he gave at &lt;a href="http://www.igniteseattle.com/2008/02/ignite-seattle-talks/"&gt;Ignite Seattle&lt;/a&gt; back in February. I think it&amp;#8217;s great:&lt;/p&gt;


&lt;object width="425" height="355"&gt;&lt;param name="movie" value="http://www.youtube.com/v/KH9_U-z04qc&amp;#38;hl=en"&gt;&lt;/param&gt;&lt;param name="wmode" value="transparent"&gt;&lt;/param&gt;&lt;embed src="http://www.youtube.com/v/KH9_U-z04qc&amp;#38;hl=en" type="application/x-shockwave-flash" wmode="transparent" width="425" height="355"&gt;&lt;/embed&gt;&lt;/object&gt;

&lt;p style="display: none"&gt;&lt;strong&gt;Tagged: &lt;/strong&gt;&lt;a href="http://blogs.thewehners.net/posts/tagged/dating?author=josh" rel="tag"&gt;dating&lt;/a&gt;, &lt;a href="http://blogs.thewehners.net/posts/tagged/friends?author=josh" rel="tag"&gt;friends&lt;/a&gt;, &lt;a href="http://blogs.thewehners.net/posts/tagged/video?author=josh" rel="tag"&gt;video&lt;/a&gt;&lt;/p&gt;</description>
      <pubDate>Fri, 18 Apr 2008 16:37:36 GMT</pubDate>
      <guid>http://blogs.thewehners.net/josh/posts/view/362-ryan-mcminn-online-dating-science</guid>
      <author>blog_spam_joshua@thewehners.net</author>
    </item>
    <item>
      <title>Podcast tracks to iTunes Library script</title>
      <link>http://blogs.thewehners.net/josh/posts/view/361-podcast-tracks-to-itunes-library-script</link>
      <description>&lt;p&gt;For the past few days, I&amp;#8217;ve subscribed to the excellent &lt;a href="http://kexp.org/podcasting/podcasting.asp"&gt;Song of the Day podcast&lt;/a&gt; at &lt;span class="caps"&gt;KEXP&lt;/span&gt;. I wanted to move the &amp;#8220;good ones&amp;#8221; to my iTunes Library, but unfortunately, iTunes does some odd things with podcast files, so this isn&amp;#8217;t as easy as you might guess.* The way iTunes marks the files, even if you move them in-and-out of iTunes, they will always show up on the Podcasts library, instead of the Music library.&lt;/p&gt;


	&lt;p&gt;After a bit of googling, the &lt;a href="http://opensoul.org/2007/4/17/moving-podcast-tracks-into-your-itunes-library"&gt;best trick&lt;/a&gt; I could find was to convert the id3 tags to version 1.0, which appears to remove the &amp;#8220;magical tag&amp;#8221; iTunes uses to match the files with the appropriate podcast. However, in id3 version 1.0, tags are severely limited in length, leading to titles like &amp;#8220;Black Kids &amp;#8211; I&amp;#8217;m Not Gonna Tea&amp;#8221;. Not acceptable, says I.&lt;/p&gt;


	&lt;p&gt;More googling turned up the &lt;a href="http://id3lib.sourceforge.net/"&gt;id3lib library&lt;/a&gt;, an open-source library for reading and editing id3 tags. There&amp;#8217;s even a &lt;a href="http://id3lib-ruby.rubyforge.org/"&gt;ruby front-end&lt;/a&gt;. So, I wrote my own &lt;a href="http://pastie.org/167237"&gt;podcast re-wirer script&lt;/a&gt; in ruby:&lt;/p&gt;


&lt;pre&gt;&lt;code&gt;#!/usr/bin/env ruby
require 'rubygems'
require 'id3lib'

files = Dir["*.mp3"]
files.each do |filename|
  mp3 = ID3Lib::Tag.new filename
  text = mp3.detect { |t| t[:id] == :TIT3 }
  # raise text.inspect
  mp3.delete_if { |t| [:TIT3, :COMM].include? t[:id] }
  mp3.comment = text[:text]
  mp3.genre = 'Indie'
  if mp3.album =~ /^KEXP/
    artist = mp3.artist
    artist.gsub!(/^[\d]+ (.*)/, '\1')
    mp3.artist = artist
  end
  title = mp3.title.split(/ - /)
  title.delete_at(0)
  mp3.title = title.join(' - ')

  mp3.update!
  puts " ... converted '#{filename}'" 
end&lt;/code&gt;&lt;/pre&gt;

	&lt;p&gt;*Disclaimer: Under iTunes&amp;#8217; Advanced menu sits the &amp;#8220;Convert to mp3&amp;#8230;&amp;#8221; command. There&amp;#8217;s a chance this &lt;em&gt;might&lt;/em&gt; do what I wanted, but there&amp;#8217;s also the risk that it would re-encode the mp3, leading to an unacceptable loss of quality. Since I didn&amp;#8217;t think I&amp;#8217;d be able to reliably detect the degradation, I considered this a non-option.&lt;/p&gt;

&lt;p style="display: none"&gt;&lt;strong&gt;Tagged: &lt;/strong&gt;&lt;a href="http://blogs.thewehners.net/posts/tagged/programming?author=josh" rel="tag"&gt;programming&lt;/a&gt;, &lt;a href="http://blogs.thewehners.net/posts/tagged/itunes?author=josh" rel="tag"&gt;itunes&lt;/a&gt;, &lt;a href="http://blogs.thewehners.net/posts/tagged/music?author=josh" rel="tag"&gt;music&lt;/a&gt;, &lt;a href="http://blogs.thewehners.net/posts/tagged/ruby?author=josh" rel="tag"&gt;ruby&lt;/a&gt;&lt;/p&gt;</description>
      <pubDate>Thu, 20 Mar 2008 17:54:05 GMT</pubDate>
      <guid>http://blogs.thewehners.net/josh/posts/view/361-podcast-tracks-to-itunes-library-script</guid>
      <author>blog_spam_joshua@thewehners.net</author>
    </item>
    <item>
      <title>Cable News</title>
      <link>http://blogs.thewehners.net/josh/posts/view/360-cable-news</link>
      <description>&lt;p&gt;Summarizing Liz Cox Barrett&amp;#8217;s &lt;a href="http://www.cjr.org/behind_the_news/the_state_of_cable_news_ismatu.php"&gt;summary&lt;/a&gt; of the &lt;a href="http://www.stateofthenewsmedia.org/2008/"&gt;State of the News Media report&lt;/a&gt; from the &lt;a href="http://www.journalism.org/"&gt;Project for Excellence in Journalism&lt;/a&gt;:&lt;/p&gt;


	&lt;h5&gt;Money spent on reporting (2006)&lt;/h5&gt;


	&lt;ul&gt;
	&lt;li&gt;&lt;span class="caps"&gt;CNN&lt;/span&gt;: $273 million&lt;/li&gt;
		&lt;li&gt;Fox News: $266 million&lt;/li&gt;
		&lt;li&gt;&lt;span class="caps"&gt;MSNBC&lt;/span&gt;: $145 million (it&amp;#8217;s presumed that they get a discount on recycled &lt;span class="caps"&gt;NBC&lt;/span&gt; news)&lt;/li&gt;
	&lt;/ul&gt;


	&lt;h5&gt;Last year&amp;#8217;s #1 topic&lt;/h5&gt;


	&lt;ul&gt;
	&lt;li&gt;&lt;span class="caps"&gt;CNN&lt;/span&gt;: U.S. foreign policy&lt;/li&gt;
		&lt;li&gt;Fox News: Crime&lt;/li&gt;
		&lt;li&gt;&lt;span class="caps"&gt;MSNBC&lt;/span&gt;: U.S. Politics&lt;/li&gt;
	&lt;/ul&gt;


	&lt;h5&gt;Topical focus&lt;/h5&gt;


	&lt;ul&gt;
	&lt;li&gt;&lt;span class="caps"&gt;CNN&lt;/span&gt;: Spread among a range of topics&lt;/li&gt;
		&lt;li&gt;Fox News: Crime, celebrity and &amp;#8220;the media&amp;#8221; &lt;/li&gt;
		&lt;li&gt;&lt;span class="caps"&gt;MSNBC&lt;/span&gt;: Washington D.C., &amp;#8220;the campaign&amp;#8221; and political scandal&lt;/li&gt;
	&lt;/ul&gt;


	&lt;h5&gt;The frightening summary&lt;/h5&gt;


	&lt;p&gt;&amp;#8220;Evidence suggests programming built around a cast of hosts, often but not always the edgiest of cable personalities, were at the core of the [audience] growth.&amp;#8221;&lt;/p&gt;

&lt;p style="display: none"&gt;&lt;strong&gt;Tagged: &lt;/strong&gt;&lt;a href="http://blogs.thewehners.net/posts/tagged/journalism?author=josh" rel="tag"&gt;journalism&lt;/a&gt;, &lt;a href="http://blogs.thewehners.net/posts/tagged/news?author=josh" rel="tag"&gt;news&lt;/a&gt;, &lt;a href="http://blogs.thewehners.net/posts/tagged/tv?author=josh" rel="tag"&gt;tv&lt;/a&gt;&lt;/p&gt;</description>
      <pubDate>Thu, 20 Mar 2008 17:32:14 GMT</pubDate>
      <guid>http://blogs.thewehners.net/josh/posts/view/360-cable-news</guid>
      <author>blog_spam_joshua@thewehners.net</author>
    </item>
    <item>
      <title>Joel Spolsky is being an idiot in public again</title>
      <link>http://blogs.thewehners.net/josh/posts/view/359-joel-spolsky-is-being-an-idiot-in-public-again</link>
      <description>&lt;p&gt;Joel Spolsky has written a &lt;a href="http://www.joelonsoftware.com/items/2008/03/17.html"&gt;screed&lt;/a&gt; on what he sees as &amp;#8220;the mother of all flamewars&amp;#8221;. He&amp;#8217;s right at least, in that there has already been a bit of &lt;a href="http://alistapart.com/articles/beyonddoctype"&gt;froth&lt;/a&gt; over the &lt;a href="http://www.microsoft.com/presspass/press/2008/mar08/03-03WebStandards.mspx"&gt;flip-flopping&lt;/a&gt; &amp;#8220;web standards support in &lt;span class="caps"&gt;IE 8&lt;/span&gt;&amp;#8221; announcements from Microsoft. That is (if you haven&amp;#8217;t been following &lt;a href="http://www.alistapart.com/articles/"&gt;A List Apart&lt;/a&gt; lately): they first announced that &lt;span class="caps"&gt;IE8&lt;/span&gt; would be &lt;strong&gt;broken by default&lt;/strong&gt; unless you turned it off, then changed their minds. For now, &lt;span class="caps"&gt;IE8&lt;/span&gt; will operate in super-standards-compliant mode by default, unless you signal in your &lt;span class="caps"&gt;HTML&lt;/span&gt; that you&amp;#8217;d prefer the backwards-compatible rendering.&lt;/p&gt;


	&lt;p&gt;I have two problems with Joel&amp;#8217;s essay. One is the way he frames the &amp;#8220;birth of standards&amp;#8221;, which doesn&amp;#8217;t conform to my understanding of the history of the thing. (The &lt;a href="http://en.wikipedia.org/wiki/W3C"&gt;&lt;span class="caps"&gt;W3C&lt;/span&gt;&lt;/a&gt;, for example, has had a standards body since roughly 1994, and the &lt;a href="http://en.wikipedia.org/wiki/Web_Standards_Project"&gt;WaSP&lt;/a&gt; has been around since 1998.) In Joel&amp;#8217;s version of history, Microsoft was humbly trying to innovate, when the fascist &amp;#8220;standardistas&amp;#8221; descended upon it to crush it&amp;#8217;s free-thinking ways. There&amp;#8217;s &lt;a href="http://www.opera.com/pressreleases/en/2007/12/13/"&gt;some&lt;/a&gt; &lt;a href="http://radar.oreilly.com/archives/2007/09/microsoft-open-xml-failed-iso.html"&gt;evidence&lt;/a&gt; that Microsoft (at least at the higher levels) has been semi-deliberately breaking standards in a clumsy attempt to manipulate the market.&lt;/p&gt;


	&lt;p&gt;The second problem I have with Joel&amp;#8217;s essay is the way he portrays the complications of standards compliance. In Joel&amp;#8217;s view, Microsoft&amp;#8217;s flouting of standards is not merely accidental, but probably imaginary, since there&amp;#8217;s &amp;#8220;no way to test a web page against the standard&amp;#8221; (which &lt;a href="http://acid3.acidtests.org/"&gt;demonstrably isn&amp;#8217;t true&lt;/a&gt;). And &lt;em&gt;gosh&lt;/em&gt; it sure is hard to read those spec documents (a programmer&amp;#8217;s life is &lt;strong&gt;oh-so hard&lt;/strong&gt;). If &lt;em&gt;only&lt;/em&gt; there were &lt;em&gt;some&lt;/em&gt; kind of &lt;a href="http://www.webstandards.org/"&gt;group&lt;/a&gt; that could &lt;a href="http://www.molly.com/2005/09/16/no-mr-ballmer-microsoft-will-not-win-the-web/"&gt;help&lt;/a&gt; the poor, overwhelmed software developer make sense of it all.&lt;/p&gt;


	&lt;p&gt;I came to web standards from the &lt;a href="http://en.wikipedia.org/wiki/Web_Accessibility_Initiative"&gt;obsessed with accessibility&lt;/a&gt; side of the field, while working on sites whose primary audiences often included the deaf and/or blind. Web standards and web accessibility are more like &amp;#8220;two great tastes that taste great together&amp;#8221; than &amp;#8220;two birds with one stone&amp;#8221;, nevertheless a pursuit of one often naturally leads to the other. Maybe Mr Spolsky hasn&amp;#8217;t been a web developer very long, and maybe those of us who&amp;#8217;ve been here a little longer have taken it for granted that &amp;#8220;every&amp;#8221; web developer is now &amp;#8220;on board&amp;#8221; with web standards.&lt;/p&gt;


	&lt;p&gt;At any rate, for me, the whole &lt;span class="caps"&gt;IE8&lt;/span&gt; kerfluffle seems like a tempest-in-a-teapot. Either Microsoft will force web developers through new contortions for compatibility, or they won&amp;#8217;t. It wouldn&amp;#8217;t be the first time, and IE is &lt;a href="http://blogs.thewehners.net/josh/posts/view/337-safari-vs-safari-label"&gt;hardly&lt;/a&gt; the only browser &amp;#8211; or software tool of any variety &amp;#8211; to require &lt;em&gt;some&lt;/em&gt; kind of work-around when a new version ships. There&amp;#8217;s &lt;a href="http://www.alistapart.com/articles/minorthreat"&gt;an argument&lt;/a&gt; that explicit version targeting could actually be a good thing (assuming for the moment that Microsoft&amp;#8217;s promise of forward compatibility holds any water &amp;#8211; not that &lt;em&gt;I&lt;/em&gt; think it does.) But there&amp;#8217;s a consistency of logical thought in the &amp;#8220;it should work right by default&amp;#8221; argument that&amp;#8217;s hard to argue against. To paraphrase &lt;a href="http://www.456bereastreet.com/archive/200802/doctype_switching_for_ie_8/"&gt;Roger Johansson&lt;/a&gt;, if your site breaks in &lt;span class="caps"&gt;IE8&lt;/span&gt; and you can&amp;#8217;t or won&amp;#8217;t fix it, why should the rest of us suffer?&lt;/p&gt;

&lt;p style="display: none"&gt;&lt;strong&gt;Tagged: &lt;/strong&gt;&lt;a href="http://blogs.thewehners.net/posts/tagged/rant?author=josh" rel="tag"&gt;rant&lt;/a&gt;, &lt;a href="http://blogs.thewehners.net/posts/tagged/web?author=josh" rel="tag"&gt;web&lt;/a&gt;&lt;/p&gt;</description>
      <pubDate>Tue, 18 Mar 2008 08:47:20 GMT</pubDate>
      <guid>http://blogs.thewehners.net/josh/posts/view/359-joel-spolsky-is-being-an-idiot-in-public-again</guid>
      <author>blog_spam_joshua@thewehners.net</author>
    </item>
    <item>
      <title>George Speaks, Badly - New York Times</title>
      <link>http://blogs.thewehners.net/josh/posts/view/357-george-speaks-badly---new-york-times</link>
      <description>&lt;p&gt;Fun, if slightly snarky (and a little late?) &lt;a href="http://www.nytimes.com/2008/03/15/opinion/15collins.html"&gt;op-ed&lt;/a&gt; by Gail Collins in yesterday's NYT:&lt;/p&gt;

&lt;blockquote&gt;We&#8217;re really past expecting anything much, but in times of crisis you would like to at least believe your leader has the capacity to pretend he&#8217;s in control. Suddenly, I recalled a day long ago when my husband worked for a struggling paper full of worried employees and the publisher walked into the newsroom wearing a gorilla suit.&lt;/blockquote&gt;

&lt;p style="display: none"&gt;&lt;strong&gt;Tagged: &lt;/strong&gt;&lt;a href="http://blogs.thewehners.net/posts/tagged/econ?author=josh" rel="tag"&gt;econ&lt;/a&gt;, &lt;a href="http://blogs.thewehners.net/posts/tagged/politics?author=josh" rel="tag"&gt;politics&lt;/a&gt;&lt;/p&gt;</description>
      <pubDate>Sun, 16 Mar 2008 10:15:25 GMT</pubDate>
      <guid>http://blogs.thewehners.net/josh/posts/view/357-george-speaks-badly---new-york-times</guid>
      <author>blog_spam_joshua@thewehners.net</author>
    </item>
    <item>
      <title>On the need for game criticism</title>
      <link>http://blogs.thewehners.net/josh/posts/view/356-on-the-need-for-game-criticism</link>
      <description>&lt;p&gt;&lt;a href="http://www.costik.com/"&gt;Greg Costikyan&lt;/a&gt; has been saying this for a decade or more, but &lt;a href="http://playthisthing.com/game-criticism-why-we-need-it-and-why-reviews-arent-it"&gt;this&lt;/a&gt; is well-written at least:&lt;/p&gt;


&lt;blockquote&gt;&lt;p&gt;The truth is that, for the most part, we don&amp;#8217;t have anything like game criticism, and we need it&amp;#8212;to inform gamers, to hold developers to task, and to inform our broader cultural understanding of games and their importance and impact on our culture.&lt;/p&gt;


	&lt;p&gt;We need our own Pauline Kaels and John Simons&amp;#8212;and we need to ensure that when they appear, no one insists that they attach a damn numerical score to their writing, because that is wholly irrelevant to the undertaking of writing seriously about games.&lt;/p&gt;


&lt;/blockquote&gt;

&lt;p style="display: none"&gt;&lt;strong&gt;Tagged: &lt;/strong&gt;&lt;a href="http://blogs.thewehners.net/posts/tagged/gaming?author=josh" rel="tag"&gt;gaming&lt;/a&gt;, &lt;a href="http://blogs.thewehners.net/posts/tagged/geek-culture?author=josh" rel="tag"&gt;geek-culture&lt;/a&gt;&lt;/p&gt;</description>
      <pubDate>Tue, 26 Feb 2008 09:10:45 GMT</pubDate>
      <guid>http://blogs.thewehners.net/josh/posts/view/356-on-the-need-for-game-criticism</guid>
      <author>blog_spam_joshua@thewehners.net</author>
    </item>
    <item>
      <title>Obscure Rails bug: respond_to format.any</title>
      <link>http://blogs.thewehners.net/josh/posts/view/354-obscure-rails-bug-respond_to-formatany</link>
      <description>&lt;p&gt;I found an odd bug in Rails today. Odd, in the sense that it's not so much broken, as working in a way that's different than one would expect.&lt;/p&gt;

&lt;p&gt;In a controller, one uses respond_to to present the appropriate response, as determined by the requested mimetype. If you want to respond to a whole clump of mimetypes in the same way, you might expect format.any to act as a catch-all for all the types you didn't already address.&lt;/p&gt;

&lt;p&gt;So, for example, if we're writing an authentication system, we want web browsers redirected to the login page. But for non-browsers (eg, curl asking for XML, or Ajax asking for JSON, or some API asking for a vcard, whatever), it doesn't make any sense to direct them to a login page. We should ask them to use http basic authentication.&lt;/p&gt;

&lt;p&gt;Here's the way this is handled by the current version of &lt;a href="http://svn.techno-weenie.net/projects/plugins/restful_authentication/"&gt;restful_authentication&lt;/a&gt;:&lt;/p&gt;

&lt;p style="border: 1px solid #E0E0E0; padding: 5px;"&gt;&lt;code&gt;def access_denied&lt;br /&gt;&amp;nbsp;&amp;nbsp;respond_to do |format|&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;format.html do&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;store_location&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;redirect_to new_&lt;%= controller_singular_name %&gt;_path&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;end&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;format.any do&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;request_http_basic_authentication 'Web Password'&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;end&lt;br /&gt;&amp;nbsp;&amp;nbsp;end&lt;br /&gt;end&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;Except, this doesn't actually work. If you make a request for a non-html mimetype, you'll get a 406 ("that format doesn't work here anymore"), not a 401 ("unauthorized").&lt;/p&gt;

&lt;p&gt;Presently, format.any actually looks something like this:&lt;/p&gt;

&lt;p style="border: 1px solid #E0E0E0; padding: 5px;"&gt;&lt;code&gt;def any(*args, &amp;amp;block)&lt;br /&gt;&amp;nbsp;&amp;nbsp;args.each { |type| send(type, &amp;amp;block) }&lt;br /&gt;end&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;And, if you dig around a little in the mime_responds tests, you'll see that you're &lt;em&gt;supposed&lt;/em&gt; to call #any like so:&lt;/p&gt;

&lt;p style="border: 1px solid #E0E0E0; padding: 5px;"&gt;&lt;code&gt;respond_to do |type|&lt;br /&gt;&amp;nbsp;&amp;nbsp;type.html { render :text =&gt; "HTML" }&lt;br /&gt;&amp;nbsp;&amp;nbsp;type.any(:js, :xml) { render :text =&gt; "Either JS or XML" }&lt;br /&gt;end&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;Which, effectively, makes #any useless as a high-level catch-all for things like #access_denied. It's interesting that you can use it as a sort of multi-type, but that hardly seems the most common application. (Given the scarce documentation and meta-magic shenanigans in MimeType::Responders, I kinda doubt #any is used all that often. I only know about it because of restful_authentication.)&lt;/p&gt;

&lt;p&gt;I've created a &lt;a href="http://dev.rubyonrails.org/ticket/11140"&gt;patch&lt;/a&gt; that changes #any's signature. It can now take 0 or any number of arguments. In the case where it has zero arguments, it assumes the mimetype requested (via the Rails-standard format parameter) or the first allowed mimetype (set by the request headers). In other words, it allows code like #access_denied, above from restful_authentication, to work as intended.&lt;/p&gt;

&lt;p&gt;If you can, please take a moment to +1 the patch.&lt;/p&gt;

&lt;p style="display: none"&gt;&lt;strong&gt;Tagged: &lt;/strong&gt;&lt;a href="http://blogs.thewehners.net/posts/tagged/programming?author=josh" rel="tag"&gt;programming&lt;/a&gt;, &lt;a href="http://blogs.thewehners.net/posts/tagged/ruby+on+rails?author=josh" rel="tag"&gt;ruby on rails&lt;/a&gt;, &lt;a href="http://blogs.thewehners.net/posts/tagged/web?author=josh" rel="tag"&gt;web&lt;/a&gt;&lt;/p&gt;</description>
      <pubDate>Sun, 17 Feb 2008 16:39:33 GMT</pubDate>
      <guid>http://blogs.thewehners.net/josh/posts/view/354-obscure-rails-bug-respond_to-formatany</guid>
      <author>blog_spam_joshua@thewehners.net</author>
    </item>
    <item>
      <title>Configuring a Windows server</title>
      <link>http://blogs.thewehners.net/josh/posts/view/352-configuring-a-windows-server</link>
      <description>&lt;p&gt;I quite enjoyed reading Brent Ashley&amp;#8217;s &lt;a href="http://www.ashleyit.com/blogs/brentashley/2008/02/01/not-nearly-enough-rope-but-im-almost-ready-to-hang-myself/"&gt;description&lt;/a&gt; of his travails when trying to set up a Windows server&lt;/p&gt;


&lt;blockquote&gt;When I finally get through a marathon session of setting up a Windows server &#8220;just so&#8221; to make my application work, it&#8217;s like I have created a finely balanced stack of Jenga blocks from which I back away slowly on tiptoe, praying it doesn&#8217;t tumble. I&#8217;ve get very little confidence that fixing anything will be an excercise in logic and deduction more than having to know some obscure incantation or uninstalling components wholesale and reinstalling and reconfiguring them.&lt;/blockquote&gt;

	&lt;p&gt;&lt;a href="http://www.ashleyit.com/blogs/brentashley/2008/02/01/not-nearly-enough-rope-but-im-almost-ready-to-hang-myself/"&gt;Link&lt;/a&gt;&lt;/p&gt;

&lt;p style="display: none"&gt;&lt;strong&gt;Tagged: &lt;/strong&gt;&lt;a href="http://blogs.thewehners.net/posts/tagged/links?author=josh" rel="tag"&gt;links&lt;/a&gt;, &lt;a href="http://blogs.thewehners.net/posts/tagged/tech+stuff?author=josh" rel="tag"&gt;tech stuff&lt;/a&gt;&lt;/p&gt;</description>
      <pubDate>Sun, 03 Feb 2008 18:44:52 GMT</pubDate>
      <guid>http://blogs.thewehners.net/josh/posts/view/352-configuring-a-windows-server</guid>
      <author>blog_spam_joshua@thewehners.net</author>
    </item>
    <item>
      <title>The Meat-Guzzler</title>
      <link>http://blogs.thewehners.net/josh/posts/view/351-the-meat-guzzler</link>
      <description>&lt;p&gt;Mark Bittman, author of the NYTimes&amp;#8217; 10-year old Minimalist cooking column and a recently published &lt;a href="http://amazon.com/How-Cook-Everything-Vegetarian-Meatless/dp/0764524836"&gt;vegetarian cookbook&lt;/a&gt;, though not himself a vegetarian, has written &lt;a href="http://www.nytimes.com/2008/01/27/weekinreview/27bittman.html?ei=5087&amp;#38;em=&amp;#38;en=5dfe202cdd898fe6&amp;#38;ex=1201755600&amp;#38;pagewanted=all"&gt;an excellent article&lt;/a&gt; detailing the costs to the environment of the modern, high-meat consuming diet.&lt;/p&gt;


&lt;blockquote&gt;Perhaps the best hope for change lies in consumers&#8217; becoming aware of the true costs of industrial meat production. &#8220;When you look at environmental problems in the U.S.,&#8221; says Professor Eshel, &#8220;nearly all of them have their source in food production and in particular meat production. And factory farming is &#8216;optimal&#8217; only as long as degrading waterways is free. If dumping this stuff becomes costly &#8212; even if it simply carries a non-zero price tag &#8212; the entire structure of food production will change dramatically.&#8221;&lt;/blockquote&gt;

	&lt;p&gt;I&amp;#8217;ve been mostly vegetarian (plus fish, dairy and eggs) for about a year now.&lt;/p&gt;

&lt;p style="display: none"&gt;&lt;strong&gt;Tagged: &lt;/strong&gt;&lt;a href="http://blogs.thewehners.net/posts/tagged/enviro?author=josh" rel="tag"&gt;enviro&lt;/a&gt;, &lt;a href="http://blogs.thewehners.net/posts/tagged/food?author=josh" rel="tag"&gt;food&lt;/a&gt;&lt;/p&gt;</description>
      <pubDate>Tue, 29 Jan 2008 08:05:12 GMT</pubDate>
      <guid>http://blogs.thewehners.net/josh/posts/view/351-the-meat-guzzler</guid>
      <author>blog_spam_joshua@thewehners.net</author>
    </item>
  </channel>
</rss>
