this post was submitted on 23 Dec 2023
98 points (94.5% liked)
Programming
17666 readers
306 users here now
Welcome to the main community in programming.dev! Feel free to post anything relating to programming here!
Cross posting is strongly encouraged in the instance. If you feel your post or another person's post makes sense in another community cross post into it.
Hope you enjoy the instance!
Rules
Rules
- Follow the programming.dev instance rules
- Keep content related to programming in some way
- If you're posting long videos try to add in some form of tldr for those who don't want to watch videos
Wormhole
Follow the wormhole through a path of communities [email protected]
founded 2 years ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
view the rest of the comments
SQL isn't hard to learn unless they're asking you guys to do T-SQL and PLSQL.
For simple queries it's pretty easy.
So they hit the production database or do you have it mirrored or replicated? And when everybody is running their queries overnight because the “database is slow”… not knowing SARGability? Yes, there’s a place, but “simple queries” are rarely.
For my team I have a mirror that I set up and have a bunch of ELT jobs that load the deltas every night. Queries don't ever run in PROD, if someone needs a specific view or more data, they go through me and my team. I also set timeouts, precisely to avoid the ahole from using Select * from. Also have a bunch of reports I created to see who is running what queries and timings. We review them quarterly or when someone complains or when a project that needs our data asks us for access.
We also have an autogenerated data dictionary for folks to use as well. Generally I don't entertain any "it's slow" complaints unless they go through the documentation, provide their exact query and write what it is they're trying to get.
My assumption was that OPs shop does the bare minimum in terms of making sure they don't shoot themselves in the foot.
Nicely done, dude.
What could possibly go wrong letting non-programmers write raw sql directly to the production db, it's pretty easy right.
Ooof my guy if you got folks running queries on your PROD db you got bigger problems even if they were the best SQL writers in the world.
You can't fuck up step 1 and complain the rest of the steps aren't working. I write and maintain a set of ELT jobs and a bunch of front end dashboards. By default, we never run analytics queries in PROD db. I create views and such for the simple queries to run.
I picked up SQL a few years ago for a school project. It took me a week. The DBA stuff just came by itself as I went along. Query optimizations took a while but you don't need to write every query super optimally. If the DB tables are set up correctly your users will not have to worry about it at all.
My previous comment assumes you guys already have a db set up for analytics where folks can run queries. If you don't then IDK how the director of IT got their job...That's very basic shit.
Ooof my guy, the comment you originally replied to - to brag about how easy sql is - literally said he had an IT director 20 years ago trying to get everyone in the department to write SQL queries, where did he mention frontend dash boards? How can an IT director be that stupid... what is this thread about and why do you think he shared that anecdote? A thread about idiots asking for stupid shit... I wonder what could possibly be reason, we may never know but I'm sure you'll explain it to us.
Sorry dude...writing simple queries is what I said was easy...and for the record they are. That example is probably not a great example. Simply from my experience, I never started my career in IT, I was in healthcare and far from it all.
Anyway, I've had some idiots approach me about their shitty ideas before too...most notably was one person asking to create an app that "uses AI" to help a person search for the right individual when they send a text message. Couldn't explain how it would know that it found the right person? There was another one that wanted to track the origin of "content" and how it changes over time on social media... again "using AI".