We spent the first part of our careers developing products and managing software teams at IBM, Dell, and Texas Instruments. After moving to Singapore, we each found are way into the education space and found ourselves teaching Python to a variety of audiences. We developed our first Python game for a friend of ours who was teaching computer science in a local high school. Since then, it has been a continual journey to see how fun we could make learning python before our now 10-year old daughter was ready to pickup the keyboard and start helping out. In this talk, we will talk about where our journey started, where we are today, and where we hope to be in the near future. We will discuss the Tournament-based Teaching methodology that we developed to increase student preparation, in-class engagement, and peer-based learning. Then we will talk about our research in to using mobile devices such as the iPad to help students practice reading and working with python to gain confidence before moving on to writing code. We will discuss our latest family project where we have worked with our children to create a fun python quest to encourage learners around the world to practice their python for just a few minutes more each week. Then looking forward, we will talk about our latest research in to pair-based programming assignments, pair-programming tournaments, team-based logic competitions, encouraging more girls to try programming, and the goal to frame programming as a very healthy habit. Our hope is that this talk will be interesting for educators looking to increase student engagement and interest, for managers looking for fun ways to increase the productivity of their development teams, and for parents looking for additional ways to enable their children to experiment with python.