It's a learning opportunity, and also a chance to make the implementation easier to read and the UI more responsive.