Selecting appropriate tools for computational thinking