It always gives me joy to read about a successful monolith powered by Haskell + Postgres. It’s such a pleasant experience to develop using that approach, it feels like cheating.
@enobayram - we’re hiring for a Staff Engineer if you are interested in working with us!
I loved this post. Thank you very much Rebecca. I’m looking forward to the book. I would buy it now on beta but it seems that beta only includes the eBooks. I’m a dead-tree kind of person. I’ll keep my eye out for it!
Fantastic post.i had to email the author to let him know how good it was.
Incredible article. This is going to save me so much time, being new to redux and all.
I’ll save you even more!
Don’t use Redux. Write your own little framework where you pass messages through something like a stream that leads to something modifying your “state store” and then something rendering your app.
Redux is simple in principle, but somehow accumulates massive complexity and reams of indirection around it. Reducers are too boilerplatey, sometimes you do want nested state, and you want more control over when/how rendering happens.
Avoid all the dependencies you can. Even react-router.
This looks great. I haven’t looked at the source code but are the paths human curated or an algo of some sort? I’m guessing with the amount of topics, it’s unlikely that a person has individually looked at each topic.
I found spacevim throuhgh your search engine, so that’s pretty awesome.
Thank you Steve. Actually all maps were human curated by me up until this point.
However we are moving to a model where anyone can contribute by sending pull requests similar to GitHub awesome lists. We are also moving to D3.js render for smoother viewing and exploring experience.
I hope you will enjoy using the search. It should be getting better and better every day especially with the help of community. :)
It’s almost like a pipeline with structured exception handling… :P
Those are not exceptions though. It does this on return values that are specific tuples.
Point. I meant in the general “huh, crap, that function didn’t take the happy path with the supplied arguments path” rather than literal PL construct of exceptions. My apologies. :)
It’s almost like a less thought out and less useful attempt at expressing monads.