Computational Thinking : A Beginner's Guide to Problem-solving and Programming - Karl Beecher (2017)