Summary When you have good tools it makes the work you do even more enjoyable. Russel Keith-Magee has been building up a set of tools that are aiming to let you write graphical interfaces in Python and run them across all of your target platforms. Most recently he has been working on a capstone project called Toga that targets the Android and iOS platforms with the same set of code. In this episode we explored his journey through programming and how he has built and designed the Beeware suite. Give it a listen and then try out some or all of his excellent projects! Brief Introduction Hello and welcome to Podcast.__init__, the podcast about Python and the people who make it great. I would like to thank everyone who has donated to the show. Your contributions help us make the show sustainable. For details on how to support the show you can visit our site at pythonpodcast.com Linode is sponsoring us this week. Check them out at linode.com/podcastinit and get a $20 credit to try out their fast and reliable Linux virtual servers for your next project We are also sponsored by Sentry this week. Stop hoping your users will report bugs. Sentry’s real-time tracking gives you insight into production deployments and information to reproduce and fix crashes. Check them out at getsentry.com and use the code podcastinit to get a $50 credit! Visit our site to subscribe to our show, sign up for our newsletter, read the show notes, and get in touch. To help other people find the show you can leave a review on iTunes, or Google Play Music, and tell your friends and co-workers Join our community! Visit discourse.pythonpodcast.com for your opportunity to find out about upcoming guests, suggest questions, and propose show ideas. Your hosts as usual are Tobias Macey and Chris Patti Today we’re interviewing Russel Keith-Magee about the Beeware project, which is a collection of tools and libraries that are meant to be composed together for building up your Python development environment. Interview with Firstname Lastname Introductions How did you get introduced to Python? – Chris What is the BeeWare project and what goals do you have for it? – Tobias What kinds of projects are contained under the BeeWare umbrella and what inspired you to start creating these kinds of tools? – Tobias Did each project arise from a particular need that you had at the time or has there been a logical progression from one tool to the next? – Tobias At PyCon US of this year (2016) you made a presentation about the work that you have been doing to bring Python to the iOS and Android platforms. Can you provide a high-level overview for anyone who hasn’t seen that talk yet? – Tobias Let’s talk about Toga – how does Toga differ from some of the other cross platform UI framework efforts for various languages like Kivy or Shoes? – Chris What are some of the biggest challenges that you had to overcome in order to get Python to run on both iOS and Android? – Tobias How does runtime performance for applications written in Python compare with the same program running in the languages that are natively supported on those platforms? – Tobias Can you walk us through the low level flow of a single toga API request? – Chris Do you view your work on Toga and the associated libraries as a hobby project or do you think that it will turn into a production ready tool set that people will use for shipping applications? – Tobias IDEs like Android Studio and XCode have a lot of features that simplify the development and UI creation process. Do you have to forego those niceties when developing a mobile app in Python? – Tobias Shipping Python applications is a problem that tends to pose a host of issues for people, which you are addressing with the Briefcase project. What are some of the biggest hurdles and design choices that you have encountered while working on that? – Tobias Do you think that there will ever be a release of iOS or Android, or even a brand new mobile platform, that will ship with native Python support? – Tobias Keep In Touch Twitter Website GitHub Picks Tobias Japanese cast iron tea set Chris Bantam Cider Pythonista 3 Russell MHPrompt Open Sourcing Mental Illness Blue Hackers Beyond Blue Black Dog institute Mental Health.gov Links A Tale of Two Cellphones Python interpreter in 500 lines of code The intro and outro music is from Requiem for a Fish The Freak Fandango Orchestra / CC BY-SA