solnic changed the topic of #rom-rb to: Ruby Object Mapper | Mailing List: https://groups.google.com/forum/?fromgroups#!forum/rom-rb | Logs: http://irclog.whitequark.org/rom-rb
lgierth has joined #rom-rb
jfredett has joined #rom-rb
<snusnu> cored: is this the only task that interests you at the moment? :)
<cored> snusnu: hehe, I think is a little bit hard
<cored> I guess you want to talk about devtools, right?
<snusnu> cored: heh, it definitely sounds like a bit of a larger undertaking ;)
<snusnu> cored: heh, yeah
<cored> I have that on the back of my head too
<snusnu> cored: devtools offers lots of "easy" stuff
<cored> but I think dm-ambition could be a good addition to the family
<cored> snusnu: "easy"
<cored> point me out to them ;-)
<snusnu> cored: it could, but "unless" used with axiom standalone, it probably wouldn't be widely useful for still a while, well, at least not in Rom
<cored> I think for ROM could be good enough
<cored> I'm thinking in repository implementation
<cored> with same public API for CRUD operations
<snusnu> cored: the thing is, there are *lots* of things to do for ROM, before it's even close to being able to leverage a "more sophisticated" toplevel RA api
<cored> I see
<cored> that's a shame, ROM could change the game ;-)
<snusnu> cored: tbh, i would love to see something like dm-ambition eventually, but before this will be usable in ROM .. a *lot* of other work has to happen
<cored> like what?
<snusnu> cored: it could yes, but it's not just there yet, there's still quite some work ahead
<cored> I have to read two things to get into more ROM work
<snusnu> cored: well, there are a few quite fundamental things that are still missing, we need nest/unnest support in axiom to implement embedded collections more easily
<cored> top level arquitecture desicions and also solnic's article
<snusnu> cored: dkubb's already working on that
<cored> that also sounds interesting
<snusnu> cored: then we also need some sort of PK/FK representation .. which is necessary info for both unit of work and relationships in general
<snusnu> cored: then there's support for server generated values (especially keys)
<cored> I thought the unit of work was already done with rom-session
<snusnu> cored: once those 3 things are in place, there's nothing "foundational" stopping ROM (api) development
<snusnu> cored: "but" then there's SQL support, quite a few parts are missing there too
<snusnu> cored: like support for write ops
<snusnu> cored: and re that PK/FK thing .. axiom needs to be able to accept some kind of "join definition" in its #join api (and friends)
<snusnu> cored: something where you say, join people and addresses on people.id == addresses.person_id
<snusnu> cored: this will help both relationship definitions, and nice SQL inner join statement generation
<snusnu> cored: currently axiom emits natural joins, and while they work correctly, they're kinda hard to read, but that's not the only issue
<snusnu> cored: if axiom only knows how to perform natural joins, then the burden to track relation/attribute renaming will have to be carried by ROM … and this is stuff is .. hard/ugly
<snusnu> cored: it's what we dubbed "the jersey thing" in dm-mapper times
<snusnu> cored: so yeah, i guess that's about it … once those things are in place … rom is really useful
<snusnu> ;)
<snusnu> cored: now .. wanna know what devtools would benefit from? ;)
<snusnu> cored: re the unit of work, there's no uow implemented in rom-session currently .. rom-session "simply" tracks state transitions, and yes, it already queues up the ops in memory, in order to flush them on write .. so yeah, one could say an initial implementation of uow is already present
<snusnu> cored: however, one of the main benefits of having an uow, is that it provides a place to "sort" the queued ops in such a way, that PK/FK dependencies are resolved properly
<snusnu> cored: so for example, if you try to save a person with associated addresses … it would make sure that first person is saved, and then the person_id FKs in the addresses tuples are properly set to person.id
<snusnu> cored: and as you might have noticed, for that dependency resolution, we need the PK/FK representations too
<snusnu> cored: to give you a greater picture, we're thinking of modelling PK/FK constraints "within" the schema definition .. so a ROM::Schema will know about its PK and FK constraints, which then basically form the foundation for relationships
<snusnu> cored: also, they should be modeled in such a way, that it's easy to generate DDL from them too .. so that something like dm-constraints can take them, and serialize them to the backend too
<snusnu> cored: so PK/FK are actually a couple of specific constraint objects … and there will eventually be others .. like e.g. we eventually want to generate CHECK constraints from the type constraints represented in Axiom::Types
<cored> got dizzy
<cored> too much stuff
<snusnu> cored: and just in case, what would be cool for devtools, would be to extract the logic buried in https://github.com/rom-rb/devtools/blob/master/tasks/metrics/flay.rake and https://github.com/rom-rb/devtools/blob/master/tasks/metrics/flog.rake into dedicated objects in devtools/lib .. once that's done, not only will logic be centralized in lib code, but this will also allow us to implement more interesting stuff on top of flay/flog
<snusnu> cored: yeah man, sorry ;)
<snusnu> cored: but you see, there's really still quite some stuff to do
<snusnu> cored: before something like dm-ambition for axiom can actually shine
<snusnu> cored: but, srsly, i don't want to stop you from dm-ambition for axiom! not at all! .. if that's what interests you, you should do it
revans has quit [Quit: revans]
jfredett has quit [Quit: Leaving.]
jfredett has joined #rom-rb
<bfleischer> i'm up for helping with the devtools metric code... after I finish my YAML talk (or need a break) :)
<snusnu> bfleischer: heh, awesome! feel free to ping me anytime
<snusnu> bfleischer: it'd be cool to have some exclude option for flog for example, probably flay too, but i dunno really, i'm always confused by flay
<snusnu> :)
<cored> snusnu: hehehe, I rather go to work on things that actually are needed
<cored> snusnu: will check that out regarding flay flog
cored has quit [Quit: leaving]
knowtheory has quit [Ping timeout: 240 seconds]
lgierth has quit [Quit: Ex-Chat]
_whitelogger_ has joined #rom-rb
knowtheory has joined #rom-rb
snusnu has quit [Quit: Leaving.]
jfredett has quit [Quit: Leaving.]
jfredett has joined #rom-rb
jfredett has quit [Quit: Leaving.]
skade has joined #rom-rb
skade has quit [Quit: Computer has gone to sleep.]
postmodern has quit [Remote host closed the connection]
skade has joined #rom-rb
lorenzo_ is now known as lorenzo
lorenzo is now known as lorenzo_
snusnu1 has joined #rom-rb
snusnu1 has quit [Client Quit]
snusnu1 has joined #rom-rb
snusnu1 has quit [Client Quit]
snusnu1 has joined #rom-rb
snusnu1 has quit [Client Quit]
snusnu has joined #rom-rb
snusnu has quit [Quit: Leaving.]
jfredett has joined #rom-rb
jfredett has quit [Quit: Leaving.]
snusnu has joined #rom-rb
skade has quit [Quit: Computer has gone to sleep.]
skade has joined #rom-rb
breakingthings has joined #rom-rb
_whitelogger_ has joined #rom-rb
_whitelogger__ has joined #rom-rb
_whitelogger_ has quit [Remote host closed the connection]
_whitelogger__ has quit [Remote host closed the connection]
_whitelogger___ has joined #rom-rb
mbj has joined #rom-rb
knowtheory has quit [Quit: Computer has gone to sleep]
lorenzo_ has quit [Quit: leaving]
jfredett has quit [Read error: Connection reset by peer]
jfredett has joined #rom-rb
dkubb has joined #rom-rb
skade has quit [Quit: Computer has gone to sleep.]
<dkubb> good morning
<jfredett> mornin'
knowtheory has joined #rom-rb
<mbj> morning
im_jebus is now known as bf4
knowtheory has quit [Quit: Get MacIrssi - http://www.sysctl.co.uk/projects/macirssi/]
knowtheory has joined #rom-rb
lgierth has quit [Ping timeout: 264 seconds]
lgierth has joined #rom-rb
skade has joined #rom-rb
lgierth has quit [Ping timeout: 240 seconds]
skade has quit [Quit: Computer has gone to sleep.]
skade has joined #rom-rb
travis-ci has joined #rom-rb
<travis-ci> [travis-ci] dkubb/ice_nine#130 (master - cf420e4 : Dan Kubb): The build was broken.
travis-ci has left #rom-rb [#rom-rb]
<travis-ci> [travis-ci] Build details : http://travis-ci.org/dkubb/ice_nine/builds/11742348
_whitelogger___ has joined #rom-rb
lgierth has joined #rom-rb
mbj has quit [Ping timeout: 252 seconds]
mbj has joined #rom-rb
mbj has quit [Ping timeout: 248 seconds]
martxel is now known as martxel_
martxel_ is now known as martxel
snusnu has quit [Quit: Leaving.]
martxel is now known as _martxel
_martxel is now known as martxel
mbj has joined #rom-rb
dkubb has quit [Quit: Linkinus - http://linkinus.com]
skade has quit [Quit: Computer has gone to sleep.]
cschneid has quit [Ping timeout: 259 seconds]
postmodern has joined #rom-rb
jfredett has quit [Quit: Leaving.]
breakingthings has quit []
knowtheory has quit [Ping timeout: 268 seconds]
cschneid has joined #rom-rb
jfredett has joined #rom-rb
knowtheory has joined #rom-rb
bf4 has quit [Ping timeout: 264 seconds]
mbj has quit [Quit: leaving]
jfredett has quit [Ping timeout: 260 seconds]
bf4 has joined #rom-rb
mbj has joined #rom-rb
jfredett has joined #rom-rb
mbj has quit [Ping timeout: 268 seconds]
snusnu has joined #rom-rb
snusnu1 has joined #rom-rb
snusnu has quit [Ping timeout: 268 seconds]
joakimk has quit [*.net *.split]
jfredett has quit [*.net *.split]
martxel has quit [*.net *.split]
indrek_ has quit [*.net *.split]
xargoon has quit [*.net *.split]
martxel has joined #rom-rb
indrek_ has joined #rom-rb
joakimk has joined #rom-rb
xargoon has joined #rom-rb
jfredett has joined #rom-rb