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
N00bPancakes7286182dMy experience level isn't super high but every time I've dorked with an ORM... it's just another thing to learn that is in my way.
Like I get something out of using a web framework and learning angular-isms or react-isms or whatever ... ORM-isms have just cost me time.
AlmondSauce13956182dAgreed. ORMs are useful tools - I've used them on many a project. They're certainly not replacements for understanding SQL however, and anyone who uses them as such will deservedly come unstuck on all but the most trivial projects.
IntrusionCM5852182dWorst kind of ORM: those who try to abstract SQL away. Looking at you Ebeans.
It just ends bad.
And yes. That post deserves it:
Can I get an ameeen in here?
@N00bPancakes oh definitely, knowing how they work is fine and I don't expect everyone to have data analyst level SQL skills man, but to reaaaally make an effort to learn SQL before attempting to play with an ORM, in my experience, hand written and properly developed SQL trumps ORMS all the time, you can really get far with it
N00bPancakes7286182d@AleCx04 For me I work in a small shop, 3 devs. We know the database and SQL is a way of life, doesn't matter what your job title is.
So if someone asks me for X,Y,Z. I think of the DB, how I want to make that query and ... then I write my front and back end code and so on.
If I were at some huge company and maybe there's some DBAs and even an ORM guy(s).... yeah I could see me just calling some API and that calls some ORM like stuff that the ORM guy manages his thing and I'm doing my front end thing only.... sure.
But beyond that ... every time I've played front end guy and had a back end guy to work with and I get some output I don't get I end up with "bro just let me see the SQL here..." and we all work it out that way ;)
IntrusionCM5852182d@AleCx04 most people imho are taught SQL fundamentally wrong.
Either by ignoring SQL and choosing Oracle "" SQL "", ignoring that SQL is set theory and trying to make it " object like... Or and that's the worst kind... Make it as dry as a glutenfree oat cookie lying in the desert for several months and teaching it by mathematics only.
In Germany, the "Berufskolleg" does all three or one of three. From > 5 apprentices I had - none got taught SQL in a way that anything good could grow from it.
@mcfly prepare yeself at night lad
superposition742181dWe just had discussions about this at work. I'm somewhat weak in mysql and my boss knows db's like nobody I've ever seen. 70% of our optimizations for performance are db related like figuring out how to ensure tmp tables arent created on large datasets because tmp tables take a lot of time. Using indexes properly etc. Is really interesting and def something that needs to be learned very well to expand your career in this field.
I started with ORM and for years didnt have grasp on sql until this job. I'm just lucky to be working with the people on my team.
You can get away with ORM covering for you up until a certain point. Once the application gets to a critical point and the datasets are huge most of those ORM core functions have to be visited and optimized anyways. ORM developers seem to prioritize being able to manipulate data many ways on smaller datasets vs handling extremely large datasets well.