Thursday, October 16, 2008

A huge thank you to everyone who voted for Scrumr in the Community Coding Contest-- were #2 by two votes.  The #1 project was CCConfig, and given the growing interest in agile development methodologies, we're humbled but not terribly surprised to see two agile projects at the top.

Two other projects which deserve mentioning are the Active Directory Roles Provider and aspNETserve, both of which may play a role in future development of Scrumr.  The AD Roles Provider hooks ASP.NET membership into AD groups, making roles administration part of the AD environment--definitely a plus in some corporate environments.  aspNETserve would allow Scrumr to be run locally on a machine without IIS installed.  Potentially, with SQL Server Express as the datastore, this could be used to make Scrumr as portable thumbdrive app, too (just like ScrewTurn Wiki).

And a very, very huge thank you to Chris Pietschmann, the MS MVP who had the cool idea of a contest to give away the MSDN subscriptions.  Thanks, Chris, hope you decide to do it again next year!

Thursday, October 16, 2008 2:56:50 PM (Eastern Standard Time, UTC-05:00)
 Wednesday, October 15, 2008

Coming soon to Pittsburgh:

When it comes to design patterns, the MVC is the granddaddy of them all.  First described in the late 70s, the MVC pattern remains very popular in the world of web applications today. ASP.NET MVC provides a framework that enables you to easily implement the model-view-controller (MVC) pattern for Web applications. This pattern lets you separate applications into loosely coupled, pluggable components for application design, processing logic, and display.

Throughout the day we will be demonstrating the ASP.NET MVC Framework in a cookbook-style approach with recipes on how to solve common challenges when developing MVC web applications. No previous knowledge or experience is necessary. We will walk you through the basics on creating views and controllers and by the end of the day show you how to develop end-to-end MVC applications complete with ajax, authentication, authorization, caching, databinding, logging, persistence, validation, and other common challenges we experience in day-to-day development.

Sample code will leverage and integrate popular frameworks and libraries like ADO.NET Data Services, ASP.NET AJAX, ASP.NET Dynamic Data, Enterprise Library, Entity Framework, and LINQ To SQL to show you how to write less code and be more productive during your development.

Polish it all off with examples showing the extensibility of the MVC Framework using custom controller factories, alternative view engines, and custom action filter attributes just to name a few.

Topics covered will include “How Do I...”

- Create Views Easily? ( HTML and Url Helpers )
- Handle Get and Post Requests? ( simple databinding of action method arguments, ActionResults, etc.. )
- Pass Data Between Views and Controllers? ( ViewData and TempData )
- Bind Views and Forms to complex data types? ( ModelBinders )
- Handle Errors Gracefully? ( ActionFilter Attributes )
- Provide Input Error Validation? ( ValidationMessage, ValidationSummary, ViewData.ModelState )
- Handle Authentication and Authorization? ( ActionFilter Attributes and Membership Provider )
- Persist to a database ( LINQ To SQL, Entity Framework )
- Log Messages to Database, File, EventLog ( ActionFilter Attributes, etc. )
- Leverage AJAX and JSON? ( ASP.NET AJAX and jQuery )

Some of the more complex and non-beginner topics can be discussed if time is allowed and/or maybe discussed afterwards in a social environs…

- Alternate View Engines
- IoC and Custom Controller Factories
- Unit Testing

Bring your USB Flash Drive to grab the sample code and begin developing ASP.NET MVC Web Applications today!

Register online at http://msevents.microsoft.com/CUI/EventDetail.aspx?EventID=1032392363&culture=en-US.

Wednesday, October 15, 2008 10:57:31 AM (Eastern Standard Time, UTC-05:00)
 Monday, October 13, 2008

Post-talk update

There are two corrections to my talk in the comments.  I missed assigning the DataLoadOptions to my DataContext object in my sample code.  Also, I said last night that the ConnectionTimeout is assigned to the DataLoadOptions--I totally lost my head on that one.  The ConnectionTimeout is a property of the DataContext object.  Sorry for any confusion.

I'll have updated slides and sample posted here shortly (I'll leave a note when I do), and I'll send the corrected samples to Dave to be posted at the Pgh .NET site.

Original post...

I'm speaking at the Pittsburgh .NET User Group tomorrow (Oct 14, 2008) on Linq to SQL and Linq to XML.

In the ZIP file is the presentation (PDF), sample XML file and complete source code for my presentation.  Unzip the file, and place the XML at c:\xml.  Create a sample database using the script in the project, and update the connection string.  There are four methods you can call, demonstrating the different techniques I'll be covering.

Download the presentation and code sample.

Also, in case you haven't yet voted, please vote for Scrumr.  We're working on this in our spare time, and could use the tools to make better software.

Monday, October 13, 2008 9:37:05 PM (Eastern Standard Time, UTC-05:00)
 Tuesday, September 16, 2008

I'm headed to DevTeach Montreal!  It was DevTeach or PDC, and I liked the sessions at DevTeach better.  If you're attending also, drop a line.

Tuesday, September 16, 2008 9:01:38 PM (Eastern Standard Time, UTC-05:00)
 Saturday, September 13, 2008

I'll be speaking at the Pgh Dot Net user group on October 14!  The talk will be based on my recently published Easy XML to SQL Using Linq article.  I'll have a download available prior to the talk, so you can bring a laptop and follow along.

Official announcement at http://pghdotnet.agileways.com/forums/t/9.aspx.

Saturday, September 13, 2008 10:55:11 PM (Eastern Standard Time, UTC-05:00)
 Wednesday, September 10, 2008

Not sure how this one slid by me, but the MSDN Developer Freedom Roadshow is coming to Pittsburgh on September 19, 2008.  Since it’s being held at the MS offices, registration is limited to capacity (roughly 4 dozen or so).  The program looks to be very interesting, especially the morning half:

The Fundamentals of Liberty: Web Development Basics

Want to take advantage of the cool stuff that you can do with ASP.NET, but not sure where to start? Whether you’re a Windows programmer who hasn’t ventured into the web world yet, or coming from classic ASP or similar scripting languages, this session is for you. In this session, we’ll provide an overview of the .NET framework’s powerful web development features, from ASP.NET and its Web Forms programming model, to basic web services, to give you a foundation you can use to jump-start your web development efforts.

The Framer’s Intentions: What’s New in .NET Framework 3.5 SP1 for Web Developers and ASP.NET MVC

In the first part of the session we will look into new features for web development that are introduced in the .NET framework 3.5 SP1 -- ADO.NET Entity Framework , ASP.NET Dynamic Data, and ADO.NET Data Services. In the second part, we will introduce the ASP.NET MVC framework, which enables you to easily implement the model-view-controller (MVC) pattern for Web applications. This pattern lets you separate applications into loosely coupled, pluggable components for application design, processing logic, and display. A key benefit of ASP.NET MVC applications it that they provide clean URIs that can also be accessed in a RESTful manner.

More information and sign up at http://msevents.microsoft.com/CUI/EventDetail.aspx?culture=en-US&EventID=1032388335

Wednesday, September 10, 2008 8:22:06 AM (Eastern Standard Time, UTC-05:00)