Outils pour utilisateurs

Outils du site


issue98:critique_litteraire_-_2

Ceci est une ancienne révision du document !


Teach Your Kids to Code: A Parent-Friendly Guide to Python Programming Author: Bryson Payne Publisher: No Starch Press ISBN-10: 1-59327-614-1 Pages: 336

Have you ever thought about creating an after-school code club at your child's school? Or perhaps you want to teach your child about programming while learning to program yourself. Maybe you are an adult just looking for a gentle introduction to the world of computer programming. Where do you start? You've looked at some of the books at the bookstore and are not sure if you should start with C, C#, C++, Python, Java, or some other language. One possible start to you and your student's journey into computer programming is Teach Your Kids to Code by Bryson Payne. In his book, Dr. Payne takes a very systematic approach to programming. He teaches not only Python, but the methods used to develop the code – which you can apply to any programming language. You don't have to worry about not knowing how to code yourself. The book is built on the principle of learning together. He keeps it fun and understandable for both you and your students.

Dr. Payne begins his book by giving reasons for teaching children to code. While programming is a skill they can use later in life, coding is a fun way for children to learn problem solving. Dr. Payne takes coding beyond just copying code from the book and introduces children to the thinking process used to develop program algorithms. The book is more than a beginner book for Python. The book is a beginner book for programming.

Each chapter introduces a new topic. Dr. Payne walks you through the mathematics and logic involved in the solution of the new program. He shares the thought process he used to get to the final code. The ability to create a program algorithm is one of the keys to coding. Being walked through the process helps you develop the skill of problem solving. Dr. Payne then presents you with the final result, which you can enter, save, and run on your own computer. To further develop the sense of problem solving, Dr. Payne will present you with some possible tweaks or changes you can make. These he doesn't always explain but leaves it up to you to solve. Each chapter also ends with two or three challenges. Again, these are to help develop the skill of problem solving, as well as testing your knowledge of what you have learned. You can find the solutions to the tweaks and challenges by downloading the code files from the book's web page.

The level of coding starts out simple as expected. Slowly, he adds new data types and programming concepts. Each time a new data type or concept is introduced, he explains what it is and how it is used. Through each step, he builds on what has already been learned. In later chapters, as the code blocks get longer, he explains the code in chunks; then, he puts it all together at the end. By the end of the book, you have developed two fully functional arcade-style games.

Dr. Payne touches on most of the basic Python types and tools, including an introduction to classes. As they are used, he describes their function and use, with the exception of two cases:

Throughout the book, he uses the data type tuple but never explains what they are.

In another instance, he uses list comprehension, and while he did explain the code, his explanation didn't leave me feeling I could duplicate it on my own.

Neither of these discredit the book. There is just too much good stuff to throw it out over these minor offenses.

The book would make a good starting textbook for a code club or computer programming course for children. Throughout the book, Dr. Payne uses turtle graphics and Pygame for the programs. The use of these two tools makes the learning very visual, which is helpful for teaching children. He keeps the language on an elementary school level, and when he uses computer and programming jargon, he explains their meaning. Each new line of code is explained in a way that the student could reuse it in another program. In fact, code is reused and expanded on throughout the book. Dr. Payne doesn't just explain what is happening in the code, but walks the reader through the process of creating the algorithm that leads to the final result.

The book is not just for children. Adults interested, or who think they might be interested, in programming could use the book as an introduction to computer programming. It's not college level material, but it could prepare you for such advanced classes.

The appendices give detailed instructions on installing Python and Pygame on Windows, Linux, and Mac, and a short lesson on creating modules. The code in the book is based on the 32-bit version of Python 3.2. The 32-bit version is necessary to use Pygame. Since the default Python version in all the Ubuntu flavors is 2.7, you will need to install version 3.2 from the repositories. I was able to use the instructions in the appendixes to install both Python and Pygame on Kubuntu and Windows computers. I did not have a Mac available to test the Mac install. The appendix on creating modules is a nice extra for learning how to create reusable code.

Don't know how to code but think your children or students should? Teach Your Kids to Code is the book for you. Dr. Payne will lead you through the process. He encourages the process of learning together. Each step through the book teaches something new, and helps you to understand the process of creating a program. The use of turtle graphics and Pygame makes the programs fun rather than just academic. Together, you and your children or students can learn the fun of coding.

Encart :

Table of Contents Introduction: What Is Coding and Why Is It Good for Your Kids?

Chapter 1: Python Basics: Get to Know Your Environment Chapter 2: Turtle Graphics: Drawing with Python Chapter 3: Numbers and Variables: Python Does the Math Chapter 4: Loops Are Fun (You Can Say That Again) Chapter 5: Conditions (What If?) Chapter 6: Random Fun and Games: Go Ahead, Take a Chance! Chapter 7: Functions: There’s a Name for That Chapter 8: Timers and Animation: What Would Disney Do? Chapter 9: User Interaction: Get into the Game Chapter 10: Game Programming: Coding for Fun

Appendix A: Python Setup for Windows, Mac, and Linux Appendix B: Pygame Setup for Windows, Mac, and Linux Appendix C: Building Your Own Modules

Glossary Index

issue98/critique_litteraire_-_2.1435655596.txt.gz · Dernière modification : 2015/06/30 11:13 de auntiee