SQL Server Central is supported by Red Gate Software Ltd.
 
Log in  ::  Register  ::  Not logged in
Search:  
 
 

It Depends

Add to Technorati Favorites Add to Google
Browse by Tag : SQL Server,Code Camp (RSS)

More Thoughts on LINQ to SQL

By Andy Warren in It Depends | 03-27-2008 1:32 AM | Categories: Filed under: , ,
Rating: (not yet rated) Rate this |  Discuss | 1,573 Reads | 189 Reads in Last 30 Days |no comments

At the recent Orlando Code Camp I had the opportunity to spend a good bit of time discussing LINQ to SQL with Jim Wooley, author of Linq In Action. It was really an interesting conversation. Clearly Jim likes LINQ and sees some opportunities there for developers. As we discussed it more a couple interesting ideas came up. One was that he suggested using table valued functions (essentially parameterized views) as a way to avoid granting table access for LINQ use. Interesting, but not my favorite technique because; one, functions don't always thrill me with performance, and two, it's a hack! It's actually a useable idea, but I think it definitely steps us in a direction I'm not sure I agree with.

I've taken it for granted that everyone understood that allowing full table access is a really bad idea from a security perspective. Should we rethink that? If I can call a proc and pass an employeeid, nothing stops me from writing a loop and calling the proc a thousand times to achieve the same results, right? It's just not as easy and I think that's part of the value. DBA's, if you really step back from this issue and look at it, if - big IF - they could save 10% coding time moving to LINQ is it worth the risk to the business, and is it real risk or just our perception? 

Another part of the conversation was me wanting to know why developers find LINQ to SQL so seductive and his answer (and I think he's right), is that developers see data access code as dull and they just don't want to do it. Strikes me as a little lazy! I wish I could only work on the cool stuff! Combine that with a lot of the friction that has developed between developer/DBA over the years and they are all to ready to do an end run whether it's a good idea or not. I've got to work on this some more, but I think that attitude/perception combined with a lack of helper tools has lead us to this place.

My final thought/worry is that MS itself is going to relegate stored procs to the backseat and the developers will follow. The optimistic thought is that they see something in it that we don't yet, the pessimistic thought is that they've given up on developers and data access and are trying to seduce them into tools that at least do a mininum level of decent data access. 

Anyway, if you need a LINQ book buy Jim's, he's a smart guy and a nice guy, and was kind enough to help me explore some thoughts on Linq - even if we didn't always agree!


Orlando Code Code Follow Up

By Andy Warren in It Depends | 03-24-2008 1:02 AM | Categories: Filed under: , , ,
Rating: (not yet rated) Rate this |  Discuss | 1,238 Reads | 207 Reads in Last 30 Days |no comments

Although attendance was down this year (around 280 attendees) due to it being held Easter weekend, I thought this was easily the best of the Orlando Code Camps so far. More volunteers, better logistics, and definitely a great site (same as we used for SQLSaturday#1 in Orlando) all combined to make it a first class event. Kudos to ONETUG leader Shawn Weisfeld, Jessica Sterner, Fabio Honigmann, and the rest of the volunteers for doing great work and providing a terrific service to the community.

Saw a lot of old friends and made some new ones, too numerous to list but here are a few; Roy Lawson (Lakeland .Net Users Group), Kathy Malone (great talk about organizing and sustaining community events), John Pharris from Comsys, Jack Corbett, Ryan Dorrell from Agilethought in Tampa, Jim Wooley (Linqman and part of the Atlanta .Net Group), Michael Webb from Cybreze (DNN master), Diego Samuilov, Wes Dumey, former student Jeff Mullen, upcoming student Cassandry Nealy.

As always, I pay a lot of attention to logistics, looking for ideas that will help make the SQLSaturday format more successful (and which we share back with ONETUG), so here are the ones from this time:

  • The day started a bit weird because the security guard had instructions that no extension cords could be used. The facility has no wall or floor outlets in the sponsor area. Finally had to get the facility manager to come to the site who insisted on the rule, after more discussion the head of maintenance arrived and clarified what would work (a mininum number of cords, all tied off and taped down, and surge protectors used. The facility also decreed that we could not use blue painters tape to affix stuff to the wall. After some heated discussion they agreed that we could use the gummy tack strips. As it's the third time that we've used the facility for a community related event you would think all of this would have materialized sooner; the impression we get is the facility manager sees her job as protecting the facility at all costs, even if that means no one uses it! Not sure what the lesson is, but the ideal is to have the site sponsor actively and happily involved whatever it takes, not get into an adversarial relationship...if you can help it!
  • Shawn came up with a great idea for managing books. Wrox, Apress, and MS Press have all been great community supports, there were easily over a 100 books to give away. At past events they have been raffled off at the end of the day, turning it into a 45 minute marathon that no one enjoys. Shawn gave each speaker 3 book tickets with instructions to give them away during their session using whatever criteria they wanted; best question, first arrival, etc. Winners took their ticket to the 'prize desk' to redeem their book. The tickets were for a specific book, I think it would have been slightly better if they could just choose from what was available. Totally a win though; good for attendees, and good for speakers too (though because the system was new, many speakers forgot to give them out until the end of the session)
  • There were a lot of other raffle items, I think we're all missing out by not advertising them on the event site in advance. Lots of software in addition to the books, and several more expensive prizes including the One Laptop Per Child laptop that we (End to End Training) provided.
  • There weren't enough sponsors on site. This was mostly attributed to some delays the event team ran into during planning, but it was definitely a missed opportunity, both for sponsors and for funding the event.
  • One nice thing they did was provide each sponsor (onsite or virtual) a box for their raffle tickets. All the vendors that weren't physically present were all set up on one table, attendees could just walk by and drop in their tickets. Very nice.
  • I'd like to see first time attendees identified - maybe a different color badge. I saw more than a few that looked a bit lost/overwhelmed/nervous, wouldn't be a bad idea to pair them up with someone.
  • Shirts for the event speakers and volunteers were green. Good enough shirts, they just didn't stand out from the crowd very well.
  • I'd also like to see the speakers more visible. Quite a few seemed to spend hours in the speaker ready room working on their presentations. I think they are missing out on a great chance to interact more, and presentations written an hour before delivery often aren't the greatest. Maybe a speaker table in the main lobby where every speaker has to do 30 minutes, just answer questions, etc, would be a nice way to give them more visibility without making it a hardship.
  • Even with the books gone the raffle at the end of the day went slowly. Many of the software sponsors were giving away 5 or 10 licenses, takes time and strangely enough, just trying to pronounce the names of the winner often slows people down. Might be useful to give everyone an attendee id so that someone can yell #177 instead of trying to say a very complicated name. Also need a better system to track winners; easy if they can collect right then, but many of the prizes require that the email address be sent to the vendor so the key can be sent back. In particular we did a bad job of this at SQLSaturday Orlando.
  • The event finished up a little earlier than expected, about 5;15, and the after party was due to start at 6:30 with the food not available until 7. As you might expect this really lowered attendance, when I left about 7:15 there were perhaps 20 attendees there, primarily volunteers and speakers. The after event needs to be immediately after or it's not going to succeed as while as it might.

Great event, and some of the conversations helped me better form a couple ideas that I've been working on, will try to blog in more detail later this week.