På torsdag 11. august 2016 kl. 19:13:08, skrev support-tiger < supp...@tigernassau.com <mailto:supp...@tigernassau.com>>: A database is only as good as the ability to use it. Using ORM's with Postgres seems dumb, like having a Ferrari but only allowed to drive 25 kmh. Really, for getting data in and out with Postgres, SQL is pretty simple. The ORM abstractions take as much effort as simply writing direct SQL statements and convenience functions with straight sql. Ruby: The "pg" driver seems to be tweaked to work okay with active record, and maybe Sequel, but we are having problems with with straight ruby/sinatra. (see comments above re ORM's). Since we changed to Fedora and Ruby 2.3, we are now having breaking connections and JSONB query problems. This could be from lack of clear docs and examples - we cant' find any good examples or tutorials with JSONB. It seems with this driver it is Rails or the highway.
Nodejs: The docs and tutorials for "node-postgres" are a mess. The github readme, examples, and wikis are all different. Then there is "native" and "pooling" and prepared statement alternatives. Callback hell is bad enough, then to have lots of different approaches. Async/Await should help this issue (whenever it arrives in Node) but meanwhile, it's a painful struggle. Whatever examples exist are for such trivial use, they fall short of helping with real-life examples, like sequential results. Python: The Postgres team supported driver psycopg2 seems to work great (but we really don't want to rewrite lots of code into python It would be great if the Ruby and Node drivers can be brought under the Postgres team umbrella and make them as reliable and clearly documented as the Python or jdbc drivers. I cannot not comment on this. Saying that ORM seems dumb, and working with PG using ORM does not fly, is a very good recipe for not being taken seriously. Of course you can make an ORM hose your DB, but any developer could just as easily write SQL which does the same. Also, remember that PG is based on volunteer effort and if drivers for some languages are more mature and better supported than others, that's because core-pg-developers or someone in "the inner circle", or someone else, has use for them. Just because language X or framework Y popus up doesn't mean the PG-project should maintain drivers for them or support them. So - yes, it would be great if all the drivers for all languages would be made as reliable and clearly documented as the most supported ones. -- Andreas Joseph Krogh CTO / Partner - Visena AS Mobile: +47 909 56 963 andr...@visena.com <mailto:andr...@visena.com> www.visena.com <https://www.visena.com> <https://www.visena.com>