Leveraging Community Software in CS Education to Avoid Reinventing the Wheel