Friday, April 27, 2007
I've decided to take the plunge and install Visual Studio Code Name "Orcas" Beta 1 on my development machine. For several months, I have been dutifully installing the latest CTPs into virtual machines to toy with and test CodeRush and Refactor! on. However, with the beta release, I'm living a bit closer to the edge. I have spotted and reported a couple of very minor bugs, but hey, this is beta software, right? Regardless of these minor blips, my experience has been nothing short of pure enjoyment. I'm not saying that everyone should install it right now, but for me, it's been fantastic.

posted on Friday, April 27, 2007 6:06:47 AM (Eastern Standard Time, UTC-05:00)  #    Comments [0]

kick it on DotNetKicks.com
 Wednesday, April 18, 2007
This article delves into a certain peculiarity of the .NET garbage collector. Along the way, it explores IL, optimized JIT-compiled code and even the underlying CLR structures.
posted on Wednesday, April 18, 2007 10:08:50 AM (Eastern Standard Time, UTC-05:00)  #    Comments [6]

kick it on DotNetKicks.com
 Sunday, April 15, 2007
Those of you that know me will remember that I carry a full-sized keyboard in my laptop bag. I find it much easier to code and demo if I use the same keyboard all the time. So, I carry it with me. My keyboard is like a constant companion that goes wherever I go, and my recent trip to DevConnections in Orlando was no different. The birds were singing. The sun was shining. My keyboard was firmly secured under the flap of my bag... or so I thought. As I approached the Orlando hotel, I had no idea that my close friend's lifetime was near its end. There was nothing that would have alerted me to this fact. Suddenly, my trusted comrade slipped from the bag and shattered on the hard cement. And when I say "shattered", I don't mean that a few keys popped off. I mean that keyboard blood and guts were strewn everywhere. As I surveyed the gory scene, I realized that repairing my keyboard was out of the question. The ground was littered with twisted plastic shrapnel and warped springs. It had become my own proverbial "Humpty Dumpty". There was no way this egg was going back together again.

Believe it or not, this tragedy absolutely paralyzed me. Because I spend all of my time with the same keyboard, I am a complete novice (i.e. a "newbie") at using my laptop's built-in keyboard. With only the keyboard on my laptop, I was reluctant to do demos during the conference. I would sit in front of my laptop blushing and stammering into the keyboard like a seventh grade boy asking his first girl to a dance. I had to face the facts: I couldn't avoid replacing my dear friend. Only one questioned remained. Should I purchase the same model or go for an upgrade?

I spent some time looking online and finally settled on the Logitech G15 Gaming Keyboard. It's newer, sleeker and sexier than my old buddy, but it also has a very attractive feature: holes that I can use to tie it to my laptop bag. There are lots of other great features like the LCD screen and the extra 18 user-programmable buttons, but the holes were the selling point for me. No longer will I put my closest friends at risk.


Helpful holes allow me to use straps. YAARRR!!! (pirate-speak)


Securely attached to my Tom Bihn Super Ego.


This thing's not going anywhere!

This experience has served to cement a universal truth in my mind. It is the sort of axiom that I wouldn't mind having engraved on my tombstone at the end of my days. The idea is basically this: no matter how sophisticated humanity's achievements in technology, no matter how rich our medical advancements, gravity wins. Gravity always wins.

Words to live by.

posted on Sunday, April 15, 2007 3:39:33 PM (Eastern Standard Time, UTC-05:00)  #    Comments [5]

kick it on DotNetKicks.com
 Tuesday, April 10, 2007
Today I'm 32 years old.

To many of you, that might not seem very old. In fact, some of you might already calling me names like "young punk" or "whipper-snapper". To those people I say, "Get some teeth old man!"

Seriously, it's not that I feel particularly old, but this is the first year I'll actively exaggerate my age. If someone asks how old I am, I'll quickly answer that I'm 25. "25", of course, is a short way of saying that I'm 2^5 years old. I'm comfortable with that because it's not really a lie. It's not even stretching the truth. I'm being vague, flippant and maybe a bit of a smart ass, but I'm OK with that.

After this year, I'm going to start rendering my age in hexadecimal. Next year I'll be 21.
posted on Tuesday, April 10, 2007 10:07:49 AM (Eastern Standard Time, UTC-05:00)  #    Comments [4]

kick it on DotNetKicks.com
 Monday, April 02, 2007
At the moment, I'm enjoying the first-ever week-long vacation that I've taken since joining the Developer Express IDE Tools Team nearly four years ago. CodeRush and Refactor! are very exciting products to work on but I need some time to refresh and Key West is just the place to do it. (Sadly, I think my trophy wife is already upset with me because I took a moment to fix a bug this morning.)

My vacation began with some exciting news. On Sunday, just before leaving for the airport, I received an email from Microsoft honoring me with the MVP Award for C#. Frankly, I'm humbled by the award, and it's a great priveledge to be numbered among so many professionals whom I deeply respect. Thanks very much to my friends, colleagues and mentors who made this possible.

posted on Monday, April 02, 2007 11:47:56 AM (Eastern Standard Time, UTC-05:00)  #    Comments [7]

kick it on DotNetKicks.com
 Wednesday, March 28, 2007
While giving a talk at the Dayton-Cincinnati Code Camp, my computer started dragging to a crawl—PowerPoint was hung, Visual Studio 2005 wouldn't respond—very bad. I'm comfortable with multi-tasking so I fired up Process Explorer while I continued to introduce the session topic. When Process Explorer was up, the culprit was revealed. Both cores of my CPU were pegged by the Adobe Updater software. Discovering this, I couldn't help pointing out the problem to the audience (with some choice comments) and logged a todo item in the back of my mind to get rid of the Adobe PDF Reader ASAP.

Today, I am Adobe Free. I removed the PDF Reader and the diabolical Adobe Updater. Today I'm running Foxit and I couldn't be happier. It's much faster than Adobe's reader. My machine actually responds as if chains have been removed from it. Thanks Foxit!

posted on Wednesday, March 28, 2007 10:13:41 AM (Eastern Standard Time, UTC-05:00)  #    Comments [5]

kick it on DotNetKicks.com
 Sunday, March 25, 2007
Yesterday's Code Camp in Cincinnati was an absolute blast. Here are some of my highlights:
  1. My "Back to the Basics" talk has a total of 7 possible demos but we never got to any of them. Instead, we had an interactive discussion about practices that can help us as developers improve our craft. It may not have been what the attendees were expecting but, to me, this was far more valuable that digging into code.
  2. Jason Follas established himself as the reigning "King Nerd" by presenting a killer demo in his SQL Server 2005 talk that parsed XML data from a World of Warcraft web service.
  3. Darrell Hawley complained to me several times that he doesn't have licenses to CodeRush or Refactor! only to eat his own words when he won a DXperience Enterprise subscription (including both CR and R! along with all of our .NET products) at the raffle.
  4. As always, I had excellent an conversation with my good friend Joe Brinkman at the after-event party. He's one seriously smart guy.
  5. Repeatedly having "just one more" with Darrell Hawley at the after-event party for several hours after everyone else had left.
This is a great event. I hope I can be involved next year.

posted on Sunday, March 25, 2007 1:24:46 PM (Eastern Standard Time, UTC-05:00)  #    Comments [1]

kick it on DotNetKicks.com
 Friday, March 23, 2007
One of the greatest frustration of working with delegates and events is that they can potentially cause memory leaks if they aren't unhooked. In this article, we will solve this problem in a variety of ways to get the best performance, memory use and syntax.
posted on Friday, March 23, 2007 1:12:02 PM (Eastern Standard Time, UTC-05:00)  #    Comments [14]

kick it on DotNetKicks.com