Slightly different take, not coming from an R&D lab…
- What made you switch from the vendor software to a code-first approach?
Depends on the LH, but you CAN kind of build a code first approach WITH vendor software. It’s just painful. The reasons for making a change are many but for me it’s primarily because vendor software tends to not be as iterative or as fast as we need them to be. In addition, once you have a proper IDE environment it’s tough to move on from that experience (intellisense & unit testing.) It’s just a vastly superior way to build consistently across teams, sites and formats. With larger teams across multiple sites with hundreds of protocols… you can manage fleets with ease if you have code-first setups.
I’m also a big believer that a clean programmatic architecture democratizes the software/hardware experience so that anyone can play ball. And if you’re heavy on SW background, you also now have the advantage of utilizing Docker & cloud services to further integrate your lab into an existing tech stack.
- What is your use-case and would it have been possible to achieve your goal with the vendor software?
I prefer to treat the LH like a microservice. I can somewhat achieve these goals with vendor software but it’s painful. People do build architectures from vendor software that is 1:1 with some or many SWE principles but it’s not as easy to do it.
On that note, will it be SiLA2, OPC-UA, PyLabRobot or a combo? Who knows! However when a shift comes (and it will), I’ll be able to easily adopt changes with a phase appropriate approach for any regulated environment. As more LH & software vendors align, I’ll be able to transition to the communication protocols that best utilize these interfaces. And then eventually purely programmatic code bases can be adopted once they’ve been thoroughly vetted.
A surprising number of lab auto engineers actually aren’t aware that Tecan has had a SiLA2 server for the Fluent for a long time (C# or Python). Tecan seems all in on supporting these initiatives including PyLabRobot (hence the EVO) so I’m optimistic that at least one major liquid handler company is seriously looking at PyLabRobot or SiLA2 or OPC-UA. And so I could in theory use a Tecan Fluent with their SiLA2 server to programmatically run protocols and build basic protocols. I’m sure you’ve seen the pro’s & con’s of this Lukas.
- What is the most important feature to you of e.g. PyLabRobot or other code-first libraries for liquid handler control?
Flexibility. Treat your lab auto stack like a proper tech stack. Build whatever UI or UX experience you desire, integrate and spin up a webpage in an hour or less with your favorite cloud service. Plus you have the benefit of every other library/Nuget package that is out there. If you’re a vendor. you don’t need to waste resources building libraries or drivers for services that are freely available. You can just focus on the core product. Potentially better DevOPs & security.
- What are the downsides of using these code libraries? Do have issues with management, robustness, or something similar?
Lack of vendor support. Also biotech companies tend to add lab automation at the very end of their commercial or discovery process so this means that building out a good code library may still be a disaster. Maybe the upfront process can take a little longer while you build out protocols. Slightly less of a concern could be hardware damage if you don’t know what you’re doing and general fear from leadership about directly controlling firmware in this way. Lack of audit trails and other basic requirements for compliance.
With that said, I prefer code-first approaches right now because the current development experience is terrible. However it’s possible that in the future we’ll be able to link processes together in a much more seamless way with smarter vendor software that “discovers” hardware and makes the low code/no code experience truly seamless and crash free. Better simulation with digital twins is also on the horizon and I’m optimistic about spatial computing, I think this will allow us to control our liquid handlers as if they were extensions of our bodies. (See the hackathon.)
Finally there’s a lot of bespoke equipment & solutions being built which poses interesting questions. If you are no longer optimizing for humans, you can build some pretty incredible things. As AI & autonomous robots become more common, I envision that hardware, software, protocols, & assays will further evolve. Maybe in the future all assay development & discovery will happen on a device first instead of manually in a hood. To utilize these new modalities, code-first is critical. Period.
One day my hardware will come with SiLA2 or OPC-UA servers so vendors can keep their hardware as safe as possible and I can build without worrying about integration layers. That’s the dream.