60

Leveraging Elixir's hot code loading capabilities to modularize a monolithic app

Author here, thanks for sharing ! Happy to answer any questions.

I think the article outlines it, but I'm at very low scale, with custom development for every client. I mostly build mini-figmas, collaborative or not, that automate specific document pipelines on top of my software, backed by elixir+liveview (or elixir+vue+channels).

4 days agochantepierre

Elixir is the best general purpose programming language for distributed systems.

2 hours agoipnon

I thought elixir devs have cooled on the whole hot reload update or is this different?

2 hours agofud101

Elixir removed a jankier https://www.erlang.org/doc/apps/sasl/appup.html mechanism that defined how state is upgraded or downgraded, while watching a directory and recompiling a module automatically or manually from the repl is still common

2 hours agoelitepleb

> while watching a directory and recompiling a module automatically or manually from the repl is still common

That makes it sound like the "hot" part has been removed then, and it's just basically a "live reload" rather than "hot code loading", is that right? There is no persistent state and you get a fresh one after the automatic compilation happened?

2 hours agodiggan

queued messages stay around in the mailboxes, so no state is lost, but don't get migrated/transformed/versioned via the appup mechanism, unless you opt back into it via libraries for it like https://github.com/ausimian/castle

2 hours agoelitepleb

That seems more about loading dynamic code.