<?xml version='1.0' encoding='UTF-8'?><rss xmlns:atom='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' version='2.0'><channel><atom:id>tag:blogger.com,1999:blog-7083353</atom:id><lastBuildDate>Thu, 18 Feb 2010 17:41:08 +0000</lastBuildDate><title>90 Percent</title><description>"90 Percent of Everything is crap"...and that includes blogs. This blog may prove the rule.</description><link>http://www.scotboyd.net/90percent/</link><managingEditor>noreply@blogger.com (Scot Boyd)</managingEditor><generator>Blogger</generator><openSearch:totalResults>89</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-7083353.post-9212670727514065533</guid><pubDate>Tue, 15 May 2007 17:05:00 +0000</pubDate><atom:updated>2007-05-15T16:22:56.621-07:00</atom:updated><title>Quaternion Camera in XNA</title><description>XNA unfortunately does not provide a QuaternionCamera class in it's Framework. Nowhere on the Internet could I find a camera class that provides six degrees of freedom without requiring additional coding from the reader. (It may be out there somewhere and my google-fu was weak). I even have a couple books that outline quaternion cameras but stop short of implementing them fully.

In the process of attacking this problem in my book, I've made a few camera classes. I'm posting the simplest class here - good for beginners. The final camera class in the book will be more complicated. This class should provide a good jumping-off point for anybody interested, or a simple helper class for those who just want a camera without hassles.

In the camera, GetViewMatrix and CreateYawPitchRoll are where the money is. One reason they are statics is to make it easy to test these functions - they don't have to be. Another reason is that I hope it makes them stand out to people familiarizing themselves with the class.

&lt;pre&gt;        public static Matrix GetViewMatrix(ref Vector3 position, ref Vector3 target,
            ref Vector3 up, float yaw, float pitch, float roll)
        {
            // The right vector can be inferred
            Vector3 forward = target - position;
            Vector3 right = Vector3.Cross(forward, up);

            // This quaternion is the total of all the
            // specified rotations
            Quaternion yawpitch = CreateFromYawPitchRoll(up, yaw,
                right, pitch, forward, roll);

            // Calculate the new target position, and the
            // new up vector by transforming the quaternion
            target = position + Vector3.Transform(forward, yawpitch);
            up = Vector3.Transform(up, yawpitch);

            return Matrix.CreateLookAt(position, target, up);
        }
        public static Quaternion CreateFromYawPitchRoll(Vector3 up, float yaw, Vector3 right,
float pitch, Vector3 forward, float roll)
        {
            // Create a quaternion for each rotation, and multiply them
            // together.  We normalize them to avoid using the conjugate
            Quaternion qyaw = Quaternion.CreateFromAxisAngle(up, (float)yaw);
            qyaw.Normalize();
            Quaternion qtilt = Quaternion.CreateFromAxisAngle(right, (float)pitch);
            qtilt.Normalize();
            Quaternion qroll = Quaternion.CreateFromAxisAngle(forward, (float)roll);
            qroll.Normalize();
            Quaternion yawpitch = qyaw * qtilt * qroll;
            yawpitch.Normalize();

            return yawpitch;
        }
&lt;/pre&gt;
&lt;p&gt;
GetViewMatrix shows you how to transform the target and up vectors using a quaternion. CreateFromYawPitchRoll combines three quaternions into a single quaternion defining all the camera rotations. (NOTE: The XNA version of this function uses the world axes as the axes of rotation. This version uses the camera axes supplied by the caller).
&lt;/p&gt;
Enjoy!

Update: Apparently blogger or my web server doesn't like .cs files. I've changed the link to a zip file that appears to work.
&lt;a href="http://www.scotboyd.net/90percent/SimpleQuaternionCamera.zip"&gt;SimpleQuaternionCamera.zip&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7083353-9212670727514065533?l=www.scotboyd.net%2F90percent%2Findex.html' alt='' /&gt;&lt;/div&gt;</description><link>http://www.scotboyd.net/90percent/2007/05/quaternion-camera-in-xna.html</link><author>noreply@blogger.com (Scot Boyd)</author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>6</thr:total></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-7083353.post-7422266087180796334</guid><pubDate>Wed, 28 Mar 2007 21:23:00 +0000</pubDate><atom:updated>2007-03-28T14:37:25.261-07:00</atom:updated><title>A general GameScreen implementation, Pt 2</title><description>&lt;a href="http://www.scotboyd.net/90percent/2007/02/general-gamescreen-implementation.html"&gt;Previously&lt;/a&gt;, I posted an implementation of Eli's GameScreen design that I'm using for the games in my book. I've just added two new virtual functions to the GameScreen class - BeginPause and EndPause. I did this to make dealing with audio easier - when a screen is about to lose updates, it should mute it's sounds, and then it can unmute them when updates resume.  The change isn't terribly complicated, and it passes the smoke test, so I thought I'd post it for folks to use.

&lt;a href="http://www.scotboyd.net/90percent/GameScreen1.1.zip"&gt;GameScreen1.1.zip&lt;/a&gt;

P.S.  Last night, someone asked me if I was planning to change this class, and I swore I wasn't.  I forgot about this feature.  Sorry.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7083353-7422266087180796334?l=www.scotboyd.net%2F90percent%2Findex.html' alt='' /&gt;&lt;/div&gt;</description><link>http://www.scotboyd.net/90percent/2007/03/general-gamescreen-implementation-pt-2.html</link><author>noreply@blogger.com (Scot Boyd)</author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-7083353.post-6267198200682057904</guid><pubDate>Thu, 15 Mar 2007 22:42:00 +0000</pubDate><atom:updated>2007-03-15T16:09:28.000-07:00</atom:updated><title>My Rocinante Sails at Night on Her Final Flight</title><description>Today was the last day of my contract with the XNA team (non-employees can only work for one year). I had a blast working with them and hopefully I will do so again.  Leaving is pretty bittersweet - I want to keep working there, but now I also get to work on the XNA book full-time and get that out the door.  My current plan is to spend a couple months doing that and maybe spend some time on game development once I put the book to bed.

(regarding the title of this post: I've been listening to a lot of Rush lately in anticipation of their next album.)


In other news, there was an XNA user group for Microsoft employees this week.  It was a lot of fun meeting folks developing XNA games and there are a couple things I want to share.

&lt;span style="font-size:180%;"&gt;Respect Da Normals&lt;/span&gt;

One of the guys had a problem - he had game terrain made up of tiles using 3D objects (as opposed to quads) and each row of tiles was unevenly colored.  One side of each tile was completely black, making the whole terrain look like a farm with furrowed rows.

Clearly a lighting problem.  We suspected that the vertex normals weren't right (he was using vertex lighting) but they were fine in 3DS Max.  In 3DS Max, each vertex had 3 normals pointing in the proper directions.  But then we re-imported the FBX file, and BAM - the vertex normal was the average of the three distinct normals we had been seeing in 3DS Max.   This meant that the vertex normals were pointing away from the light on the far side, so the light color was black, and getting averaged with the vertices on the other side, which were lit normally.

We started playing around with 3DS Max, and sure enough on the Export dialog there was a checkbox that said something that can roughly be translated as "Respect Da Normals".  Of course it's unchecked by default.  But paying attention to your normals is good advice for any time.

&lt;span style="font-size:180%;"&gt;Avoid Solutions that are Too General&lt;/span&gt;

We were discussing how you might build a texture manager to load textures on demand and unload them when they're not being used.  I suggested a simple COM-like approach - refcount the texture on Load(), and expect a Release() call for the texture to decrement the refcount.

"What happens if they don't call Release?"
"@#$% 'em", I said.
"@#$% 'em?"
"@#$% 'em," I repeated.

My reasoning is that, especially in game programming, there is such a thing as building a too-general solution.  If a programmer uses one of your objects for a game and they don't follow the contract you specify, let 'em suffer.  They'll pay the price by keeping the texture in memory if they fail to release it.  Like the rule against premature optimization ("don't do it"), you should consider a similar rule against building solutions to problems that most game designers should know better than to cause.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7083353-6267198200682057904?l=www.scotboyd.net%2F90percent%2Findex.html' alt='' /&gt;&lt;/div&gt;</description><link>http://www.scotboyd.net/90percent/2007/03/my-rocinante-sails-at-night-on-her.html</link><author>noreply@blogger.com (Scot Boyd)</author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>1</thr:total></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-7083353.post-341731800575815650</guid><pubDate>Tue, 13 Mar 2007 19:27:00 +0000</pubDate><atom:updated>2007-03-13T12:31:50.013-07:00</atom:updated><title>XNA Creator's Club has a new website</title><description>Most of the XNA community is probably aware that the MSDN forums have moved to the new XNA Creator's Club website, &lt;a href="http://creators.xna.com/"&gt;http://creators.xna.com/&lt;/a&gt; .  But I want to point out that there are also new samples there, especially the &lt;a href="http://creators.xna.com/Headlines/developmentaspx/archive/2007/02/13/Font-Sample.aspx"&gt;Font Sample&lt;/a&gt;, which is VERY useful to those of us who sorely missed fonts in 1.0.

Sadly, my contract with the XNA team ends this week, but happily that will give me more time to devote to finishing my book.  I can't promise to blog more often, but I can promise to think about blogging more often, and to feel guilty if I don't.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7083353-341731800575815650?l=www.scotboyd.net%2F90percent%2Findex.html' alt='' /&gt;&lt;/div&gt;</description><link>http://www.scotboyd.net/90percent/2007/03/xna-creators-club-has-new-website.html</link><author>noreply@blogger.com (Scot Boyd)</author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>5</thr:total></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-7083353.post-7273150253495773299</guid><pubDate>Thu, 08 Feb 2007 08:18:00 +0000</pubDate><atom:updated>2007-02-08T00:36:29.878-08:00</atom:updated><category domain='http://www.blogger.com/atom/ns#'>XNA</category><category domain='http://www.blogger.com/atom/ns#'>book</category><title>A general GameScreen implementation</title><description>A few weeks ago, &lt;a href="http://blogs.msdn.com/etayrien/archive/2006/12/12/game-engine-structure.aspx"&gt;Eli posted a design&lt;/a&gt; for a GameScreen and a GameScreenManager to use in XNA. The GameScreen is a base class, like Game, that implements one layer of a game (e.g. the game itself, or a menu, or a title screen). The GameScreenManager is used by the Game class to switch between these screens using a stack-based design.

I ended up implementing this design for my book, and I've been using a few weeks with no problems so I thought I'd post it here for the XNA community to use. To use the GameScreenManager, declare a public instance of it on your Game object, along with any screens that are spawned by Game and not by other screens.


&lt;span style="font-family:courier new;"&gt;public GameScreenManager screenManager;
// Screens
StartMenuScreen menuscreen;
PlayScreen play;&lt;/span&gt;


&lt;span style="font-family:courier new;"&gt;public Game1()
{
&lt;blockquote&gt;&lt;span style="font-family:courier new;"&gt;...
screenManager = new GameScreenManager(2);
...&lt;/span&gt; &lt;/blockquote&gt;&lt;/span&gt;
&lt;span style="font-family:courier new;"&gt;}&lt;/span&gt;
&lt;span style="font-family:Courier New;"&gt;&lt;/span&gt;
Add the first screen during Game.Initialize() by creating the screen, initializing it, and calling GameScreenManager.Push. I also create the other screen at this point, but I don't initialize it until it's invoked.


&lt;span style="font-family:courier new;"&gt;protected override void Initialize()
{
&lt;blockquote&gt;&lt;span style="font-family:courier new;"&gt;// TODO: Add your initialization logic here
play =
new PlayScreen(this);
play.Initialize();
screenManager.Push(play);
menuscreen = new StartMenuScreen(this);&lt;/span&gt;
&lt;span style="font-family:Courier New;"&gt;...&lt;/span&gt; &lt;/blockquote&gt;&lt;/span&gt;
&lt;span style="font-family:courier new;"&gt;}&lt;/span&gt;
&lt;span style="font-family:Courier New;"&gt;&lt;/span&gt;
At some point later, if the menu is invoked, I initialize it and push it over top of the play screen:

&lt;span style="font-family:courier new;"&gt;// if the menu isn't already up
if (screenManager.Peek() != menuscreen)
{
GamePad.SetVibration(PlayerIndex.One, 0, 0);
// install menu screen
menuscreen.Initialize();
screenManager.Push(menuscreen);
&lt;/span&gt;
&lt;span style="font-family:Courier New;"&gt;&lt;/span&gt;
Lastly, when the menu is finished, I fire an event back Game, which removes it.

&lt;span style="font-family:courier new;"&gt;public void MenuScreenFinished(int Selection)
{
&lt;blockquote&gt;screenManager.Pop();
if (Selection == 0)
return;
if (Selection == 1)
{
play.ResetGame();
}
if (Selection == 2)
{
this.Exit();
} &lt;/blockquote&gt;
}&lt;/span&gt;
&lt;span style="font-family:Courier New;"&gt;&lt;/span&gt;
You can download the GameScreen.cs and a sample screen &lt;a href="http://www.scotboyd.net/90percent/GameScreen.zip"&gt;here&lt;/a&gt;.

Also, I should probably hawk the fact that &lt;a href="http://www.amazon.com/Expert-One-One-Game-Programming/dp/0470149485/sr=1-1/qid=1170923703/ref=sr_1_1/105-8284304-0752460?ie=UTF8&amp;amp;s=books"&gt;my book is available for pre-order&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7083353-7273150253495773299?l=www.scotboyd.net%2F90percent%2Findex.html' alt='' /&gt;&lt;/div&gt;</description><link>http://www.scotboyd.net/90percent/2007/02/general-gamescreen-implementation.html</link><author>noreply@blogger.com (Scot Boyd)</author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-7083353.post-4864810029373528042</guid><pubDate>Thu, 11 Jan 2007 23:12:00 +0000</pubDate><atom:updated>2007-01-11T15:18:04.701-08:00</atom:updated><title>XNA's LoadGraphicsContent API, Part 2</title><description>So, after learning about XNA's LoadGraphicsContent API, an interesting question pops up as soon as you go to implement your own DrawableComponent - why is LoadGraphicsContent a protected method on components?  How do I make sure it loads and unloads it's graphic objects properly?

The answer is "You don't have to".  DrawableComponent is a sneaky and underhanded beast.  It stealthily calls it's own LoadGraphicsContent method the first time during Initialize(), and then subscribes to the device reset events just like your Game object does.  It calls LoadGraphicsContent or UnloadGraphicsContent in response to these events.  This knowledge comes in handy if you &lt;a href="http://blogs.msdn.com/etayrien/archive/2006/12/12/game-engine-structure.aspx"&gt;try to contain components outside the Game object&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7083353-4864810029373528042?l=www.scotboyd.net%2F90percent%2Findex.html' alt='' /&gt;&lt;/div&gt;</description><link>http://www.scotboyd.net/90percent/2007/01/xnas-loadgraphicscontent-api-part-2.html</link><author>noreply@blogger.com (Scot Boyd)</author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-7083353.post-2204799883213818180</guid><pubDate>Sat, 06 Jan 2007 00:48:00 +0000</pubDate><atom:updated>2007-01-06T22:23:56.513-08:00</atom:updated><category domain='http://www.blogger.com/atom/ns#'>XNA</category><title>XNA's LoadGraphicsContent API</title><description>A friend of mine was a little confused about the best way to use XNA's LoadGraphicsContent API, so I thought I'd try to clarify it a bit here.

In general, your XNA Game object (or DrawableGameComponent object) will experience the following calls:

&lt;ol&gt;&lt;li&gt;Constructor&lt;/li&gt;&lt;li&gt;Initialize()&lt;/li&gt;&lt;li&gt;LoadGraphicsContent()&lt;/li&gt;&lt;li&gt;Update / Draw repeatedly&lt;/li&gt;&lt;li&gt;UnloadGraphicsContent()&lt;/li&gt;&lt;li&gt;(maybe) goto 3&lt;/li&gt;&lt;li&gt;Dispose()&lt;/li&gt;&lt;/ol&gt;&lt;p&gt;In your constructor, you don't want to do much of anything. Assign values to things that aren't allowed to be null later, and maybe cache some constructor parameters into private fields of your object. Constructors in C# as a rule should avoid throwing exceptions. Try not to call any system APIs or anything that uses a resource, since that's a good way to encounter an exception. You can and should set your graphics preferences on the &lt;strong&gt;graphics&lt;/strong&gt; object here.&lt;/p&gt;&lt;p&gt;In &lt;em&gt;Initialize&lt;/em&gt; you have a lot more freedom. Your graphics object has been initialized and you should have a valid device. This is a good place for all the object creation and system calls that you wanted to make in your constructor. Don't load any Textures or Models yet though.&lt;/p&gt;
&lt;p&gt;Load your Textures and Models in &lt;em&gt;LoadGraphicsContent&lt;/em&gt; instead. This will get called every time the graphics card is reset (e.g. if the application moves from one monitor to another) and if you load a Texture in &lt;em&gt;Initialize&lt;/em&gt; you'll be in for a nasty surprise after the device resets and you didn't reload it in &lt;em&gt;LoadGraphicsContent&lt;/em&gt;. This is also where you want to create new RenderTargets.&lt;/p&gt;&lt;p&gt;&lt;em&gt;UnloadGraphicsContent&lt;/em&gt; gets called when the device is being reset, or your application is ending. If you've loaded anything that needs explicit disposal, do that here. You'll notice the boilerplate telling the Content Manager to dump what it's loaded. If the device is being reset this call should be followed by a &lt;em&gt;LoadGraphicsContent&lt;/em&gt; with the new graphics device settings.&lt;/p&gt;&lt;p&gt;You will rarely need to override &lt;em&gt;Dispose&lt;/em&gt;. If you load something in &lt;em&gt;Initialize&lt;/em&gt; that requires disposal you should do it here.&lt;/p&gt;
&lt;blockquote&gt;&lt;p&gt;&lt;strong&gt;Update&lt;/strong&gt;: One thing I forgot to mention about &lt;em&gt;Initalize&lt;/em&gt; - if you are making a
GameComponent, you don't want to make any assumptions about whether you are
going to be drawn or receive updates soon. It could be a while between the
time an application initializes a component and when it actually gets to update
or draw. Some of the XNA documention samples do things in &lt;em&gt;Initialize&lt;/em&gt; they probably shouldn't - for example, one of the audio
samples plays a sound in &lt;em&gt;Initialize &lt;/em&gt;(that gaffe in the docs is my
fault, actually). While you can get away with that in a Game object it's a
bad habit in general.&lt;/p&gt;&lt;p&gt;&lt;strong&gt;Update2&lt;/strong&gt;: If you want to control when &lt;em&gt;LoadGraphicsContent&lt;/em&gt; is called, call &lt;em&gt;Initialize&lt;/em&gt; on your Game's base class.&lt;/p&gt;&lt;/blockquote&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7083353-2204799883213818180?l=www.scotboyd.net%2F90percent%2Findex.html' alt='' /&gt;&lt;/div&gt;</description><link>http://www.scotboyd.net/90percent/2007/01/xnas-loadgraphicscontent-api.html</link><author>noreply@blogger.com (Scot Boyd)</author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-7083353.post-2123987177768383461</guid><pubDate>Thu, 04 Jan 2007 11:01:00 +0000</pubDate><atom:updated>2007-01-06T22:24:37.322-08:00</atom:updated><category domain='http://www.blogger.com/atom/ns#'>XNA</category><category domain='http://www.blogger.com/atom/ns#'>book</category><title>How I spent my Christmas Vacation</title><description>I've been working feverishly every night and weekend on my book. The first step is to do the code for the second section of the book, that introduces 2D programming concepts. To illustrate sprite programming I've created a game I call "Velocity" where you pilot a spaceship through rings while avoiding asteroids and the treacherous gravity wells of planets. I'm not much of an artist, but here is a screenshot of the game working on the test map (I plan to make one decent map to ship with the book). Click on the graphic for the larger version.


&lt;a href="http://www.scotboyd.net/90percent/uploaded_images/screenshot1-703631.jpg"&gt;&lt;img style="CURSOR: hand" alt="" src="http://www.scotboyd.net/90percent/uploaded_images/screenshot1-700768.jpg" border="0" /&gt;&lt;/a&gt;

I may get a chance to improve the art before the book is finished (Mars and the asteroid Gaspra courtesy of NASA, but the ship and the ring are my fumbling attempt at art). I'm also doing 2 more versions of Velocity: one as a "2.5D" game and one as a 3D game from within the ship's cockpit.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7083353-2123987177768383461?l=www.scotboyd.net%2F90percent%2Findex.html' alt='' /&gt;&lt;/div&gt;</description><link>http://www.scotboyd.net/90percent/2007/01/how-i-spent-my-christmas-vacation.html</link><author>noreply@blogger.com (Scot Boyd)</author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-7083353.post-6363166193428141879</guid><pubDate>Tue, 19 Dec 2006 20:52:00 +0000</pubDate><atom:updated>2006-12-19T13:03:06.494-08:00</atom:updated><title>The Apocalypse came to Seattle...</title><description>...and everyone was still &lt;em&gt;Christmas shopping.&lt;/em&gt;
&lt;em&gt;&lt;/em&gt;
As most people in the US know, the Pacific Northwest was hit with 100MPH winds.  My power went out Thursday night; I awoke late on Friday to find not only no power, but no cell service.  700,000 households were without power in four counties.  I ended up staying with friends in Shoreline (and not being able to work on my book - sigh), as they were lucky enough to have power and heat.  In fact, one of their neighbors had the gaudiest Christmas displays I've ever seen - all this while gas stations are running out of gas and grocery stores are running out of canned goods and batteries.

We went to the Alderwood Mall area on Saturday for lunch and it was &lt;em&gt;packed&lt;/em&gt;.  People were &lt;em&gt;Chrismas shopping&lt;/em&gt;.  Amazing.

I checked my apartment on Saturday, still no power.  It was incredibly eerie to be standing in Bellevue and see no lights and hear no sounds.  Like something out of a zombie movie.  The stars were gorgeous, though.  The smell of wood smoke was irritating my throat (some people stayed in their houses through the aftermath, hunkered around fireplaces or wood stoves).  It made me think about how bad the air quality must have been when burning wood was the primary heat source.  Though I'm sure they got used to it, just as we're used to exhaust fumes from cars.

I came home Monday morning before going to work, to find that Prometheus had once again blessed my abode with power.  (I'm sure Prometheus would have given men the gift of electricity, but early man had no plasma TVs, so he gave them fire instead).  My Xbox 360, however, didn't survive the surge, and now I have to ship it to Texas for repair.  Alas.  Sad thing to happen right around Christmas.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7083353-6363166193428141879?l=www.scotboyd.net%2F90percent%2Findex.html' alt='' /&gt;&lt;/div&gt;</description><link>http://www.scotboyd.net/90percent/2006/12/apocalypse-came-to-seattle.html</link><author>noreply@blogger.com (Scot Boyd)</author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-7083353.post-3196154999149064657</guid><pubDate>Tue, 19 Dec 2006 20:50:00 +0000</pubDate><atom:updated>2006-12-19T13:03:59.189-08:00</atom:updated><category domain='http://www.blogger.com/atom/ns#'>reviews</category><category domain='http://www.blogger.com/atom/ns#'>games</category><title>The last six games I played, reviewed.</title><description>This is a repost from another board, but as Christmas is approaching and I play so many more games than my friends, I thought this might be a useful list for them.
&lt;strong&gt;&lt;/strong&gt;
&lt;strong&gt;Star Trek: Legacy&lt;/strong&gt; - Graphics: B. The ships are very pretty but some other elements need work. Also relies on giving fleet commands that are hard to figure out. I've only played the first couple missions.
&lt;strong&gt;Marvel Ultimate Alliance&lt;/strong&gt; - A. Bought this after playing it at drumheeler's house this weekend. It's basically X-Men Legends: 3, and that's a-ok.
&lt;strong&gt;Medieval 2: Total War&lt;/strong&gt; - B+. Did you play Rome: Total War and say to yourself "This is fun, but I really wish I could play the Crusades with this engine"? Wish no more.
&lt;strong&gt;Guitar Hero 2&lt;/strong&gt; - B+. Can't be an A because it's last-gen, but still a lot of fun.
&lt;strong&gt;Rainbox Six: Vegas&lt;/strong&gt; - A. Do you want to fight a million billion terrorists, in Las Vegas casinos, with either 2 AI squadmates or a bunch of friends? Then buy this. Would be A+ except the first couple missions are in Mexico.
&lt;strong&gt;Gears of War&lt;/strong&gt; - A+. 'Nuff said.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7083353-3196154999149064657?l=www.scotboyd.net%2F90percent%2Findex.html' alt='' /&gt;&lt;/div&gt;</description><link>http://www.scotboyd.net/90percent/2006/12/last-six-games-i-played-reviewed.html</link><author>noreply@blogger.com (Scot Boyd)</author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>2</thr:total></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-7083353.post-3202014128014650257</guid><pubDate>Thu, 14 Dec 2006 05:40:00 +0000</pubDate><atom:updated>2006-12-13T22:15:24.494-08:00</atom:updated><title>It's official: I have a contract for an XNA book now</title><description>Yesterday I signed a contract with Wiley Publishing to deliver an XNA book under their Wrox imprint. The title is "Expert One on One: XNA Game Programming for Xbox 360 and Windows". Quite a mouthful, I know. Despite the name, it's a book for both beginners and experts, but the Expert One on One series works best for my writing style.  The book should be out this summer.

Ars Technica &lt;a href="http://arstechnica.com/articles/xna.ars"&gt;reviewed XNA's recent 1.0 release&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7083353-3202014128014650257?l=www.scotboyd.net%2F90percent%2Findex.html' alt='' /&gt;&lt;/div&gt;</description><link>http://www.scotboyd.net/90percent/2006/12/its-official-i-have-contract-for-xna.html</link><author>noreply@blogger.com (Scot Boyd)</author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>1</thr:total></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-7083353.post-116104954055348519</guid><pubDate>Tue, 17 Oct 2006 01:41:00 +0000</pubDate><atom:updated>2006-10-16T18:45:40.563-07:00</atom:updated><title>New Evidence 2: Mutated gene increases autism, too</title><description>Seems to be the day for Autism research: &lt;a href="http://www.cnn.com/2006/HEALTH/10/16/autism.genes.reut/index.html"&gt;CNN reports&lt;/a&gt; that a mutated gene contributes up to 2.5 percent chance of autism:
&lt;blockquote&gt;Dr. Pat Levitt and colleagues at Vanderbilt University in Nashville, Tennessee, studied 743 families in which 1,200 family members were affected by autism spectrum disorders, which range from fully disabling autism to Asperger's syndrome.
They found a single mutation in a gene called MET, which is known to be involved in brain development, regulation of the immune system and repair of the gastrointestinal system. All of these systems can be affected in children with autism.
"This is a vulnerability gene," Levitt said in a telephone interview. "There are not genes that actually cause autism. It raises the risk."
People with two copies of the mutated gene have 2 to 2.5 times the normal risk of autism and people with one mutated copy have 1.7 times the risk, he said.
 &lt;/blockquote&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7083353-116104954055348519?l=www.scotboyd.net%2F90percent%2Findex.html' alt='' /&gt;&lt;/div&gt;</description><link>http://www.scotboyd.net/90percent/2006/10/new-evidence-2-mutated-gene-increases.html</link><author>noreply@blogger.com (Scot Boyd)</author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-7083353.post-116103473389651949</guid><pubDate>Mon, 16 Oct 2006 21:28:00 +0000</pubDate><atom:updated>2006-10-16T14:38:53.910-07:00</atom:updated><title>New Evidence: TV viewing causes Autism</title><description>I like to keep an eye out for new research on Autism or Asperger's Syndrome, ever since reading &lt;a href="http://www.wired.com/wired/archive/9.12/aspergers.html"&gt;this&lt;/a&gt; article in Wired. Today &lt;a href="http://www.slate.com/id/2151538"&gt;Slate reports&lt;/a&gt; on a study showing a strong correlation between cable-TV households and Autism rates.
&lt;blockquote&gt;The Cornell study looks at county-by-county growth in cable television access and autism rates in California and Pennsylvania from 1972 to 1989. The researchers find an overall rise in both cable-TV access and autism, but autism diagnoses rose more rapidly in counties where a high percentage of households received cable than in counties with a low percentage of cable-TV homes. Waldman and Nicholson employ statistical controls to factor out the possibility that the two patterns were simply unrelated events happening simultaneously. (For instance, petroleum use also rose during the period but is unrelated to autism.) Waldman and Nicholson conclude that "roughly 17 percent of the growth in autism in California and Pennsylvania during the 1970s and 1980s was due to the growth in cable television."
&lt;/blockquote&gt;
Autism occurs frequently (at least, more frequently) among children of high-IQ parents, and autism rates have been exploding in tech-heavy cities, including Seattle. In an almost amusing part of the study, rain is an incidental factor:
&lt;blockquote&gt;But the fact that rising household access to cable television seems to associate with rising autism does not reveal anything about how viewing hours might link to the disorder. The Cornell team searched for some independent measure of increased television viewing. In recent years, leading behavioral economists such as Caroline Hoxby and Steven Leavitt have used weather or geography to test assumptions about behavior. Bureau of Labor Statistics studies have found that when it rains or snows, television viewing by young children rises. So Waldman studied precipitation records for California, Oregon, and Washington state, which, because of climate and geography, experience big swings in precipitation levels both year-by-year and county-by-county. He found what appears to be a dramatic relationship between television viewing and autism onset. &lt;strong&gt;In counties or years when rain and snow were unusually high, and hence it is assumed children spent a lot of time watching television, autism rates shot up;&lt;/strong&gt; in places or years of low precipitation, autism rates were low. Waldman and Nicholson conclude that "just under 40 percent of autism diagnoses in the three states studied is the result of television watching." Thus the study has two separate findings: that having cable television in the home increased autism rates in California and Pennsylvania somewhat, and that more hours of actually watching television increased autism in California, Oregon, and Washington by a lot.&lt;/blockquote&gt;
This study shows correlation, not causation (a caveat I ignored in the title of this post as dramatic license) but does have a good recommendation:
&lt;blockquote&gt;If television viewing by toddlers is a factor in autism, the parents of afflicted children should not reproach themselves, as there was no warning of this risk. Now there is: The American Academy of Pediatrics currently recommends against any TV for children under the age of 2. &lt;strong&gt;Waldman thinks that until more is known about what triggers autism, families with children under the age of 3 should get them away from the television and keep them away.&lt;/strong&gt; &lt;/blockquote&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7083353-116103473389651949?l=www.scotboyd.net%2F90percent%2Findex.html' alt='' /&gt;&lt;/div&gt;</description><link>http://www.scotboyd.net/90percent/2006/10/new-evidence-tv-viewing-causes-autism.html</link><author>noreply@blogger.com (Scot Boyd)</author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-7083353.post-116007962806787928</guid><pubDate>Thu, 05 Oct 2006 20:09:00 +0000</pubDate><atom:updated>2006-10-05T13:20:28.080-07:00</atom:updated><title>Northwest Airlines miles are useless</title><description>This is the second time I've attempted to redeem Northwest Airlines Worldperks miles for air travel.  This is the second time I've been completely out of luck.

This second time around, I was trying to book an Alaska Air flight to Vegas. Alaska Air is a partner, and a lot of my Worldperks miles were earned ON Alaska flights.  Since Northwest the website claims they don't fly to Vegas, it shouldn't be a problem - Alaska has like 10 flights leaving Seattle for Vegas everyday.

First, the Alaska Air website doesn't allow you to use their partner's miles to book flights.  They refer you to the telephone number for Northwest.

Northwest's web site will happily list flights that you should be able to book using miles.  When you select the flights, however, it then dumps you back to the search screen with a message that says (paraphrase) "Whoops, you didn't mean THOSE flights, I can't book THAT".

Dialing Northwest's so-called "customer service" was also ineffectual.  At 8pm I dialed their line, gave the robot some itinerary information, and was told that I should expect a 15-minute wait.  After an hour on hold, I hung up.

Dialing them today, they made no pretense of wanting my business - after talking to the robot, they said "Due to call volumes, we can't take your call right now." which is the customer service equivalent of "FUCK OFF".  A decent customer service operation almost never "busies out" their customers, certainly not on a &lt;em&gt;Thursday &lt;/em&gt;in &lt;em&gt;October&lt;/em&gt;.

Ironically, I had to book with Southwest instead.  Which was a completely painless operation, since cash was involved.

At this point, I think I'm going to gift my Northwest miles to charity and tell them never to contact me ever again.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7083353-116007962806787928?l=www.scotboyd.net%2F90percent%2Findex.html' alt='' /&gt;&lt;/div&gt;</description><link>http://www.scotboyd.net/90percent/2006/10/northwest-airlines-miles-are-useless.html</link><author>noreply@blogger.com (Scot Boyd)</author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>1</thr:total></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-7083353.post-115671861265214008</guid><pubDate>Sun, 27 Aug 2006 22:36:00 +0000</pubDate><atom:updated>2006-08-27T15:43:32.670-07:00</atom:updated><title>Turning Points</title><description>Friday night was the longest five minutes of my life. Five minutes where the only woman I've ever considered my soulmate debated our future in her mind. I sat and waited, swimming in a mix of hope and dread. True happiness can't be obtained without risk.

By definition, not every risk pays off.  But to paraphrase &lt;a href="http://www.readbookonline.net/read/65/2699/"&gt;Shaw&lt;/a&gt;, I'm not going to sit down and die of a broken heart - but in the world for me there is Sara and a lot of other women for whom one is the same as another.

I don't know what the future holds now - I confess at this point I'm not completely interested.  It looks like my free time is going to be taken up for the next six to eight months (more on that later). After that maybe I'll know what to do.

I don't normally get this personal on my blog, and I don't know if I will again.  But I felt that if I didn't talk about this then this blog would not be a genuine record of my life.  It could never be, if I didn't reveal this moment, a turning point in my life.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7083353-115671861265214008?l=www.scotboyd.net%2F90percent%2Findex.html' alt='' /&gt;&lt;/div&gt;</description><link>http://www.scotboyd.net/90percent/2006/08/turning-points.html</link><author>noreply@blogger.com (Scot Boyd)</author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-7083353.post-115626337493784343</guid><pubDate>Tue, 22 Aug 2006 16:12:00 +0000</pubDate><atom:updated>2006-08-22T09:16:14.953-07:00</atom:updated><title>Even Stranger Personal Ads</title><description>I was sitting yesterday with my friend Sara and we were reading the Stranger - specifically, reading out the weirdest personal ads aloud.

She lamented the fact that there's no newspaper or personal ads for philosophical people who just like good conversation.  I imagined it would look something like this:

"Luscious brunette seeks intelligent conversation.  Must be willing to do Locke, Kant, and Neitzche.  Descartes fans need not apply.  No Greek on the first date."&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7083353-115626337493784343?l=www.scotboyd.net%2F90percent%2Findex.html' alt='' /&gt;&lt;/div&gt;</description><link>http://www.scotboyd.net/90percent/2006/08/even-stranger-personal-ads.html</link><author>noreply@blogger.com (Scot Boyd)</author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-7083353.post-115560845661626513</guid><pubDate>Tue, 15 Aug 2006 02:05:00 +0000</pubDate><atom:updated>2006-08-14T19:20:56.696-07:00</atom:updated><title>I don't often blog about work...</title><description>...because usually I can't talk about what I'm working on.  Today at the Microsoft Game Developers conference, we announced XNA Game Studio Express, which allows C# developers to write games and run them on Windows and their own Xbox 360.  It's generating some excitement, including the &lt;a href="http://www.cnn.com/2006/TECH/fun.games/08/14/microsoft.game.software.ap/index.html"&gt;front page of CNN&lt;/a&gt;.

I'm currently working as a documentation writer on this team and I'm happy to see this announcement go out with the fanfare it deserves. I'm pretty excited about it.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7083353-115560845661626513?l=www.scotboyd.net%2F90percent%2Findex.html' alt='' /&gt;&lt;/div&gt;</description><link>http://www.scotboyd.net/90percent/2006/08/i-dont-often-blog-about-work.html</link><author>noreply@blogger.com (Scot Boyd)</author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-7083353.post-115033729339963493</guid><pubDate>Thu, 03 Aug 2006 20:43:00 +0000</pubDate><atom:updated>2006-08-03T13:48:26.040-07:00</atom:updated><title>What advertising really says:</title><description>At work, they've come out with special "Windows Vista" cans of Talking Rain.  The only flavor available in the new cans?

Lemon.

Update:  Engagdet has finally broke this &lt;a href="http://www.engadget.com/2006/08/03/microsoft-rolls-out-windows-vista-soft-drink/"&gt;story&lt;/a&gt;, complete with pics.  Remember you saw it here first, my five loyal readers.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7083353-115033729339963493?l=www.scotboyd.net%2F90percent%2Findex.html' alt='' /&gt;&lt;/div&gt;</description><link>http://www.scotboyd.net/90percent/2006/08/what-advertising-really-says.html</link><author>noreply@blogger.com (Scot Boyd)</author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-7083353.post-115455841822160518</guid><pubDate>Wed, 02 Aug 2006 22:37:00 +0000</pubDate><atom:updated>2006-08-02T15:41:10.920-07:00</atom:updated><title>Freelance Writer becomes Gold Farmer</title><description>&lt;a href="http://gamepolitics.livejournal.com/"&gt;GamePolitics &lt;/a&gt;posted a &lt;a href="http://gamepolitics.livejournal.com/331092.html"&gt;review &lt;/a&gt;of a book called Play Money: Or, How I Quit My Day Job and Made Millions Trading Virtual Loot.  From their review:

&lt;blockquote&gt;he sought to prove that he could make more money in one year trading items from massively multiplayer online games (MMO's) than he had ever earned as a freelance writer.&lt;/blockquote&gt;

Considering you can easily be a freelance writer and make $0 in a year, this is a highly suspect goal.  Though it does give me an idea for a book!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7083353-115455841822160518?l=www.scotboyd.net%2F90percent%2Findex.html' alt='' /&gt;&lt;/div&gt;</description><link>http://www.scotboyd.net/90percent/2006/08/freelance-writer-becomes-gold-farmer.html</link><author>noreply@blogger.com (Scot Boyd)</author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-7083353.post-115455104304279319</guid><pubDate>Wed, 02 Aug 2006 20:30:00 +0000</pubDate><atom:updated>2006-08-02T13:37:23.056-07:00</atom:updated><title>Women prefer Plasma TVs to Diamonds</title><description>I normally don't just repost stuff on my blog, but this is too good to pass up - According to a study by Oxygen network (called &lt;a href="http://www.oxygen.com/pressreleaseuploads/Aug06/OxygenGirlsGoneWired.doc"&gt;"Girls Gone Wired"&lt;/a&gt;) , 77% of women prefer a new plasma TV to a diamond solitaire necklace.

I've heard Plasma TV's described as having a high WAF ("wife approval factor") but this is the first study I've seen confirming it.

Other findings:

Cell Phones are preferred over shoes.  
So is a digital camera or a media center PC.
They prefer iPods to slinky black dresses (Quelle dommage!).

The next time I need shopping advice from a woman friend, maybe I should take her to Fry's instead of Macy's.

Thanks to &lt;a href="http://arstechnica.com/news.ars/post/20060802-7405.html"&gt;Ars&lt;/a&gt; for the story.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7083353-115455104304279319?l=www.scotboyd.net%2F90percent%2Findex.html' alt='' /&gt;&lt;/div&gt;</description><link>http://www.scotboyd.net/90percent/2006/08/women-prefer-plasma-tvs-to-diamonds.html</link><author>noreply@blogger.com (Scot Boyd)</author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-7083353.post-115394270847264061</guid><pubDate>Wed, 26 Jul 2006 19:31:00 +0000</pubDate><atom:updated>2006-07-26T12:38:28.500-07:00</atom:updated><title>To the list of unpleasant things...</title><description>...add this:  It is very unpleasant to watch your doctor, after uttering the classic "say AAAH" to have your doctor do a double-take when they get a look at your throat.

It happened to me this morning, after walking into my appointment with lymph nodes the size of walnuts.  You'd think after seeing that he'd be prepared for what's inside.

And then, of course, there's nothing he can do, since it's not strep.  Gotta love that.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7083353-115394270847264061?l=www.scotboyd.net%2F90percent%2Findex.html' alt='' /&gt;&lt;/div&gt;</description><link>http://www.scotboyd.net/90percent/2006/07/to-list-of-unpleasant-things.html</link><author>noreply@blogger.com (Scot Boyd)</author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>1</thr:total></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-7083353.post-115291143283297439</guid><pubDate>Fri, 14 Jul 2006 21:08:00 +0000</pubDate><atom:updated>2006-07-14T14:10:32.846-07:00</atom:updated><title>"Windows (TM) is like Democracy"</title><description>"It's the worst operating system out there, except for all the others."  Put forth as part of a "Why does Ford have better brand satisfaction than Microsoft" discussion.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7083353-115291143283297439?l=www.scotboyd.net%2F90percent%2Findex.html' alt='' /&gt;&lt;/div&gt;</description><link>http://www.scotboyd.net/90percent/2006/07/windows-tm-is-like-democracy.html</link><author>noreply@blogger.com (Scot Boyd)</author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-7083353.post-115138753984884404</guid><pubDate>Tue, 27 Jun 2006 05:38:00 +0000</pubDate><atom:updated>2006-06-26T22:52:19.870-07:00</atom:updated><title>Lacie Drives - Shoddy and Fraudulent?</title><description>A while ago I bought a LaCie 250 GB external drive (the silver type, not the Lego ones).  I use it to store important data (music, code, system backups, etc), and periodically back it up to a 250GB internal drive in my gaming rig.

Not long ago, I discovered files missing from the drive.  Scandisk revealed bad sectors on the drive.  When the OS software detects bad sectors, you can kiss the drive goodbye - by then the hardware has been hiding bad sectors until it's internal bad sector map is full. Over time the drive kept losing files and capacity, so I finally bought a replacement external drive (Maxtor 500GB, $250 at Fry's last weekend if you're wondering).

I googled on the LaCie drive and found a ton of anecdotal reports of consistent drive failure.  A lot of reports found that removing the drive from the enclosure found an intact drive; that putting good drives in the enclosure made them fail.

So much for my idea of re-using the enclosure.  I cracked it open anyway (it's long out of warranty) and found something even more disturbing.  Inside was a Western Digital drive with a labelled capacity of 160GB.

Are they trying to achieve disk capacity from compression - and committing fraud in the bargain?  Either way, I'll never use that brand again.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7083353-115138753984884404?l=www.scotboyd.net%2F90percent%2Findex.html' alt='' /&gt;&lt;/div&gt;</description><link>http://www.scotboyd.net/90percent/2006/06/lacie-drives-shoddy-and-fraudulent.html</link><author>noreply@blogger.com (Scot Boyd)</author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>1</thr:total></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-7083353.post-114780291956276844</guid><pubDate>Tue, 16 May 2006 18:01:00 +0000</pubDate><atom:updated>2006-05-16T11:08:39.583-07:00</atom:updated><title>Faking Dyslexia and ADD for SAT scores</title><description>Freaknomics fans should find &lt;a href="http://www.slate.com/id/2141820/fr/rss/"&gt;this Slate article&lt;/a&gt; fascinating.  It appears that children in affluent neighborhoods are faking ADD and dyslexia in order to take the SAT without a time limit, in the hopes of improving their score.

&lt;blockquote&gt;The distortions worked on the SAT and other standardized tests are revealed in data winkled out of the College Board last year by Sam Abrams, a young researcher at Harvard's Institute for Quantitative Social Science. Nationwide, only 2 percent of students who have taken the SAT over the past 10 years have done so untimed. Most of these students' diagnoses are presumably genuine. But in places like Greenwich, Conn., and certain zip codes of New York City and Los Angeles, the percentage of untimed test-taking is said to be close to 50 percent. &lt;/blockquote&gt;

I haven't met a teenager in the past two years who &lt;em&gt;hasn't&lt;/em&gt; claimed to be ADD or dyslexic.  Maybe it's just the people I hang out with, but I think the overdiagnosis of this is apalling.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7083353-114780291956276844?l=www.scotboyd.net%2F90percent%2Findex.html' alt='' /&gt;&lt;/div&gt;</description><link>http://www.scotboyd.net/90percent/2006/05/faking-dyslexia-and-add-for-sat-scores.html</link><author>noreply@blogger.com (Scot Boyd)</author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>4</thr:total></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-7083353.post-114669585001831948</guid><pubDate>Wed, 03 May 2006 22:35:00 +0000</pubDate><atom:updated>2006-05-03T15:37:30.033-07:00</atom:updated><title>I crack myself up</title><description>IM conversation today:

&lt;blockquote&gt;[15:23] [anon girl]: SCULLY HAS CANCER??!?!?!?
[15:23] Tennyson360: Geez, where you been?
[15:24] Tennyson360: Welcome to ten years ago
[15:26] [anon girl]: shutup!
[15:26] [anon girl]: i don't know yettt
[15:27] Tennyson360: You don't know about her marriage to Skinner either yet, do you?
[15:27] [anon girl]: shutup
[15:27] [anon girl]: you're fucking with me
[15:27] [anon girl]: WHY DO YOU HAVE TO SPOIL THESE THINGS?
[15:27] Tennyson360: ROFL
[15:28] Tennyson360: Because it's hilarious
[15:28] [anon girl]: it's not true.
[15:28] [anon girl]: shutup.
[15:28] [anon girl]: i don't wanna talk about x-files
[15:28] Tennyson360: Mulder was maid of honor
[15:29] [anon girl]: shut up.&lt;/blockquote&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7083353-114669585001831948?l=www.scotboyd.net%2F90percent%2Findex.html' alt='' /&gt;&lt;/div&gt;</description><link>http://www.scotboyd.net/90percent/2006/05/i-crack-myself-up.html</link><author>noreply@blogger.com (Scot Boyd)</author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></item></channel></rss>