I encourage the OP and readers to also try pipenv. From the author of Requests it is like a breath of fresh air and gets the combination of pip and virtual environments just right.
Moving away from requirements.txt is only warranted when you are also trying to use virtual env. This passes my "simple is better" test by reducing two tools into a unified one that works.
I agree 1000%! I honestly could not imagine using Jupyter without a virtual env. I don't worry about anything related to Python / virtual envs since I started using the Anaconda distribution. Further, every sciency tool is at my fingertips with almost ZERO configuration on my part...
If I had to vote on: "There should be one-- and preferably only one --obvious way to do it." for Python dev, I would choose Conda so hard.
Instead, I recommend creating whatever environment you want, activating it, and then running python setup.py develop or pip install -e . so that your package is installed in develop mode in that environment.
Thanks for the writeup , and others for interesting suggestions. Always on the look out for people thinking about making scientific python more reproducible and accessible!
For myself, i just activate the venv and then open a notebook in that terminal and it seems to work? never had to install any other libraries to handle the VENV + notebook combo.
https://docs.pipenv.org/