February 2005 Entries
Vacation Pictures
We've been on vacation this week. I've been taking pictures with my new camera phone. My moblog is at http://drewby.textamerica.com
Three Tips for Your First Presentation

Do you fear giving a presentation? I remember not too long ago when I would be required to give a five-minute presentation in front of a class. I thought the world would end. I don’t have what it takes to be a great presenter. That’s what I thought back then and I still struggle with that thought today.

I’ve been making technical presentations for about six years. I regularly present at regional conferences, user groups and companies in my region of the US. I generally get great feedback from audiences, but I’m always trying to improve.

Preparing for my first presentation in front of a large audience was a total disaster. Two days before the conference, we had to practice in front of the other speakers. I could not lift my eyes from the written speech I had in front of me – I read every word and I put three speakers to sleep within the first five minutes.

They stopped my practice session after fifteen minutes and the organizers talked about finding a last minute replacement speaker. My public speaking career all most ended before it began. Lucky for me, someone stepped up as my advocate, spent some time with me in the next 48 hours and I turned out to give one of the best presentations of that conference.

Maybe you are like me – you look at some of the great speakers in your industry and think you could never do that. You have some knowledge you want to share with the world, but you just don’t think you have what it takes. Here are three tips that might change your mind.

Practice speaking without reading.

The advocate I mentioned earlier made me go through the following exercise:

  1. Get someone else’s slide deck that has a topic in which you have expertise. Pick a slide deck that is not familiar to you (or do this with your first-look at a slide deck you will redeliver).
  2. Start at the first slide and spend 10 seconds absorbing the slide.
  3. Turn away and speak about the slide for a minute or so.
  4. Repeat this for each slide.

It is important that you only spend a short time (10-15 seconds) absorbing each slide. The idea is to teach your mind how to photograph the slide and then speak to the content without reading the slides or notes that you prepared. I spent a couple hours doing this before that first presentation that almost went bad. It is also helpful if you do this exercise with someone else, trading slides if that person is practicing too.

This doesn't mean you won't occasionally look at your slides during a presentation, but after some practice, you'll only need to look at them for a fraction of a second at a time.

Plan only the first five sentences of your presentation.

I believe that an audience will form their opinion about your presentation in the first five sentences. Their impression will usually not improve (it can degrade) after that point and they may shut you out if the impression is bad. I also think those first five sentences give you the momentum for the rest of your talk. Record your first five sentences and play it back – does it sound the way you want it to? Do you have energy in your voice? Will the audience know what you are about to share with them?

Unless you are giving a formal speech, do not write out or prepare the words and sentences for the rest of your presentation. Know the content and speak naturally.

Forget the technical terms.

I often get complements on my ability to explain technical concepts in simple terms. Here is what is really happening. When I get in front of an audience, I am very nervous. When I get nervous or anxious, I cannot recall many technical terms. It is so bad that it is almost embarrassing. Overtime, I have realized that this is one of my biggest assets  (I also learned to hide nervousness by standing tall and putting more air behind my voice).

There is no reason for you to use words like “Orthogonal” or “Semantic Dissonance” in front of an audience where only one or two people understand the meaning. If you want to connect with an audience and communicate your message, use terms that everyone can understand. You may come across the occasional bad evaluation from an “intellect” that wants you to use those terms. On behalf of the other 99% of the world, you have my permission to ignore them.

There are many tips you can pick up over time and improve your style and execution. These are three that I thought might help you get over that first hurdle of stepping in front of an audience and sharing whats in your brain. Good luck.

A West Coast Geek Dinner

I'm having a fun week out here in Redmond. On Tuesday night, I was able to attend the East Side Weblog Meetup organized by Anita Rowland. It was a lot of fun to finally be a part of something that I've observed from afar.

One of the coolest things was sitting across from Robert Scoble and between Lora Heiny and Betsy Aoki. Three famous names of people who turned out to breathe oxygen, eat regular food and, well, be normal! I witnessed Robert discover the crack in the bottom of his Tablet PC and heard about some of Betsy's experiences early-on working at Microsoft.

I also got the demonstration of ActiveWords from Buzz Bruggerman that Robert always raves about. It's a pretty cool product - amazing how quickly Buzz jumps around windows using ActiveWords.

If you are ever out in Redmond and have a chance to attend one of the meet-ups, the people are very nice, approachable and inclusive. You'll have a great time!

Day of .NET II Sold Out

Sometime during the early morning hours, the Day of .NET repeated event “sold out”. We're so excited about this in Columbus because it really shows the demand for .NET education and solutions in this region. 

We're already talking about another event with new content for next quarter. If you couldn't get registered in this round, keep your eyes and ears open for the event next quarter.

Is the Exception Handling Application Block a Security Risk?

Chris Kinsman made the following comment on my earlier post about the Exception Handling Application Block:

I also thought it was cool at first, however think about it. You are allowing external entities, i.e. end users, decide how errors should be handled in your code! Can you imagine the security holes this could open up? they can actually change the flow of execution, etc just by changing policies.

What do you think? Does the exception handling application block open security holes? What are the best practices for minimizing risk when using external policy files to define how we handle exceptions in our application?

Keynotes at Conferences
Why is it that keynotes at conferences are always twice as long as the individual sessions? It should be the other way around. If sessions are an hour and a half long, the keynote should be 45 mintes (one hour max). If you can't communicate the marketing message (keynotes are always marketing) in that period of time, your message is not concise and will not have an impact.
Security Application Block in Enterprise Library

The new Security Application Block in Enterprise Library provides a few advantages over the old application block. It looks like it will be a lot simpler to use. Notably, it no longer appears designed around Authorization Manager’s peculiarities. In fact, it comes with an authorization implementation that does not depend on Authorization Manager.

There are a few concepts to understand when using the Security Application Blocks:

  • Authentication
  • Authorization
  • Roles
  • Profiles

Every person or system that interacts with your application will claim to have some rights to perform certain actions. Authentication is the process of verifying that the person or system is truly the user they are claiming to be. Most systems authenticate users using a username and password combination.

After the user is authenticated, your application must determine what actions or operations the user is allowed to execute. This is called authorization and in Enterprise Library is role-based.

Roles are assigned to users to define how they will use the application. The authorization system can check the user’s assigned roles to determine what actions or operations the user is allowed to execute.

The Security Application Block also provides a facility for storing profile information for each user. A profile can consist of primitive values, serializable objects or a dictionary of primitive values and serializable objects.

One of the new things in the security block is a simple backend database to store user, role and profile information. This removes the dependency of having an Active Directory database and Authorization Manager installed. You can start from this simple database and then upgrade to AD an AzMan in production, if required.

One thing I could not find is the actual provider for Authenticating against Active Directory. It must be in there, right?