I'd love a history of Python tooling

4 points by adamc ↗ HN
I was reading PEP 517, and what came to mind is that I would love to read a history of Python tooling -- what has been attempted, what worked, what didn't. There must be patterns there, and understanding them would make me a better engineer.

Of course, it doesn't have to be Python. But Python would be a good case-study. Remember easy install? And before pip was a thing? distutils2? "nose tests"? So many things have been tried, so many tools come and gone, that there must be lessons there.

Does anything like that exist?

2 comments

[ 2.8 ms ] story [ 19.8 ms ] thread
"Tooling" is a broad category.

coverage.py had its roots in 1998 or so.

You can see how primitive testing was with this example from Python 1.3: https://github.com/python/cpython/blob/v1.3/Lib/test/test_b2... . That's actually one of the most sophisticated ones there. The test_md5 module required manual inspection!

setup.py is ancient. And still seemingly the best way to distribute Python packages with C extensions. (I think there were also some autoconf macros for Python dating to the late 1990s.)

Maybe read through comp.lang.python from the late 1990s/early 2000s to see what people were doing then?

The main location for the Python community was starship.python.net , which is available from archive.org. Eg, https://web.archive.org/web/19990128171929/http://starship.p... .

Oh, right? https://web.archive.org/web/20000903065954/http://starship.p... shows me that by Python 1.5 extensions were built with "make", not "setup.py".

Whoa! Look at how to install the LLNLPython Distribution (the fore-forerunner of conda; it included Numerical, CXX, PyPDB, PyHistory, RNG, and Graphics).

Perhaps this is too ancient to be meaningful.

Try looking for the Python SIGs for a given topic, going back to the history via archive.org, and seeing what the package were like?

It's a lot of work.