December topic: CLIs, REPLs, GUIs, APIs, webapps

… and how to tell the difference!

Programs generally have a core of functionality - a calculation they can make, information they can process or look up, etc. And then they need ways for a user to actually invoke that functionality. It does no good to develop the best “Hello World” program ever until users can use it!

Programmers have developed a death-by-acronym set of terms describing various means to get at that functionality.

We’ll take a lightning tour of what all these are, an example of how to build one in Python, and techniques for providing multiple ways to access a single core program.

Code repository

Also featuring

  • Design principle of the month

  • Why I can’t present on Microsoft Playwright (yet?)

  • Post-OLF discussion

  • PyDay (oops, forgot to discuss in November)

Location: Innovation Hub

We’ve begun to meet in the Innovation Hub, a gorgeous new facility that’s part of the renovated Dayton Arcade complex.
Enter through the doors that face the Wright Stop Plaza bus hub.

Street parking is free in the evening. I usually park on Ludlow Street.


if for any reason coming downtown doesn’t work for you (for instance, you’ve been exposed to COVID, or you’ve converted yourself to purely digital format and now exist as a set of cloud-hosted algorithms), we’ll be online as well!

Join us at 7 PM EDT on the PyFri Discord channel,, and click on the General voice chat link. You may need to install the Discord desktop app rather than just using the web interface.