TwistingTwists

TwistingTwists

Journal : Programming Phoenix LiveView

I have read first chapter. Will add my notes / code tries / self exploration as I go along!

Thank you @AstonJ for encouraging to start it.
I hope I’ll be able to finish the book in a couple of months.

Stay tuned!

Most Liked

TwistingTwists

TwistingTwists

Chapter 01 :

CONCEPTS / RE-Thinks

  • SPA is a distributed system !
  • SPAs have shared states.

How Elixir changes SPA?

  1. Phoenix Channels = using BEAM for long lived HTTP connections! (as opposed to stateless) - using socket.assigns

    • think of channels as joining channels on slack.
  2. sockets function as routers where channel routes are defined. (auto generated by Phoenix)

  3. Phoenix.PubSub.PG2 - using BEAM native message passing to broadcaste and coordinate updates – where the complexity adds up in SPA !

    • Leveraging the best of the Erlang VM.
  4. Client for requesting data to SPA CAN BE anyone - watch, app, website, IoT !

  • Anyone who subscribes to a channeltopic:subtopic is a client.
  1. Standard (read : best practices) infrastructure to deal with auth.
  2. Buggy network connections => Phoenix uses ETS-tables (BEAM’s strength) to ensure fault tolerance!

Source : from Chapter 01 + Channels — Phoenix v1.5.12.

Happy Reading!

AstonJ

AstonJ

Nice one TT! I am sure a lot of people are going to be interested in following your journal! :023:

Where Next?

Popular Community topics Top

Rainer
My first contact with Erlang was about 2 years ago when I used RabbitMQ, which is written in Erlang, for my job. This made me curious and...
New
mafinar
I am going to dump my thoughts, methods, codes, experiences and rants while learning OCaml into this thread. This is probably the 5th or...
New
rustkas
To be a more productive reader when rereading a book, it is very convenient to create small rebar3 projects based on books’ samples and i...
New
TwistingTwists
I have read first chapter. Will add my notes / code tries / self exploration as I go along! Thank you @AstonJ for encouraging to start ...
New
TwistingTwists
This is my Journal for readings on Designing Elixir Systems with OTP. Will post chapter 01 tomorrow! Stay tuned!
New
ggarnier
In Aborting Multiple Fetch Requests with One Signal section, the code in abort/abort_ex09.js doesn’t show the downloaded images until Pro...
New
rgerardi
Hello all. Creating this space here for general discussion and chat about Powerful Command-Line Applications In Go In particular, we ca...
New
adamaiken89
Anyone is interested in a classical textbook for algorithms can go and check that.
New
AstonJ
With Tailwind now the default CSS framework shipped with Phoenix we thought it would be nice to run this book club on the Elixir Forum. ...
New
Fl4m3Ph03n1x
Learning Domain-Driven Design Building software is harder than ever. As a developer, you not only have to chase ever-changing technologic...
New

Other popular topics Top

Devtalk
Reading something? Working on something? Planning something? Changing jobs even!? If you’re up for sharing, please let us know what you’...
1050 21151 394
New
brentjanderson
Bought the Moonlander mechanical keyboard. Cherry Brown MX switches. Arms and wrists have been hurting enough that it’s time I did someth...
New
AstonJ
Thanks to @foxtrottwist’s and @Tomas’s posts in this thread: Poll: Which code editor do you use? I bought Onivim! :nerd_face: https://on...
New
DevotionGeo
The V Programming Language Simple language for building maintainable programs V is already mentioned couple of times in the forum, but I...
New
PragmaticBookshelf
Create efficient, elegant software tests in pytest, Python's most powerful testing framework. Brian Okken @brianokken Edited by Kat...
New
PragmaticBookshelf
Author Spotlight Jamis Buck @jamis This month, we have the pleasure of spotlighting author Jamis Buck, who has written Mazes for Prog...
New
Help
I am trying to crate a game for the Nintendo switch, I wanted to use Java as I am comfortable with that programming language. Can you use...
New
New
sir.laksmana_wenk
I’m able to do the “artistic” part of game-development; character designing/modeling, music, environment modeling, etc. However, I don’t...
New
AstonJ
This is a very quick guide, you just need to: Download LM Studio: https://lmstudio.ai/ Click on search Type DeepSeek, then select the o...
New