Distributed IEX Sessions - or other Elixir apps (OTP or phoenix)

I and my friend collaborate remotely via zoom. We share screen and pair program.

Sometimes, I would like to execute certain commands on his local machine (by attaching iex shell) while he is working on something else, so that we both are testing functions from the same codebase.

How can I attach iex shell to his machine?

I’m not sure but would Livebook be perfect for this?

Livebook looks good.

But i want to understand how to use the power.of distributed elixir by doing things myself.

What good a developer is if s/he cannot see logs or perform debug? :stuck_out_tongue:

If you don’t need encryption, it’s pretty simple:

https://elixirschool.com/en/lessons/advanced/otp_distribution#communication-between-nodes-0

Make sure to use the same cookie. You may need to open ports in the firewall, or ideally use something like Tailscale to create a secure VPN.

2 Likes

How about something like wemux where you’re sharing a shell?

That way you could execute arbitrary commands.

2 Likes

Sharing terminal via tmate.io had crossed our minds. Thanks for making me aware of wemux.

I am just curious about iex shell.

we both use vs code and sharing terminal via tmate.io had limitations. Will definitely check wemux.