Do all the things like ++ or -- rants, post your own rants, comment on others' rants and build your customized dev avatarSign Up
From the creators of devRant, Pipeless lets you power real-time personalized recommendations and activity feeds using a simple APILearn More
Search - "sql"
#2 Worst thing I've seen a co-worker do?
Back before we utilized stored procedures (and had an official/credentialed DBA), we used embedded/in-line SQL to fetch data from the database.
var sql = @"Select
Id = @ID"
In attempts to fix database performance issues, a developer, T, started putting all the SQL on one line of code (some sql was formatted on 10+ lines to make it readable and easily copy+paste-able with SSMS)
var sql = "Select ... From...Where...etc";
His justification was putting all the SQL on one line make the code run faster.
T: "Fewer lines of code runs faster, everyone knows that."
Mgmt bought it.
This process took him a few months to complete.
When none of the effort proved to increase performance, T blamed the in-house developed ORM we were using (I wrote it, it was a simple wrapper around ADO.Net with extension methods for creating/setting parameters)
T: "Adding extra layers causes performance problems, everyone knows that."
Mgmt bought it again.
Removing the ORM, again took several months to complete.
By this time, we hired a real DBA and his focus was removing all the in-line SQL to use stored procedures, creating optimization plans, etc (stuff a real DBA does).
In the planning meetings (I was not apart of), T was selected to lead because of his coding optimization skills.
DBA: "I've been reviewing the execution plans, are all the SQL code on one line? What a mess. That has to be worst thing I ever saw."
T: "Yes, the previous developer, PaperTrail, is incompetent. If the code was written correctly the first time using stored procedures, or even formatted so people could read it, we wouldn't have all these performance problems."
DBA didn't know me (yet) and I didn't know about T's shenanigans (aka = lies) until nearly all the database perf issues were resolved and T received a recognition award for all his hard work (which also equaled a nice raise).7
Dear Microsoft Kusto Query Language (KQL)
Screw you. You suck like more than a sudden depressurization event in an airplane. Creating your own freaking query language is bad, the people who invented SQL based it on a the principles of mathematical relational algebra, which although confusing, and not suited for all use cases is at least consistent.
You were invented by a bunch of oxygen deprived halfwits based on the principles of sadism and incompetence.
The only situation in which I would voluntarily use KQL as my tool of choice is if my purpose was to extract a Dantesque style revenge on someone who had committed grievous harm to myself and my family members. In that case forcing them to work with you day in and day out would still border on cruel and unusual punishment.
Sincerely, A developer who has spent the past 2 hours dealing with your Lovecraftian madness.
P.S. I hope you choke on a raw chicken bone and no one gives you CPR.6
How do you pronounce SQL?
"See for me, I just go my own way and pronounce it as ‘sqwool, or ‘sqwll’, which sometimes gets my coworkers (not db or programming people) calling it ‘Squirrel’. As such we have a custom written utility program which automates running certain SQL commands on various databases which is aptly named SQuirreL. Then we started to have fun with it: The ‘pre-defined’ sets of SQL are held in a ‘.nut’ file which you give to SQuirreL. When you want to see what scripts have been run, you check the SQuirrel’s .log to see what .nut files it has ‘eaten’. We thought about naming the log files .poop, but I felt that was too far. I know right now there’s people reading this cringing, but I say lighten up. My boss when presented with the tool, did not get ANY of the Squirrel/nut references… I mean the tool’s icon was a cartoon squirrel holding an acorn for crying out lout, but I digress.
So yeah, I call it Sqwll or Sqwool, but only when talking to people who don’t matter."
Source, in the comments: http://patorjk.com/blog/2012/...
I doubt this has ever been posted. =)9
Let's say you have a MySQL database table for jobs. Each job has 1 associated ticket. You want to keep track if the ticket is closed or not. Every sane person creates jobs table, tickets table, keeps bool value for ticket state and relationship between them.
But because our database is designed by a half braindead amoeba, we have one table only, so each job has to be updated individually with a new ticket number and its state. Beacuse it sooo much faster to update (daily!) 13k jobs than just 100 tickets.
As a bonus - if the ticked is closed, the column "ticket_closed" is "No", if it's still open the value is "FALSE". Yes, both as varchar/strings.7
Hired a new BI developer. She tested reasonably ok in SQL, and certainly showed good strengths in visualising data, plus had a good attitude in the interview. We hired her. She broke her laptop the first day. We got her another then she complained the camera didn't work but didn't realise the lever in front of the camera was to move the privacy shutter off and on.
Assigned her some work of taking queries that are used in a BI tool that targets the transactional database directly, and re-jigging them for Snowflake which we're using as a data warehouse now, aggregating all our data into one place. Yet, she's struggling to understand why the SQL query she's pasted in doesn't work as-is.
I go over it again; the source schemas and tables are this, but in Snowflake we've named them this. She then bemoans how much work that is to change them all - I say use find and replace. She then struggles with Snowflake syntax errors and asks for a guide on T-SQL to Snowflake. I show her Google and say "this is what I did when I hit these problems - search for 'Snowflake equivalent to T-SQL getdate()' or 'how to get current date in Snowflake' but she still doesn't understand. I ask if she's every had to work between T-SQL and MySQL or MySQL and PostgreSQL or Oracle and so on and she says yes. I say the syntax isn't the same, is it? And she goes oh, now I understand.
She scored reasonably in her SQL test but I'm now concerned there's something fundamental missing in her grasp of SQL. I gave her a detailed demo of the tools, I explained in the interview and on her start about our move to a data warehouse for all our apps, and put her through some training plus gave her time to work through our Confluence pages - not expecting she'll remember everything, but more to ensure she recalls they exist and what the general contents are.
Anyhow, that's my rant.7
BI dev: Hey, can you help me with my SQL query?
Me: Sure, let me see it.
BI dev: sends screenshot - not even the whole query, literally a screenshot with a segment of text in it. No errors showing either.
I'm trying to code here and can't do find/replace in SQL Server mgmt studio because fucking "antimalware" malware uses most of my CPU. I'm sure Microsoft is mining crypto3
What is it with devs (not all, by any means!) who don't understand networks or basic computer operation? I'm not talking about anything complex, but things like the dev who asked if his IP address could be whitelisted so he could remote in from home. We asked what his public IP address is and he said 10.0.0.27.
Or the new dev who started and said her laptop camera didn't work and logged a ticket, only to be asked if she had the camera cover open or closed and said, "oh, that's what that lever is for."
Don't get me wrong - many devs and sysadmins and IT people of all fields are excellent. And there are some who are crap in every field. This is no rant about devs in general, just *these* crap devs that I can only throw my hands in the air and think, well, they scored ok in the SQL test.4
This may be the best Stack Overflow comment I have seen when learning SQL.
How old is Frank? I don't know (null).
How old is Shirley? I don't know (null).
Are Frank and Shirley the same age?
Correct answer should be "I don't know" (null), not "no", as Frank and Shirley mightbe the same age, we simply don't know1
Offensive and defensive at both code and infrastructure levels.
So many times I see devs not give a flying pancake about security. Whether it be rolling integers for sql injection or permission guarding to prevent someone executing something they shouldn't.
Why is security in this industry always the last thing to be concerned about when it's the first thing that's going to kill your business.
My friend is learning PHP and I told him to install xampp but that fucker went nuts and installed MySQL too which didn't allow the xampp's SQL and ended in conflict.
Oh man that's so funny when non programmers don't do what we say.2
When used properly No-SQL databases are an incredible resource but my employer keeps hammering them in problems which could better be solved by traditional SQL databases in an attempt to be more "hip" and "cool".
This causes huge PITA in making the database work properly with the ORM we're using and waste of time since we're force to emulate basic features which are already exists in almost any SQL database (i.e. relational integrity) using No-SQL storage.1
i dont know sql, gotta look shit up and dont much of it really internalized
i may be now being assigned somebody else's task to do some sql shit
fucking kill me4
a friend of mine has applied at a company who have sent them this task* to complete before the job interview.
They gave about 10 days to complete this.
*I rewrote it
Personally I think this is super overblown and way too much to complete as a test before the first interview.
They expect the applicant to configure an SQL database, a backend with a custom API and a UI.
It's like a fullstack prototype software, not a task.
Im not in web development and I wouldn't feel confident learning these technologies in my free time in just a few days.
I said that this felt like some HR manager writing up the test or that they want the applicant to create a prototype for free.
Am I being too extreme here? To me it feels overkill, what do you all think? Is this common?
Oh and I should mention, this is for an internship position for a bachelors student.22
Recruiter bot just emailed me with some offers, let's take a look...
"Hand-on Experience with SQL and NO-SQL Databases preferably Redux"
Whew! I was worried for a second, thank god they are using a Redux database and not one of those really crappy React databases! I'll really consider applying now.
Old old organization makes me feel like I'm stuck in my career. I'm hanging out with boomer programmers when I'm not even 30.
I wouldn't call myself an exceptional programmer. But the way the organization does it's software development makes me cringe sometimes.
1. They use a ready made solution for the main system, which was coded in PL/SQL. The system isn't mobile friendly, looks like crap and cannot be updated via vendor (that you need to pay for anyway) because of so many code customizations being done to it over the years. The only way to update it is to code it yourself, making the paid solutions useless
2. Adding CloudFlare in the middle of everything without knowing how to use it. Resulting in some countries/networks not being able to access systems that are otherwise fine
3. When devs are asked to separate frontend and backend for in house systems, they have no clue about what are those and why should we do it (most are used to PHP spaghetti where everything is in php&html)
4. Too dependent on RDBMS that slows down development time due to having to design ERD and relationships that are often changed when users ask for process revisions anyway
5. Users directly contact programmers, including their personal whatsapp to ask for help/report errors that aren't even errors. They didn't read user guides
6. I have to become programmer-sysadm-helpdesk-product owner kind of thing. And blamed directly when theres one thing wrong (excuse me for getting one thing wrong, I have to do 4 kind of works at one time)
7. Overtime is sort of expected. It is in the culture
If you asked me if these were normal 4 years ago I would say no. But I'm so used to it to the point where this becomes kinda normal. Jack of all trades, master of none, just a young programmer acting like I was born in the era of PASCAL and COBOL9
Tech people should have a codeword. So that I don't have to explain to every data provider showing off their own crappy limited analytics tool that "I do know what SQL means and I just need the ODBC user/pass, thanks".
I wish I could just say "hey, &0x00A0 = 1337;" out loud and he would be like "oh, thanks! I needed the break. Here is the ODBC crap, I'm gonna grab some coffee."5
GraphQL question here!
So i recently noticed (few years after everyone?) That graphql seems popular... I decided to try it out, but after playing with it a bit, the conclusion I came to is, that it's a great idea from FE point of view, but for the backend not so much.. a simple sql to return data to ui turns into a bunch of parts, all independant and with even the simplest relationship to some other entity the whole thing becomes very not optimized and when googling about it, all i found were some very awkward libs for work arounds to force everything into 1 optimized query again... But wait, i already have 1 optimized query in my rest api 😆
I don't understand if I'm missing the brilliance of graphql that everyone saw, or is everyone fell for the hype and use a stupid tool and pretend it's cool? 4
I currently work on a legacy system for a company. The system is really old - and although I was hired as a programmer, my job is pretty much glorified data entry. To summarise, I get a bunch of requirements, which is literally just lots of data for each month on spreadsheets and I have to configure the system to make it work, which is basically just writing a whole bunch of SQL scripts.
It’s not quite as simple as that, because whoever wrote the system originally really wrote it backwards, and in fact, the analysts who create the spreadsheets actually spend a fair bit of time verifying my work because the process is so tedious that it’s easy to make a mistake.
As you can guess, it is pretty much the most boring job ever. However, it’s a full time job with decent pay, and I work remotely so I can stay home with my son.
So I’ve been doing it for about 18 months and in that time, I’ve basically figured out all the traps to the point where I’ve actually written a program which for the past 6 months has been just doing the whole thing for me. So what used to take the last guy like a month, now takes maybe 10 minutes to clean the spreadsheet and run it through the program.
Now the problem is, do I tell them? If I tell them, they will probably just take the program and get rid of me. This isn’t like a company with tons of IT work - they have a legacy system where they keep all their customer data since forever, and they just need someone to maintain it. At the same time, it doesn’t feel like I’m doing the right thing. I mean, right now, once I get the specs, I run it through my program - then every week or so, I tell them I’ve completed some part of it and get them to test it. I even insert a few bugs here and there to make it look like it’s been generated by a human.
There might be amendments to the spec and corresponding though email etc, but overall, I spend probably 1-2 hours per week on my job for which I am getting a full time wage.
I really enjoy the free time but would it be unethical to continue with this arrangement without mentioning anything? It’s not like I’m cheating the company. The company has never indicated they’re dissatisfied with my performance and in fact, are getting exactly what they want from employing me.4
What have you suggested at work which sounded like a good idea at the time, but now sounds like a nightmare?
I inherited a nasty old legacy c# desktop app a few years ago, I was a sql developer so it was a steep learning curve, but I’ve tried to make it better, fixing things as I go.
I had the bright idea of mentioning that I would look at starting to add unit tests etc.
It seemed like a good idea at the time, but now I’m not so sure.3
What are your use cases for noSql dbs? I haven't really found a reason beyond stuff like chat messages or logs, but even those tend to work perfectly fine with SQL.
I imagine they're pretty good for prototyping, but haven't really tried them out for that yet. Perhaps for cases where you're handling billions of records?10
A question to all software security specialists of devRant. Please, take it serious.
Is it fundamentally possible to restrict a SQL database like Postgres in a way that unintended SQL queries are impossible to execute? Perhaps in some kind of whitelist fashion. Is it possible to achieve the kind of security that will be just fine exposed to the outside world akin to "SQL queries in onClick handlers" scenario?
Or is this an uphill battle of never being able to moderate an infinite set of possible fraudulent queries?5
Whenever I see an ORM that supports creating and transforming objects in bulk, I can't help but think about the poor misdirected users who forced it to do that. It's an Object-Relational Mapper. It maps objects. The whole concept isn't designed for bulk operations, the point is that you add logic to each and every record and convert your operations to SQL so that you never have to keep a lot of them in memory.4
I had been assigned a task to create a cross-platform desktop application that keeps track of the expiry of a certain product and notify in real-time.
So, my journey to create such an application starts today and the list below describes the first few hours.
5. Google/Are electron.js applications platform independent
6. Google/Dart for desktop applications
7. Google/Is dart cross-platform
8. Google/Best desktop application framework
9. Google/Python for desktop app development
10. Freecodecamp/How to build your first desktop application in python
12. Google/Which is the best technology to build cross-platform desktop application
13. Google/Cross-platform desktop app development for windows mac and linux
14. Udemy / cross platform desktop app development for windows mac and linux
15. Youtube/ electron desktop app, demo
16. Youtube/ electron.js is obsolete
18. Youtube/ neutralinojs tutorial
19. Google/Neutralinojs or electronjs
21. Google/Math.js/JS Bin
22. Google/Cannot find package “math.js”
23. StackOverFlow/How do I resolve “cannot find module” error using Node.js
24. Google/ is it better to install npm packages locally
25. Quora/ why should you stop installing NPM packages globally
26. Google/ what is nvm
27. Google/nvm version check
28. Stackoverflow/node version management on windows
29. Github/coreybutler/nvm-windows: a nvm for windows. Ironically written in Go
30. Google/how to uninstall a npm package
31. Npm docs/uninstalling packages and dependencies
33. Youtube/how to install electronjs
34. Youtube/electronjs in 100s(fireship.io)
35. Roryok.com/electronjs memory usage compared to other cross-platform frameworks
36. Google/is electronjs memory hungry
37. Youtube/sql in one hour
38. Youtube/learn sql in 60 mins
39. Geeksforgeeks/connect mysql with node app
40. Stackoverflow/How to return to previous directory using cmd
41. Stackoverflow/how to require using const
42. Geeksforgeeks/difference between require and es6 import and export
TO BE CONTINUED...1
Newbie here, is storing json in sql (as like column data) as weird as I think it is or are there valid use cases?
The one I heard, didn't get the details but something like "startup move fast"12
I have to use SQL event to check if in the "plots" has specific building, and update the gold/iron/stone... by the specific amount that building produces. This is how the Gold mine creates slowly gold. I am not sure this is OK like this, please I need advice.1
so , is it possible to have different attributes for different rows of the same table , in sql?
like say we have a table of boys. one entry is :
[id:1 | name:b1 | age:12]
[id:2 | name:b2 | weight:60]
[id:3 | name:b3 | age:15 | weight:80]
this isn't a valid data, no? i mean, this can be made valid either if all the entries have both age and weight. OR if we made these 2 props a meta and attached them via ids , like :
[id:1 | name:b1 | boy_prop_list:(1) ]
[id:2 | name:b2 |boy_prop_list:(2) ]
[id:3 | name:b3 | boy_prop_list:(3,4) ] ]
where entries of biy prop list are one one rows in a table having [id boy_id key value] as a row.
but we still can't combine those meta datas to run filters on original table , right?
there can't ever be a query where we request for "age:15 AND weight:18"
then how does filters on amazon work when i search for ram=6gb and operating system = android?
one possible solution that i can see here is to have all the properties on all the products, but with a default value. in this case we can have a transactional query like :
- select all boy ids which are associated with metadata of age= 15
- select all boy ids which are associated with metadata of weight = 80
- get all the boy ids which are common in both
- get all the boys with common ids
or a join equivalent. so does thses kind of filtering really require such manual filtering of common ids?
if there was a case of having all the properties in one table itself, then it would just be a matter of adding filters in WHERE clause11
How is your experience with upgrading from Debian 8 to Debian 9? Want to update my homeserver but I really don't want to screw it up. Especially with the switch from MySQL to MariaDB1
Do companies still use the Merise method? It seems a bit off to me.
I am learning it at school, but it makes many tables that I think could be merged into one...3