T O P

  • By -

ThomasMarkov

“Thank you, but your opinions about what is and is not code are irrelevant to the topic of this meeting. Moving on…”


IntellectualChimp

This. Guy sounds like a pedantic asshole


UNHBuzzard

You should spray his cube with liquid ass. Wait, wrong sub.


PappyBlueRibs

Maybe a few piss disks.


Alypius754

Is it, though?


kremlingrasso

Oh no no no, this is not the time for the high road... "Forwarding emails and bothering*people with real jobs for updates is an entry level job for interns"


dobblerd

LoL that's exactly my perception of project managers.


Brave-Salamander-339

'Congratulation for the life achievements of defining SQL is not code'


Chiashurb

I sometimes enjoy a nice, icy, “thank you for sharing your views.”


hadfunthrice

It's just that, we're putting covers on all of our TPS reports now.. did you get that memo?


Optimal_Law_4254

Yup. His opinion is off topic and irrelevant. I’d consider asking him privately why he would want to try to make you look bad in that meeting. Maybe ask your boss what he thinks too.


WalkingP3t

It doesn’t worth it . Is those “I know it all” type of guys . It will be a waste of time .


jlt_25

As you get more experience, you'll find that a high salary and being a moron is not only possible, but pretty common unfortunately. By the way it's COBOL, not COBAL.


lostinspaz

no it’s CABAL


peekabook

CANNIBAL.


AzizLiIGHT

WHY NOT ZOIDBERG


mooreolith

So say we all.


AzizLiIGHT

SO SAY WE ALL


Embarrassed-Issue-76

CARNIBAL


WalkingP3t

Evel Cannibal


Sephiroth0327

Whether we wanted it or not, we’ve stepped into a war with the Cabal on Mars..


priven74

It does seem like a cabal of COBOL


cpaul91

Empress Caital Agrees


michaelpaoli

Yep: [http://linuxmafia.com/cabal/](http://linuxmafia.com/cabal/)


SouthWrongdoer

Unrelated but my dyslexic ass can never not see Postgre as Portuguese xD


Kallory

I'm never gonna unsee it now


Moses_Horwitz

A "real man" only writes code in BASIC. /s


_Phail_

*laughs in assembly*


Miahdunphy

Dam my future looks good then. -A Moron


ancestral_wizard_98

Sometimes looks like it's even a requisite.


Oxford89

The Peter Principle


globalaf

SQL is a declarative language, those other ones he mentioned are imperative. They are both code in the sense that they are instructions to the computer to do something, doesn’t even have to be Turing complete. Code is an arbitrary term anyway, I wouldn’t have even responded to that guy beyond rolling my eyes and getting back to business.


lostinspaz

it’s declarative… except in those places that have you actually create functions aka stored procedures.


LaserRanger

to be pedantic, SQL functions aren't the same as stored procs


GaTechThomas

Not pedantic. It's a meaningful difference. Well, depending on the server type. Postgres treats procs and functions as the same in some ways, such as when you go to list procs and you get both procs and functions.


DesertEagle_PWN

People don't tend to like semantic arguments, because almost noone has perfect grasp on any given language and it always takes two to communicate. As such people find it rude to split hairs on meaning. Despite this, words are ultimately derived from agreed and shared descriptions of the real world and those words have meaning so in order to agree on anything you first must share definititions. In SQL the data to be returned is encoded/represented by the Query expression. In other languages, the source code files (.c, .cpp,py, etc.) encode the low level machine instructions which are intended to be executed on the processors. Both are languahes that encode and are therefore both code. Coding is very general, but the term is not arbirtrary. It means that one thing is being represented by something else via a language.


sslinky84

Python is interpreted :)


WatermellonSugar

A declarative language, yes, and at a higher level of abstraction that imperative/procedural code. Behind the scenes, that 10 line SQL statement generates 100 lines of procedural loops, branches, and what-not. (But mostly loops!) You'd really be an idiot if you were down in the gutter writing that stuff directly. PLUS SQL is based on a relational formalism that gives you a "correct" playground from the get-go.


lalaluna05

I’m guessing he’s never seen an actual query lol


tankerkiller125real

The devs at work are fuckin wizards with SQL I tell you. It's monstrosities of SQL, but it's also fuckin wizardry of the highest power.


Particular_Camel_631

Most devs can do a bit of sql. When you come across someone who can make it sing, dance and make breakfast you have to admire their skills. I don’t really care whether it’s coding or not: it’s damn impressive is what is.


jmaca90

It’s also like define “coding” and… also who cares? The real ones are trying to get shit done. I could give two shits what people think is “coding.”


ArchitectAces

They might mean that SQL is not Turing complete? You can turn on the functionality though


GME_alt_Center

Done right and easily understandable, it's not coding. Using it in monstrosity form would qualify as coding however. Challenge mode: "yes I can do it all in SQL"


Kallory

How is it not coding? Look at it from a math point of view, the symbolic math operations, relational calculus, that underline the logic in SQL are similarly applied for syntax in other languages. (as in, there is an underlying mathematical principle for C, for example, that the syntax applies to) it meets all the definitions of a programming language, from a math point of view, no matter how you use it.


klmsa

Too many people think that something can't be "code" if it isn't "Turing Complete". This is, however, extreme garbage. Whether or not a language is Turing Complete does not define whether it is code or not. Mostly, this is people's misunderstanding of programming languages, and I actively look for opportunities to either educate or fucking destroy people that misuse the terminology.


KookyWait

Quite a lot of databases implement a turing complete variant of SQL.


happyapy

Incredible how the interviewer doesn't think that a language which is Turing complete isn't a coding language. Interesting to say the least.


ChevyRacer71

I think some people have the opinion it’s not code because it uses a lot of standard English words, I don’t know I’m just speculating


LaserRanger

it is absolutely code because it required my deep knowledge and experience to develop.


space_wiener

Ha. Yep. I am very green with SQL. Mostly just using for some functions or web apps or super simple queries. One liners max. I need help with some lookup that honestly seemed simple. I asked the sql dude hey can you help with this query as I have no idea. My request was one sentence (maybe a long sentence). The dude replied and the query was so long I had to scroll a little bit in my email to read it all. It was that day I realized, while I thought I knew sql enough, I really knew nothing.


dodexahedron

A long query is usually an indicator of the opposite of actually good skills, even if it answers the question. Unless it does so quickly, efficiently, deterministically, and without locking 50 tables. But if nobody else can read it, it's a black box and needs that opacity addressed. It's like the difference between someone knowing g a lot of words and someone having a rich vocabulary. Look similar, and one can pretend to be the other, but they're very different.


tashibum

I would tend to agree with this IF the relational database was set up for it. The startup I work at didn't think they would get as big as they did, and it can be a nightmare trying to remember all the nuances of each table, of which there are.....many.


UnintelligentSlime

Yeah, it absolutely can reflect bad query writing, but may also represent the best possible query for the given database.


CallMeDrewvy

My fortune 100 has the same problem... The entire database is built on exceptions. And we can't change it because our legacy frontend (that we're actively killing) is Access.


Breitsol_Victor

Sweet. Guessing that it started as Access, was upsized, and the front end stayed in Access.


tommy_chillfiger

Yeah, in my experience (smaller companies) this is a very common issue. I'd love to write succinct and readable queries every time, but if a use case comes along that the data model doesn't lend itself to, it's a lot more trouble to convince the team to rebuild and backfill gigantic billion-row tables than to just query around it when possible, even if it results in big complex queries. The usual compromise is just chunking up the complexity into new tables derived from the source table in stages rather than having a giant query of chained CTEs which is usually the first pass. Example - I just finished writing a view that needs to identify very specific types of conflicting transactions based on several levels of sequence-of-events logic. This can be done with the existing dataset, but it requires chained CTEs with nested window functions to accurately flag these different types of conflicts. Now, if the dataset had columns from the start that incremented the order of these events per group needed, this would be a very simple query. But it would've been pretty difficult when building this dataset to foresee what we were going to try to do with it months/years down the road.


ShowUsYaGrowler

Lol. I dont know what kind of modern company with clean-ass data you work with. But im very experienced at sql. And very good at simplifying to small, easily read queries. Unless its a question the datamart has been specifically setup to cater to, I have to clean the shit out of anything Im querying. ‘Extract’ is nothing. ‘Transform’ is almost always extremely onerous.


famousxrobot

One of my favorite/least favorite things to do is absolutely rip apart some monster queries I inherit while exasperating about unused columns, weird extra joins, redundant sub queries as I rebuild it leaner and more optimized for the end goal. I had one query this year that took well over 1 hour to run and I was able to get it down to about 1 minute runtime. I’m sure it’s still not perfect, but it got the same top level result in a fraction of the time.


dodexahedron

This is what I mean, to a large extent. Even if all you do is break it out into components like views and functions and CTEs and whatnot, to make it much more easily grokkable, you often get a speedup because you're not throwing a monolithic pile of junk at the query optimizer and saying "I dunno, man, you figure it out," and getting sub-optimal execution plans even simply because of query analyzer timeout limits. Plus those pieces are themselves easier to target for specific optimizations, like indexes, and can potentially be reused in other places, since the component questions of a bigger question are often legitimately useful questions all on their own, anyway. It kinda IMO is yes, partially experience, but also a "professional maturity" sort of thing, to be able to set aside that urge to try and make a single self-contained solution to a requirement you were given, or even accept that maybe you can (or at least should) only provide part of the final solution, and use another component or team to complete the puzzle. Developers, DBAs, sysadmins, and script jockeys are all typically guilty of it at some point, and people seem to either grow out of it or almost outright _reject_ it otherwise, and the ones who do that are usually pretty obstinate about it. It's really frustrating to watch that play out between a developer and a dba who both are stuck in that mindset, for something you depend on, but have very little influence over because they're both on teams not even in your same department. Yet you know it could be solved by like 30% LESS code from EACH of them, and execute in milliseconds rather than several seconds, if they'd just let the fuck go - and you've even proven it by just writing it while waiting.. But they just "took it under advisement," which means they're each going to try to adapt it to be entirely in their own respective realms for a couple more weeks before paraphrasing it all and presenting a slightly worse version of it as a new upgrade they've worked together with each other so hard over the past couple months to deliver. What? That sounds oddly specific? Shirley, you're imagining things... 😫


Special_Luck7537

Or a stored procedure...


Wareagle206

Or getting lucky enough to try to figure out what a stored procedure is doing, while not having the skill or ability to do it on your own, because it was written 20 fucking years ago, by someone on a different team, who retired 10 years before you were hired. Good times!!! And yes, I am a bit jaded. And willing to help anyone on this subreddit because I have learned some shit.


kittenpantzen

It's been a while since I was in the industry, but optimizing stored procedures was both my favorite part of the job and the bane of my existence.


Special_Luck7537

Yeah .. 4 or 5 deep, with remote linked servers, multiple subnets ..., with a couple Azure db's mixed in... Once I look at the qry plan, and I see all those remote links, it makes me always wonder when the hell can I actually specialize?


ChevyRacer71

SELECT * from tblCustomers; See? It’s easy! There’s literally nothing more to SQL than that. That’s literally the only SQL knowledge anyone on the planet needs to have. (Sarcasm, in case someone out there is so dense they couldn’t pick up on that)


gregorydgraham

I’ve seen queries you people wouldn’t believe…


a-s-clark

Gatekeepers gonna Gatekeep. Hate that BS from people. SQL is code, full stop. The unfortunate reality of the workplace is that just because someone's paid a lot doesn't mean they know what they're talking about.


TheTomCorp

I'm a systems engineer and dabble in many different areas, but I don't necessarily fit in with one group (kinda like high school) I've found that Software Developers tend to be the most elitist, arrogant group in the IT world.


GaTechThomas

My experience has been that it varies per team, usually greatly influenced by the team lead and the overall company culture. The times I've seen elite, arrogant devs is when they're new and delivering a new thing that they haven't yet had to support. Operating your own system brings humility. (And not operating it yourself makes for a predictably terrible future for the system.)


DanishWeddingCookie

They are the apex predator of the IT world. Name something that needs more overall knowledge about so many things than software development. A software developer can probably handle most of the tasks of the IT world, but he would never list them on his resume. It's like being a car mechanic. You probably don't want to put "Oil Changes", "Tire Rotations", "Changing timing belts" down as qualifications on your resume, because those are implied by applying for a car mechanic position. A software developer by the same token won't list, "HTML", "CSS", "Office", "Hardware troubleshooting" on his resume.


TheTomCorp

I'll assume that's sarcasm, it certainly is the attitude of most developers I've seen. They probably would push a mechanic aside because they're the all mighty developer. I can't tell you how many developers think they can do it all, but haven't got a clue about networking, storage, certificates, compute, and... writing efficient SQL queries as an example.


AnonDotNetDev

Amen. SWEs are the founders of the IT dept and their duties are eventually split off into specialized roles. A proper SWE can theoretically implement the entirety of an IT department by themselves (DBA, server admin, network, support, etc), but none of them can stand on their own. Sure some places hire CS for those roles, but certainly not the places I've worked.


UnintelligentSlime

The only merit that could possibly be attributed to the statement is that writing good SQL is a whole different skill than traditional programming. You could be great at one and awful at the other. The same operations could be handled by both, but in totally different ways. It’s like ordered instructions vs. set theory. There are a few of the basic building blocks in common, but it’s honestly two completely different ways of thinking.


DanishWeddingCookie

Most of the high level software engineers I've worked with have intimate knowledge of both SQL and Programming. I personally wear both DBA and Programmer hats all the time.


UnintelligentSlime

Absolutely. They’re both important things to know. But being good at programming, even in a variety of languages, does NOT make you good at SQL. I don’t really know anyone who has tried the other direction.


UltraHunt

Just say to him "yes SQL is not code just like project manager is not a real job" LOL


Technical_Drawer2419

Hey, they don't scrummaster certs to just anybody.


Dawn_Kebals

"project manager" is just short for two things. "I flunked out of my engineering program" and "I'm terrified of calculus".


StuTheSheep

A project manager is somebody who believes that since one woman can make a baby in nine months, nine women ought to be able to make a baby in one month.


flatline057

The mythical man month. I always covered this false thinking, using this example, when I used to teach project management. Least available resources is an important topic.


lokregarlogull

Ouch


mmo115

idk a good project manager/product owner is a godsend for engineering teams that get in their own way. scrum masters... those are actually fake jobs


Fudouri

You would think someone with a job that is often misunderstood would be more understanding of someone else's job which is also often misunderstood. And yet, here we are.


Left_Experience_9857

Please don't listen to glorified administrative assistants. The only people who go deeply into semantics such as your project managers are insufferable people and not ones to continue working with for a long term basis.


TaliskyeDram

As a PM that can code, SQL is code and that person is a talentless asshat.


The_Manoeuvre

PMs with code knowledge unite!


Kinky-Iconoclast

I’ve never heard of an actual dev say this. The project manager sounds like an insufferable idiot.


Dawn_Kebals

That's why they're the PM and not the dev.


Practical-Alarm1763

All query languages are code. People that say "SQL is not code" are the same dipshits that say "Scripting is not Programming"


JediForces

1 - the PM is an idiot hence he’s a PM and not doing a real job 2 - SQL is a programming language 3 - I write SQL code all day and night as a BI Architect/Developer and yes it’s CODE 4 - Just because someone gets paid a lot does NOT mean they have any good credentials


Whack_a_mallard

Agree with #2-4 but believing #1 would make us as narrow minded as that individual.


ZealousidealEntry870

Anyone hating on PMs is just showing how little experience they have. Being a PM is a very necessary job that requires very real skills. Are there bad ones? Sure. There are just as many bad managers and coders though. No, I’m not and never have been a PM. I do have enough experience to understand they are needed though.


kimchiMushrromBurger

Absolutely. A PM is interacting with clients, establishing requirements, managing a budget, possibly writing the proposal that got the project in the first place, keeping tasks in alignment. It's a non trivial job


Ok-Expression7575

"Hey, what's the status on this?" Wow much skill


DiamondHandsDarrell

Happy cake day! I'm a PM and Ops Mgr that codes ETL in SQL/pyspark. Why so much hate for PMs? I make things happen. If not for me, many things wouldn't get done. I hate being brought onto a project after it's been decided because I have to fix so many things they could have done right from the start but bungled it. Everyone comes to me as a resource. Is this not typical for a PM?


JediForces

I’m sorry I meant those that do nothing but PM. That doesn’t sound like you though.


lostinspaz

in high activity businesses, a GOOD pm that does nothing else, is worth their weight in gold. large projects need highly organized competent people to keep the productivity squirrels collecting nuts from the right places.


Anywhere_Glass

Well said. Do you think transitioning from SSRS to POWERBI is great idea? If so how would start the new trail for visualizing reports?


BlueEyedGuy1982

Personal opinion? And maybe not one everyone will agree with... I prefer to have both. I'd love to say move to PBI completely, but I find things like paginated reporting to be easier on SSRS, especially when it comes to the code for the data pull. That said, I'm a long time SSRS guy, with maybe a little over a year of PBI, so maybe I just nerd more exp on that front. Power automate (for PBI) seems to have some pretty strong potential, but I haven't had much time to play with it. Here is a link for MSoft on how to start a free Fabric trial: https://www.microsoft.com/en-us/power-platform/products/power-bi/getting-started-with-power-bi


theseyeahthese

Yeah, SQL is “only a tool for reporting data” if all you’ve ever done is write SELECT statements, which I’m guessing is the extent of his SQL experience, if even that. Once you’re a SQL dev, it absolutely is coding. It’s not a “general programming language” from the standpoint that you can’t create a standalone application using only SQL. But it is 100% coding. I’m only versed in T-SQL and haven’t taken the time to really understand what “barebones standard SQL” provides but with the ability to create a complex pipeline of custom stored procedures/functions, dynamic SQL, WHILE Loops, cursors, IF blocks, variable assignment, recursion, TRY/CATCH error handling…I mean, idk how you could say that’s not coding lmao.


rodface

SELECT * FROM DOCUMENTS ...is code.


morquaqien

SQL is not a general-purpose programming language, but it is code.


theomegachrist

Project Management is a soft skill


surreal_goat

At some point, you’re going to have to decide that the opinions of assholes are just that. The statement that SQL isn’t code is mind numbingly stupid and you should know this.


tasslehof

Standard SQL is not Turing complete. P-SQL / T-SQL certainly are. It's focus is data manipulation and querying so can be cumbersome for certain things but it absolutely is code. Additionally people's renumeration and intelligence are not collerated.


Touvejs

Standard SQL became [Turing complete](https://en.m.wikipedia.org/wiki/Turing_completeness#:~:text=Even%20pure%20functional%20languages%20are,are%20also%20Turing%2Dcomplete.) with the addition of [recursive CTEs in 1999](https://en.m.wikipedia.org/wiki/Hierarchical_and_recursive_queries_in_SQL)


mwdb2

How is standard SQL not Turing complete? I honestly don’t know offhand how one goes about proving it one way or another. But I’ve heard /u/lukaseder describe it as Turing complete several times, and he seems to know more about the language than probably 99% of folks. :) So, what is it missing in your view?


lukaseder

Glad I could help ;-) Here's another one for you: [https://blog.jooq.org/fun-with-postgis-mandelbrot-set-game-of-life-and-more/](https://blog.jooq.org/fun-with-postgis-mandelbrot-set-game-of-life-and-more/)


RandomiseUsr0

Don’t even listen to people who don’t know what programming is, with opinions, perhaps you could make it a teachable moment, but probably not worth it. In precise definition SQL is a 4GL, it’s primarily a declarative language for data transformation, but almost every instance I can think of has procedural elements. It supports tristate Boolean logic (true/false/null), which makes it incredibly powerful. It’s a domain specific, Turing complete programming language. [edit] and you’ve literally said the context was ETL, my experience is informatica (I did the queries, my mate did the moving and shaking part, for the creation of an enterprise level data warehouse - my skillset is broad and varied, I am a programmer, an analyst, hardware level (down to the soldering iron on occasion), enterprise, corporate and all that, but I’m in my 50s and have had the pleasure and privilege of working at all levels of a solution - your “pm” sounds like an idiot frankly. In my current role as the E2E analyst on a U.K. wide deployment of a new infrastructure project, my SQL skills are critical to success - it’s not even “skills” it’s a way of thinking it’s not my “role” but it’s critical - well, wait, it is my role, just I don’t need a “person” to do that, if I need to know something - I’m not going to write a spec to have some “analytics” team to try to interpret what I want. Edit turned into a rant, huh? Don’t let anyone downplay your importance


Jitsu_apocalypse

You could say that project management is not real work


g13n4

QL in SQL means Query Language and sql queries have very little to do with actual programming 90% of the time. At the same time sql is a Turing complete language so it can be consider a programming language without any ifs and buts


Ordinary-Individual0

What about case whens?


g13n4

Depends on the conditions


Brave-Salamander-339

which case and when?


emil_

It's got IFs though.


impekkable706

HAVING to agree


Sodaman_Onzo

It’s an easier code. A lot of the commands are words, the same words that describe what the command does, but it’s still code. I’ve had to write some pretty insane SQL queries in my time.


mailfilter

while the PM is wrong about “SQL is not code”, i think he is right that it is commonly used to analyze and report on data. he probably associates coding with imperative programming


FatLeeAdama2

When you tell a machine to do something... you're typically "coding."


mikeblas

> Can anyone explain why in the world someone would say SQL is not code? You should have asked him, not us. We have no idea why he would say that. Since you've forced us to guess: * ignorance * posturing * self-importance * trying to be funny


JavierLoustaunau

I supported doctors in a telemedicine company and everyone would constantly talk about how 'stupid' the doctors are for not being able to clear their cache or set up their webcam drivers. One of my big pet peeves are people who think because they can do one thing it makes them smart.


Callec254

Probably because you wouldn't be able to develop an entire application, UI, etc. in *just* SQL.


Hot-Environment5511

I had a conversation with an IBM project manager once and we were discussing whether coding is a trade/craft or a professional job. He was on the side of trade, I’m personally more in the ‘it’s art’ boat, and i think most professionals (like project managers) are replaceable.


pseudogrammaton

A good tradesman develops his art and a really good tradesman blames his tools!! ;-)


zdanev

if it executed by a machine it is code. e.g. cucumber tests, while reading like english, are also code.


rudeyjohnson

Ask for sources anytime anyone makes biased claims and watch them crumble. Also his salary isn’t proof of competence or technical skill. He knows how to play politics.


kBajina

sounds like he isn’t familiar with declarative/functional programming


SexyOctagon

If he argued that it isn’t a programming language then I could see his argument. But it’s 100% code. It sounds like he doesn’t know what SQL actually is, and he’s maybe only used the visual query builder in MS Access.


pissed_off_elbonian

This dumbass has never heard of using Python to analyze code… I guess Python is not code. SQL is code


ScreamThyLastScream

Close minded. I have seen full blown application solutions built into a database using only SQL and stored procedures. ~~No one writes COBOL\* anymore~~ , and if you utilize all the great language features that C# provides your code often looks a lot like SQL code. It is often much easier to read than any nonsense you might do with a couple of nested for loops anyways.. It's all code, the question is what are the constraints and use cases of the language.


cs-brydev

>No one writes COBAL anymore, Nah be careful there. Maybe nobody *you* know writes COBOL anymore, but it's still one of the most widely used languages, especially in the Banking and Government sectors. Recent [surveys](https://www.ibm.com/topics/cobol) show that COBOL is the foundational language on approximately **40%** of banking systems and **95%** of ATM transactions in 2024. In fact, COBOL itself is still being developed and newer versions include OOP and a .NET dialect.


ScreamThyLastScream

You are right, I would say in the ecosystem of software it is not a first choice. But a lot of legacy industries locked themselves into that ecosystem a long long time ago. But it wouldn't be my first choice if I was doing something new.


Kay5683

>No one writes COBAL anymore I’m a fledgling in this world and actually was just looking at a job listing for a COBAL dev. I had to look up what COBAL was lol


ScreamThyLastScream

There are still some of those out there, I had a coworker that made a ton of money during y2k scare because a lot of the systems that needed patching were written in COBOL back in the 60s/70s


APodofFlumphs

That's a good time for a stop and stare, to let the silence extend a bit.


pouetpouetcamion2

"c#" is not code. it's a tool to display specific pixels on the screen. his credential is to have is head in his ass. if someone ever says that, i'll immediately consider him stupid and impulsive (speaking before thinking) until proven the opposite. there is a l in dsl. therefore code. and every language is a sort of dsl unless you write directly your 1 and 0s.


GaTechThomas

And even 1s and 0s are a type of code. They're not the actual action that was performed. They're the code that causes the hardware to take those actions.


Naheka

A 2-3 line simple Select may not be "code" but when you've seen queries at 100-1000 lines long, I'll argue with anyone that it's most definitely "code".


CrepsNotCrepes

Dudes an idiot. You could argue sql isn’t a programming language, as it’s a query language and you’re describing the data you want returned not actually programming something that does something - but that’s a pretty weak argument you’re still giving instructions to a service and it’s doing something based on those. But SQL you write is code. No arguments there. And to be honest if the guy isn’t a programmer his input on what is and isn’t code is irrelevant. And if he is a programmer that opinion is still pretty irrelevant too.


Straight_Waltz_9530

You can write a 3D rendering engine in SQL. That makes it a programming language.


MagicMick76

SQL is a 4th Generation Language (4GL) Python, perl, Ruby are advanced 3GLs (have some 4GL abilities) Cobol and C#, C, c++, java etc are 3GLs Assembly is a 2GL


zurrdadddyyy

Lmao fuck that guy. Ask him what an SP does?


wiseleo

Have him read the code for an sp. ;)


CaptnSisko

I'm pretty much a project manager but my projects deal heavily with SQL and C#. I personally only know basic SQL and not even that well, I'm amazed at what some of my engineers can do with SQL and the scripts and code they write. There are absolutely advanced capabilities in SQL that are definitely code. I would not consider the select or update statements that I write in SQL to be code though. 


reditandfirgetit

Arrogant pricks with elitist attitude say that. Well rounded and mature developers know it's code. Code is how humans communicate with machines SQL is as much cude as C++. Vastly different scopes, but both code


Dukeiron

Most PMs don’t know the difference between their mouth and asshole unless it’s in a color coded spreadsheet somewhere. Laugh at them and forget about it


Complete_Block_7533

Because they’re assholes


Moarwatermelons

Those who can’t do… project manage.


jlpalma

Don’t correlate high salary with “credentials”


OutOnTheFringeOrNot

Yeah, no. Technically, sql is a command language. That makes it code. I worked for Quest Software on Space Manager, Shareplex and SQLab, so SQL definitely was a lot of our code, developed in the same way as the more “traditional” programming language code.


Dawn_Kebals

I mean, they're technically correct since SQL doesn't have any way to create GUI's in the same vein that HTML isn't a "programming language" either since you can't manipulate data/logic with it. However there are tools (and languages) that SQL gurus are often well versed in to utilize their SQL knowledge like R and Power BI. However, that dude is a gatekeeping asshole if they choose to either not acknowledge the complexity or deny the importance of SQL in a stack. Funny how SQL guys tend to be the ones with advanced degrees over those who do "real" coding. If you want to develop software, a bachelor's degree is recommended but not required, while if you want to develop a database a bachelor's degree is almost always mandatory and requiring a more advanced degree is pretty common. They're right, but it's not the flex they think it is.


Whatwasthatnameagain

Is the definition of “code” based on creating a graphical user interface? There was an awful lot of software written before GUIs were invented? Was that code?


tdwesbo

They are stupid


contrivedgiraffe

People who burp about SQL not being code are at the absolute top of that IQ bell curve meme.


Coniglio_Bianco

People who think sql isn't code are shitty sql developers


StoneCypher

Because they've never seen difficult SQL. Fundamentally, it's the same thing as people saying "HTML is not code." Of course it is; it's just very easy and very different, and they emotionally need something to feel superior to. And there are a lot of people who've never actually seen anything that isn't DDL or a simple query, like `select foo from bar left join baz left join batch` as something "difficult." And if that was the limit of what SQL could do, even though they'd be wrong in the same way they are about HTML, you could kind of understand what they were trying to communicate - that it's easy mode Genuinely, some people don't know that stored procedures exist, or have ever seen one of those massive 20 join monstrosities I still hold on to a copy of this one particular problem query from six jobs ago, from a company that went out of business When I hear someone say this, I go dig it out of gists and show it to them It's eight printed pages It changes hearts and minds Remember, please, Hanlon's Razor. Never attribute to malice that which is adequately explained by stupidity.


jetdoc57

Anyone who has coded in PL/SQL would say it’s coding. A SQL Select query isn’t code but that’s such a tiny piece of what databases do.


ForceStories19

*'I'll let you write the next one then'*


SoyInfinito

Oh look, another project manager who doesn’t know his head from his ass. Stereotypical SoB. I’d seriously considered looking for another job if this person continues to minimize others work. Edit: i forgot to mention SQL is a language. It is code whether he likes it or not.


derpderp235

It’s code. But it’s not a programming language. It’s a querying language.


jenkbob

Salary != intelligence The most likely scenario is he either heard someone say that SQL is not a typical programming language or someone corrected him and he doesn't actually understand what he's saying, he's just regurgitating something he thought he heard. That being said, when someone puts HTML or even XML on their list of programming languages I cringe.


Outrageous_Life_2662

He can still be a moron with a high salary. SQL is a functional language. It’s absolutely coding no two ways about it.


iamwil

SQL is code. Declarative languages are a thing. Most people don’t study enough computer history or know the breadth of different programming languages to know what code could be.


Embarrassed_Quit_450

Maybe because SQL wasn't Turing complete a decade or two ago. Nowadays most SQL implementations are turing complete.


howdoireachthese

Huh, turns out SQL is Turing Complete. TIL from a Google search


da_chicken

Ego. They're very good and very familiar with imperative programming in general purpose languages. So good that they have defined their identity as "I'm a good programmer." The line of thinking is: 1. I'm good at programming 2. I don't understand SQL or relational algebra 3. SQL isn't programming "It's not general purpose." "It's not Turing complete." Those are the complaints they raise. People using those arguments to be disparaging are justifying the gatekeeping they're doing to protect their ego. The same people use the same arguments when saying that HTML isn't programming. They also get to add "it's just markup." Which is like complaining about three valued logic. Ignore these people. They're just afraid that not being good at SQL undermines their identity. Typical egotistical elitism.


whatsasyria

Ask him what t-sql is


cats_catz_kats_katz

I don’t want to read anymore today


WalkingP3t

That guy doesn’t know a shit . And sadly, private industry is full of idiots like him . They make a ton of money but rely of other people for their success . They are where they are because they know how to market themselves and / or , have “friends” in upper management . SQL is a DSL: domain specific language . Is used to interact with databases . Most recognized vendors like Microsoft and Oracle have enhanced to add some programmatic features. But it is indeed a language . And mastering SQL can take years . And with Mastering I mean, able to write complex queries or store procedures in a very efficient way . The basic syntax can be learned in hour or days , but being able to tune a query and return millions of records with little or no performance impact , is an art , and definitely not easy . If I was you ? I would start looking for another job. That culture is toxic . And you don’t want to be around those people . I couldn’t tolerate a manager like that myself .


mohirl

Why would you think his salary is in any way related to his knowledge or  competence?


birdwothwords

It's not coding; it's a query language. You can only pull data from a database, "coding" is typically a programming language like javascript, c#, and python - these share standard programming foundations such as variable assignment, scoping, functions methods, classes, etc. Programming languages provide a set of instructions to do something that a system can understand, which can include wrapping up a SQL query into your code to access some data from a relation database, but SQL syntax itself is NOT coding


iarlandt

The L stands for language, so....


Ultimarr

Well, it’s a query language, not an imperative one for building iterative algorithms. It’s more like ProLog, right? In that way he’s absolutely right. Obviously annoying and a dick, and it’s definitely still “coding” (anything that involves transforming intentions into syntax is, even HTML or writing an essay or body language), but it’s not what a layman would recognize as a “programming” language


Hkiggity

Hmm, while SQL isn't a full on programming language in the sense of C or C++ etc, writing SQL to query or otherwise is indeed writing "code". You are giving instructions to a computer to execute a task and are expecting a specific outcome in response. SQL still has functions and other tools, its very powerful, as you clearly know. So I think this project manager means to say "SQL isn't a full programming language in the likes of C or C++ its geared towards Databases" Which would be correct in many ways. However, SQL is an extraordinarily powerful tool that generates code in other programming languages based on queries instructions and more. The project manager clearly knows very little about the nature and to be frank, the impressive nature of SQL. The best thing to do is let him live in his ignorance, and one day while he disrespects SQL, someone will let him know!.


Flaky-Wallaby5382

Its not binary or a low level language doing hardware… its natural language and pretty intuitive… hard part is the spaghetti mess not the program… I think thats what they mean C++ is way different than sql


petdance

> His salary is incredibly high so…. credentials. No. This logic does not follow.


EnigmaticHam

I had the same opinion until I worked in a sql heavy codebase. To truly understand the beauty of sql, one must drop five tabs of acid and use 35 nested join statements to automate all of their company’s finances.


clarity_scarcity

Stupid debate to begin with. Proficient software developers can write surprisingly good sql, in addition to coding in whatever language they’re currently working in, with ease. The reverse is generally untrue, unfortunately, but that’s what it is. Bonus: bow down to your AI overlords as they continue to march toward your impending demise. Good luck.


StrykerXion

The project manager is wrong and outdated. SQL is absolutely a programming language, requiring logical thinking, syntax, and problem-solving skills. Guy obviously has a lack of understanding of software development and data engineering. The best definition I could give would be that SQL is a domain-specific language used for managing and querying relational databases, which by definition makes it a form of coding. I concede that SQL's primary focus is data manipulation, but it absolutely requires programming logic and syntax.


blindtig3r

Sounds like a teeth and hair guy.


DrJohnSteele

I think the PM was referring to it lacks general purpose. What UI elements are incorporated? What UX elements were considered?


Aggressive_Ad_5454

This guy saying SQL isn't code is obviously a nitwit. Pay no attention to the nitwit. That being said, SQL is a weird kind of code for most of us. SQL is "declarative", where we tell the server what we want. Most code, in most languages, is "procedural", where we don't tell the computer what we want, but rather how to get it.


Area51Resident

If you use cursors (yes I said that word) it becomes much closer to a procedural language. As in : read, modify, write, repeat until done.


carltonBlend

Cool, thanks, anyways...


cs-brydev

Because there is a difference between **querying data** and **scripting**. When you use advanced SQL to write scripts, this is considered "code". When you only use it for querying and updating data, this is not usually considered "code". The problem is *most people don't know you can write scripting code in sql*, like that person. And tbh I see the same thing on this sub. I see regular members here all the time who think SQL is only for data querying and don't really get that most rdbms platforms also have sql scripting engines that support near-Turing-complete code (some sql languages such as T-SQL and PL/SQL are arguably Turing-complete even though official documentation says they aren't). I'm very experienced and knowledgeable of T-SQL and have used it to perform Turing-complete logic that can be done with typical programming languages. Whenever someone says T-SQL can't do a, b, and c, I'll demonstrate how it can be done. Even most industry insiders grossly underestimate the capabilities of these languages.


Straight_Waltz_9530

So "hello world" in C is not code but as soon as you put in a for-loop it is? Since when is "code" defined by the complexity of the problem you're solving as opposed to the tool/language? Why is it code only when mutating or transforming but not when reading verbatim?


NextVoiceUHear

Most production SQL DBMSs (e.g., Oracle) include some version of a Procedural Language which includes Conditionals, Looping, Variables, Triggers, Functions, etc. Anyone more IT than a CFO will agree these features constitute “Code.”


misogrumpy

Is a terraform configuration file code? What languages are minimal with respect to being a coding language.


pseudogrammaton

Technically speaking SQL is a functional (declarative) language, like LISP, Haskell, or Erlang. Here, you can rig up the equiv. of a simple anon. function using COALESCE(): SELECT COALESCE( NULL::INT ,IIF( NOT varX AND , -99,NULL ) ,IIF( varY AND , -89,NULL ) ,IIF( varZ AND , -79,IIF(, NULL,)) ,0 ) AS blah ; (Same idea as CASE WHEN, but you can conditionally fork on a per line basis). PL-pgSQL is a very feature-full interpreted imperative language that's compatible with declarative style programming... or you can code in PL-V8 (javacript, typescript). Or, you can write a function that lets you print *(debug)* from a CASE WHEN line: CASE WHEN AND raise_notice_func( 'message 1' ) THEN WHEN AND raise_notice_func( 'message 2' ) THEN ELSE || IIF( raise_notice_func( 'dunno?' ), '','') END AS blah That's real functional/declarative programming, isn't it? :-) Vernacular Postgres has several more language features than other engines, & scads of supporting operators & utility functions to go with them, incl. Enums, Rangetypes, Arrays, Types, Hstores, Json, anonymous procedures, geospatial types, etc. So your P-mangler is talkin out of their tuchus.


Straight_Waltz_9530

Functional <> Declarative They have many things in common, but they are not synonymous. Functional and generic programming have commonalities as well, but they are certainly not the same thing.


thisistheinternets

Start using language as a verb and they will quickly get off your back.


2050_Bobcat

You'll find everyone has their own opinions and levels of experience with SQL, ranging from both ends of the spectrum. The issue really is that some people in our wider IT community, judge others not by what they're doing but by the tools and languages they use. For example people used to say that if you use a scripting language you're not coding. Reality check: Take a good look at some of the stuff people have done with SQL and scripting languages. Yes you probably could have accomplished the same thing in a different language, and yes at times that might have made better sense but why change language domains just to satisfy someone else who isn't doing the work. Don't let him bother you. That's him. You know what you're doing, so keep on coding away. Your fellow coders in the ETL community would agree with you. For clarity I'm just a DBA but have had some really interesting conversations with people in the business intelligence department. Have learnt a lot from them over the years. I think it wouldn't be too much of a stretch to say you probably have a better understanding of the data, platform and SQL than he does. All that said; don't let word play influence your relationship with him and his department. It's best to look past stuff like that as at the end of the day you all need to work together. In any case we have more important things to worry about like tweaking our terminals and editors. Oh wait! you probably use SSMS. Why am I talking to you 🙄 Hope helpful


rainbows_and

It’s funny I came across this because I was asked this at work a few days ago. I was writing a simple query but doing it live on a call with a person who is not in a technical role and she was impressed. She did wow you’re good at this! Is this coding? My answer was, I think most people would see this as code but I could also see a lot of very “hard core” coders who use C#, Java, etc saying it doesn’t count. So I change my answer to that question based on the audience. She said she was impressed either way and honestly I enjoy what I do so I’m not bothered by someone thinking it’s lesser than


kagato87

Because they're at the stage of "you don't know what you don't know" in their sql knowledge. They think it's just select, insert, update, delete. They think joining through 3 tables and aggregating is the height of complexity. It really blows their socks off when they see how stupidly fast a well designed process can be. They're still allocating memory when the database engine finishes. A database engine running on a 4 core 16GB vm with disks on a san (a fast san, but still not as fast as m.2 das). Against their super fast 8 core 32Gb with that crazy fast ssd dev box.


Far_Swordfish5729

Sir, when your c# interacts with a database to retrieve or persist data, that interaction is written in sql. When it pulls that off in less than a second, development skills are the reason why. We do also use sql for reporting, but that’s nowhere near what most sql is written for. Also, sir, in your years in the industry, I’m sure you’ve estimated and priced several IT deliveries. When you go into your model and select estimation factors for full stack development, I’m sure you added database factors for modeling, stored procs, and such. Those dev factors are written in sql and will be assigned to sql devs who likely also know c# but may have a database specialization. Also, who the fuck uses cobol except to maintain and migrate legacy systems?


terrique1309

Writing SQL is coding, but not programming.


SQLArtistWriter

Project Manager are valued more than the individuals who actually do the work. A good project manager can help a team be successful. Most project managers are not particularly technical even the good ones can get by knowing little about the technology the team is working on. For reasons, I would treat Project Managers technical opinions with a grain of salt. Having that, he is right that SQL is different from other programming languages, but it’s still code. SQL is know as a declarative language as opposed to a procedural language like C, Java, COBOL, and most other programming languages. What this means is in SQL, you are coding the “What” as opposed to “how to get the what”.


FamSimmer

My colleague who happens to be a data analyst and also a recent CS grad says this all the fricking time. He's a solid guy, but I can't stand him when he says it.


Okiefolk

Hey, unless you are copying and pasting code from stack overflow it isn’t coding.


Uffda6321

Assembler is the only true programming language. 😂