<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
		>
<channel>
	<title>Comments on: Who Should Write Database Code?</title>
	<atom:link href="http://robboek.com/2009/03/20/who-should-write-database-code/feed/" rel="self" type="application/rss+xml" />
	<link>http://robboek.com/2009/03/20/who-should-write-database-code/</link>
	<description>Husband, Father, SQL Server Consultant, Tech Geek.</description>
	<lastBuildDate>Sat, 19 Jun 2010 09:09:55 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
		<item>
		<title>By: Atif Shehzad</title>
		<link>http://robboek.com/2009/03/20/who-should-write-database-code/comment-page-1/#comment-2278</link>
		<dc:creator>Atif Shehzad</dc:creator>
		<pubDate>Wed, 18 Nov 2009 15:51:54 +0000</pubDate>
		<guid isPermaLink="false">http://robboek.com/2009/03/20/who-should-write-database-code/#comment-2278</guid>
		<description>I found it not efficient to let the developers code for DB objects. Functions and procedures with simple logic and with less pitfalls should be coded by developers, and DBA should take a look for optimization, before running on production server. And critical/complicated objects should be coded by DBA. I think it is a very plus point for DBA to be capable of optimized coding the required objects.</description>
		<content:encoded><![CDATA[<p>I found it not efficient to let the developers code for DB objects. Functions and procedures with simple logic and with less pitfalls should be coded by developers, and DBA should take a look for optimization, before running on production server. And critical/complicated objects should be coded by DBA. I think it is a very plus point for DBA to be capable of optimized coding the required objects.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Stewart Blacklock</title>
		<link>http://robboek.com/2009/03/20/who-should-write-database-code/comment-page-1/#comment-596</link>
		<dc:creator>Stewart Blacklock</dc:creator>
		<pubDate>Tue, 24 Mar 2009 14:57:14 +0000</pubDate>
		<guid isPermaLink="false">http://robboek.com/2009/03/20/who-should-write-database-code/#comment-596</guid>
		<description>Rob - The environment I learned and went from an application developer to an experienced database developer was a partnership.  Application developers would write their SQL.  The Application DBA would monitor production queries and would find problem ones.  As he found bad queries, he would point out the issues to the developer and help them improve the queries.  Expectation is that application developers would improve over time (which did occur)
Yes - this meant that production always had a few issues and their always is an element of rework, but it was much more scalable than having the DBA having to write them all by scratch.  
On my current project we do something similar where I&#039;m now the mentor.  We are finding stored procedures that take 30 minutes...that I&#039;ve been able to re-write down to 1-3 seconds.  If I just do the re-writes though, next code that comes along will have problems...so I have to force myself to step back and get the team to understand how to do things better themselves.</description>
		<content:encoded><![CDATA[<p>Rob &#8211; The environment I learned and went from an application developer to an experienced database developer was a partnership.  Application developers would write their SQL.  The Application DBA would monitor production queries and would find problem ones.  As he found bad queries, he would point out the issues to the developer and help them improve the queries.  Expectation is that application developers would improve over time (which did occur)<br />
Yes &#8211; this meant that production always had a few issues and their always is an element of rework, but it was much more scalable than having the DBA having to write them all by scratch.<br />
On my current project we do something similar where I&#8217;m now the mentor.  We are finding stored procedures that take 30 minutes&#8230;that I&#8217;ve been able to re-write down to 1-3 seconds.  If I just do the re-writes though, next code that comes along will have problems&#8230;so I have to force myself to step back and get the team to understand how to do things better themselves.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Sankar Reddy</title>
		<link>http://robboek.com/2009/03/20/who-should-write-database-code/comment-page-1/#comment-565</link>
		<dc:creator>Sankar Reddy</dc:creator>
		<pubDate>Mon, 23 Mar 2009 04:36:41 +0000</pubDate>
		<guid isPermaLink="false">http://robboek.com/2009/03/20/who-should-write-database-code/#comment-565</guid>
		<description>Over the years I have seen horrible practices not only by application developers but by some experienced (over 12+ years) database developers too. It comes down to who has better understanding of database concepts than just a title of database developer/dba. 

The other issue we see is, corporations tend to throw hardware on a problem that could be fixed by carefully choosing the resources, spending more time during the recruitment process.

Sharing some horrible experiences.
1) Storing int values in varchar (7). After 4 years and building 5-8 different systems on top of this data model and running of loan numbers after 9.9 million,  this system was scrapped to for a better model. There were other reasons also to move to a better model.
2)  One table had 3 separate triggers, few of them calling cursors which had business logic per state and this code was called repeatedly.
3)  64 bit, 32 Gig, 8 core box with 40 Gigs of data runs with 60-80% cpu usage. 90 % of the tables were fragmented with over 70-100% fragmentation.
4) Defragmenting indexes once a month or still stopping the whole enterprise for 2-3 hours to defragment indexes on SQL 2K5 box. Online Indexing for them is considered bad or less efficient.
5) Performance Tuning means dropping &amp; re-creating the SP after every 30/60 minutes.
6) Its not important to run dbcc checkdb; it takes 8-10 hours and we don&#039;t have time is their comment. These guys should get a whipping from Paul Randal.
7) Updating statistics manually is considered bad practice.

The problem is some corporations don&#039;t employ a (good) database architect and these so called experienced database developers/dba&#039;s were hired by managers who had little knowledge of dbms systems. Corporations should spend more time at the recruitment process to filter out people like them who boast themselves as gurus. I was called bad sport for calling out issues like above. And my colleagues didn&#039;t talk with me for several months until they were shown the door.</description>
		<content:encoded><![CDATA[<p>Over the years I have seen horrible practices not only by application developers but by some experienced (over 12+ years) database developers too. It comes down to who has better understanding of database concepts than just a title of database developer/dba. </p>
<p>The other issue we see is, corporations tend to throw hardware on a problem that could be fixed by carefully choosing the resources, spending more time during the recruitment process.</p>
<p>Sharing some horrible experiences.<br />
1) Storing int values in varchar (7). After 4 years and building 5-8 different systems on top of this data model and running of loan numbers after 9.9 million,  this system was scrapped to for a better model. There were other reasons also to move to a better model.<br />
2)  One table had 3 separate triggers, few of them calling cursors which had business logic per state and this code was called repeatedly.<br />
3)  64 bit, 32 Gig, 8 core box with 40 Gigs of data runs with 60-80% cpu usage. 90 % of the tables were fragmented with over 70-100% fragmentation.<br />
4) Defragmenting indexes once a month or still stopping the whole enterprise for 2-3 hours to defragment indexes on SQL 2K5 box. Online Indexing for them is considered bad or less efficient.<br />
5) Performance Tuning means dropping &amp; re-creating the SP after every 30/60 minutes.<br />
6) Its not important to run dbcc checkdb; it takes 8-10 hours and we don&#8217;t have time is their comment. These guys should get a whipping from Paul Randal.<br />
7) Updating statistics manually is considered bad practice.</p>
<p>The problem is some corporations don&#8217;t employ a (good) database architect and these so called experienced database developers/dba&#8217;s were hired by managers who had little knowledge of dbms systems. Corporations should spend more time at the recruitment process to filter out people like them who boast themselves as gurus. I was called bad sport for calling out issues like above. And my colleagues didn&#8217;t talk with me for several months until they were shown the door.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Jeremiah Peschka</title>
		<link>http://robboek.com/2009/03/20/who-should-write-database-code/comment-page-1/#comment-553</link>
		<dc:creator>Jeremiah Peschka</dc:creator>
		<pubDate>Sun, 22 Mar 2009 14:50:02 +0000</pubDate>
		<guid isPermaLink="false">http://robboek.com/2009/03/20/who-should-write-database-code/#comment-553</guid>
		<description>Personally, I think that a specialized Database Developer should be handling the job if scalability or performance are at all concerns. Why? Well, for starters, I am one. 

Besides a shameless personal plug, I also think that a dedicated database developer is generally going to understand the data that is present in any given application and will also understand the business requirements of the application developers and can usually work with them to create a quick, scalable data access plan that is flexible enough to meet their needs while still staying performant.</description>
		<content:encoded><![CDATA[<p>Personally, I think that a specialized Database Developer should be handling the job if scalability or performance are at all concerns. Why? Well, for starters, I am one. </p>
<p>Besides a shameless personal plug, I also think that a dedicated database developer is generally going to understand the data that is present in any given application and will also understand the business requirements of the application developers and can usually work with them to create a quick, scalable data access plan that is flexible enough to meet their needs while still staying performant.</p>
]]></content:encoded>
	</item>
</channel>
</rss>
