<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
   <title>Outshine</title>
   <link rel="alternate" type="text/html" href="http://www.outshine.com/" />
   <link rel="self" type="application/atom+xml" href="http://www.outshine.com/atom.xml" />
   <id>tag:www.outshine.com,2010://1</id>
   <updated>2010-02-20T01:34:49Z</updated>
   
   <generator uri="http://www.sixapart.com/movabletype/">Movable Type 3.34</generator>

<entry>
   <title>IE6 (Internet Explorer 6) eats form data</title>
   <link rel="alternate" type="text/html" href="http://www.outshine.com/blog/2010/02/ie6-internet-explorer-6-eats-f.php" />
   <id>tag:www.outshine.com,2010://1.140</id>
   
   <published>2010-02-20T01:34:27Z</published>
   <updated>2010-02-20T01:34:49Z</updated>
   
   <summary><![CDATA[While working on some internal Web forms for Cadence, I came across a bonafide browser bug that I had never seen before.&nbsp; Some people were filling out a form, but the form sometimes wouldn't work -- data was lost, and...]]></summary>
   <author>
      <name>Tony</name>
      
   </author>
         <category term="Blog" scheme="http://www.sixapart.com/ns/types#category" />
   
   <category term="40" label="tech" scheme="http://www.sixapart.com/ns/types#tag" />
   
   <content type="html" xml:lang="en" xml:base="http://www.outshine.com/">
      <![CDATA[<p>While working on some internal Web forms for Cadence, I came across a bonafide browser bug that I had never seen before.&nbsp; Some people were filling out a form, but the form <em>sometimes</em> wouldn't work -- data was lost, and we couldn't figure out why.&nbsp; Eventually I had eliminated bugs in my PHP code and as a last resort, I put a sniffer on the wire to watch the traffic.&nbsp; What I found was amazing to me.&nbsp; Internet Explorer 6 will fail to encode data properly (wiping out the first field) under very particular circumstances.&nbsp; What's interesting is that, searching across the Internet, I found lots of <a href="http://marc.info/?l=horde-bugs&amp;m=104335420804336&amp;w=2">people having the bug</a> but <a href="http://bugs.php.net/bug.php?id=22427">not a lot of solutions</a>.&nbsp; That's odd, right?&nbsp; I mean, IE 6 is a really old browser.&nbsp; All the problems with it should have workarounds now, just as the box model issues in IE 6 do.&nbsp; But this doesn't.&nbsp; So I'll go over what I found, and how I fixed it.</p>]]>
      <![CDATA[<h2>The problem</h2>
<p>Create a simple form in HTML -- don't specify DOCTYPE (or limit it to HTML 4), don't specify character set, etc.&nbsp; Just the minimum needed to create the form in semantically correct markup.&nbsp; However, you absolutely must add enctype=&quot;multipart/form-data&quot; as an attribute in the form tag.&nbsp; That's usually used to create forms that take uploads, such as the form to take photos on Facebook.&nbsp; However, we don't need to create any upload fields.&nbsp; We just need to create 2 text fields.&nbsp; Throw some code in there somewhere to log the data that comes in.&nbsp; Next, fire up Internet Explorer 6 and view your creation.&nbsp; In the first field enter the word, &quot;Hello.&quot;&nbsp; In the second field enter the word &quot;they&rsquo;re.&quot;&nbsp; What's important about the second word is that it has a curly apostrophe.&nbsp; Copy &amp; paste my text if you need to.&nbsp; Then, submit the data.</p>
<p>Poof!&nbsp; The word &quot;Hello&quot; never made it!&nbsp; No matter what you put in that first field, it's lost.</p>
<h2>The discovery</h2>
<p>So the data isn't coming in.&nbsp; Where is it?&nbsp; Well, I fired up SmartSniff.&nbsp; It's a packet sniffer, which can watch the raw data that Internet Explorer is sending to my server.&nbsp; I'm watching because I want to see how the data is coming in -- is it funny somehow?&nbsp; In an unexpected format?&nbsp; It turns out, it's just broken.&nbsp; Each field in a &quot;multipart/form-data&quot; form is sent wrapped in a boundary, which is typically a bunch of dashes and a random string of letters/numbers.&nbsp; This is done so that each field is cleanly separated and the server can then view each field and correctly handle it.&nbsp; But as you can see from my screenshot below, the first field doesn't have the boundary that the other fields do:</p>
<p><img src="/images/ie6_form_bug.gif" alt="screenshot of packet sniffer capturing the bad data" /></p>
<h2>The solution</h2>
<p>The bug appears to rear its ugly head when UTF-8 data (or actually any data beyond ASCII), is sent as part of a multibyte form (a form that has upload fields).&nbsp; This is what makes the bug so nefarious -- it will only appear on a form that has upload fields, and only if the page isn't specified to be UTF-8, and only when someone pastes in some UTF-8 text.&nbsp; So one person might see the problem while another person with the same browser on the same system might not.</p>
<p>The fix?&nbsp; Add this attribute to your form tag:</p>
<p><font face="Courier New">accept-charset=&quot;UTF-8&quot;</font></p>
<p>Now when non-ASCII data comes in, IE 6 will expect the multibyte characters and handle them properly.&nbsp; Yay!</p>
<p>&nbsp;</p>]]>
   </content>
</entry>

<entry>
   <title>Greasemonkey script for rpg.net</title>
   <link rel="alternate" type="text/html" href="http://www.outshine.com/blog/2009/10/greasemonkey-script-for-rpgnet.php" />
   <id>tag:www.outshine.com,2009://1.139</id>
   
   <published>2009-11-01T05:29:15Z</published>
   <updated>2009-11-01T05:31:11Z</updated>
   
   <summary><![CDATA[Do you visit rpg.net?&nbsp; It's a site for people who enjoy role-playing games.&nbsp; If you visit that site, and are a bit overwhelmed by the huge number of forum topics about 4th edition D&amp;D, I have got a prize for...]]></summary>
   <author>
      <name>Tony</name>
      
   </author>
         <category term="Blog" scheme="http://www.sixapart.com/ns/types#category" />
   
   <category term="17" label="greasemonkey" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="40" label="tech" scheme="http://www.sixapart.com/ns/types#tag" />
   
   <content type="html" xml:lang="en" xml:base="http://www.outshine.com/">
      <![CDATA[<p>Do you visit <a href="http://forum.rpg.net/">rpg.net</a>?&nbsp; It's a site for people who enjoy role-playing games.&nbsp; If you visit that site, and are a bit overwhelmed by the huge number of forum topics about 4th edition D&amp;D, I have got a prize for you.&nbsp; I have created a script for Firefox's Greasemonkey plugin.&nbsp; It's free.&nbsp; It's called <a href="http://userscripts.org/scripts/show/60986">Drop 4e 4 rpg, available on userscripts.org</a>.&nbsp; It will hide any topic that is tagged as 4th edition.&nbsp; Have fun.</p>
<p>-Tony</p>]]>
      
   </content>
</entry>

<entry>
   <title>outshine.com goes up on the auction block!</title>
   <link rel="alternate" type="text/html" href="http://www.outshine.com/blog/2009/10/outshine-goes-up-for-auction.php" />
   <id>tag:www.outshine.com,2009://1.138</id>
   
   <published>2009-10-22T01:39:33Z</published>
   <updated>2009-10-22T01:40:15Z</updated>
   
   <summary><![CDATA[My domain outshine.com is going to be auctioned by either the Great Domains auction house, or by Moniker domain auctions.&nbsp; Not sure which yet.&nbsp; Anybody have suggestions? The domain name should appeal to anyone doing online ratings systems, or for...]]></summary>
   <author>
      <name>Tony</name>
      
   </author>
         <category term="Blog" scheme="http://www.sixapart.com/ns/types#category" />
   
   <category term="40" label="tech" scheme="http://www.sixapart.com/ns/types#tag" />
   
   <content type="html" xml:lang="en" xml:base="http://www.outshine.com/">
      <![CDATA[<p>My domain outshine.com is going to be auctioned by either the <a href="http://www.greatdomains.com/">Great Domains</a> auction house, or by <a href="http://www.moniker.com/">Moniker domain auctions</a>.&nbsp; Not sure which yet.&nbsp; Anybody have suggestions?</p>
<p>The domain name should appeal to anyone doing online ratings systems, or for any &quot;best of the best&quot; product.&nbsp; Outshine is a simple, short dictionary word, so I'm hoping people like it!&nbsp; I've had the domain since 1998, and it's well-ranked on Google.&nbsp; If you know someone who is interested, <a href="http://www.outshine.com/about/contact/index.php">put them in touch with me</a>.</p>]]>
      
   </content>
</entry>

<entry>
   <title>New resume/CV for 2009</title>
   <link rel="alternate" type="text/html" href="http://www.outshine.com/blog/2009/04/tonys-resume-for-2009.php" />
   <id>tag:www.outshine.com,2009://1.137</id>
   
   <published>2009-04-30T01:26:22Z</published>
   <updated>2009-04-30T01:26:43Z</updated>
   
   <summary><![CDATA[My revised 2009 resume is now ready (it has all my recent PHP experience at Yahoo! added in).&nbsp; If any recruiters or company execs working in the Silicon Valley would like to review it, please contact me.&nbsp; I'll send it...]]></summary>
   <author>
      <name>Tony</name>
      
   </author>
         <category term="Blog" scheme="http://www.sixapart.com/ns/types#category" />
   
   <category term="42" label="jobs" scheme="http://www.sixapart.com/ns/types#tag" />
   
   <content type="html" xml:lang="en" xml:base="http://www.outshine.com/">
      <![CDATA[<p>My revised 2009 resume is now ready (it has all my recent PHP experience at Yahoo! added in).&nbsp; If any recruiters or company execs working in the Silicon Valley would like to review it, please <a href="/about/contact/">contact me</a>.&nbsp; I'll send it along privately.</p>]]>
      
   </content>
</entry>

<entry>
   <title>American Idol - Gokey</title>
   <link rel="alternate" type="text/html" href="http://www.outshine.com/blog/2009/02/american-idol-gokey.php" />
   <id>tag:www.outshine.com,2009://1.136</id>
   
   <published>2009-02-04T15:46:45Z</published>
   <updated>2009-02-04T15:47:06Z</updated>
   
   <summary><![CDATA[I'm sorry but this is the most terrible and funny thing I have seen in a while. If you don't know why this is so awful and hilarious, that's OK.&nbsp; Don't figure it out....]]></summary>
   <author>
      <name>Tony</name>
      
   </author>
         <category term="Blog" scheme="http://www.sixapart.com/ns/types#category" />
   
   <category term="124" label="american idol" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="125" label="gokey" scheme="http://www.sixapart.com/ns/types#tag" />
   
   <content type="html" xml:lang="en" xml:base="http://www.outshine.com/">
      <![CDATA[<p>I'm sorry but this is the most terrible and funny thing I have seen in a while.</p>
<p><img width="421" height="281" src="http://i158.photobucket.com/albums/t84/unravel_photos/gokeyhollywood.jpg" alt="" /></p>
<p>If you don't know why this is so awful and hilarious, that's OK.&nbsp; Don't figure it out.</p>]]>
      
   </content>
</entry>

<entry>
   <title>Some footage from Aaron &amp; Patty&apos;s wedding</title>
   <link rel="alternate" type="text/html" href="http://www.outshine.com/blog/2008/10/aaron-pattys-wedding.php" />
   <id>tag:www.outshine.com,2008://1.135</id>
   
   <published>2008-10-19T11:37:01Z</published>
   <updated>2008-10-19T11:37:18Z</updated>
   
   <summary><![CDATA[Some footage of the toasts at my sister's wedding is&nbsp;at http://www.youtube.com/watch?v=j8bODbXDJyo or here: &nbsp;...]]></summary>
   <author>
      <name>Tony</name>
      
   </author>
         <category term="Blog" scheme="http://www.sixapart.com/ns/types#category" />
   
   <category term="119" label="aaron" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="120" label="angela" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="121" label="josh" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="122" label="kelly" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="38" label="nontech" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="118" label="patty" scheme="http://www.sixapart.com/ns/types#tag" />
   
   <content type="html" xml:lang="en" xml:base="http://www.outshine.com/">
      <![CDATA[<p>Some footage of the toasts at my sister's wedding is&nbsp;at <a href="http://www.youtube.com/watch?v=j8bODbXDJyo">http://www.youtube.com/watch?v=j8bODbXDJyo</a> or here:</p>
<p><embed src="http://www.youtube.com/v/j8bODbXDJyo&amp;hl=en&amp;fs=1" width="425" height="344" type="application/x-shockwave-flash" allowfullscreen="true"></embed></p>
<p>&nbsp;</p>]]>
      
   </content>
</entry>

<entry>
   <title>Strangers We&apos;ve Become</title>
   <link rel="alternate" type="text/html" href="http://www.outshine.com/blog/2008/10/strangers-weve-become.php" />
   <id>tag:www.outshine.com,2008://1.134</id>
   
   <published>2008-10-16T20:14:43Z</published>
   <updated>2008-10-16T20:14:58Z</updated>
   
   <summary></summary>
   <author>
      <name>Tony</name>
      
   </author>
         <category term="Blog" scheme="http://www.sixapart.com/ns/types#category" />
   
   <category term="116" label="arnej" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="117" label="lyrics" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="38" label="nontech" scheme="http://www.sixapart.com/ns/types#tag" />
   
   <content type="html" xml:lang="en" xml:base="http://www.outshine.com/">
      <![CDATA[<p><embed src="http://www.youtube.com/v/P6W_YRXwwxI&amp;hl=en&amp;fs=1" width="425" height="344" type="application/x-shockwave-flash" allowfullscreen="true"></embed></p>]]>
      <![CDATA[<p>I don&rsquo;t even know you,<br />
not sure that i want to anymore...<br />
but maybe there&rsquo;s something that could change my mind.</p>
<p>We loved and we hated,<br />
mistreated and preyed upon ourselves...<br />
but now that we&rsquo;re wise we realize<br />
it might be time to rewind, but...<br />
where would we go from here?</p>
<p>Where would we go?</p>
<p>In, out, in, out, we fell so hard, so young...<br />
look at the strangers we&rsquo;ve become.<br />
No doubt, without the love we need, we&rsquo;re done...<br />
look at the strangers we&rsquo;ve become.</p>]]>
   </content>
</entry>

<entry>
   <title>Liberation Theory</title>
   <link rel="alternate" type="text/html" href="http://www.outshine.com/blog/2008/10/liberation-theory.php" />
   <id>tag:www.outshine.com,2008://1.133</id>
   
   <published>2008-10-02T18:55:50Z</published>
   <updated>2008-10-02T18:56:04Z</updated>
   
   <summary><![CDATA[Seeing things as a difference of brain power is freeing.&nbsp; I had never really considered that option for most of my life. Instead, I had just assumed that &quot;human intelligence&quot; put everyone at roughly the same place.&nbsp; It made differences...]]></summary>
   <author>
      <name>Tony</name>
      
   </author>
         <category term="Blog" scheme="http://www.sixapart.com/ns/types#category" />
   
   <category term="38" label="nontech" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="31" label="politics" scheme="http://www.sixapart.com/ns/types#tag" />
   
   <content type="html" xml:lang="en" xml:base="http://www.outshine.com/">
      <![CDATA[<p>Seeing things as <a href="http://www.huffingtonpost.com/michael-seitzman/sarah-palin-naked_b_125861.html">a difference of brain power</a> is freeing.&nbsp;  I had never really considered that option for most of my life.  Instead, I had just assumed that &quot;human intelligence&quot; put everyone at roughly the same place.&nbsp;  It made differences of opinion very difficult for me to grapple with.&nbsp;  I would go over something with a friend, they wouldn't get it, and I'd keep at it again &amp; again under the assumption that eventually, they would catch on.&nbsp;  Ugh.</p>
<p>Sometimes people are just broken from their own personal history, or they're indoctrinated into a way of thinking and cannot see it.&nbsp;  It is very useful to recognize such issues and route around the damage.</p>
<p>The first time I realized that I could write off the opinion of a someone who had consistently voted in ways that had terrible, terrible results, it was incredibly liberating.&nbsp;  Why am I taking advice from someone so reliably wrong?&nbsp;  Why are <em>they</em> lecturing <em>me</em>?&nbsp;  I broadened it out to politics in general.&nbsp;  Why am I listening to the group that screwed things up?&nbsp;  Don't I have any discernment?&nbsp;  Can't I evaluate someone's position and decide it's foolish?&nbsp;  And if they advocate such foolish positions regularly, can't I write off the person as a fool?</p>
<p>&nbsp;</p>]]>
      
   </content>
</entry>

<entry>
   <title>Presidential election</title>
   <link rel="alternate" type="text/html" href="http://www.outshine.com/blog/2008/10/bush-obama-mccain.php" />
   <id>tag:www.outshine.com,2008://1.132</id>
   
   <published>2008-10-02T18:33:46Z</published>
   <updated>2008-10-02T18:36:52Z</updated>
   
   <summary><![CDATA[I&rsquo;m still surprised how many states are heavily in favor of the Republican party&rsquo;s candidate.&nbsp; To me, it&rsquo;s like the party is saying, &ldquo;Hey, we exhibited terrible leadership over the last 8 years, so elect us for better leadership.&rdquo;&nbsp; That...]]></summary>
   <author>
      <name>Tony</name>
      
   </author>
         <category term="Blog" scheme="http://www.sixapart.com/ns/types#category" />
   
   <category term="114" label="mccain" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="38" label="nontech" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="32" label="obama" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="31" label="politics" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="115" label="president" scheme="http://www.sixapart.com/ns/types#tag" />
   
   <content type="html" xml:lang="en" xml:base="http://www.outshine.com/">
      <![CDATA[<p>I&rsquo;m still surprised how  many states are heavily in favor of the Republican party&rsquo;s candidate.&nbsp; To me,  it&rsquo;s like the party is saying, &ldquo;Hey, we exhibited terrible leadership over the  last 8 years, so elect us for better leadership.&rdquo;&nbsp; That just doesn&rsquo;t make sense  to me at all.</p>
<p>That's all I have to say on that topic for now.</p>
<p>&nbsp;</p>]]>
      
   </content>
</entry>

<entry>
   <title>I updated my Greasemonkey scripts for Firefox</title>
   <link rel="alternate" type="text/html" href="http://www.outshine.com/blog/2008/09/greasemonkey-scripts-for-digg.php" />
   <id>tag:www.outshine.com,2008://1.131</id>
   
   <published>2008-09-27T10:48:26Z</published>
   <updated>2008-09-27T10:48:40Z</updated>
   
   <summary><![CDATA[Just a quick note.&nbsp; If you use digg.com and you have my &quot;Digg Done That&quot; or &quot;Digg Filter&quot; scripts installed, they have been updated.&nbsp; You can find the new versions here (newly updated scripts on top): userscripts.org/users/34026/scripts...]]></summary>
   <author>
      <name>Tony</name>
      
   </author>
         <category term="Blog" scheme="http://www.sixapart.com/ns/types#category" />
   
   <category term="113" label="digg" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="17" label="greasemonkey" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="40" label="tech" scheme="http://www.sixapart.com/ns/types#tag" />
   
   <content type="html" xml:lang="en" xml:base="http://www.outshine.com/">
      <![CDATA[<p>Just a quick note.&nbsp; If you use digg.com and you have my &quot;Digg Done That&quot; or &quot;Digg Filter&quot; scripts installed, they have been updated.&nbsp; You can find the new versions here (newly updated scripts on top):</p>
<p><a href="http://userscripts.org/users/34026/scripts">userscripts.org/users/34026/scripts</a></p>]]>
      
   </content>
</entry>

<entry>
   <title>If it&apos;s wrong to love the vlog brothers, I don&apos;t want to be right!</title>
   <link rel="alternate" type="text/html" href="http://www.outshine.com/blog/2008/08/vlogbrothers.php" />
   <id>tag:www.outshine.com,2008://1.130</id>
   
   <published>2008-08-31T12:02:43Z</published>
   <updated>2008-08-31T13:30:09Z</updated>
   
   <summary><![CDATA[I want to have John and Hank Green's babies.&nbsp; What's that you say?&nbsp; I'm a heterosexual male who is already happily married with kids?&nbsp; Well, yes.&nbsp; But John and Hank read books, and talk about politics while making Ze Frank...]]></summary>
   <author>
      <name>Tony</name>
      
   </author>
         <category term="Blog" scheme="http://www.sixapart.com/ns/types#category" />
   
   <category term="112" label="babies" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="38" label="nontech" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="111" label="vlogbrothers" scheme="http://www.sixapart.com/ns/types#tag" />
   
   <content type="html" xml:lang="en" xml:base="http://www.outshine.com/">
      <![CDATA[<p>I want to have John and Hank Green's babies.&nbsp; What's that you say?&nbsp; I'm a heterosexual male who is already happily married with kids?&nbsp; Well, yes.&nbsp; But John and Hank read books, and talk about politics while making Ze Frank peanut butter faces.&nbsp; Seriously, why have I not had their babies yet?</p>
<p><embed src="http://www.youtube.com/v/QUnQ-wOPGUE&amp;hl=en&amp;fs=1" width="425" height="344" type="application/x-shockwave-flash" allowfullscreen="true"></embed></p>]]>
      <![CDATA[<p>Just being <a href="http://www.youtube.com/watch?v=PNnWZzBgl-U">nice and supportive</a>, Hank.&nbsp; :)</p>
<p>-Tony</p>]]>
   </content>
</entry>

<entry>
   <title>This man has the same beliefs I do.</title>
   <link rel="alternate" type="text/html" href="http://www.outshine.com/blog/2008/08/barack-obama.php" />
   <id>tag:www.outshine.com,2008://1.129</id>
   
   <published>2008-08-29T07:20:10Z</published>
   <updated>2008-08-29T07:20:30Z</updated>
   
   <summary><![CDATA[Personal responsibility, community support.&nbsp; Reduce taxes by trimming the budget and reducing bureaucracy.&nbsp; Restore our standing in the world.&nbsp; Barack Obama....]]></summary>
   <author>
      <name>Tony</name>
      
   </author>
         <category term="Blog" scheme="http://www.sixapart.com/ns/types#category" />
   
   <category term="110" label="barack obama" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="38" label="nontech" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="31" label="politics" scheme="http://www.sixapart.com/ns/types#tag" />
   
   <content type="html" xml:lang="en" xml:base="http://www.outshine.com/">
      <![CDATA[<p>Personal responsibility, community support.&nbsp; Reduce taxes by trimming the budget and reducing bureaucracy.&nbsp; Restore our standing in the world.&nbsp; Barack Obama.</p>
<p><object width="425" height="344">
<param name="movie" value="http://www.youtube.com/v/yZCrIeRkMhA&amp;hl=en&amp;fs=1" />
<param name="allowFullScreen" value="true" /><embed width="425" height="344" src="http://www.youtube.com/v/yZCrIeRkMhA&amp;hl=en&amp;fs=1" type="application/x-shockwave-flash" allowfullscreen="true"></embed></object></p>]]>
      
   </content>
</entry>

<entry>
   <title>It&apos;s time.  I&apos;m getting the Planescape tattoo.</title>
   <link rel="alternate" type="text/html" href="http://www.outshine.com/blog/2008/08/getting-the-planescape-tattoo.php" />
   <id>tag:www.outshine.com,2008://1.128</id>
   
   <published>2008-08-18T06:54:29Z</published>
   <updated>2008-08-18T06:54:47Z</updated>
   
   <summary><![CDATA[For a long time, I've been impressed with the tattoos on Platter's Planescape site.&nbsp; After years of wondering if I really want that tattoo, I've decided that waiting almost a decade to decide is probably long enough.&nbsp; I do want...]]></summary>
   <author>
      <name>Tony</name>
      
   </author>
         <category term="Blog" scheme="http://www.sixapart.com/ns/types#category" />
   
   <category term="38" label="nontech" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="23" label="planescape" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="39" label="pst" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="108" label="tattoo" scheme="http://www.sixapart.com/ns/types#tag" />
   
   <content type="html" xml:lang="en" xml:base="http://www.outshine.com/">
      <![CDATA[<p>For a long time, I've been impressed with the tattoos on <a href="http://planescape.outshine.com/crap.planescape-torment.org/tattoo.html">Platter's Planescape site</a>.&nbsp; After years of wondering if I <em>really</em> want that tattoo, I've decided that waiting almost a decade to decide is probably long enough.&nbsp; I <em>do</em> want it.&nbsp; I've found a beautiful version of the artwork, here:</p>
<p><object width="450" height="448">
<param value="http://backend.deviantart.com/embed/view.swf" name="movie" />
<param value="id=22951702&amp;width=1337" name="flashvars" />
<param value="always" name="allowScriptAccess" /><embed width="450" height="448" allowscriptaccess="always" flashvars="id=22951702&amp;width=1337" type="application/x-shockwave-flash" src="http://backend.deviantart.com/embed/view.swf"></embed></object><br />
<a href="http://www.deviantart.com/deviation/22951702/">The nature of a man</a> by ~<a href="http://isilien.deviantart.com/" class="u">isilien</a> on <a href="http://www.deviantart.com">deviant</a><a href="http://www.deviantart.com">ART</a></p>]]>
      <![CDATA[<h2>About the tattoo</h2>
<p>The graphic is called the Symbol of Torment.&nbsp; You might think to yourself, &quot;What an unlovely thing to get tattooed onto your skin.&quot;&nbsp; However, it's not unlovely, at all.&nbsp; The backstory is tremendous, and those who know it will admit that it can be life-changing to <a href="http://www.amazon.com/Planescape-Torment-Pc/dp/B00002EPZ2/ref=sr_1_14?ie=UTF8&amp;s=videogames&amp;qid=1219038196&amp;sr=1-14">experience it</a>.</p>
<p>The quick of the story is this.&nbsp; Think of it as a fairy tale or parable.&nbsp; Long ago, there was a man who was the most vile, selfish, power-hungry man in all of history.&nbsp; He was not merely a jerk.&nbsp; He killed thousands, broke apart families, used women and discarded them, and did it all in the most horrific ways possible.&nbsp; When he realized that he had become the most evil man in history, he knew that his afterlife would be one of utter torment.&nbsp; So he found a witch, and asked her to make him immortal.&nbsp; The witch loved the man dearly, for although he was cruel, he was handsome beyond compare.&nbsp; And so even though the witch did not know how true immortality worked, she found a way to cheat death, and used a ritual to place that power within the man.</p>
<p>Over the millennia that followed, the man died thousands of times.&nbsp; Every time that his body sustained enough damage to kill him, he found himself awake, hours later, with no memory of what had gone before.&nbsp; Soon, he forgot his own identity.&nbsp; In his many lifetimes, he was a lunatic, a saint, a cheat, a hedonist, and a killer.&nbsp; He compounded the mistakes of his first life, so that soon even the gods took notice of his villainous immortality.&nbsp; And they made something happen.&nbsp; He began to remember.</p>
<p>He woke up in a morgue, and he could still picture his death from mere hours before.&nbsp; He set out to learn who he was, and why he had been damned with undeath.&nbsp; Over many lifetimes, he retraced his steps though history.&nbsp; He witnessed the effects of his actions -- entire family lines wiped out, the course of nations changed.&nbsp; He met the children, grandchildren, and great grandchildren of those he had murdered.&nbsp; He began to try to set things right.&nbsp; He apologized to those he met.&nbsp; He did good deeds for those who needed it.&nbsp; And then he met the one woman he never expected.&nbsp; He found the witch.</p>
<p>The witch made a terrible confession.&nbsp; To grant the man immortality, she had stolen the souls of the living.&nbsp; Every time he had awakened from death, someone else had been killed in his place.&nbsp; Even as he spent lifetimes trying to make things right, he was killing the innocent with his mere existence.&nbsp; Finally, he understood the depth of his sin.&nbsp; He understood how deeply he had unraveled the weave of life, and he knew that at long as he struggled against the justice he deserved, the universe would remain horribly out of balance.&nbsp; Overwhelmed with regret, he knew it was time to face that which he feared the most.&nbsp; It was time to accept his fate -- the only righteous and true end to a fearsome unlife.</p>
<p>And so, together he and the witch conspired to reunite the man with his mortality.&nbsp; Willingly, he accepted his mortality and the consequences of his decisions.&nbsp; Finally ready to face the afterlife like a man, he walked into the Grey Wastes and was seen no more.&nbsp; As his life ended, other lives began to flourish.</p>
<p>And that is the story told upon the Symbol of Torment.&nbsp; The final rune, the small twist that looks something like a double helix, is the Symbol of Hope.&nbsp; As one line fades into oblivion, another one grows strong, mortality and humanity intertwined, the balance restored.</p>
<h2>Where do we go from here?</h2>
<p>Now my job is twofold.&nbsp; First, I need to find the best tattoo artist in northern California.&nbsp; Second, I need to start learning about how to care for tattoos, as I intend mine to have color, and I do not want the color to fade or bleed.&nbsp; If you have any suggestions, let me know.</p>]]>
   </content>
</entry>

<entry>
   <title>Dungeons &amp; Dragons 3.t, revised bonus spells</title>
   <link rel="alternate" type="text/html" href="http://www.outshine.com/blog/2008/08/dungeons-dragons-3t-revised-bonus-spells.php" />
   <id>tag:www.outshine.com,2008://1.126</id>
   
   <published>2008-08-05T07:21:59Z</published>
   <updated>2008-08-05T07:32:54Z</updated>
   
   <summary><![CDATA[This is my third homebrew rule revision to Dungeons &amp; Dragons 3.5, which I'm calling the 3.t edition. Today's rule revision has little to do with speeding up gameplay, but has a lot to do with lengthening the game day.&nbsp;...]]></summary>
   <author>
      <name>Tony</name>
      
   </author>
         <category term="Blog" scheme="http://www.sixapart.com/ns/types#category" />
   
   <category term="104" label="3.t" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="71" label="dungeons and dragons" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="38" label="nontech" scheme="http://www.sixapart.com/ns/types#tag" />
   
   <content type="html" xml:lang="en" xml:base="http://www.outshine.com/">
      <![CDATA[<p>This is my third homebrew rule revision to Dungeons &amp; Dragons 3.5, which I'm calling the <a href="/cgi-bin/outshine/search.cgi?tag=3.t&amp;blog_id=1">3.t edition</a>.  Today's rule revision has little to do with speeding up gameplay, but has a lot to do with lengthening the <em>game day.</em>&nbsp; In particular, we're addressing Vancian magic.&nbsp; That's the form of magic that 3.x and earlier versions use -- basically, spellcasters can use a limited array of spells per day, and then they're wiped out and need to rest.&nbsp; That's a very different model from Diablo, for example, where your character can shoot fireballs all day, so long as he has mana.</p>
<p>The problem with the Vancian system is that it engenders the &quot;15 minute work day&quot; -- that is to say that clerics, wizards, and the like seem to blow through their spells after just a few combats, causing the group to go rest after less than a hour in the game world.&nbsp; Dungeons &amp; Dragons 4th edition has a solution for this, which is pretty close to just abandoning the Vancian magic system.&nbsp; I personally wanted to do something much simpler with the 3.5 rules.&nbsp; I was thinking, could I address the issue by changing just one single table in the Player's Handbook?</p>
<p>Let me show you the revised table, and then I'll explain why it's awesome.</p>]]>
      <![CDATA[<h2>Player's Handbook, Table 1-1: Bonus Spells</h2>
<table cellspacing="2" cellpadding="2" border="0">
    <tbody>
        <tr style="background-color: rgb(0, 102, 153); color: rgb(255, 255, 255);">
            <th>Score</th>
            <th>Modifier</th>
            <th>0</th>
            <th>1st</th>
            <th>2nd</th>
            <th>3rd</th>
            <th>4th</th>
            <th>5th</th>
            <th>6th</th>
            <th>7th</th>
            <th>8th</th>
            <th>9th</th>
        </tr>
        <tr style="background-color: rgb(222, 227, 231);">
            <td>10-11</td>
            <td>0</td>
            <td>1</td>
            <td>&nbsp;</td>
            <td>&nbsp;</td>
            <td>&nbsp;</td>
            <td>&nbsp;</td>
            <td>&nbsp;</td>
            <td>&nbsp;</td>
            <td>&nbsp;</td>
            <td>&nbsp;</td>
            <td>&nbsp;</td>
        </tr>
        <tr style="background-color: rgb(239, 239, 239);">
            <td>12-13</td>
            <td>+1</td>
            <td>1</td>
            <td>1</td>
            <td>&nbsp;</td>
            <td>&nbsp;</td>
            <td>&nbsp;</td>
            <td>&nbsp;</td>
            <td>&nbsp;</td>
            <td>&nbsp;</td>
            <td>&nbsp;</td>
            <td>&nbsp;</td>
        </tr>
        <tr style="background-color: rgb(222, 227, 231);">
            <td>14-15</td>
            <td>+2</td>
            <td>2</td>
            <td>1</td>
            <td>1</td>
            <td>&nbsp;</td>
            <td>&nbsp;</td>
            <td>&nbsp;</td>
            <td>&nbsp;</td>
            <td>&nbsp;</td>
            <td>&nbsp;</td>
            <td>&nbsp;</td>
        </tr>
        <tr style="background-color: rgb(239, 239, 239);">
            <td>16-17</td>
            <td>+3</td>
            <td>2</td>
            <td>2</td>
            <td>1</td>
            <td>1</td>
            <td>&nbsp;</td>
            <td>&nbsp;</td>
            <td>&nbsp;</td>
            <td>&nbsp;</td>
            <td>&nbsp;</td>
            <td>&nbsp;</td>
        </tr>
        <tr style="background-color: rgb(222, 227, 231);">
            <td>18-19</td>
            <td>+4</td>
            <td>3</td>
            <td>2</td>
            <td>2</td>
            <td>1</td>
            <td>1</td>
            <td>&nbsp;</td>
            <td>&nbsp;</td>
            <td>&nbsp;</td>
            <td>&nbsp;</td>
            <td>&nbsp;</td>
        </tr>
        <tr style="background-color: rgb(239, 239, 239);">
            <td>20-21</td>
            <td>+5</td>
            <td>3</td>
            <td>3</td>
            <td>2</td>
            <td>2</td>
            <td>1</td>
            <td>1</td>
            <td>&nbsp;</td>
            <td>&nbsp;</td>
            <td>&nbsp;</td>
            <td>&nbsp;</td>
        </tr>
        <tr style="background-color: rgb(222, 227, 231);">
            <td>22-23</td>
            <td>+6</td>
            <td>4</td>
            <td>3</td>
            <td>3</td>
            <td>2</td>
            <td>2</td>
            <td>1</td>
            <td>1</td>
            <td>&nbsp;</td>
            <td>&nbsp;</td>
            <td>&nbsp;</td>
        </tr>
        <tr style="background-color: rgb(239, 239, 239);">
            <td>24-25</td>
            <td>+7</td>
            <td>4</td>
            <td>4</td>
            <td>3</td>
            <td>3</td>
            <td>2</td>
            <td>2</td>
            <td>1</td>
            <td>1</td>
            <td>&nbsp;</td>
            <td>&nbsp;</td>
        </tr>
        <tr style="background-color: rgb(222, 227, 231);">
            <td>26-27</td>
            <td>+8</td>
            <td>5</td>
            <td>4</td>
            <td>4</td>
            <td>3</td>
            <td>3</td>
            <td>2</td>
            <td>2</td>
            <td>1</td>
            <td>1</td>
            <td>&nbsp;</td>
        </tr>
        <tr style="background-color: rgb(239, 239, 239);">
            <td>28-29</td>
            <td>+9</td>
            <td>5</td>
            <td>5</td>
            <td>4</td>
            <td>4</td>
            <td>3</td>
            <td>3</td>
            <td>2</td>
            <td>2</td>
            <td>1</td>
            <td>1</td>
        </tr>
    </tbody>
</table>
<p style="margin-top: 15px;">Here's what I noticed about the original table.&nbsp; It's rigidly formulaic.&nbsp; If you have the 3.5 edition Player's Handbook, look at the chart on page 8.&nbsp; Notice how the amount of bonus 1st-level spells is set to &quot;1, 1, 1, 1, 2, 2, 2, 2, 3, 3, 3, 3, 4, 4, 4, 4.&quot;&nbsp; That same pattern applies to 2nd, 3rd, 4th, and all other level spells, but the pattern starts at a higher ability score as you move across the chart.&nbsp; So, I just changed it to &quot;1, 1, 2, 2, 3, 3&quot; and so on -- giving slightly more bonus spells earlier.&nbsp; In addition, I attached that pattern to zero-level spells, starting with an ability score of 10.</p>
<h2>Why is it awesome?</h2>
<p>If you make a spell caster with a primary ability score of 18, you would normally get one extra 1st, 2nd, 3rd, and 4th spell (assuming you were powerful enough to cast spells that high-level).&nbsp; But with my revision, you get:</p>
<ul>
    <li>Three extra 0-level spells</li>
    <li>Two extra 1st-level spells</li>
    <li>Two extra 2nd-level spells</li>
    <li>One extra 3rd &amp; 4th level spell</li>
</ul>
<p>With this system, low-level spell casters get a little boost, but it peters out before the high levels.&nbsp; So a wizard at level 15 isn't much affected by the change, but the wizards below level 5 are profoundly grateful.&nbsp; Since low-level wizards are the ones desperately in need of a few extra spells to keep the combat day humming along without rest-stops, this revised system works pretty nicely and has a low impact as far as what a DM needs to do to integrate it in.&nbsp; And that's the kind of rule revision I like -- low investment, big payback.</p>
<h2>What about PCGen?</h2>
<p>Gotcha covered.&nbsp; Here is <a href="/code/statsandchecks.txt">a revised copy of the PCGen file, statsandchecks.lst</a>.&nbsp; That file controls how many bonus spells are awarded.&nbsp; On my computer, the path to that file is as follows:</p>
<p>C:\Program Files\PCGen\PCGen5121\system\gameModes\35e\statsandchecks.lst</p>
<p>So once you save that file to your computer (please save it with an .lst extension), you'll want to open up your PCGen folder, find the correct location of the statsandchecks.lst file, and replace it with my revision.&nbsp; <strong>Please note:</strong> my revision is made for the 5.12.1 version of PCGen.&nbsp; Later versions might be different.&nbsp; Therefore, you should backup your original file before trying this out.&nbsp; You could just add the word &quot;backup&quot; to the original file's name before you copy my revised version into the folder.</p>
<p>Have fun!</p>]]>
   </content>
</entry>

<entry>
   <title>Randy Pausch</title>
   <link rel="alternate" type="text/html" href="http://www.outshine.com/blog/2008/07/randy-pausch.php" />
   <id>tag:www.outshine.com,2008://1.125</id>
   
   <published>2008-07-26T07:56:21Z</published>
   <updated>2008-07-26T07:56:39Z</updated>
   
   <summary><![CDATA[Carnegie Mellon Professor Randy Pausch recently gave a presentation titled, &quot;Achieving Your Childhood Dreams.&quot;&nbsp; What makes the presentation amazing (aside from how entertaining it is) is that this is a man who was staring down cancer.&nbsp; He knew it when...]]></summary>
   <author>
      <name>Tony</name>
      
   </author>
         <category term="Blog" scheme="http://www.sixapart.com/ns/types#category" />
   
   <category term="107" label="manhood" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="38" label="nontech" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="106" label="randy pausch" scheme="http://www.sixapart.com/ns/types#tag" />
   
   <content type="html" xml:lang="en" xml:base="http://www.outshine.com/">
      <![CDATA[<p><span>Carnegie Mellon Professor Randy Pausch recently gave a presentation titled, </span>&quot;Achieving Your Childhood Dreams.&quot;&nbsp; What makes the presentation amazing (aside from how entertaining it is) is that this is a man who was staring down cancer.&nbsp; He knew it when he gave the presentation.&nbsp; Yet it is amazingly hopeful.</p>
<p>He was a geek, like me.&nbsp; He loved video games and learning through fun.&nbsp; He loved his family.&nbsp; He has a thousand stories about the people he's met.&nbsp; And he passed away today, July 25th, 2008.&nbsp; You should watch the video.</p>
<p><object width="425" height="344">
<param value="http://www.youtube.com/v/ji5_MqicxSo&amp;hl=en&amp;fs=1" name="movie" />
<param value="true" name="allowFullScreen" /><embed width="425" height="344" allowfullscreen="true" type="application/x-shockwave-flash" src="http://www.youtube.com/v/ji5_MqicxSo&amp;hl=en&amp;fs=1"></embed></object></p>
<p><font size="5">&quot;I mean, the metaphor I've used is... somebody's going to push my family off a cliff pretty soon, and I won't be there to catch them.&nbsp; And that breaks my heart.&nbsp; But I have some time to sew some nets to cushion the fall.&nbsp; So, I can curl up in a ball and cry, or I can get to work on the nets.&quot;</font></p>
<p align="right"><span>Randy Pausch (Oct. 23, 1960 - July 25, 2008)</span><font size="5"></font></p>]]>
      
   </content>
</entry>


</feed>
