What's the difference between variable binding and assignment?

I’m not asking how to simplify that.

moreover, how’s that diffrent from?

def my_fun do
   # ...
  get_new_value(123, :something)
  |> get_new_value(:something2)
end