I had a Python project that developed into … well, something I’d like to share. But I know Spring Thing and IFComp entries have been tricky to access. The topic Why on earth would anyone enter raw Python code into the Spring Thing? got me thinking about things programmers/creators could do to make sure their work is accessible to as many people as possible.
So I wanted to throw out a technical checklist of things to include in any deliverable.
- build a Windows executable on Windows with pyinstaller
- build a Linux executable on a virtual box (again with pyinstaller)
- check Python 2 compatibility so that Mac users who don’t want to install Python can run the program. (in my case, Python 2 doesn’t easily check column width, so I have the user input that, if they want. Also, I equate input = raw_input with try/except.)
- maybe bug a Mac-owning friend to build a Mac executable if the project is stable enough
Looking at what I have, I suppose it could be done in/ported to Inform or Twine, but the coding might be painful and hardly bug-free and take longer that way. Plus the initial goal of the project was to use Python classes more intensively than I previously had.
What would other people add to this list or modify? Thanks!