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
Concurrent Data Processing in Elixir is now content complete and I finally found the time I’ve been looking for to dedicate behind readin...
New
mafinar
TL;DR I am reading “Domain Modeling Made Functional” and discussing and keeping a journal of what I learned from it, any co-readers welco...
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
RomanTurner
Agile Web Development with Rails 6 Chapter 11. Task F Currently reading and working through AWDR6 by Sam Ruby, David Bryant Copeland, a...
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
AstonJ
With AI set to play a big role in our industry Elixir users are lucky to have Nx, so we’re running our Nx related book club on Genetic Al...
New
PragmaticBookshelf
When the pandemic, heart disease, and personal tragedy threatened to steal everything the Tates spent years building, they found hope, he...
New
alvinkatojr
https://fs.blog/mental-models/ I’ve been reading Farnham Street for a while, and this topic is the recommended starting point for new re...
New

Other popular topics Top

Devtalk
Hello Devtalk World! Please let us know a little about who you are and where you’re from :nerd_face:
New
AstonJ
A thread that every forum needs! Simply post a link to a track on YouTube (or SoundCloud or Vimeo amongst others!) on a separate line an...
New
AstonJ
If it’s a mechanical keyboard, which switches do you have? Would you recommend it? Why? What will your next keyboard be? Pics always w...
New
AstonJ
What chair do you have while working… and why? Is there a ‘best’ type of chair or working position for developers?
New
AstonJ
We have a thread about the keyboards we have, but what about nice keyboards we come across that we want? If you have seen any that look n...
New
PragmaticBookshelf
Tailwind CSS is an exciting new CSS framework that allows you to design your site by composing simple utility classes to create complex e...
New
AstonJ
Continuing the discussion from Thinking about learning Crystal, let’s discuss - I was wondering which languages don’t GC - maybe we can c...
New
AstonJ
Saw this on TikTok of all places! :lol: Anyone heard of them before? Lite:
New
AstonJ
We’ve talked about his book briefly here but it is quickly becoming obsolete - so he’s decided to create a series of 7 podcasts, the firs...
New
PragmaticBookshelf
Use advanced functional programming principles, practical Domain-Driven Design techniques, and production-ready Elixir code to build scal...
New