These are chat archives for jdubray/sam

6th
Mar 2016
Stardrive ENGG
@HighOnDrive
Mar 06 2016 01:22
Interesting, see the MVI != IMV post from today: cyclejs/core#259
Jean-Jacques Dubray
@jdubray
Mar 06 2016 02:51
To be frank I am not sold on RxJS in the context of Front-End architectures. "Code Generation" (as in V = f(M) where f is the code generator) makes it really easy to wire your UI events to specific routes on the back-end. I understand that kind of code would be hard to write by hand but, that's what code generators are for. With SAM a component is written generically and it is the State function which can make sure the component gets wired to the right action at any point in time.
Nathan Ridley
@axefrog
Mar 06 2016 02:56
Just catching up on recent discussion
Jean-Jacques Dubray
@jdubray
Mar 06 2016 02:56
any question we can answer?
Nathan Ridley
@axefrog
Mar 06 2016 03:02
@jdubray Not yet. I've never been hugely opinionated as a developer. I constantly see zealous adherance to one pattern or another, and given a personal fault of mine- always assuming that others know more than me, I tend to find myself testing out others' viewpoints on the assumption that they seem to know what they're talking about. Eventually I come to my own thoughts about things and have to learn to trust those thoughts as valid, even though they may contradict, or even just be slightly divergent from, what is being preached. Even so, in recent times I'm starting to feel strongly about one particular viewpoint: there is no "one true way". There are many ways to skin a cat, and many different types of cats. Different approaches have different pros and cons, and true power and skill in architecting a solution comes from understanding different patterns and being able to compose different patterns into larger systems so that each pattern used is doing what it does best, i.e. is applied to subsystems it is most appropriate for. Saying things like "everything is a stream" or "mutability is always bad", or "never do X/always do Y", is shortsighted I think. I really like the Cycle pattern, but I'm not sure I agree with "everything is a always stream", or "only side effects should exist behind drivers", etc.
Really I see the run function as an entrypoint. It is a boundary, but there's no reason it needs to be a boundary exclusively between "clean", streams-based everything and the scary world of mutability and side effects.
Disclaimer, I haven't read up about SAM yet; that is something I intend to do today.
Jean-Jacques Dubray
@jdubray
Mar 06 2016 03:13
No worries, your approach makes sense, I welcome any amount of skepticism. I just felt SAM could answer some of your questions without fundamentally breaking cycle.js
Nathan Ridley
@axefrog
Mar 06 2016 03:13
Oh, I wasn't making a point about SAM at all, sorry if I gave that impression
I'm just starting to notice myself not necessarily agreeing 100% with Staltz on some things, whereas before, I kept figuring my approach simply needed work
Jean-Jacques Dubray
@jdubray
Mar 06 2016 03:16
I understand no worries, again, I feel you have a very healthy approach and again I welcome healthy discussions. We live a very interesting time, something is going to emerge from all these discussions, personally I find most of them fascinating.
Nathan Ridley
@axefrog
Mar 06 2016 03:16
Definitely. I'm going to read up about SAM now.
Jean-Jacques Dubray
@jdubray
Mar 06 2016 03:17
thank you!
Jean-Jacques Dubray
@jdubray
Mar 06 2016 03:24
@mbsimonovic I added the section on the view-model, http://sam.js.org/#vm thank you for pointing it out.
Nathan Ridley
@axefrog
Mar 06 2016 03:32
btw, here's the project I've been working on for the last couple of weeks or so: https://github.com/axefrog/epicycle
(... now back to reading about SAM)
Jean-Jacques Dubray
@jdubray
Mar 06 2016 11:19
Stubbled upon this presentation on Event Sourcing this morning: https://youtu.be/JHGkaShoyNs?t=326
state transitions are an important part of our problem space and should be modeled within our domain
He continues: no one using the concept of "current state", including the "mature" industries like finance, banking, insurance.
not a single one has the concept of current state