SQL Clone
SQLServerCentral is supported by Redgate
 
Log in  ::  Register  ::  Not logged in
 
 
 


Is learning Python/R an advantage for SQL Server Developers? Need an expert advice.


Is learning Python/R an advantage for SQL Server Developers? Need an expert advice.

Author
Message
GilaMonster
GilaMonster
SSC Guru
SSC Guru (902K reputation)SSC Guru (902K reputation)SSC Guru (902K reputation)SSC Guru (902K reputation)SSC Guru (902K reputation)SSC Guru (902K reputation)SSC Guru (902K reputation)SSC Guru (902K reputation)

Group: General Forum Members
Points: 902305 Visits: 48716
jonathan.crawford - Thursday, January 25, 2018 6:56 AM
Because I don't have to know T-SQL inside out and upside down in order to use R for something that SQL won't even do.


And for some things that T-SQL can do, R is easier to work with.
For example, I could calculate quantiles and other measures of distributions of data in T-SQL, but if given a choice I'll use R for that.

Gail Shaw
Microsoft Certified Master: SQL Server, MVP, M.Sc (Comp Sci)
SQL In The Wild: Discussions on DB performance with occasional diversions into recoverability

We walk in the dark places no others will enter
We stand on the bridge and no one may pass


Jeff Moden
Jeff Moden
SSC Guru
SSC Guru (870K reputation)SSC Guru (870K reputation)SSC Guru (870K reputation)SSC Guru (870K reputation)SSC Guru (870K reputation)SSC Guru (870K reputation)SSC Guru (870K reputation)SSC Guru (870K reputation)

Group: General Forum Members
Points: 870179 Visits: 47415
jonathan.crawford - Thursday, January 25, 2018 6:56 AM
Because I don't have to know T-SQL inside out and upside down in order to use R for something that SQL won't even do.


There's no question that R brings some fantastic stuff to the table and that there's a lot of stuff that it can do that T-SQL can't do never mind being super easy to do in R and I'm not challenging that. What I am challenging is the use of R, Powershell, SQL CLR, VBS, etc, etc, etc to do things that are actually quite easy to do in T-SQL that people just don't seem to take the time to learn because they think that SQL Server is just a place to store data.

My favorite example is when 2005 came out and the use of SQL CLR was all the rage. To make a much longer story shorter, a "developer" brought me an SQL CLR to deploy to production and I refused. He stormed out of the room before I could complete the word "No" and explain and he took it to management and I was called out on the carpet because it was supposedly a showstopper holding up a project. What did the SQL CLR do that was so critical. It calculated a MODULO. You know... the one that uses the "%" operator in T-SQL. <headdesk><major facepalm>

That's what I'm talking about.

--Jeff Moden

RBAR is pronounced ree-bar and is a Modenism for Row-By-Agonizing-Row.
First step towards the paradigm shift of writing Set Based code:
Stop thinking about what you want to do to a row... think, instead, of what you want to do to a column.
If you think its expensive to hire a professional to do the job, wait until you hire an amateur. -- Red Adair

Helpful Links:
How to post code problems
How to post performance problems
Forum FAQs
Jeff Moden
Jeff Moden
SSC Guru
SSC Guru (870K reputation)SSC Guru (870K reputation)SSC Guru (870K reputation)SSC Guru (870K reputation)SSC Guru (870K reputation)SSC Guru (870K reputation)SSC Guru (870K reputation)SSC Guru (870K reputation)

Group: General Forum Members
Points: 870179 Visits: 47415
Jeff Moden - Thursday, January 25, 2018 7:48 AM
jonathan.crawford - Thursday, January 25, 2018 6:56 AM
Because I don't have to know T-SQL inside out and upside down in order to use R for something that SQL won't even do.


There's no question that R brings some fantastic stuff to the table and that there's a lot of stuff that it can do that T-SQL can't do never mind being super easy to do in R and I'm not challenging that. What I am challenging is the use of R, Powershell, SQL CLR, VBS, etc, etc, etc to do things that are actually quite easy to do in T-SQL that people just don't seem to take the time to learn because they think that SQL Server is just a place to store data.

My favorite example is when 2005 came out and the use of SQL CLR was all the rage. To make a much longer story shorter, a "developer" brought me an SQL CLR to deploy to production and I refused. He stormed out of the room before I could complete the word "No" and explain and he took it to management and I was called out on the carpet because it was supposedly a showstopper holding up a project. What did the SQL CLR do that was so critical. It calculated a MODULO. You know... the one that uses the "%" operator in T-SQL. <headdesk><major facepalm>

That's what I'm talking about.


I'll also add "silo-ing" to that. In the various companies that I've worked for in the past, it seemed to be rampant and seems to continue even in today's world of DevOps. What I'm talking about is people who just don't know something in T-SQL even though it may be super simple to accomplish. Rather than asking for a bit of help, they limit themselves to the tools that they do know and that's wrong at so many levels. They may even teach themselves how to do something in R or whatever. While such learning isn't a bad thing, they didn't take the time to learn the right thing nor even ask if there was an easy way to do what they need in T-SQL.

I also get the tired ol' lecture of "Just because you can do something in SQL Server, doesn't mean you should". While I do agree with that, a lot of people use that as an uniformed, ring-knocker, ad hominem attack to make up for their lack of even simple knowledge of SQL Server. They typical follow that with the totally over used and totally desperate attempt to save face by saying that "SQL Server isn't the center of the universe". My normal response is, "Fine. Let's turn it off and see if you're right". Wink

I definitely subscribe to the idea of using the right tool for the right thing but the right tool isn't always something outside of SQL Server. That's why I have the play on words in my signature of "Just because you can do something in SQL Server, does mean you SHOULDN'T". Wink At the very least, ask someone who might know if T-SQL is the right tool or if the tool you're familiar with is a better tool, especially if you don't know squat about T-SQL.

--Jeff Moden

RBAR is pronounced ree-bar and is a Modenism for Row-By-Agonizing-Row.
First step towards the paradigm shift of writing Set Based code:
Stop thinking about what you want to do to a row... think, instead, of what you want to do to a column.
If you think its expensive to hire a professional to do the job, wait until you hire an amateur. -- Red Adair

Helpful Links:
How to post code problems
How to post performance problems
Forum FAQs
GilaMonster
GilaMonster
SSC Guru
SSC Guru (902K reputation)SSC Guru (902K reputation)SSC Guru (902K reputation)SSC Guru (902K reputation)SSC Guru (902K reputation)SSC Guru (902K reputation)SSC Guru (902K reputation)SSC Guru (902K reputation)

Group: General Forum Members
Points: 902305 Visits: 48716
Jeff Moden - Thursday, January 25, 2018 7:48 AM
jonathan.crawford - Thursday, January 25, 2018 6:56 AM
Because I don't have to know T-SQL inside out and upside down in order to use R for something that SQL won't even do.


There's no question that R brings some fantastic stuff to the table and that there's a lot of stuff that it can do that T-SQL can't do never mind being super easy to do in R and I'm not challenging that. What I am challenging is the use of R, Powershell, SQL CLR, VBS, etc, etc, etc to do things that are actually quite easy to do in T-SQL that people just don't seem to take the time to learn because they think that SQL Server is just a place to store data.

My favorite example is when 2005 came out and the use of SQL CLR was all the rage. To make a much longer story shorter, a "developer" brought me an SQL CLR to deploy to production and I refused. He stormed out of the room before I could complete the word "No" and explain and he took it to management and I was called out on the carpet because it was supposedly a showstopper holding up a project. What did the SQL CLR do that was so critical. It calculated a MODULO. You know... the one that uses the "%" operator in T-SQL. <headdesk><major facepalm>

That's what I'm talking about.

But that doesn't require 'knowing T-SQL very well'. You're talking there about knowing the basics of the language.
If you use R because you don't know the first thing about T-SQL, then you're not a T-SQL developer using R for something they don't know is in T-SQL, you're an R developer.

And, if I may be blunt, using "developer" to refer to someone who develops predominantly/only in other languages is frankly insulting. Sure, the guy may well have had an attitude problem and should have asked if the C# was necessary before he wrote it, that doesn't mean he's not a developer.
I work with a whole bunch of data professionals who don't know the first thing about T-SQL, or the base SQL language in general. That doesn't make them inferior.


Gail Shaw
Microsoft Certified Master: SQL Server, MVP, M.Sc (Comp Sci)
SQL In The Wild: Discussions on DB performance with occasional diversions into recoverability

We walk in the dark places no others will enter
We stand on the bridge and no one may pass


Jeff Moden
Jeff Moden
SSC Guru
SSC Guru (870K reputation)SSC Guru (870K reputation)SSC Guru (870K reputation)SSC Guru (870K reputation)SSC Guru (870K reputation)SSC Guru (870K reputation)SSC Guru (870K reputation)SSC Guru (870K reputation)

Group: General Forum Members
Points: 870179 Visits: 47415
GilaMonster - Thursday, January 25, 2018 8:50 AM
Jeff Moden - Thursday, January 25, 2018 7:48 AM
jonathan.crawford - Thursday, January 25, 2018 6:56 AM
Because I don't have to know T-SQL inside out and upside down in order to use R for something that SQL won't even do.


There's no question that R brings some fantastic stuff to the table and that there's a lot of stuff that it can do that T-SQL can't do never mind being super easy to do in R and I'm not challenging that. What I am challenging is the use of R, Powershell, SQL CLR, VBS, etc, etc, etc to do things that are actually quite easy to do in T-SQL that people just don't seem to take the time to learn because they think that SQL Server is just a place to store data.

My favorite example is when 2005 came out and the use of SQL CLR was all the rage. To make a much longer story shorter, a "developer" brought me an SQL CLR to deploy to production and I refused. He stormed out of the room before I could complete the word "No" and explain and he took it to management and I was called out on the carpet because it was supposedly a showstopper holding up a project. What did the SQL CLR do that was so critical. It calculated a MODULO. You know... the one that uses the "%" operator in T-SQL. <headdesk><major facepalm>

That's what I'm talking about.

But that doesn't require 'knowing T-SQL very well'. You're talking there about knowing the basics of the language.
If you use R because you don't know the first thing about T-SQL, then you're not a T-SQL developer using R for something they don't know is in T-SQL, you're an R developer.

And, if I may be blunt, using "developer" to refer to someone who develops predominantly/only in other languages is frankly insulting. Sure, the guy may well have had an attitude problem and should have asked if the C# was necessary before he wrote it, that doesn't mean he's not a developer.
I work with a whole bunch of data professionals who don't know the first thing about T-SQL, or the base SQL language in general. That doesn't make them inferior.


It was meant as a strong insult to that particular person because of his poor attitude.

Agreed on the "very well" comment. To be sure, I'm not talking about the "Black Arts" that a lot of us know how to do. I'm talking about what most of us would consider to be "the basics", like how to do a 3 table join, when to use an inner join or an outer join, what many of the functions in the language do, a bit about how to write a SARGable query, and maybe even how to use APPLY

--Jeff Moden

RBAR is pronounced ree-bar and is a Modenism for Row-By-Agonizing-Row.
First step towards the paradigm shift of writing Set Based code:
Stop thinking about what you want to do to a row... think, instead, of what you want to do to a column.
If you think its expensive to hire a professional to do the job, wait until you hire an amateur. -- Red Adair

Helpful Links:
How to post code problems
How to post performance problems
Forum FAQs
jonathan.crawford
jonathan.crawford
SSCarpal Tunnel
SSCarpal Tunnel (4.7K reputation)SSCarpal Tunnel (4.7K reputation)SSCarpal Tunnel (4.7K reputation)SSCarpal Tunnel (4.7K reputation)SSCarpal Tunnel (4.7K reputation)SSCarpal Tunnel (4.7K reputation)SSCarpal Tunnel (4.7K reputation)SSCarpal Tunnel (4.7K reputation)

Group: General Forum Members
Points: 4662 Visits: 1369
Jeff Moden - Thursday, January 25, 2018 7:48 AM
jonathan.crawford - Thursday, January 25, 2018 6:56 AM
Because I don't have to know T-SQL inside out and upside down in order to use R for something that SQL won't even do.


There's no question that R brings some fantastic stuff to the table and that there's a lot of stuff that it can do that T-SQL can't do never mind being super easy to do in R and I'm not challenging that. What I am challenging is the use of R, Powershell, SQL CLR, VBS, etc, etc, etc to do things that are actually quite easy to do in T-SQL that people just don't seem to take the time to learn because they think that SQL Server is just a place to store data.

My favorite example is when 2005 came out and the use of SQL CLR was all the rage. To make a much longer story shorter, a "developer" brought me an SQL CLR to deploy to production and I refused. He stormed out of the room before I could complete the word "No" and explain and he took it to management and I was called out on the carpet because it was supposedly a showstopper holding up a project. What did the SQL CLR do that was so critical. It calculated a MODULO. You know... the one that uses the "%" operator in T-SQL. <headdesk><major facepalm>

That's what I'm talking about.


hahaha, ok. was he paid hourly, by chance?

-------------------------------------------------------------------------------------------------------------------------------------
Please follow Best Practices For Posting On Forums to receive quicker and higher quality responses
Vivek Grover
Vivek Grover
Ten Centuries
Ten Centuries (1.3K reputation)Ten Centuries (1.3K reputation)Ten Centuries (1.3K reputation)Ten Centuries (1.3K reputation)Ten Centuries (1.3K reputation)Ten Centuries (1.3K reputation)Ten Centuries (1.3K reputation)Ten Centuries (1.3K reputation)

Group: General Forum Members
Points: 1300 Visits: 661
Jeff Moden - Thursday, January 25, 2018 9:02 AM
GilaMonster - Thursday, January 25, 2018 8:50 AM
Jeff Moden - Thursday, January 25, 2018 7:48 AM
jonathan.crawford - Thursday, January 25, 2018 6:56 AM
Because I don't have to know T-SQL inside out and upside down in order to use R for something that SQL won't even do.


There's no question that R brings some fantastic stuff to the table and that there's a lot of stuff that it can do that T-SQL can't do never mind being super easy to do in R and I'm not challenging that. What I am challenging is the use of R, Powershell, SQL CLR, VBS, etc, etc, etc to do things that are actually quite easy to do in T-SQL that people just don't seem to take the time to learn because they think that SQL Server is just a place to store data.

My favorite example is when 2005 came out and the use of SQL CLR was all the rage. To make a much longer story shorter, a "developer" brought me an SQL CLR to deploy to production and I refused. He stormed out of the room before I could complete the word "No" and explain and he took it to management and I was called out on the carpet because it was supposedly a showstopper holding up a project. What did the SQL CLR do that was so critical. It calculated a MODULO. You know... the one that uses the "%" operator in T-SQL. <headdesk><major facepalm>

That's what I'm talking about.

But that doesn't require 'knowing T-SQL very well'. You're talking there about knowing the basics of the language.
If you use R because you don't know the first thing about T-SQL, then you're not a T-SQL developer using R for something they don't know is in T-SQL, you're an R developer.

And, if I may be blunt, using "developer" to refer to someone who develops predominantly/only in other languages is frankly insulting. Sure, the guy may well have had an attitude problem and should have asked if the C# was necessary before he wrote it, that doesn't mean he's not a developer.
I work with a whole bunch of data professionals who don't know the first thing about T-SQL, or the base SQL language in general. That doesn't make them inferior.


It was meant as a strong insult to that particular person because of his poor attitude.

Agreed on the "very well" comment. To be sure, I'm not talking about the "Black Arts" that a lot of us know how to do. I'm talking about what most of us would consider to be "the basics", like how to do a 3 table join, when to use an inner join or an outer join, what many of the functions in the language do, a bit about how to write a SARGable query, and maybe even how to use APPLY
Sorry guys. I didn't meant to annoy anyone or hurting sentiments. I always love to work in T-SQL. Now, after a long discussion of SQL Guru(s), I came to conclusion that T-SQL is what one should know if he wants himself to be known as SQL developer. And R/Phyton are also add on but yes T-SQL is the actual home. ☺️.




=============================================
Best Regards,
Vivek Grover
CodePicks - https://codepicks.wordpress.com//

Vivek Grover
Vivek Grover
Ten Centuries
Ten Centuries (1.3K reputation)Ten Centuries (1.3K reputation)Ten Centuries (1.3K reputation)Ten Centuries (1.3K reputation)Ten Centuries (1.3K reputation)Ten Centuries (1.3K reputation)Ten Centuries (1.3K reputation)Ten Centuries (1.3K reputation)

Group: General Forum Members
Points: 1300 Visits: 661
And In SQL Developers I am considering guys who also work in SSRS on daily basis. But still should have had done some R&D to know what R can give what SSRS can't give.



=============================================
Best Regards,
Vivek Grover
CodePicks - https://codepicks.wordpress.com//

Revenant
Revenant
SSC-Dedicated
SSC-Dedicated (38K reputation)SSC-Dedicated (38K reputation)SSC-Dedicated (38K reputation)SSC-Dedicated (38K reputation)SSC-Dedicated (38K reputation)SSC-Dedicated (38K reputation)SSC-Dedicated (38K reputation)SSC-Dedicated (38K reputation)

Group: General Forum Members
Points: 38508 Visits: 5300
GroverVivek - Thursday, January 25, 2018 11:04 AM
And In SQL Developers I am considering guys who also work in SSRS on daily basis. But still should have had done some R&D to know what R can give what SSRS can't give.

Strength of R is not in its graphics libraries, no matter how powerful they are. Its strength is in lightning fast behind the scenes matrix operations, including, but not limited to, neural networks. IMO the strongest point of R on SQL Server is its ability to work with tables as matrices, which makes it extremely efficient.

I am still in awe that I can call R from T-SQL, then T-SQL or Python from R, go as deep as you wish, no practical limit.
GilaMonster
GilaMonster
SSC Guru
SSC Guru (902K reputation)SSC Guru (902K reputation)SSC Guru (902K reputation)SSC Guru (902K reputation)SSC Guru (902K reputation)SSC Guru (902K reputation)SSC Guru (902K reputation)SSC Guru (902K reputation)

Group: General Forum Members
Points: 902305 Visits: 48716
Revenant - Thursday, January 25, 2018 1:44 PM
GroverVivek - Thursday, January 25, 2018 11:04 AM
And In SQL Developers I am considering guys who also work in SSRS on daily basis. But still should have had done some R&D to know what R can give what SSRS can't give.

Strength of R is not in its graphics libraries, no matter how powerful they are.

Maybe not, but GGPlot in reports is pretty damn close. :-)

Vivek: Being a T-SQL developer doesn't mean you only study SQL. You should have other tools in your toolbox, you should be at least familiar with R or Python, as well as Powershell or Bash (or other scripting/automation language) plus any other languages that are relevant for your areas of interest/work


Gail Shaw
Microsoft Certified Master: SQL Server, MVP, M.Sc (Comp Sci)
SQL In The Wild: Discussions on DB performance with occasional diversions into recoverability

We walk in the dark places no others will enter
We stand on the bridge and no one may pass


Go


Permissions

You can't post new topics.
You can't post topic replies.
You can't post new polls.
You can't post replies to polls.
You can't edit your own topics.
You can't delete your own topics.
You can't edit other topics.
You can't delete other topics.
You can't edit your own posts.
You can't edit other posts.
You can't delete your own posts.
You can't delete other posts.
You can't post events.
You can't edit your own events.
You can't edit other events.
You can't delete your own events.
You can't delete other events.
You can't send private messages.
You can't send emails.
You can read topics.
You can't vote in polls.
You can't upload attachments.
You can download attachments.
You can't post HTML code.
You can't edit HTML code.
You can't post IFCode.
You can't post JavaScript.
You can post emoticons.
You can't post or upload images.

Select a forum








































































































































































SQLServerCentral


Search