# Thursday, April 13, 2006
Obfuscation, IT Governance and Enterprise Risk Management

There’s a free webcast coming up that you should know about titled “Obfuscation, IT Governance and Enterprise Risk Management”. It’s being hosted by PreEmptive Solutions – the creators of Dotfuscator. They know just a bit about the topic so it should be worth hearing.

 

Event: Obfuscation, IT Governance and Enterprise Risk Management  

Date and Time: Monday, April 24, 2006 1:00 pm Eastern time zone

Duration: 30 minutes

Description: Attendees will leave with a clear understanding of the role of obfuscation as an effective control for application security, access control, IP protection in the context of broader IT governance and enterprise risk management frameworks.


Utilities
Thursday, April 13, 2006 12:00:11 AM (GMT Standard Time, UTC+00:00)  #  Comments [0] 

# Wednesday, April 05, 2006
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.


Speaking
Wednesday, April 05, 2006 3:53:14 PM (GMT Standard Time, UTC+00:00)  #  Comments [0] 

# Monday, March 20, 2006
Scott Hanselman raising money to fight Diabetes.

Diabetes is a topic near and dear to my heart. I have had close family suffer from it and a few pass away because of it. In fact, I’m a high risk, due to family genetics, of developing Adult Onset Diabetes (Type II) as both of my uncles on my mother’s side developed diabetes in their 40s. My grandmother and several of her brothers and sisters are also suffering from it as well.

 

 

All that being said – Scott Hanselman (http://www.hanselman.com/blog/TeamHanselmanAndDiabetesWalk2006.aspx) is walking to raise money for the fight against Diabetes.

 

 

Please visit and see if you can help out this very worth cause that definitely affects someone that you know. 



Monday, March 20, 2006 3:00:46 PM (GMT Standard Time, UTC+00:00)  #  Comments [0] 

# Wednesday, March 15, 2006
More adventures with SQL Server Express

This was fun. It’s a completely different database and set of circumstances than last night's fun and frivolity.

I finished an application, zipped up the folders and sent it off to a client. In this application there is a desktop app that talks to a web service that talks to a SQL Server 2005 Express database. Sounds fairly simple, right? Right.

Well, the client unzips it all to a directory, sets up the virtual application for the web service and starts trying to run the desktop portion. It starts up, pulls up all of the lookups that we have in the database and it all looks good. Now, I’m on the phone and elated at how smooth this is going. At this point, the client tries to create a new record which is going well (wow, even a little drop down calendar and oooh look at that, it’s all of the types of records that I could create so I don’t have to type there… wow… and more gushing) until they try to save… At this point, there is a wonderful error that pops up –

“Failed to update database ‘database name.mdf’ because the database is read-only.”

Crud! After getting them to check the file properties and other such things, I called Patrick Steele, who has been working with me on this project, to see what he thought about it. It’s been a long day, especially after last night’s SQL Server Express issues, so I’m not thinking all that clearly. Patrick, after running through some of the same questions that I had so I’m feeling a little better about my thinking, has the thought that it might be a security issue and that the ASPNET user might not have permissions to write to that directory. Sure enough, since the ASPNET user doesn’t have permissions the database loads in read-only mode. Fix that and the database and the app work just fine.


Development | SQL Server
Wednesday, March 15, 2006 2:11:56 AM (GMT Standard Time, UTC+00:00)  #  Comments [0] 

# Tuesday, March 14, 2006
SQL Server 2005 Express Issues

Yesterday I had to make a quick change to a SQL Server 2005 Express database that I'm using for an internal to SRT Solutions tool. I decided that the easiest way to do it was to leverage the auto-connect feature of SQL Server 2005 Express by just FTPing the mdb down, making my change and ftping it back up. This has worked a number of times in the past. Not this time. I got a "login failed for user 'USERNAME'" when I tried to run the application. That was infuriating. I spent the next 4 hours or so working with the SQL Server Management Studio Express (Enterprise Manager lite for Express) assigning, unassigning permissions, users, attaching, detaching, backing up, restoring and everything else that I knew to do. I kept getting "User could not login to user's default database" and general login failures. My personal favorite that I saw yesterday was “Could not attach, DatabaseName is not a primary database file. (Microsoft SQL Server, Error: 5171)”. Now, I'm usually pretty good with googling the answers, but this time I'm really coming up short.

All of this is proving to me that I’m a programmer, not an administrator. I’m digging the new functionality in SQL Server 2005 but I’m not going to be the one to administer the databases that I write code for.

Long story short – I raised the white flag. I IMed Jason Follas and asked him if he knew what was going on. He figured out that it had something to do with the master file that SQL Express was using for the auto-connect. He found this forum topic. Here’s the relevant snippet:

“When you first run SSE this way, it makes a local copy of master etc. in C:\Documents and Settings\<your user account name>\Local Settings\Application Data\Microsoft\Microsoft SQL Server Data\SQLEXPRESS.  That's why it's so slow the very first time it loads under a new user profile.  It may even timeout the first time you ever use it under a given profile.

Based on your description, it's very possible something went bad in those files for some reason.  So, I would first make a backup and then delete the SQLExpress directory under C:\Documents and Settings\<your user account name>\Local Settings\Application Data\Microsoft\Microsoft SQL Server Data.  That will get rid of the local copy of master, etc.  Then, reboot. ”

Well – Lance (the author of the post and author of SQL Server 2005 Express Edition Starter Kit) was absolutely right. I killed the master files (after copious backups) and rebooted the machine. It’s working like a champ now. On reboot, it regenerated the master files needed and started right up.

Thanks Lance and Jason


Development | SQL Server
Tuesday, March 14, 2006 2:07:29 PM (GMT Standard Time, UTC+00:00)  #  Comments [0] 

# Monday, March 13, 2006
Day of .NET Call for Abstracts
In case you missed it on Day of .NET's web site - the cutoff for the call for papers is this Wed.
Day of .NET
Monday, March 13, 2006 6:31:22 PM (GMT Standard Time, UTC+00:00)  #  Comments [0] 

New Day of .NET Logo

Day of .NET has a new logo thanks to Kerry Colligan.


Day of .NET
Monday, March 13, 2006 3:28:58 PM (GMT Standard Time, UTC+00:00)  #  Comments [0] 

Keith Elder, .NET Pimp

Keith Elder used to be one of the biggest PHP advocates around. Now, he runs a site called http://www.dotnetpimps.net where he is the foremost .NET Pimp. He pointed out on his blog that he’s put up and article on why he made the conversion. More at http://dotnetpimps.net/blogs/theelder/about.aspx.


Articles | Development
Monday, March 13, 2006 3:11:11 PM (GMT Standard Time, UTC+00:00)  #  Comments [0] 

# Friday, March 10, 2006
TechEd

Check out TechEdBloggers.net



Friday, March 10, 2006 2:48:21 PM (GMT Standard Time, UTC+00:00)  #  Comments [0] 

# Wednesday, March 08, 2006
Quality Code at AADND tonight

Patrick Steele is doing the tutorial session on NUnit and how it works.

Dave Donaldson doing the main session and is talking about writing quality software with VSTS.


User Groups
Wednesday, March 08, 2006 5:18:32 PM (GMT Standard Time, UTC+00:00)  #  Comments [0]