faustinoaq changed the topic of #amber to: Welcome to Amber Framework community! | https://amberframework.org | Developer happiness, productivity and bare metal performance | GH: https://github.com/amberframework | Docs: https://docs.amberframework.org | Gitter: https://gitter.im/amberframework/amber | IRC Logger: https://irclog.whitequark.org/amber | Amber::Server.start
x_decimal has joined #amber
x_decimal has quit [Quit: Leaving]
<FromGitter> <Blacksmoke16> @drujensen that pr looked good from what i could tell glancing thru it this morning
<FromGitter> <Blacksmoke16> just got home from class but you beat me to it :p
<FromGitter> <drujensen> lol. ok
<FromGitter> <drujensen> thanks
<FromGitter> <drujensen> I’m going to add some documentation then release
<FromGitter> <drujensen> not sure if your interested but we need to look into if we can merge the querying and the new query builder
<FromGitter> <Blacksmoke16> does this mean that this is a massive breaking change and things like `User.find 1` wont work anymore?
<FromGitter> <Blacksmoke16> or is how we're implementing the building stuff just a optional way of querying
<FromGitter> <drujensen> no, no. I kept everything that was conflicting
<FromGitter> <Blacksmoke16> is mean like when its all said and done
<FromGitter> <drujensen> so i commented out the builder find and count for now
<FromGitter> <Blacksmoke16> i mean*
<FromGitter> <drujensen> oh, i hope not
<FromGitter> <drujensen> not sure
<FromGitter> <drujensen> would be nice to be able to keep both but have it work using the builder
<FromGitter> <drujensen> not sure thats possible though
<FromGitter> <Blacksmoke16> :shrug:
<FromGitter> <drujensen> another thing I think we should add is `join().on()`
<FromGitter> <Blacksmoke16> Hmm I'll to play around with this query builder this week, it's pretty foreign to me
<FromGitter> <Blacksmoke16> At least in regards to how it works
<FromGitter> <drujensen> yeah, it takes some time to grasp it
<FromGitter> <drujensen> but its a really good design pattern
<FromGitter> <Blacksmoke16> seems pretty slick
vivus has quit [Remote host closed the connection]
<FromGitter> <drujensen> please review when you get a chance
_whitelogger has joined #amber
<FromGitter> <kingsleyh> @drujensen yes usually the pattern doesn't fit so well with no sql databases with regard to the relationships. But I think it depends on how you use the database - I've been through various phases - in RethinkDB there is the concept of a Database which has tables - and you put json into the table. So I do find myself treating it more like a relational database where I split my data up logically into different tables
<FromGitter> ... and have relationships between the tables. The other extreme is to put large documents of json in a few tables. Also there is a ruby ORB for RethinkDB - which seems to do ok: https://github.com/nviennot/nobrainer
_whitelogger has joined #amber
_whitelogger has joined #amber
_whitelogger has quit [Excess Flood]
_whitelogger has joined #amber
feepbot has quit [Ping timeout: 252 seconds]
feepbot has joined #amber
<FromGitter> <Blacksmoke16> @drujensen i added some comments
<FromGitter> <Blacksmoke16> @kingsleyh would be interesting project
wontruefree has joined #amber
wontruef_ has joined #amber
wontruef_ has quit [Read error: Connection reset by peer]
wontruef_ has joined #amber
wontruefree has quit [Read error: Connection reset by peer]
<FromGitter> <drujensen> @kingsleyh yes. I’ve worked with document based db’s. I’ve seen some try to use them as relational db’s which i think is a mistake. They are really designed to hold large amounts of documents but not really designed to handle relationships. You can do some tricks like reverse indexes to make it tolerable but you lose ACID when you go away from a relation database system.
<FromGitter> <drujensen> My take is an ORM is not the best wrapper for a NoSQL db. It’s always possible to do but I think its probably best to use a different pattern.
<FromGitter> <drujensen> You could do a new Object Document Mapping (ODM) project for NoSQL db’s. Support RethinkDB, MongoDB, etc.
<FromGitter> <drujensen> You could add a generator to Amber once we get the recipes figured out. Sounds like a fun project!
<robacarp> has a standard-ish query syntax evolved for those projects? I've always been impressed at the diversity of features they provide, but it seems like it'd be hard to build a generic interface around document storage systems with such different goals
<FromGitter> <drujensen> Just released Granite 0.14.2 with a new QueryBuilder that @robacarp created. It has the ability to chain `where` clauses to perform queries instead of using SQL. It also now support PG::Arrays and Annotations thanks to @Blacksmoke16 . https://github.com/amberframework/granite/releases/tag/v0.14.2
<FromGitter> <drujensen> There is the UnQL standard but not sure about adoption. I haven’t kept up on it
<FromGitter> <drujensen> looks like i might be dating myself. lol
<robacarp> @drujensen, thanks again for picking up the querybuilder and adding to it, I've been using it for several months now and have really enjoyed it. Hopefully others will too.
<FromGitter> <drujensen> @robacarp your welcome. It came to me on night that we can just reverse your inheritance to take advantage of the SQL since it’s pretty standard. I think its a nice addition that has been needed. I was very hesitant at first but I see the value when you look at the code.
<FromGitter> <drujensen> Next will be adding `joins` to it and moving over the other finders
wontruef_ has quit [Quit: bye]
wontruefree has joined #amber
wontruefree has quit [Client Quit]
_whitelogger has joined #amber