Skip to content
0:00 / 0:00

#phoenixliveview#optimisticupdates#josevalim

Tackling ChatGPT’s UX woes with optimistic updates in Phoenix LiveView

ElixirConf

13K subscribers • 28 videos on Hallway

YouTube
  • Recommended by 1 person: 1 in engineering communities.
  • Presented by José Valim, creator of Elixir

Intermediate. Assumes working knowledge.

11K views2 years ago1 recommendation

Web developmentElixir and ErlangVue, Svelte, Angular and othersWeb performance

José Valim explains how to address latency and user experience issues in web applications using optimistic updates in Phoenix LiveView.

Part 2 of José Valim covering ChatGPT's new UI. "It's a paradox for a server-side framework to have so many affordances and abstractions on the client." - x.com/josevalim/status/1832509464240374127 - dashbit.co/blog/latency-rendering-liveview ## Description For more context, see José Valim’s early tweet showing some of the issues he ran into with ChatGPT UI: x.com/josevalim/status/1832509464240374127 You can also learn more about optimistic updates in Phoenix LiveView’s documentation: hexdocs.pm/phoenix_live_view/syncing-changes.html

Why it's here

1 person recommends this

What people say. Recommended for its clear explanation of handling client-side latency and UX in server-rendered LiveView applications.

u/ThatArrowsmithin r/elixir • Recommends

Tackling ChatGPT’s UX woes with optimistic updates in Phoenix LiveView

u/MykolasMankeviciusin r/elixir • Mentions

On “LiveView Component Libraries, they do exist!”

…* Server can still update the client in response to the events LiveView provides some JS functions which allow for surprisingly a lot of client side interactions. Granted they might not as superb as something like https://www.framer.com/motion/ although there is this https://livemotion.benvp.co/ This video by Valim shows some cool patterns [video **Why LiveView Component libraries? Why not React/Vue/Etc libraries?** Lot's of reasons, the main one being that you can avoid most of the javascript ecosystem and it's dependency rot, where in coming back to a project a few months later, you can't even compile the project anymore. Most of the features truly require very little javascrip…

u/josevalimLead Developerin r/elixir • Mentions

On “Examples of polished Phoenix web apps / startups (especially using LiveView)”

Hi /u/sleeper-2, welcome! You should check out the Livebook application. While you can install it on your machine, you can also deploy its Docker image to any cloud to have a "regular web app" experience. The best part is that Livebook is open source too, so you can look at the source code to see how we tackled different problems: * We implemented a file explorer component (that works on your disk but also S3) * On the home page, we have a great example of working with collections, via the "Running sessions". You can sort them, select entries for bulk actions, etc * Collaborative editing using LiveView's push events * If you deploy a notebook with Livebook Teams, there is a wizard that he…

u/wbsgrepitin r/elixir • Mentions

On “Trying to get my head around LiveView”

Take a look at live view debug settings, There are ways to turn on pseudo latency to see what it would look like. Between that and making sure your ui does optimistic styling to show something is instantly happening where latency would be problematic it is usually not an issue at all. Also check out link to this video

u/redalastorAlchemistin r/elixir • Mentions

On “Trying to get my head around LiveView”

link to this video Here's a tutorial on optimistic updates.