Wednesday, April 09, 2008

BlueMonster 

The rumors are all true. May 19, 2008 will be my first official day as an employee of Microsoft. Specifically, I will be joining the Visual Studio Team as a Program Manager.

This month marks five years since I joined the (then) fledgling CodeRush team at DevExpress as an outside contractor. (I later became a full employee in September of 2003.) The years seem to have passed quickly, yet we've accomplished an incredible amount with CodeRush and Refactor. It feels like just yesterday when Mark and I were doing our first proof of concept work for painting via managed code on the decidedly unmanaged Visual Studio editor. Yet today, we're shipping products with blazingly fast productivity boosts, more than 150 refactorings, and stunning next-generation UI. After five years, I still feel that CodeRush and Refactor are, hands down, the best Visual Studio productivity tools available.

I'm leaving quite a bit behind to join Microsoft. DevExpress is an amazing company to work for. If any readers are looking to work for a cutting-edge company at the top of its game, I recommend applying. At DevExpress, I've developed some strong friendships that are difficult to leave. Obviously, we'll keep in touch and see each other at conferences, but we won't be working together anymore. Ray, Julian, Kevin, Oliver, Courtney and Mehul will be greatly missed.

I'll especially miss working with the IDE Tools team (a few members of which are pictured below). Contrary to popular belief, Mark and I don't make up the entire IDE Tools team. In reality, it is staffed by some extraordinarily intelligent programmers—all of whom have been blessed with the ability to deal with Mark and myself.

IDE Team (partial)

One couldn't find a more talented group of people.

But scarecrow, I'll miss you most of all1.

garlic

Regardless of the garlic (viewable in the picture above) that you constantly hang over yourself to ward off vampires, the last five years have been the most enriching of my programming career. To say that "I've learned a lot" is a gross understatement. You truly are a visionary and an inspiring person to work for (with). From you, I've learned that presumed impossibility should never be a barrier to invention.

As much as I love DevExpress, it's time for a change. The company is in a really healthy place, and my leaving should cause minimal ripples. I think that I have a lot to offer in the IDE space at Microsoft, and it's a good time to move on.

In addition to leaving my current job, I will be moving to Seattle. For the next several months, my family and I will be going through the stresses of relocation. Is anyone interested in purchasing a charming two story, brick, four bedroom home in Toledo, Ohio?

1Hillary Flammond, Top Secret!

posted on Wednesday, April 09, 2008 11:19:47 AM (Eastern Standard Time, UTC-05:00)  #    Comments [16]

kick it on DotNetKicks.com
 Friday, April 04, 2008

Isn't She Hot? 

I have a terrible, secret shame: my writing skills are lousy.

For me, perhaps the most difficult aspect of blogging is the writing process. Sometimes I feel inspired, but more often, I struggle. No matter how profound my level of inspiration is, bugs always seem to work themselves into my writing. Missing words, grammar slip-ups, poor phrasing—you name it. I feel as if I've been cursed.

My frustration is probably due to my dislike of writing in school. Back then, it simply didn't interest me. I was too busy learning to code against the Zilog Z80, and playing Trade Wars on my local BBS. I suppose it didn't help that, for many years, the vast majority of my reading consisted of either technical books or comic books.

When I began blogging in August of 2006, my writing was... unpolished. I composed my posts with the same grace that elephants construct model airplanes. Sadly, I couldn't recognize my own weakness.

For awhile, my blog stayed pretty low on the radar. I wrote a few technical articles, but in February of 2007, I really hit my (first) stride writing articles about functional programming concepts using C# 2.0. I rolled into March, picking up steam until my writing and I reached an impasse.

On March 23, 2007, I posted an article that earned me a few negative emails. None of the emails criticized my content (which is still pretty cool). Instead, they (gently) pointed out typos, poorly-constructed sentences, and unclear tidbits.

Feeling frustrated and inept, I asked my trophy wife—who graduated with a minor in English Education—to take a look at my article. Graciously, she corrected my grammar, and I promptly re-posted it. So, everything was OK now, right? Wrong. The wind in my blogging sails had died down. My dear trophy wife continued to help me with blog posts, but my desire to blog had waned. Eventually, my output shrank to just a trickle.

Finally, on August 1, 2007, I was bit by the blogging bug for a second time. But this time was different. This time, I was playing it smart. I "employed" my trophy wife as a full-time editor. Since then, she has poured over every blog post with me.

My trophy wife is an especially good editor. In addition to navigating through my grammatical mine fields, she works hard to actually understand the concepts that I'm trying communicate. The process results in better-written articles that are more easily understood.

Since I got my second wind, blogging has been a joy. It's much more fun to have someone to bounce ideas off of ([ed.] Never end a sentence with a preposition, silly). But most importantly, it's provided a way to bring my trophy wife into my world.

posted on Friday, April 04, 2008 2:55:18 PM (Eastern Standard Time, UTC-05:00)  #    Comments [6]

kick it on DotNetKicks.com
 Tuesday, April 01, 2008

Today is April Fool's Day—the day when many of us celebrate just how gullible we really are. Celebrants enjoy the day by spoofing co-workers and engaging in fun hoaxes and practical jokes.

Over the years, I've personally been the target of many an April Fool's prank. Considering today's date, I'm not sure what to make of the following email that I received this morning. Am I the target of yet another joke?

Congratulations! We are pleased to present you with the 2008 Microsoft® MVP Award! The MVP Award is our way to say thank you for promoting the spirit of community and improving people’s lives and the industry’s success every day. We appreciate your extraordinary efforts in Visual C# technical communities during the past year.

I suppose it's possible that Microsoft has a thoroughly sick sense of humor, and this is just an elaborate hoax. On the other hand, it could be that Microsoft has absolutely no sense of humor and doesn't realize that today isn't the most optimal day to be sending out congratulatory emails.

I feel that I have to give this email two responses:

  1. If this is real, I am completely humbled to be a recipient of the MVP Award this year. Blogging, speaking and educating are activities that I find very rewarding, and it's flattering to be recognized for them.
  2. If this is just an elaborate joke, I'm thoroughly disgusted and saddened by the juvenile attempt at humor. People have feelings, ya' know!

How hard is it to send these emails on March 31st or April 2nd? :-) That would clear up a lot of confusion.

P.S. I know it's real. Thanks Microsoft! I am truly honored. No joke.

posted on Tuesday, April 01, 2008 10:44:09 AM (Eastern Standard Time, UTC-05:00)  #    Comments [10]

kick it on DotNetKicks.com
 Thursday, March 27, 2008

Recently, I googled my first name. The search yielded some startling results. Not only was I surprised to find my modest blog on the front page, but... well... see for yourselves.

GoogleDustin

Sadly, soon after came the inevitable smack down.

GoogleDustin2

It's on. Now that I've had a taste of power, I'm willing to go to great lengths to quench my thirst. Look out Hoffman! I don't care if you are my namesake...

You're next Screech. No bell will save you this time.

posted on Thursday, March 27, 2008 7:15:52 PM (Eastern Standard Time, UTC-05:00)  #    Comments [1]

kick it on DotNetKicks.com
 Thursday, March 20, 2008

GoogleAds

posted on Thursday, March 20, 2008 3:00:23 PM (Eastern Standard Time, UTC-05:00)  #    Comments [0]

kick it on DotNetKicks.com

A few days ago, my friend Michael Letterle (the artist formerly known as Michael.NET) twat the following tweet:

MichalL-20YearsToLate

The story Michael referred to is Landon Dyer's "Donkey Kong and Me" blog post, which chronicles his conversion of the Donkey Kong arcade game to the 8-bit Atari 400/800 systems. (Screenshots and a review of the port can be found here.) A fascinating yarn, Dyer's post evokes a feeling of nostalgia for the swashbuckling coder days of more than two decades ago. His recent post about the development of the Atari ST is equally enjoyable.

I've often shared Michael's sentiment. Sometimes, I feel like I was born a bit too late. At the advanced age of 0x20, I am fascinated by stories of the Herculean coding efforts of those who came before me—the original early adopters. (Although, there's a strong argument that the present day is just as, if not more, exciting.) Perhaps the most interesting aspect of tech history is how our forefathers were forced to invent creative solutions for just about everything. For me personally, that's what makes "Donkey Kong and Me" so much fun. The same appeal can be found in the early-Macintosh hardware-tweaking stories at Andy Hertzfeld's Folklore.org.

To fuel my interest in computer tech history, I've recently begun re-reading its bible: Programmers At Work.

ProgrammersAtWork2

Published in 1986, this book features interviews with an amazing array of programmers, including figures like Gary Kildall, Charles Simonyi, Jaron Lanier and even Bill Gates. It's out-of-print but can still be purchased used. (I "borrowed" my water-damaged copy from my father's bookshelf). Thankfully, Susan Lammers, the author, has recently started a "Programmers At Work" blog where she's posting the original interviews. So, if you can't find the book, these classic interviews should all be available soon.

What interesting tech history articles or books have you read recently?

posted on Thursday, March 20, 2008 12:39:47 PM (Eastern Standard Time, UTC-05:00)  #    Comments [0]

kick it on DotNetKicks.com
 Monday, February 25, 2008
I had resisted advertisements on this blog for a long, long while. It's not that I have anything in particular against ads. I think it's reasonable for a blogger to add advertising to offset the cost (mostly time) of maintaining a solid blog. I just hate it when nice, clean-looking blogs start to look like this:

Nascar Ads

I suppose that I share a lot of the same sentiments on the subject as Jeff Atwood over at Coding Horror.

About a month ago, I added Google AdSense (at the suggestion of my good friend Keith Elder). I've tried to keep the ads relatively low key in order to keep the clutter down. That doesn't result in as many clicks as it might if I threw them in your faces, but I'm OK with that. I like to keep my layout clean for those who do come in via the web (and not just the feed).

The truth is, I don't trust Google AdSense all that much. Context-sensitive ads are great, but they aren't always accurate. For example, I've mentioned the word "Haskell" several times in reference to the pure functional programming language, Haskell. However, the very use of this relatively uncommon word has triggered Google Ads for the Haskell Indian Nations University. Sigh. It's really hard to get behind advertised products when you're not 100% certain that they'll be relevant to your content.

Recently though, I found a product that I can whole-heartedly recommend. It's a product that falls directly into my demographic of humor-loving, technology-lusting geeks: RiffTrax.

What's RiffTrax you ask? Well, do you remember the TV show Mystery Science Theater 30001? That's right. The one with the guy and the robots and the making fun of old B-movies. Well, RiffTrax is that without robots and with blockbusters instead of B-movies. It still has the guy though. In fact, it's the same guy from MST3K.

In essence, RiffTrax are feature-length commentaries in MP3 format that you can purchase, download and sync to your DVDs. Some RiffTrax feature stars and writers from MST3K, and some even have celebrities joining in on the fun. For example, my current favorite is a riff on Jurassic Park that features none other than Weird Al Yankovic.

Pants-wettingly hilarious. Seriously.

Below is a small sampling of the films that have received the RiffTrax treatment. There are lots of others. Some have Jar Jar Binks. Some have Keanu Reeves. All will make you howl with laughter.

Honestly, I don't think of this as advertising. This is a public service announcement. You need this. I promise.

1Some may have missed out on the delights of Mystery Science Theater 3000 (MST3K). You can catch up here.

posted on Monday, February 25, 2008 9:44:36 PM (Eastern Standard Time, UTC-05:00)  #    Comments [1]

kick it on DotNetKicks.com
 Thursday, February 21, 2008

Computer books

I don't know about you, but around my house, computer books have a habit of multiplying like rabbits. Sometimes it seems as if you can't put up your feet without resting them on a pile of old programming books. There are several reasons why these books proliferate so:

  • I like my shelves to reflect an intelligence that I don't actually possess.
  • I feel the need to own reference books that I never need to reference.
  • I purchase books on the latest and greatest technology before I realize that I'm not actually interested in said technology.
  • When I become interested in a topic, I tend to purchase every book ever written about it—even if a new book duplicates information I already have.
  • I buy classics that I have the best intentions of reading... but never do.
  • I acquire books for a specific project at work, and the project ends.

Because my shelves are bursting at the seams (and the Wife Acceptance Factor for them has become quite low), it's time for an early Spring cleaning. If you're interested in some reasonably-priced programming tomes, previously owned by a lesser-known blogger, feel free to browse my Amazon storefront.

(Quiz: How many of the books in above picture do you own?)

(Clarification: The books pictured above are not for sale. Those are keepers!)

posted on Thursday, February 21, 2008 3:44:48 PM (Eastern Standard Time, UTC-05:00)  #    Comments [17]

kick it on DotNetKicks.com
 Tuesday, January 15, 2008
While at CodeMash, I sat down with my good friend Chris Woodruff for a casual podcast interview discussing life, code, being a Microsoft MVP, DevExpress and the CodeMash conference.

CodeMash 2008 Interview with Dustin Campbell

NOTE: This interview is not technical and gets a little off-topic at the end.

In addition, there are several other CodeMash interviews, including:

posted on Tuesday, January 15, 2008 9:10:19 AM (Eastern Standard Time, UTC-05:00)  #    Comments [0]

kick it on DotNetKicks.com
 Monday, January 14, 2008
While at CodeMash, I had the opportunity to sit down with Scott Hanselman and record an episode for his renowned podcast, Hanselminutes. As a follower of the podcast, I was thoroughly flattered to be included among his guest list. The show turned out well, but the experience was definitely nerve-wracking. Here are some tips in case you ever end up in the hot seat across from Scott:
  1. Learn to hold and speak into a microphone. This is critical. During the recording, I kept drifting from the mic, which required editing in post-production.
  2. Be prepared to be disarmed by the interviewer's eloquence. Scott is a very well-spoken guy with a lot of experience. Don't be surprised when he pulls the perfect metaphor out of thin air.
  3. Be aware of your medium. When recording audio, be careful using words to explain a concept that might be better expressed with a visual diagram. Remember: it's a warning sign if you start "talking with your hands."

Scott and I talked about some of the features that make F# such an exciting language. We tried to keep it short on academia so that it would be appealing to any developer. The idea was to start small with some bite-sized concepts. Check it out!

Starting Small with F# with Dustin Campbell

posted on Monday, January 14, 2008 11:16:29 AM (Eastern Standard Time, UTC-05:00)  #    Comments [1]

kick it on DotNetKicks.com
 Thursday, December 27, 2007

Coffee and Mug

Today, I saw the following tweet on Twitter:

dredding: @jfollas taking coffee away from a developer is like taking away a dominatrix's whip. You just don't do it.

This made me smile—not because of how creepy my friend Dave Redding is (very creepy), but because of how true the sentiment is. At least, it's true for me. Coffee is an addiction that I've fully embraced. It's difficult for me to start a day without that bold flavor. Some developers might choose to get their buzz in another way (and a smaller percentage choose to have none at all), but I've picked coffee as my caffeine-delivery system of choice.

I've really become quite the coffee snob. For me, only the very best coffee will do. I buy my coffee whole bean from Grounds for Thought in Bowling Green, OH. Of all the roasts they produce, Kenya "Gazelle" AA and Papua New Guinea "Mile High" Estate AA+ are definitely my favorites. The Kenya has a nice bite that wakes me up while the New Guinea is smooth all the way down.

But what is it about caffeine that causes many developers crave it so? I mean, aside from the fact that it helps wake us up in the mornings. It certainly doesn't make me a nicer person to be around. In fact, too much makes me downright grouchy. However, the right amount seems to put my brain in a zone that sees problems more clearly. It's almost as if the caffeine gives my think meat the extra zip that it needs to solve problems. Perhaps caffeine unlocks areas of our minds that allow us to be better developers, if only for a moment.

Then again, maybe that's just the coffee talkin'.

posted on Thursday, December 27, 2007 7:48:14 PM (Eastern Standard Time, UTC-05:00)  #    Comments [4]

kick it on DotNetKicks.com
 Monday, December 10, 2007

Happy Birthday!

Bethany Anne Campbell was born on December 9, 2007 at 10:40 a.m. At 5 weeks early, Bethany was definitely a big surprise. However, it was pretty clear that she was ready to join us on the outside. Once we arrived at the hospital, it was only thirty minutes before Bethany was born. I suppose that means that she'll always be one or two steps ahead of us.

posted on Monday, December 10, 2007 6:58:50 AM (Eastern Standard Time, UTC-05:00)  #    Comments [17]

kick it on DotNetKicks.com
 Wednesday, October 24, 2007
Today, I got an email from Keith Elder calling me out for not being on Twitter:
FYI, you are no longer cool :)

Email from Elder

Normally, I would swim through boiling lava to remain among "the cool" (even if only in my own mind), but it didn't come to that. Signing up was mind-numbingly easy. Follow me: dcampbell.

Thanks to The Elder and The Follas for keeping me cool.

posted on Wednesday, October 24, 2007 2:33:43 PM (Eastern Standard Time, UTC-05:00)  #    Comments [0]

kick it on DotNetKicks.com
 Tuesday, October 23, 2007
The biggest danger of working with my boss is, quite frankly, jealousy. Don't misunderstand me. It's not jealousy of his considerable programming chops or his modest good looks. It's his wide range of stalkers that evokes my pangs of envy. Nothing defines fame quite as definitively as the number and variety of one's stalkers.

Over the past years, I've declared a few people to be "my stalker."

First, there was Jason Follas because of his stalker-ish way of chasing me down to speak at the Northwest Ohio .NET User Group. Here are some choice quotes:

"First off, I'm still floored by the fact that a CodeRush/Refactor developer lives this close to me..."

"Even though you probably haven't read the first email yet, I was wondering if you might be available and willing to speak at the user group meeting next Tuesday..."

Jason showed a lot of promise, but his heart really isn't in it. This quote from his very first email to me clarifies his level of commitment as a stalker:

"Anyways, your name doesn't sound familiar to me, so I hope that we haven't met before."

Oh yeah! Can you feel the love?

Then of course, there was Jeff McWherter. Jeff approached me this year at Tech Ed to discuss a talk that I had given a month earlier over a 1,000 miles away. Truthfully, Jeff was just being conversational, but I jumped all over his pleasantries with cries of, "Ha! You're my stalker now buddy!" Lately, I've been questioning how seriously Jeff has been taking his roll as a stalker. Recent encounters have involved him darting around corners while I shout, "HEY! Aren't you going to stalk me!? Why aren't you going through my trash or taking distant, blurry photos of me?"

I guess that I've just been trying too hard.

Until today.

Finally, I have real stalker of my very own: Dan Hounshell. That's right Dan. I read your blog, and I saw your post.

Dan Hounshell

After seeing this photo, I'll be sleeping with one eye open.

A stalker of my very own.

I've finally arrived.

posted on Tuesday, October 23, 2007 2:31:30 PM (Eastern Standard Time, UTC-05:00)  #    Comments [3]

kick it on DotNetKicks.com
 Thursday, October 11, 2007
Last night, I happened upon an episode of the Sci-Fi Channel's "Ghost Hunters" and was struck by the uncanny resemblance between lead investigator Jason Hawes and my good friend Josh Holmes.

Jason HawesJosh Holmes

Clearly, Josh is getting a bit more sun than Jason, but the likeness is striking. At least, as striking as the resemblance between two goatee-wearing, head-shaving men can be. Were they separated at birth? Hmmm...

posted on Thursday, October 11, 2007 10:19:50 AM (Eastern Standard Time, UTC-05:00)  #    Comments [1]

kick it on DotNetKicks.com
 Wednesday, September 19, 2007
Recently, a reader inquired as to how I format the source code samples on my blog. After writing up the set of steps that I normally run through, I decided that I should post them here so that 1) interested readers might benefit, and 2) I won't forget my own process.

First of all, I should point out that there are several tools available to help format source code for the web, and Brig Lamoreaux has a good review of several here. My personal tool of choice is CopySourceAsHtml. It does a great job of getting code out of Visual Studio with accurate syntax highlighting. With a few tweaks to the HTML, it can produce exactly what I need.

Here is the exact process that I go through to create code samples that look equally good on the web and in RSS feeds.

Step 1: Write Your Code

Step 1: Write Your Code

Some important tips:

  • The code should be concise and well formatted. Most readers skim code, so it should be clear enough to get the general idea from a brief overview.
  • Make sure the code compiles! It can be quite embarrassing to be contacted by a reader who, after copying and pasting the code, found that it didn't compile.

Step 2: Copy As HTML

Step 2: Copy As HTML

Select the code sample in Visual Studio, and decrease the indent (Shift+Tab) until the code is aligned at column 1. Next, select "Copy As HTML..." from the editor's context menu. At this point, you'll be presented with the "Copy As HTML" dialog.

The first time that the dialog is displayed, some options need to be set. Fortunately, the dialog remembers your settings so that you don't need to change them next time. On the "General" tab, uncheck everything except for "Embed styles."

Step 2a: Copy As HTML (General tab)

Next, switch to the "File Style" tab to add additional CSS styles to the <div> tag that will surround the HTML-formatted code sample. Here are the styles that I use for my blog:

border: 1px dotted rgb(221, 221, 221);
margin: 4px;
padding: 4px;
font-family: Consolas,'Courier New',Courier,monospace;
font-size: small;
color: rgb(0, 0, 0);
background-color: rgb(255, 255, 255);

Step 2b: Copy As HTML (File Style tab)

Finally, click the OK button to copy the code to the clipboard.

Step 3: Massage the HTML

Once pasted in the HTML source editor of your choice, the code sample will render like this:

Sub Main()
  Dim publicationdate = Date.Today
  Dim isbn = 42
  Dim price = 0.99D
  Dim firstName = "Dustin"
  Dim lastName = "Campbell"
 
  Dim book = <book publicationdate=<%= publicationdate %> ISBN=<%= isbn %>>
               <title>F#: For The Excessively Nerdy</title>
               <price><%= price %></price>
               <author>
                 <first-name><%= firstName %></first-name>
                 <last-name><%= lastName %></last-name>
               </author>
             </book>
End Sub

Unfortunately, CopySourceAsHtml wraps every line in the code sample with <pre style="margin: 0px;"></pre> tags. These tags override some of the CSS styles that we specified for the <div> tag. Thankfully, this is easily corrected with two replace operations:

  1. Replace all instances of <pre margin="0px"> with blank text.
  2. Replace all instances of </pre> with <br /> to preserve the line breaks.

The syntax coloring is achieved by using <span> tags. Occasionally, a space will appear between two uses of a <span> tag. For example, in the code sample above, "End Sub" is actually represented like this:

<span style="color: blue;">End</span> <span style="color: blue;">Sub</span>

Some RSS readers make the mistake of removing the space in between these <span> tags, causing the words to run together. To fix this potential problem, just replace all instances of "</span> <span" with "</span>&nbsp;<span".

When finished, the code sample should render like this:

Sub Main()
  Dim publicationdate = Date.Today
  Dim isbn = 42
  Dim price = 0.99D
  Dim firstName = "Dustin"
  Dim lastName = "Campbell"
 
  Dim book = <book publicationdate=<%= publicationdate %> ISBN=<%= isbn %>>
               <title>F#: For The Excessively Nerdy</title>
               <price><%= price %></price>
               <author>
                 <first-name><%= firstName %></first-name>
                 <last-name><%= lastName %></last-name>
               </author>
             </book>
End Sub

Really, it's not that much effort. Once the CopySourceAsHtml options are set to your liking, it is a simple matter to copy, paste and make a few modifications to get the desired result. Most of the work is in writing the code sample.

posted on Wednesday, September 19, 2007 4:39:54 PM (Eastern Standard Time, UTC-05:00)  #    Comments [3]

kick it on DotNetKicks.com
 Thursday, September 06, 2007
Last night, I managed to catch the Counting Crows just as their summer tour was wrapping up. It was a fantastic show, full of energy and nostalgia. They played a few bits from their new album (due out in November), and performed several songs from the past. I was pleased that their set list was made up of songs they really seemed to enjoy playing (e.g. "Perfect Blue Buildings") rather than just laboriously running through their hits. For me, it was definitely a musical walk down memory lane. For a couple of hours, I was taken back to the post-grunge era of the mid-nineties when guys like Dave Matthews ruled the college rock world.

posted on Thursday, September 06, 2007 6:29:55 AM (Eastern Standard Time, UTC-05:00)  #    Comments [2]

kick it on DotNetKicks.com
 Tuesday, August 14, 2007
Warning: GEEK ALERT! The following content may contain language that will fill the reader with an involuntary desire to purchase and read comic books, move into their parents' basement, and wear black T-shirts containing copyright-infringing images or stereotype-perpetrating text, possibly indicating that "Han Shot First." Other side effects may include near-sightedness, uncontrollable acne, and an inability to communicate with the opposite sex. Some readers have also indicated an inexplicable desire to be referred to as "the Dungeon Master." You've been warned...

I recently returned home from Wizard World Chicago. For those of you who are unfamiliar with it, Wizard World is an annual pop culture convention that tours several major cities in the US. The conference entails all manner of geek fetishes such as collectable toys, table-top gaming and anime, but the biggest emphasis is on comic books. Attendance at the conference is usually very high. I'm not certain what the final number of attendees was this year, but last year it was around 58,000. If you compare that with this year's Microsoft Tech Ed attendance of 13,000, you'll quickly realize that Wizard World is truly wall-to-wall geek.

Because there are so many people at Wizard World, my trophy wife and I spent $300 to get two VIP passes. This might seem excessive, but the benefits are pretty sweet:

  • Extra swag. At registration, we received several cool items including 9.8 CGC graded copies of Captain America #25 (the issue where Captain America dies).
  • Early entrance. On Friday and Saturday, VIPs were admitted to the conference floor at 9 a.m., before any other attendees. This allows VIPs to be the first to get conference exclusives and to be at the front of the line to get autographs or sketches from comic creators. Early admittance had another huge benefit that I'll talk about shortly.
  • Exclusive signings. For every scheduled signing by a comic creator there was an additional signing only for VIPs.

Purchasing the VIP passes turned out to be a great investment because they helped us to attend a very important event. On Friday, DC announced that they would be giving out wrist bands early Saturday morning which would provide access to a special panel on Saturday evening presented by DC and Warner Bros. There was a limited number of seats available, and they would be given out on a first-come-first-served basis. As VIPs, this wasn't a problem for us. In fact, our early entrance onto the floor on Saturday ensured that we were among the first to get wrist bands and T-shirts printed with the logo for the next Batman movie, "The Dark Knight." We weren't certain what would happen at this special panel. Currently, "The Dark Knight" is filming in Chicago, so we guessed that there might be a bit of early footage shown. However, when we took our seats later that night with a thousand other geeks, it wasn't clear who might be filling the empty seats at the head table.

Paul Levitz, president of DC, opened the panel with a few words about what was going to happen that evening. After mentioning that there were some surprises for us, he moved quickly to introducing the special guests. Here they are in the order that they were introduced:

  1. David Goyer, screenwriter and comic creator. I'm a big fan of Goyer's work so this was a big "fanboy moment" for me. For the "The Dark Knight," Goyer collaborated with...
  2. Jonah Nolan, screenwriter. Nolan is best-known for his short story "Memento Mori," which is the source material for the excellent film "Memento." After Jonah, Paul introduced...
  3. Gary Oldman, actor. That's right, Gary Frickin' Oldman. At this point, I wet my pants. Next to Oldman sat...
  4. Aaron Eckhart, actor. Eckhart is playing the character of Harvey Dent in the new movie. Next, Batman himself was introduced...
  5. Christian Bale, actor. At this point, my trophy wife wet her pants. Bale got the largest reception of any of the special guests (Oldman was next). He appeared to be quite taken aback by the whole thing. And finally...
  6. Chris Nolan, director. Chris is well-known for such films as "Memento", "The Prestige" and "Batman Begins."

After our initial shock, the panel continued with a Q&A session of which I have no memory. Seriously. It was a completely blur. Fortunately, you can read a transcript here if you're interested.

Next up was the movie footage. They showed us a few minutes of quick scene flashes which were a bit rough since the movie is still filming. There were some exciting shots of Heath Ledger as the Joker getting his butt royally kicked. The footage ended with a big surprise which revealed that Two-Face would make an appearance in the film.

I'm still a bit dazed from the panel (Gary Frickin' Oldman!) but a lot of other great stuff went on at Wizard World. If anyone is interested, I'll post some more stories. However, for the moment, I return you to your regularly scheduled technical blog.

posted on Tuesday, August 14, 2007 9:51:57 AM (Eastern Standard Time, UTC-05:00)  #    Comments [0]

kick it on DotNetKicks.com
 Wednesday, August 01, 2007
I recently got a comment from a reader thanking me for my blog content (which was nice) and then tweaking me because he couldn't find my name until he started reading the comments. Grrr... What's wrong man? Can't you see it there in the fine print of the copyright text at the very bottom of the sidebar?

OK, maybe that's not so obvious, and I suppose that my readership has grown a little beyond my immediate friends and colleagues. For those of you who are interested, here is the obligatory bio page.

On April 10, 1975, I was born Dustin Russell Campbell in Findlay, Ohio and spent my early years on a steady diet of Star Wars and text adventure games. Fortunately, my father always had a deep interest in computers so there was always some sort of machine around the house. In fact, we owned one of the first TRS-80 Model I machines in the city. MY first computer was a Commodore VIC-20 (eventually graduating to a Commodore 64) on which I became interested in programming (in BASIC of course!). We purcharsed our first PC in 1986-87, and I immediately fell in love.

Junior high and high school were turbulant times for me. In 1987, for the same reasons that most boys do (chicks and dough), I took up guitar. To my mother's shame, I gravitated towards hard rock and heavy metal. I was always that kid in the back of the honors classes with long hair and a Metallica T-shirt. You know the one. (I have pictures, but I'm not showing.) However, it wasn't always black T-shirts and loud guitars. I also played the viola from fourth grade all the way into college. So, even throughout a period of heavy teenage angst, I found enjoyment in many other styles of music (e.g. classical, jazz, etc.).

After high school, I had two choices of career to pursue in college: computer science or music. At the time, music was more attractive (chicks and dough, remember?), so I entered Bowling Green State University in the Fall of 1993 as a Guitar Performance major with a jazz emphasis. That's right dear readers, I went to college for jazz guitar and studied with the masterful Chris Buzzelli. It might surprise some of you to learn that, at BGSU, this is one of the hardest music degrees to get. In fact, out of the 16 guitarists that started with me, I was the only one to earn the degree.

Throughout college, I made ends meet by doing various odd jobs (programming, support, whatever...) for my father's fledgling software firm. He eventually converted me from Visual Basic 6 to Borland Delphi, with which I learned proper object-oriented programming skills.

In August of 1998, I finally graduated with my Bachelor's in Guitar Performance and had no idea what I wanted to do. Programming was certainly a draw, but I wasn't particularly interested in joining the Geek Squad just yet. So, I re-enrolled at BGSU as a graduate student in Guitar Performance. To help pay my way, I took a graduate assistantship as the College of Musical Arts' web developer. I stayed in school for one more year and then dropped out because my interests had shifted. I just didn't have the same passion for music that I had for computers and technology. (It turned out that "chicks and dough" was a myth.)

After dropping out, I stayed on as the web developer and continued programming for my father. It wasn't glorious, but it was fun and I earned a reasonable living.

Eventually, I started using CodeRush for Delphi and developed a friendship with its creator, Mar