Coding fundamentals through play