When I joined Bunsan as an intern, the first language they handed me was Elixir. Coming from a university background in Java and some JavaScript, this was a real shift.

First impressions

The syntax felt unfamiliar at first. Pattern matching, pipe operators, immutable data — these were concepts I had heard of but never practiced seriously. The first week was humbling.

But then something clicked. Once I understood that every function transforms data and returns a new value, the code started making sense. The |> pipe operator became one of my favorite things in any language.

Learning Phoenix

Phoenix followed naturally. The way it separates concerns — contexts, schemas, controllers, views — gave structure to my thinking. LiveView was the piece that truly surprised me: real-time UI without writing JavaScript. It still feels like magic.

What I'd tell my past self

Elixir changed how I think about programming, not just how I write it.