4 ms·
I don't like ORMs or abstractions like grape-swagger. I like working with the node-postgres client and knex when I need a query builder. It sounds like if that
by always_good 9y ago
I don't like ORMs or abstractions like grape-swagger. I like working with the node-postgres client and knex when I need a query builder.
It sounds like if that's the sort of kit you want, then Ruby is for you compared to Clojure/Javascript.
What I do like about Javascript is that it's easy to write ad-hoc types via Typescript for my SQL functions to specify the shape of the data that comes from the database. I would never go back to something like Active Record that tried to make me canonicalize all of my data.
I have to wonder if these are more identity-level ecosystem differences.
- eropple 9y agoI'm very confused as to why you don't care for "abstractions" like grape-swagger. Do you enjoy writing API client boilerplate? As far as ORMs go, I'd certainly prefer not to use Active Record ones, but I also don't want to have to update my code when somebody else adds a field that I don't care about. My representations specify what I care about and how it should be presented to clients (for example, hashids rather than integer primary keys); I update them only when there's a new field that I care about. I can do this with functional mapping but the database boilerplate sucks more than Sequel does (it's a big part of why I've dropped ROM, though I much prefer it in theory). Computers exist to help me do less programming, not more, and what you describe is more programming for, to me, little benefit.