June 2007 Entries
Presenters TakeNote!

At the Raleigh Code Camp this past Saturday, Microsoft Developer Evangelist Glen Gordon and I briefly talked up this mouse to a few of the speakers assembled in the "speakers lounge". I figured I'd extend the conversation to my blog.

The Microsoft Wireless Notebook Presenter Mouse 8000 rocks! Yes the name is quite a mouthful, but this little mouse lives up to its long name.  This mouse is an great product and a must-have addition to my laptop bag. If you give user group presentations, teach seminars, or have to present to the bigshots in the board room, then I suggest you get one of these.  

It doubles as a mouse AND a presenter device. In mouse mode it has programmable buttons, 4 way scrolling thanks to Tilt Wheel Technology, and feels good in your hand. Press a small button on the top of the mouse to switch into presentation mode, flip it over and as a presenter device it has a built in laser pointer and navigation buttons. Top that off with Bluetooth capabilities, a battery life indicator (takes two AAA batteries) and a very cool, clear, hard plastic, carrying case and you've got one heck of a mouse.

I'm sure you can pick up locally or grab one on this link to it on Amazon.

Have a day.

Posted On Thursday, June 28, 2007 8:12 AM | Comments (0)
Raleigh Code Camp ROCKED!

If you didn't get a chance to attend the Raleigh Code Camp this past Saturday, you missed a fantastic event! I was fortunate enough to be selected as a speaker and presented my Write Better Code Using the Refactoring Tools in Visual Basic 2005 session.  You can find more information about Refactor! on the MSDN site and find a great whitepaper on using it as well.

I want to be sure I thank everyone involved starting with all the volunteers from the Triangle .NET User Group, the other speakers, and especially Microsoft Developer Evangelists Brian Hitney and Glen Gordon. From great swag to picking up the tab for the speaker reception on Friday night to presenting sessions, Brian and Glen contributed in a big way and I thank them for it.  I also want to thank Rod Paddock of Dash Point Software and Editor of CoDe Magazine for flying all the way in from Seattle to present a couple sessions and deliver the keynote. Great job Rod!

Here are a couple links to pictures taken during the Code Camp by Chris Love and Steve Jackle.

Maybe I'll see you at the next Raleigh code camp... I heard something about having one in the fall. You won't want to miss it.

Have a day.

Posted On Sunday, June 24, 2007 11:32 PM | Comments (2)
Rush Concert Last Wednesday Night (6/20/07) in Raleigh!

Yep, this was my second Rush concert in 5 days. It didn't matter that the set list was the same as the West Palm beach show, I had a blast!


We finally got everyone into town on Wednesday and even got in some tailgating before and after the show. We were feeling no pain hangin' out in the parking lot after the concert. I can't same the same for a few of the guys on Thursday morning!

I guess it's time to get back to work now...

Posted On Sunday, June 24, 2007 11:17 PM | Comments (3)
Rush Concert Last Night (6/15/07) in West Palm Beach!

Wow.... Great show!!  Our seats were great, the band sounded great, our parking spot was even great! No set list spoilers here but if you are planning on seeing their tour this year I'd familiarize yourself withtheir latest CD, Snakes and Arrows.


I'll be seeing them next week in Raleigh (6/20/07) with a bunch of geek friends so that should be a blast!

Posted On Saturday, June 16, 2007 10:55 AM | Comments (2)
June TRINUG Meeting Recap - Rocky Lhotka


Yep, that could just about be the entire recap of the entire June TRINUG meeting. As hard as it is for me to believe, this was the first time I've seen Rocky do a presentation. He opened with a discussion of the n-layer architecture, followed by by n-tier, all the while relating the current topic to how it applies to his free CSLA framework. Yes, FREE. Yes, its a free download from his website. Ok, I know you're thinking that something free always comes with a catch. In this case you're correct. The catch is if you want the documentation you need to buy one of his books, Expert VB 2005 Business Objects or Expert C# 2005 Business Objects.




Not sure why I included the link to the C# version, I mean come on, who wants to code in C# with all those curly brackets and case sensitivity? :-) 

Disclaimer: Yes, I know all the merits of C# and no, I don't want to get into a language war here. Soooooo, for those who missed it, there was a :-) at the end of the above sentence... don't you know a light-hearted jab when you see one??? 

Have a day.

Posted On Friday, June 15, 2007 7:54 AM | Comments (0)
I'm Not Alone! I have "vibranxiety"!

A recent story in the USA Today newspaper address the feeling you get when feel your cell phone vibrating in your pocket only to find out it never rang/vibrated at all.  It happens to me and I'm glad I'm not alone!  Does that happen to you too????

Posted On Wednesday, June 13, 2007 11:58 AM | Comments (0)
How NOT to Use PowerPoint

Technically Funny Comedian Don McMillian has a very funny bit about How NOT to Use PowerPoint. I've seen Don perform live at a conference I attended and was very impressed with him and his material. I'll never forget his binary high five bit... very funny.

This video clip is a must see for all presenters, be it a conference presenter, user group presenter, Code Camp presenter, or just someone who delivers presentations as part of their job.  Enjoy!!

Posted On Wednesday, June 6, 2007 3:24 PM | Comments (2)
PDC Rescheduled.... CRAP!

Earlier this year I flipped a coin to determine if I'd attend TechEd or PDC 2007. TechEd was heads, PDC 2007 was tails. Tails won so TechEd was out and PDC 2007 was in! Unfortunately PDC 2007 has been rescheduled. I should have used a two-headed coin!

Posted On Tuesday, June 5, 2007 2:35 PM | Comments (0)
Silverlight Javascript compiler Written in VB! Waaaay Cool!!

Just thought I'd pass along a bit of news I stumbled on. It turns out the Javascript compiler used in Microsoft's new Silverlight is written in VB! Gotta love that!!!  Goooooooooooooo VB!!

I wish this had been more publically announced so that VB could have gotten some good PR out of it.

Posted On Tuesday, June 5, 2007 2:31 PM | Comments (1)
mmmmmm North Carolina BBQ at the OpenBBQ/OpenJam - 2007

This week on the Computers 2K7 radio show I co-host we were fortunate to have Matt Frye as a guest. He was there promoting the OpenBBQ/OpenJam 2007 fund raising event being held this Saturday, June 9, 2007 at Rub's Smokehouse in Morrisville.  The event is a fundraiser for USToo Prostate Cancer Education & Support and will feature LIVE music and award winning BBQ.  Additional information is available on the OpenBBQ/OpenJam 2007 website.

Here's the oBoJ story taken from their website:

"A few years ago, a couple of local sysadmins, Matt Frye and Stan Briggs, music and beer lovers, and fans of BBQ, had an idea. The idea was to gather local user groups for a BBQ, a social event, that wasn't about technology; an event where everyone could be themselves and hang out without bickering about operating systems, editors, and other minutiae. Those first few events went pretty good and a good time was had by all.

Fast forward to a few years later, openBBQ/OpenJam isn't just about music, food, and a good time, but also raising money for worthy causes. "

I don't know about you but I'm planning on enjoying some BBQ and music this weekend and supporting a worthy cause!

Posted On Tuesday, June 5, 2007 10:06 AM | Comments (0)
Master Pages 101: Using VB 2005 to Work With Event Firing Order

Master pages and the content pages based on them share a number of events and it's important to know the order in which those events fire. Here is a list of the events in their firing order.

Content Page Pre Initializes

Master Page Child Controls Initialize

Content Page Child Controls Initialize

The Master Page initializes

The Content Page initializes

The Content Page Initialize Complete

Content Page Pre Loads

Content Page Loads

Master Page Loads

Master Page Child Controls Load

Content Page Child Controls Load

Content Page Load Complete

Knowing when these events fire is important because there are things you can only do at certain times in the page creation process. For example, take a look at the following code:

    Protected Sub Page_PreInit(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.PreInit
        Me.MasterPageFile = "MasterPage3.master"
    End Sub

This code programmatically assigns the master page to be used to construct the content page. Obviously this needs to happen very early in the page creation process and that's why it's in the Page_PreInit.

Posted On Monday, June 4, 2007 10:51 PM | Comments (0)
The Motorola Q Remains!

I've decided the Mototorla Q is going to fit my needs quite nicely. I like being able to work with it one-handed, the speaker phone worked very well on a long road trip I recently took, battery life hasn't been a problem yet, and since I got the black one, it makes me look cool. Ok, well, not so much. :-)

Posted On Monday, June 4, 2007 9:54 AM | Comments (0)
Master Pages 101: Using VB 2005 to Access Master Page ASP.NET Controls From a Content Page

One of the best features added to ASP.NET 2.0 was the inclusion of Master Pages. Master Pages provide a template to base web forms on. A Master Page can include HTML elements and ASP.NET 2.0 controls. There may be times when you want to access one or more of the ASP.NET 2.0 controls in a Master Page from a content page created from it. There are two approaches, a strongly typed approach and a not strongly typed approach.

Before we can go any further you need  to learn a little about the Master object. The Master object provides a programatic reference to the Master Page from a content page.

For example, this content page LoadComplete event handler will programmatically assign a value to the page title.

Protected Sub Page_LoadComplete(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.LoadComplete
Master.Page.Title = "This page generated on: " + DateTime.Now.ToString End Sub

Now that you know a little about the Master object we can move on to referencing master page ASP.NET 2.0 controls. I'll start with the not strongly typed approach. The following line, used in a content page's Page_LoadComplete event handler for example, will assign the text for a label control (lblDateTime) located on the content page with the text from a TextBox (txtDateTime) control located on the Master Page.

Protected Sub Page_LoadComplete(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.LoadComplete
Me.lblDateTime.Text = CType(Master.FindControl("txtDateTime"),TextBox).Text End Sub

The strongly typed approach uses a master page property to provide a reference the master page control.

Partial Class MasterPage
Inherits System.Web.UI.MasterPage
Public Property DateTextBox() As TextBox
Return Me.txtDateTime
End Get
Set(ByVal value As TextBox)
txtDateTime = value
End Set
End Property
End Class

With this property in place on the master page, referencing the txtDateTime textbox from the content page is done simply by accessing the DateTextBox master page property.

Protected Sub Page_LoadComplete(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.LoadComplete
Me.lblDateTime.Text = Master.DateTextBox.Text

Me.lblDateTime.Text = CType(Master.FindControl("txtDateTime"),TextBox).Text End Sub

The code above shows both methods being demonstrated.  As with most things in .NET, there is more that one way to accomplish the task. Which approach is better? Although it takes a bit more work to initially set up, I like the strongly typed, master page property approach because it works very well with intelisense.

Posted On Monday, June 4, 2007 9:50 AM | Comments (5)