There's a lot of buzz in the development community about LINQ in general, and for those that do data access just as much buzz about Linq to SQL. It's hard to describe in a sentence, but think of LINQ as a way to write queries against .Net objects using an almost TSQL syntax. Linq to SQL uses that same slightly different syntax to access SQL Server, but it does so by building an object layer (think of ORM) that hides the data access. For those of you that are DBA's, the first thing to know is that nothing changes server side, Linq to SQL still emits the same TSQL we know and love!
I've done enough development to appreciate encapsulation and to realize that writing a lot of the data access code is drudgery. Linq eliminates some of that and makes data access more object oriented, but I think it contains a couple serious flaws and one fixable flaw:
The good news is that with coaching we can make it work and let the developers keep most of the cool new stuff.
I too am uneasy about Linq to SQL, and in particular about the short-shrift that stored procedures and table UDFs seem to be receiving. I'm old-school, perhaps; I have come to believe that anything the back end can do, the back end should do.
I'll keep learning it, but I'll fill the perceived gap by placing my focus on using sprocs and udfs with Linq.
Arthur