Teaching logics of programming to a class full of smart diverse children using an interactive whiteboard at an elementary school