Hacker News new | ask | show | jobs
by athoghtcriminal 1202 days ago
Missing the nuisance between ordinary Phoenix and LiveView, and the comment in general, gives it a vibe that the writer is someone who isn't a practitioner of this ecosystem but rather someone who maybe put one foot in or knows things on a surface level, and having a strong opinion about the ecosystem from such position, resorting even to suggesting people to stay away from it, is not very fair, is it?

I have opinions about the other technology you're writing about (PHP), but I'm not going to go as far as saying don't use it, use this other thing, just because I personally dislike it or might have ran into some problems. It sure as hell is a valid choice for the usecases you mentioned in the comment.

You are correct, LiveView doesn't fix the problems you wrote about, and the criticisms are valid. If LiveView presents you with problems for the domain you're trying to solve for, you can simply resort to small snippets of JS to fill in the gaps (Alpine.js works really well here).

Of course, nobody expects Phoenix to be a drop in replacement for every usecase and every problem. Of course, you will not be building a meeting application, for instance, in Phoenix or in LiveView because that doesn't make any sense, a JS SPA would be best there. It is just another tool in the toolbox, with it's own specific usecases and tradeoffs that you have to take into account when considering using it.

For other problems, the framework is extremely conducive to being used and fits the usecase perfectly, writing better shorter code in a smaller timeframe, which is better in every conceivable way.

Also, if we're gonna be pedantic, the deployment issues stem from the fact that Elixir is on the BEAM (Erlang) platform, which has it's own way of doing things, but that doesn't excuse it. The deployment annoyance is still a drawback and a con for Elixir, but being based on Erlang and BEAM is not, quite the opposite actually.

To sum up, Elixir/Erlang/Phoenix/BEAM is it's own alien thing that does require a shift in mindset if you want to use it, and investment into learning the ecosystem, it's workings, rules, habits etc. You're not going to be jumping from JS/PHP to it in a day and expect to be in the same waters as you were before. But "bad" it is not, and to "pass" on it is to deny yourself an opportunity to broaden your horizons of what is possible and adding another screwdriver for screwing niche technological screws.