Nearly any SQL topic presented at times in a slightly eclectic manner.

Do we need a SQL Developer-only certification exam?

Recently Oracle announced a new certification - a "SQL Expert". The target of that certification is for developers that write a significant amount of SQL, but aren't "database developers" (something I'm finding more and more common these days). I guess the idea is that it pushes developers to be sure that if they do write SQL, it's at least good SQL.

How many times have you run across SELECT *, or copious dynamic SQL, or poorly structured SARGs? I do all the time, and in the MS world it feels like it is getting worse, not better. Since everything revolves around data, I'm wondering if some sort of core TS exam like this should be required not just for the DBAs and database developers (man, we really need better names for what we do), but also the MSPD certification. It feels like really understanding SQL is becoming a "nice to have" for a VB/C# whatever developer, not a "must have". I see it in job postings as well.

I think (gulp), Oracle has the right idea with this certification. Personally I'd urge MS to do the same. Thoughts?

Comments

Ehh, if someone is writing production SQL it won't hurt to know everything on the database developer tests. It is up to companies to require good code and hire people with the knowledge. I don't think most rely on certs anymore. That may be why MS is coming out with MCA and MCM training\lab\test based certs.

I think that such an educational endeavour is necessary, especially for those involved in small projects or working for small companies. Often enough, small software shops do not hire a database professional. The developers have to design the database and write C# / VB code and TSQL code and even be "part time DBAs". However the trainers should insist that working with relational data requires a different "frame of mind" (---> "thinking in sets"). Besides TSQL, maybe an introduction to database design and even data modeling would be OK?

Indeed many companies do not trust certification (at least MS certifications...). There are people who are able to learn how to use a MS product and to pass a MS exam with almost no working experience - one of my colleagues used to call them "fake MCPs"...:)

I do mean a more basic SQL exam rather than the MCITP exams for Database Developer - something directed more to those that write SQL either out of raw need or because a database "expert" is considered unneeded. A little on set-based logic, the language itself, what makes a good query from a bad one, that kind of thing.

David:

LINQ is one of the reasons I think this is a critical idea we in the database community need to push. Don't get me wrong, I'm sold on LINQ - it has great functionality. However, LINQ to SQL is, for the most part, ad-hoc SQL. I would encourage developers to avoid it if they don't understand SQL itself. Yes, LINQ does some optimization on things, but I've seen bad LINQ code cripple a database already, and it hasn't eeven been out there a year!

Actually James, I think this is all good. It shows that SQL Server is growing up as a product. Oracle has always had its sub-streams of personnel, very distinct and SQL Server has had very blurred edges.

As the product gets more mature and established the need for a DBA, a Developer/Architect and Power Users are becoming more standard to increase quality and consistency.

Also because of the BI growth you get more personnel using SQL as a querying tool, getting data from the data warehouses.

I just hope Microsoft realise this growth and cut back on the 2 year release cycle, companies cannot upgrade or patch databases without major testing as their systems are critical. They could alienate their user base with too many methods/differences between versions.

"I'm sold on LINQ - it has great functionality. However, LINQ to SQL is, for the most part,ad-hoc SQL. I would encourage developers to avoid it if they don't understand SQL itself."

I'd bet no one at MS would agree with you. For those that don't understand sql, LINQ 'is' the intended answer. There's plenty of discussion of LINQ functionality but very little discussion of

what LINQ (to sql)/entity framework is. LINQ is discussed as if it were a neutral technology, a neutral perspective. That's nonsense. It is, among other things, a reaction against sql. It's a rejection of sql and implicity or explicitly, depending how you look at it, of everything relational. That no one in the MS loop wants to take responsibity for such a volatile position does not make it any less so. Show me a MS pm who's an sql evangelist,vis a vis application development, and I'll show you someone who's going to have a short stay. While sql server is in, sql is out. There will be causalities in this war. But apparently MS feels they will be acceptable:)

I agree with you - there is definitely a faction of MS that is pushing LINQ as a cureall. I see it as a great tool, but not a cureall - I really believe that the concept of a turnkey solution for anything is a pipe-dream. Good point.

June 13, 2008 8:52 AM

Leave a Comment

About James Luetkehoelter

I am passionate about what I do - which is DBA, development, IT and IT business consulting. If you don't know me, haven't met me or have never heard me speak, I'm a little on the eccentric side. One attendee recently described me as being "over the top". Yup, that about says it - because I only speak on topics that I'm passionate about.