could be shorter with `sort_by(&:name)`