Sql developer versus C#(.NET ) developer
I am not very well yet from my operation – so I can not write yet a tutorial.
But I want to propose you the following difference: Sql developer versus C# developer.
In my opinion , nowadays, if you program some application , you MUST have some database. More, the retrieving of data from the dtabase is a matter of relative speed to be seen by the user. So , for me, every .NET programmer should know about indexes / schema / foreign keys / users and so on. More, it has to know about connection pooling and stored procedures.
So, in my opinion , you can not be a .NET programmer without knowing much about databases.
What do you think, dear reader?
( This post is generated from a discussion in that the guy says that “I’m a C# developer, not a SQL developer.” and then leaving hints like “Any organization that follows a business practice of SQL users on databases needs to fire their DBA and find someone with the knowledge and foresight of how to scale security in db roles and filter the access through the domain admins (i.e., adding users to a user group in AD).” and then “was the primary DBA for a number of years covering SQL7-SQL 2005. “)
What do you think about the discussion ? And about the sql developer versus .net developer?
You’re absolutely right – a developer has to have a good understanding of database access and should be able to create stored procedures and functions, etc. Saying that you’re a C# developer and you don’t need to know SQL, is like saying you can be a good developer if you know how to place controls on the form and don’t need to know how to write code to make them do stuff. So I think a developer should be good in all the components that make an application – presentation, business logic, and data access.
Hi Andrei,
It’s Mike/Bojangles from the ASP.NET forum, I felt that you have been helping me so much lately with everything C# I should look at you profile which led me to your site.
As a one man band for so long, I very much agree that if you call yourself a C# developer you need a large understanding of database development. I can’t understand how you can to the job without that.
As an ex sports person, in my sport you had to have a “Bag of tricks” to be competitive, and I see this the same way, if you don’t have a bag of tricks you’re not a developer!
So I guess this is relevant, I once made a website where every page was a different technology, e.g.. the home page was Classic ASP, the About page was PHP, the Services page was .NET and the Contact page was Cold Fusion, I think I had some JSP in there somewhere too. I was also connecting to MS Access, SQL Server and MySql. I didn’t have the databases talking to each other so I gave up…lol.
Cheers,
Mike.
Indeed, in normal (small/medium) companies a .NET developer must be good also at database stuff – maybe not very advanced database optimization techniques, but he must go at least as far as understanding a query plan.
Indeed, in very large organizations (like BMW, CocaCola etc.) there are dedicated DBAs and a .NET developer is never allowed to do database-related work – all he needs to know is how to call a stored procedure from .NET, but not everybody works in such environments.
The above works just fine with the server I made earlier.
I know this post is really old by technology standards, but we can already see the change 4 years later. With the advent of Entity Framework and CodeFirst C# development we are moving more and more away from even needing to know the Database side per say. I am a sql developer who is now trying hard to learn C# since most of my job is going away since .NET developers don’t need me nor do the DBAs. BI is the only other route for me.