User feedback and reasons to use PyLabRobot

I’m obviously biased, but I’ll share my motivation for working on this project:

  • Interactive development: iteration time is key, and by sending atomic firmware commands it becomes possible to very quickly iterate on specific parts of a method in a Jupyter Notebook. This is a lot better than having to run methods end-to-end, as is the case with most vendor software.
  • Hackable: related, everything in PLR is open source so it’s easy to hack on.
  • More control: the Python interpreter is generally more flexible than a vendor ‘program executor’. This is particularly important when your method is not completely known when you hit “start”, which is doing almost anything besides simply automating a fixed protocol. I don’t see how you’d replicate some PLR demos in any other software (Two PyLabRobot Demos, PyLabRobot Demo: Game of Life)
  • Not having to use Windows
  • Universal control: the universal interface stimulates reproducibility of methods
  • Shareable methods: you can source control/fork Python methods a lot easier than proprietary file formats. Also good for reproducibility.
  • Access to the Python eco system

As for downsides:

  • PyLabRobot is a community developed project and not backed by any manufacturer (perhaps also an upside). This means there may be more errors, particularly at this stage. Over time, it is possible PLR actually becomes more robust because users can contribute bug fixes without having to go through a manufacturer. Our development speed is higher.
  • No certification/regulation: I’m not sure this software can be used in hospitals or other highly regulated environments.
  • All external hardware needs to be integrated: whereas Hamilton is great for having many device integrations, they all rely on VENUS and cannot be used in PLR (PyHamilton could be a great compromise, it essentially provides a Python interface to VENUS). This means that more work needs to be done before interfacing with a device that is not integrated yet, but at the same time we get to rethink a lot and write the best interface possible.
2 Likes