Python Vacation

Have you tried to teach your child programming basics? Have you succeeded? If yes, good for you. For me it was always a struggle. Yes, I spoke with my son, explaining him how important it is to have at least a basic understanding of programming. Yes, he agreed with me. Yes, I even convinced him to take an online programming course this summer. But still something was missing. He didn’t enjoy doing it. For him it was still just another flavor of school—something you have to do to please your parents. I was looking for something to spark his interest, to get him eager to learn more.

Then it happened—completely by accident. He decided to prepare several cups of coffee with various flavors for his friends and had to collect their orders: which flavor, which topping, etc. I tried to use this opportunity to start a simple programming project with my son and… he got hooked!

We started with a simple Python application to take orders with text-based menus. Then we learned how to use files to store the orders. Then we moved to its web-based version, then added some styling, then connected it to a database… In other words, we had a lot of programming adventures during summer vacation.

I have collected our dialogs and pieces of Python code in this book as they happened, almost without any changes. This book is still a work in progress, as is our Python education. We are going to continue working with this simple application to publish it online (first on virtual hosting, then on the cloud). We are going to explore different tools to automate its deployment (I started with a simple Ansible example and am going to try other tools). We are going to containerize it. We are going to implement it with NoSQL database too. Apparently, with an application as simple as ours, you can play with all kinds of modern technologies. And if you are able to explain them to your child, that means you really understand them yourself.

You can use this book as a step-by-step gentle introduction to Python programming. I hope our dialogs will spark some project ideas you might want to try with your child. I’d be glad to hear your feedback and your stories about teaching your children programming. Please feel free to use the Comments section in each chapter, connect with me via LinkedIn (use the logo at the bottom of the page), or just send me an email: pavel -dot- anni -at- gmail -dot- com.

Eventually I’m going to publish it as a real book (electronic book for sure, may be even as a paper book). Please let me know if you are going to purchase it and I will ping you when the book is ready.

Enjoy!

Pavel Anni