Followed this book https://leanpub.com/toyrobot/ step by step and reproduced the functionality
Harrison Malone
MIT