Have tried to use Effect a couple of times, but I keep getting spun out because there are so many interconnected concepts.
Finally managed to reduce it to the fewest number of moving parts needed to use it practically in a project.
Got it down to: 1. Effect.tryPromise- Let's me start refactoring all my promise-based code into effects. 2. Effect.gen- Where I actually write most of my code now. 3. Services- Without this, the requirements channel doesn't make sense. 4. Pattern Matching Errors- Typesafe error handling ...otherwise what's the point? 5. Pipe- Chaining everything together nicely.
It's still early days, though.
Any chance someone could take a look at my write-up, let me know if I missed anything and if everything here is accurate?