Комментарии:
yes, me too. Important to know them for enhancing existing apps that already use it. But my own projects - no ORM: lighter and faster. Who understands SQL and DAO pattern may build clean solutions. That is my POV.
ОтветитьStatus Check:
Is he still staying strong on his choice of not to use an orm anymore in his life?
What kind of opinionated idiots Jetbrains are inviting for webinars. Really, such a hopeless channel.
ОтветитьPure bullshit!!! Do not watch this video and save yourself some valuable time.
ОтветитьI love this guy's accent.
ОтветитьJust putting it out there, Pareto principle is not a fact at all, its very circumstantial and not very reliable when put throught rigor. And optimizations based on this will suffer the same fate. Its' time we stop using shitty examples and spreading misinformation based on hearsay.
ОтветитьThis type of content regarding being against "x" technology confuses those of us who are learning a lot, you no longer know if the paradigm you are studying is correct, if it is correct or not to use certain resources.
So what the hell do you recommend to those of us who are just starting out?
This was a good watch, thank you !
Ответить🤦 comments aren't shipping any software any time soon. ux demands are at all time high right now. you can't spend too much time on mundane tasks. orms offer better dx for doing the those tasks and ensuring everything is well buckled so that if things will break, they break before deployment and not test before things break. < i smell gaslighting on the latter. we can't rely on code reviews alone for catching every case there is nor should we be able to cover all test cases. defense programming creeps in here
example story. if you're a guest, only show 3 post previews of someone's profile. in this example, if you hand-coded your authz rules in sql, not only are you leaking your business logic in your data server, changes will not break even they should be. IME best to avoid hard-set rules and you want to put them in a single place so changes are safer to do.
Orm makes the easy tasks easier and the hard tasks harder.
Ответитьdid I just watched an ad ?
Ответитьover exaggerate and underestimate, what else can i expect from a life dedicated serious nodejs developer, i accept that i'm an average programmer, but i wouldn't buy that tons of brilliant minds before me did it wrong to be corrected in 24 minutes through another js framework ending with "-fiy" creator...
ОтветитьSo we should write SQL for everything?
ОтветитьActually I would prefer using ORMs over the microservice architecture (and orchestration) madness that comes with it.
ОтветитьAs Ted Neward said, ORM is the Vietnam of computer science. :)
ОтветитьI feel like every time people complain about ORMs, they complain about active record ORMs and others where the model classes are bloated spaghetti tightly coupled to the DB.
And even if not, there's usually complaints about n+1 queries, as if every competent ORM didn't have multiple ways to stop that.
Or deliberate ignorance to the fact that you can still make complex queries by writing SQL when it makes sense to.
The only SQL I saw in this presentation was some DDL to create migrations. All the actual queries were handled by some magic transformation thingy, more magical than any ORM I've ever seen. How would you actually run your own complex SQL query? How do you handle a more complex update case where you need to query data, then patch part of it from user input and part of it from some other source? How do you do all of that transactional? Locking, optimistic and pessimistic?
In my experience, logging becomes ugly when you're never sure which fields of your entity were actually pulled from the database. It's also bad when you query some related data that you happened to have already queried earlier and changed, but haven't commit _yet_; An ORM, it will know that the entities were already hydrated and return references to your existing, updated entities (unless you explicitly want it not to); some self-written SQL repository will give you what's in the DB right now, so now you get to deal with inconsistent data. Dirty reads aren't a feature, but a bug.
This is one of the worst videos Jetbrains has released for sure
ОтветитьHe's confusing general ORM with one instance of it he didn't like...
ОтветитьPere con le noci. Un ORM solo si occupa della persistenza e gli oggetti non sono row del DB di fatto il "Mapping" si occupa esattamente di trasformare file e colonne in grafi. Puoi usare ORM ed aavere una struttura basata in features e/o microservices con widespread persistences... e lo dico perché sono 15 anni che le cose che faccio funzionano cosí. Comunque opinioni sono opinioni, l'importante é non crederci troppo a quello che si dice.
ОтветитьLove this stuff Matteo ❤
ОтветитьDid not expect such a video on JetbrainsTV.
Have high expectations. Got a bad idea implemented in probably the worst possible manner.
This was a promotional content, at best.
TBH, I am short on words to express the concerns and disappointments that I have from this video.
I wasted 25 minutes of my life
Ответитьhorrible, this prick has only worked on small projects to have this kind of opinion... unfortunately, most of us work on large stuff
ОтветитьLove it
Ответитьusing npm while talking about introducing complexity using ORM (I agree 100% btw.) seems weird.
ОтветитьHas this guy ever worked on a real project? 😂
ОтветитьNever say Never.
ОтветитьFocus on domain problem, when i use SQL i start to concern about all those SQL stuff, it too low level for me, the code seem ugly, why i need to concern about return value is a collection of rows, it can't be lint since it live inside TS/JS file, also you can write reusable class with ORM, data mapper, seperate between domain class and database entity class.
ОтветитьSo, basically you wrote an unmature version of Django in JS. Congratulations on this. I always wondered when JS would catch up on these 15-year-old ideas. Interesting to see, but neither new nor revolutionary I'm afraid.
ОтветитьThis is technological propaganda in its finest form, these people seriously don't know what they're talking about. Why would you not use an ORM, which, typically, handles malicious attacks like SQL injections under the hood? Why would you manually handle stuff like that instead of using an ORM? Why would you write raw SQL queries when using an ORM is more secure? JetBrainsTV, if you're reading this, it's best to take this video down. You're spreading dangerous misinformation. What a shame.
ОтветитьYou're using JS on the backend and swearing at ORM. You must have gone crazy.
ОтветитьThe arguments are so so bias and inconvenient.
ОтветитьSorry, dude! CTO/Architect/Developer for over 30 years. You are wrong.
ОтветитьJpa hibernate saves my whole life 😂😂😂
ОтветитьI grew out of ORM and other indirections years ago. I like simplicity.
ОтветитьModels are database tables. So soon you will have 2000 models: well, duh! If you have 2000 tables, you have 2000 models. My guy has no point at all.
ОтветитьI don’t see why so many people say that js is slow in backend. Most of the time the slowness results from the one who writes codes, not the language itself. In fact, considering io bound nature of most web applications and the v8 engine, js can have performance roughly equal with or even better than compiled languages like C++.
ОтветитьTry Object Role Modeling. Many things can be derived from a well thought out model of the facts at hand.
ОтветитьNice!
Ответить2min in, why orm is bad:
- you are not able to handle 2000 models
- there is no place to put the business logic but controller or model
- orm code results in spaghetti code - always
complete unrealistic and false assumptions
I want to learn concepts on building an ORM. What are these concepts?
ОтветитьTo me it looks like he just wrote a clickbait title ,to introduce his own framework while only talking about orm cons to make it look legit
ОтветитьI will treate ORM as infrastructure layer in DDD, which makes great separation of concerns.
ОтветитьPlatformatic = ORM + Code generator.... I don't see the difference.
ОтветитьHe said " Objet oriented mapping ", seriously ?
Ответить"Models represents a row in a database", Wrong, that would be a ROM. ORM takes an object model and uses a relational database for persistence. When using an ORM your thought process should be evolve to "Database? Isn't that where I store my objects?"
ОтветитьBeen using EdgeDB to avoid orms and it is such a joy to work with.
ОтветитьFor the people complaining about him using JS for the backend, this is a JS talk.
Ответить