Because when you call new ruby calls initialize. Fixing args delegation in ruby 2 7. So the whole point of initialize is to allow you to create objects with arguments.