One of the great things about working with a functional-based language is that every piece of data is fixed at each point in the code execution. In other words, they are all immutable.
Since they remain unchanged, it is easy to navigate a complex object during rendering without causing further headaches. One application of this feature is the ability to dump out data structures on the fly.
<pre><%= inspect(@user, pretty: true) %></pre>
This helps me to understand data representation and structure. Plus, it also prevents me from having to look up other documentation.