do we make self update on each component or loop update? I don't know which one is the best :(