Implement the visual trainer