ilyadh.bsky.social
9 posts
31 followers
85 following
comment in response to
post
It should go like this:
1. Hey, look at our new app, it's fast, it's useful, it's packed full of cool features and people love it and it brings us a lot of money
2. Oh, btw, we built it using our newest, coolest web framework and you can use it to build your own and it will be just as cool
comment in response to
post
I want to believe that, but there are so many better frameworks already in a number of languages, and still their usage is marginal.
I think the secret sauce is that a success story should be built in. Even Rails was a side effect of building Basecamp, not the goal in and of itself.
comment in response to
post
This is very real to me. Rails was my first professional tech and I've definitely developed an unhealthy aversion to "ugly" code, which I brought to every other thing I did after. It was really hard to finally shake it off. Writing more Go definitely helped a lot.
comment in response to
post
Can someone do the meme where vesemir and Geralt consent to ciri becoming a Witcher, and the soyjak doesn’t ?
comment in response to
post
Also, my criticism is only for "wrapping" or "enhancing" Rails primitives. Monads can work really well for an API that is designed from scratch. It's just that Rails has really large API surface, it's really hard to "simplify" it like that and expect this code to not suck long-term.
comment in response to
post
That means the exceptions need to be handled model-side. And then there needs to be at least 2 types of errors, so that the controller can differentiate them and handle differently. At this point it's just rowing against the current, not productive imo.
comment in response to
post
Yeah, I can see that it can be useful sometimes. But to guarantee, that there can only be a Success or a Failure, so much more needs to be handled implementation side. In the example, `new` can blow up if params don't match the attributes. Also, `.save` can still raise for db connection reasons.
comment in response to
post
I would just sigh audibly. And it's not about monads, this specific example is just bad code. Like, why go all this way to have essentially the same problems, as with Rails-way version? e. g. controller params and model attributes are still tightly coupled.
comment in response to
post
comedy gold