Hacker News new | past | comments | ask | show | jobs | submit login

Elixir+Phoenix does web stuff very well, with little maintenance required (i've upgraded 4+ years old project in two ot three days, time mostly spent on upgrading some 3rd party libs that bumped major version). Unlike ruby, it's really easy to understand what's going on (no hidden state, all variables are passed explicitly, imports are stored in one file (in phoenix) you can look at or explicit as well.

With added LiveView on top, you could avoid writing a lot of SPA react (vue, svelte etc) code (some limitations apply, but you can do a lot), spending less people, time and resources for the same result.

Traditional setup: backend logic + backend api + react SPA + logic for calling backend api

LiveVew setup: phoenix backend + LiveView views + a bit of glue code (in elixir) to replace onclick etc stuff




For those reading who are not able to switch stacks, these same ideas are being applied in other languages very successfully as well.

1. Laravel Livewire for PHP

2. Hotwire for Rails/Ruby

3. Blazor for C#/.NET

4. HTMX* as a general tool for any other web server

5. React Server Components (if you squint hard enough)

Phoenix Liveview definitely started the trend by showing a mature implementation of these ideas on the same level as the application developer.

I would argue number 5 is a bit of a meme, since you still have to write a ton of JS, but if you're more interested in the architecture ideas for structuring your app, there is an interesting parallel that I think can be drawn.

[*] HTMX doesn't really embrace the idea of calling a function from your server by name, but the ergonomics are similar when writing frontend code.


Laravel Livewire is… frustrating. I used it for 1-2 years and ended up learning Elixir so I could use LiveView instead.

Livewires performance is terrible for anything other than very basic components. The fact that it has to rebuild state on every interaction makes it a pretty poor tool for most use cases.


Not sure if you've seen that v3 was released. Caleb spent a lot of effort to solve many of the performance problems. It's still not as lean as Liveview (and nothing probably will be) but it's much much better than it was.


I saw it was released but never looked into it as there's no reason to now that I've moved to LiveView.

I have other issues with Livewire as well, including how Caleb operates his communities. He has and continues to make a ton of money off Livewire and still provides zero support to the community. Want any actual support? Well that starts at $6,000/year for one support request a month.

He doesn't even appear to be a member of his own discord server anymore. Not that it makes a difference; last time I checked had only ever sent 34 messages in there and the last one was in 20202. He has one guy who would randomly show up around once a day and answer some of the questions.

I don't expect free support but if your package is so confusing that the community is unable to support each other, you should probably be around trying to help sort that out. Instead, he just keeps doing re-writes which puts the the load on everyone else.

Anyways; if you're interested in this type of project I HIGHLY recommend you check out Elixir/Phoenix/LiveView. I haven't enjoyed writing software this much for a long time; not only is the language and framework more enjoyable to work with, but the community is so much better in general.




Join us for AI Startup School this June 16-17 in San Francisco!

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: