Closed mfparsons314 closed 1 year ago
Hmmm... ok. I'll leave you to figure it out then.
I also want to change the repo name. Qt3-utils is way too generic for what this repo does, which is to control some instrumentation for a very particular experiment. Maybe qt3-qlmcontrol?
On Tue, Jan 10, 2023 at 2:30 PM G Adam Cox @.***> wrote:
@.**** requested changes on this pull request.
Hey @mfparsons314 https://urldefense.com/v3/__https://github.com/mfparsons314__;!!K-Hz7m0Vt54!nSKOxVW-fTkYaF46GlKLXQhVKlqX9aMsTlw83x6kfCnSGCmxtjSmMnVk43DFNQ4kwpfLl_WgUpZbG1NciK73vg$ -- I agree that we need a clean reproducible way to reproduce the confocal microscope environment and install the software, but I don't agree that this is the right way to do it. I'm going to reject this PR and we can chat.
However, here are my thoughts
1.
Package installation shouldn't require setup of a completely separate environment. That is up to the user. What if a user (future "pro" user of confocal microscope with a separate account on that machine, perhaps, or even other labs/experiments in Kai-Mei's lab or elsewhere) wants to add this package to an environment they've already created, which contains other software packages they like or need to use? They shouldn't be instructed to install a new environment. 2.
most of the dependencies you list in environment.yml are not actually required to run qt3-utils. 3.
Unfortunately, the dependencies of the windfreak, pulseblaster and NIDAQ code are not so simple to install. Simply installing the python packages does not fulfill the requirements. The user also needs to manually download and install the Windows .dll files. (Ideally the vendors should package those together... but they don't) 4.
We should have a qt3 confocal microscope software readme that documents how to setup the code. We could expand this repo to include full setup instructions, including an environment file as you suggest: https://github.com/gadamc/qt3softwaredocs https://urldefense.com/v3/__https://github.com/gadamc/qt3softwaredocs__;!!K-Hz7m0Vt54!nSKOxVW-fTkYaF46GlKLXQhVKlqX9aMsTlw83x6kfCnSGCmxtjSmMnVk43DFNQ4kwpfLl_WgUpZbG1MJ6P7JKQ$ . 5.
All of the requirements for qt3-utils are found in the setup.py file. Now, that can be moved to an external requirements.txt file or other traditional way 6.
We should talk about the pros/cons of pip installing from git repos. I'd prefer to publish to PyPI and then install from there for versioning purposes. It makes it much easier to reproduce the setup and any data that was created with particular versions of the software. Locking down a user environment with specific version numbers is the sure-fire way to reproduce results.
— Reply to this email directly, view it on GitHub https://urldefense.com/v3/__https://github.com/qt3uw/qt3-utils/pull/70*pullrequestreview-1243064072__;Iw!!K-Hz7m0Vt54!nSKOxVW-fTkYaF46GlKLXQhVKlqX9aMsTlw83x6kfCnSGCmxtjSmMnVk43DFNQ4kwpfLl_WgUpZbG1NbKMDwxw$, or unsubscribe https://urldefense.com/v3/__https://github.com/notifications/unsubscribe-auth/A4B4KHGC44R2OYZYI6IM3HDWRXPKDANCNFSM6AAAAAATXECPVU__;!!K-Hz7m0Vt54!nSKOxVW-fTkYaF46GlKLXQhVKlqX9aMsTlw83x6kfCnSGCmxtjSmMnVk43DFNQ4kwpfLl_WgUpZbG1MDKEYtbw$ . You are receiving this because you were mentioned.Message ID: @.***>
--
Max Parsons
(he/him) Director, Quantum Technologies Training and Testbed (QT3) Laboratory https://sites.google.com/uw.edu/qt3-lab/home University of Washington, Dept. of Electrical and Computer Engineering
(206) 543-9689
Hmmm... ok. I'll leave you to figure it out then. I also want to change the repo name. Qt3-utils is way too generic for what this repo does, which is to control some instrumentation for a very particular experiment. Maybe qt3-qlmcontrol? …
I agree the repo name could be changed. However, the intention of this code was also to replace the Matlab software used by other members of Kai-Mei's lab, called modularControl (and other names) and not be QLM specific. The combination of SPCM, NIDAQ, PulseBlaster, QComposerSapphire and the Windfreak RF generator is used on different setups in the physics building. I think the hope was to use common software amongst them.
Ideally this code would be re-organized and rewritten. As I said before, its ready for a re-write since a lot has been learned since I started it. I have a number of thoughts in my head about what I think it should look like. But we'd have to balance that out with priorities and potential help from students. I will gain more time to think about this once I've completed this second set of MIT quantum courses that I'm working through. Hopefully not much longer -- holidays + the quantum network series slowed me down.
@mfparsons314 I think this document sufficiently describes how to setup the QLM machine. https://github.com/qt3uw/qt3softwaredocs/blob/main/software-environment-setup.md It's fairly simple installation procedure. Additionally, I've included a conda environment backup in that repo. So, we should be able to close this PR.
Resolved by Adam's documentation updates.
Added direct install of dependencies from github in environmeny.yml and revised readme instructions.