4 ms·
The issue I have with your website compared to the 12factor one is how hard it is to grasp/implement your advices. > 12Factor Nbr 3 : Store config in ENV varia
by IMTDb 8y ago
The issue I have with your website compared to the 12factor one is how hard it is to grasp/implement your advices.
> 12Factor Nbr 3 : Store config in ENV variables.
Yep I can do that. In 2 hours I can convert most of my conf in env var. And my next project will go with ENV var from the start.
> 12Factor Nbr 11 : "each running process writes its log, unbuffered, to stdout"
Yep, give me 5 minutes to do that.
When I read 12 factor, and decided to give it a shot, by the end of the week, my app (2 devs full time for 2 years) got nearly everything nailed down and I was able to benefit from it.
The last remaining points were harder to implement but I undestood what I needed to do and why.
Most of the advices of the 12factor manifesto can be applied to any programming language/framework/architecture/buisiness and make the deployment/management of the app at least easier.
When I read your manifest, I did not understand most of it. Even your examples do not "talk" to me :
> In your food ordering workflow, instead of writing a payment processing microservice that captures different failure modes, write a payment processing function that processes a payment or fails. The event system should capture the retry or failure event which is processed thereafter. This ensures your business logic is simple and easy to scale.
What event system ? how does it capture the failure mode ? I have an app that is now 4 years old, on which 6 devs are working full time, what can I do today to make it better in a month or two ?
Why are your trying to force me to use GraphQL and make a tech choice for me ? At no point 12factor says use "HTTP REST JSON API" even is a lot of user will go that road, it's their choice and not forced by the maifesto itself.
- ericfrederich 8y agohttps://3factor.app/#comparison-to-12factornet https://3factor.app/#comparison-to-12factornet It's an architecture. No claims were made that switching architectures is easy, quick, or even recommended. There should be no comparison to 12 factor. The choice of title did make me click on it though.
- kitd 8y agoAs mentioned in the article, it's an architecture pattern similar to Redux but applied to the whole system, ie Action -> State -> Event -> Reaction
- beaker52 8y agoIt's a shame Redux uses the word Action instead of Event because I think we'd all have easier time discussing Event Sourcing right about now
- acemarke 8y agoIt's because Redux was specifically written as "just another library implementing the Flux Architecture", and Flux used the term "action". See Dan's comments at https://github.com/reduxjs/redux/issues/891#issuecomment-147666329 https://github.com/reduxjs/redux/issues/891#issuecomment-147... and https://github.com/reduxjs/redux/issues/377#issuecomment-126589473 https://github.com/reduxjs/redux/issues/377#issuecomment-126... for justification and links to prior discussions.
- tirumaraiselvan 8y ago> What event system ? how does it capture the failure mode ? I have an app that is now 4 years old, on which 6 devs are working full time, what can I do today to make it better in a month or two ? Good question. Definitely the wording can be improved. Let me try to explain though. Suppose you write a simple function which processes payment. It fails. Now you can insert a state saying failed with error code 1001. Now this insert creates an event which invokes a serverless function specifically aimed at resolving this error. This way you have smaller cohesive functions which do "atomic" work as much as possible. PS: Co-author here.
- fiatjaf 8y agoWhat is a "serverless function"?
- chucksmash 8y agoSomething along the lines of AWS' Lambdas
- bobwaycott 8y agoI’m guessing they mean something like AWS Lambda.
- fiatjaf 8y agoPerhaps a guide on moving from 12-factor to 3-factor apps would be more clarifying.