Speaking at VSLive Toronto 2006

VSLive Toronto Logo 

ASP.NET 2.0 Security Features
April 26th 10:30 a.m.
ASP.NET 2.0 raises the bar on web application security. From the new ViewState encryption mechanisms, to the new auditing and logging support, to the partially encrypted web.config files and more, there are a lot of new features in ASP.NET 2.0. In this session, we will look at many of the new features and show how you can leverage these to make your applications more secure. 

Managed Code in SQL
April 26th 2 p.m.
SQL Server 2005 will change the way that you architect your databases. Among the many enhancements to SQL Server for the 2005 version, one of the most anticipated and exciting features is the ability to run managed code within the SQL Server process. But how do you as a developer leverage this ability? There are many ways for you to leverage this new functionality from writing your triggers to writing your business logic in C# or VB.NET or even creating UDT (User Defined Types). Some of these features are more useful and practical than others. As the adage says, just because you can doesn’t mean that you should. It applies here because there are times that you should not use .NET to solve a problem that T-SQL solves better and vice-versa. In this session, we discuss how, why and (very importantly) when you would want to write managed code for SQL Server 2005. 

Thousands of Users, Personalized Service – Portals and Web Parts in ASP.NET 2.0
April 27th 11:45 a.m.
If you’ve used http://my.msn.com, you’ve wondered “How’d they do that?” Now you can do that too, through personalization with user controls and custom Web parts. This level of personal service and response has been the realm of a lot of custom code or SharePoint until now. The personalization is managed through a WebPartManager which controls any number of zones on the page. In your controls that reside in these zones, through the proper use of properties and attributes, you can have global settings, role-based settings and user-based settings or some combination of all three. Obviously, this could complicate your testing scenarios greatly so careful design and implementation are a necessity. In this session, we will create several custom Web parts, put them into a portal site and show how easily this site can be customized. In addition, we will look at some of the potential disasters and how you can avoid them.

ASP.NET DataBinding
April 27th  2 p.m.
Data Binding is an extremely useful feature of ASP.NET. While it has been around since the beginning of ASP.NET, it has received a lot of attention in ASP.NET 2.0. The DataGrid, yes – that control that we all know and love, has given way to new controls such as the GridView, DetailsView and FormView. There are many new sources to bind to including XML based data sources and more. Between the new data controls, the new functionality on data bound controls and the new declarative data controls; we can reduce the amount of code in your standard web applications tremendously while improving performance and stability. In this talk, we will investigate the new features of data binding and show how it can impact your development.

AACS Grok Talks Last Night

Last night’s Grok talks were a smashing hit! I was so happy with how everything went off. We had:

Jason Follas speaking on T-SQL Enhancements in Sql Server 2005 SQL CLR (Turns out Jason reads my blog and corrected me… :)). Jason is one of the local experts on SQL Server 2005 and ran through a quick preview of what his talk is going to be on at Day of .NET.

John Hopkins speaking on ADO.NET Table Adapters. He showed how much code you could save with careful use of the table adapters. It’s amazing how little control you are giving up for that much power.

Darrell Hawley speaking on role based authentication for web services. It was impressive that he got through that much code in that little time. He showed how to secure the web service with roles so that you could have no access, view access, edit access or add item access. All of this is very close to reality so it was, in addition to being entertaining, was very practical.

Bill Wagner talking about C# 3.0. As always, I learned something new when listening to Bill talk. He talked about the var keyword in C# 3.0 and explained how it’s actually a strongly type keyword, it’s just that the type is not known until compile time.

Aydin Akcasu talking about Kids Programming Language. This was a preview to his talk at Day of .NET. It was an exciting talk that got me excited about the possibilities that I could have with my son programming.

Martin Shoemaker talking about building speech and ink applications for the tablet. This was an interesting talk because Martin didn’t talk the whole time – his tablet did all the talking. While he didn’t show as much code as he might have in a traditional talk, he showed what was really possible.

Josh Holmes (me) talking about the ASP.NET 2.0 – Health Monitoring. I also MC’d the whole deal. That was fun! It was also a treat – I came in on time because I had a lot of people timing me that were under strict orders to pull the hook if I went over.

And finally

Carl Franklin of .NET Rocks talking about remote podcasting. This was fun because he was remote. He was tied into the PA system through a phone connection and VNC’d into Bill Wagner’s laptop so that he could do his presentation. There were a ton of moving parts, but it all went rather smoothly.

I’m hoping that we will repeat the Grok talk idea really soon. It was a ton of fun and the audience seemed to get a lot out of it.

Jennifer Marsman

I wanted to publically apologize to Jennifer Marsman for not mentioning her in the announcement to my new job. She is the Depth Developer Evangelist for the Heartland District. She deals with a lot of bigger accounts in the Heartland District and is a ton smarter than me, Drew Robbins and a lot of us other Breadth Evangelists…

For proof that she’s smarter – check out her patent:


Snippet Compiler

I’ve found this little tool invaluable. I use it to test out RegEx expressions, String Formatting and tons of other useful little bits of code.

I used to keep a dummy project around for this purpose, but it’s a pain to load VS.NET every time that you want to test a quick string formatting and it’s too painful to test to that location in your real application just to see if it worked and see what it does.

I hope that you enjoy it as much as I do.

Deployment issues with the Compact Framework v2.0… (Sorta)

I just tried to deploy an application to a customer’s PPC device and was very frustrated because the app looked like it installed and even put a shortcut in the “Program Files”. However, when I clicked on it, nothing happened. No error message, nothing. Just silence. Wow, that’s informative. The good news is that I called John Hopkins, one of my sub-contractors, and he asked something about the framework version and it hit us both – v2.0 of the Compact Framework was not on the device. Install it and it works great now… 🙂

The thing that made this blogworthy was the lack of error messages. That was the astounding thing. I’d expect some error message on install or something that would prompt me that I needed to install something else. Oh well. I guess that we can’t have everything. It’s a fabulous environment to develop in and is light years ahead of previous development environments so I’m grateful for that but it just points out this type of little inconstancy that much more.

New Career

After several good years working with SRT Solutions and the good people there (Bill Wagner and Dianne Marsh as business partners and John Hopkins, Patrick Steele, Darrell Hawley, Alex Gheith and Martin Shoemaker as sub-contractors) I’ve gotten an opportunity that I can’t pass up.


I am joining Microsoft as an Architect Evangelist.


I am not going to be moving from my happy home in Manchester, MI. My office will be in Southfield, MI and I will be covering the Heartland District (Michigan, Ohio, Kentucky and Tennessee). While Darryl Hogan and Jon Box are Depth Architect Evangelists, I’ll be a Breadth Architect Evangelist. What that means is that they will be spending a lot of time with a few clients while my focus is much broader and community based. As the title suggests, my job will be to meet with and evangelize to architects throughout the district. A large part of my job will be to cultivate the architectural community the way that Drew Robbins (Developer Evangelist for the Heartland District) does for developers.


I’m really looking forward to working with many of you through my work at Microsoft.