- cross-posted to:
- [email protected]
- ORM’s
- Place ALL of the business logic in stored procedures.
- Eliminate the backend.
- Make the front end connect directly to the database.
Profit- Introduce tons of bugs and terrible performance.
- Database is compromised within five minutes of going live.
I’m confused. Are you saying all of that is a consequence of not using ORMs? Because if so, that’s absolutely not true. ORMs truly are complete trash.
Sounds like you were hurt by an ORM.
One huge benefit of an ORM is that it does type checking. it makes sure your tables exist, relationships are valid, etc, and it makes easy things easy. If you add a column, it’ll make sure it gets populated, give you decent error messages, etc.
As long as you use a proper repository pattern setup and isolate DB interactions from the rest of the code, how you construct the queries is completely up to you. I try to use DTOs to communicate w/ the repo layer, so whether an ORM is used or direct SQL queries is largely an implementation detail.
https://github.com/launchbadge/sqlx
Not an ORM, but uses Rust’s compile time macros so you can write raw SQL and it will type check everything against either a real database connection or a JSON cache of the database’s schema.
Absolute best of both worlds.
Software craftsman
Fart sniffer detected
Am I wrong or does that title he’s given himself directly contradict his dislike of code ownership? Or is it just he assumes he deserves credit for the code written by any of his subordinates?
This might be my type of job. I ssh into a server and build the backend using bash scripting in nano. HTML and CSS is also done using nano on the live server. No SCRUM needed. We have a large group of testers we refer to as “customers”, and they pay for the privilege.
Real devs write each http response by hand. If you use a server you’re a filthy casual soydev
Lol. Let’s ban accountability, refactoring, and debugging, never work alone, never coordinate, avoid productivity, and refuse ownership—then scream when things break, don’t integrate, and fall behind schedule.
“This is all your fault!” built-in. Why didn’t you intuitively know what myX is supposed to do and how it’s used?
Provocation just for “engagement” really. 102 comments so, to some degree, it works.
E: Guys, it’s satire. Lol.