I'm making my first INETA speaking gig on Wed. Dec. 5th, up at the Rhode Island User Group. The topic will in LINQ (what else?)
An Intro to the One Query Syntax to Rule Them All – LINQ
An introduction to the new standard query syntax (LINQ) added to C# 3.0 and Visual Basic 9.0. LINQ is much more than just LINQ to SQL, and in this session we will dispel the belief that LINQ is LINQ to SQL (and that LINQ to SQL is evil). We will cover the basics of how to use LINQ with in memory collections, how to build your own query providers, and explore to 2 of the built in providers, LINQ to SQL and LINQ to XML.
The idea behind the talk is to give the anti-LINQ talk. Most LINQ discussions I've seen revolve around LINQ to SQL (as if it was the only LINQ query provider), with the occasional LINQ to XML and LINQ to Objects bit thrown in. In this one I've revamped my old LINQ talk. The old way was to talk about the language enhancements first, and then introduce LINQ to Objects/SQL/XML. Instead, I'll invert it, and lead with the syntax, then how them implemented it, and then the specific implementations, only covering the new language features as needed.. The inspiration was from Ian Cooper's Architecting LINQ to SQL applications, part 2 post. I really liked his "What Is LINQ" description. It said all the things I was trying to convey, just in a different order than what I've been using. I'll see how the audience takes to the new style. Oh, and I think the Southern New England SQL Server Users Group has also been invited, so I'm sure we will have a lively discussion about the merits of LINQ to SQL. We need to educate the SQL DBAs about the merits of ORMs (not so much about LINQ to SQL). I still believe that LINQ to SQL is just methadone for the Access developer. But, I've been trying to figure out how to use it in a maintainable fashion. There is a place for just about every technology. The key is to know when it is appropriate to use it.