Strangeworks is one of the coolest sounding quantum companies out there. We reviewed their offering previously, but we thought it was time to visit again and have another look at the developments that have happened since then with Strangeworks platform.
Run Anywhere. Run Everywhere. Compare
The first thing you notice after logging into Strangeworks is that it you appear to be at a one-stop-shop for quantum computing. Normally we might think of that in the sense of Amazon Braket: one account, multiple providers. But, besides integrating with more providers than AWS, Strangeworks goes above and beyond in putting just about everything you could possibly need at your fingertips. It’s a lot to absorb, so please allow me to take you on a guided tour….
After logging in, the first thing that happens is you are offered Strangeworks’s own tour of its development environment. The screen is laid out very well, so you can already see features that are not common elsewhere. In some cases, those features exist elsewhere but are not integrated into their respective environments like they are in Strangeworks. And while the tour is enough to help you get started, it, ironically, leaves you to discover many of its features for yourself. The goal of this article is to go beyond the built-in tour and show you how feature-rich this platform really is.
The first unusual sighting is literally front and center: StackExchange is integrated into the dashboard page. In addition to that, a StackExchange search bar is located in the top right area of most of the other pages. So the intent, at least, is to make it as easy as possible for you to find answers to any questions you might have, even is those questions aren’t directly related to Strangeworks itself, such as the Qiskit-specific question above. And, if StackExchange isn’t enough, you can also click in the bottom-right corner to open up Strangeworks’s own Knowledge base.
You’ve got questions? Strangeworks hopes to provide the answers.
To start a new project, look at all those choices! You can start from scratch using either Python or OpenQASM. You can also easily clone one of the provided templates from nine recognizable quantum computing frameworks. If you don’t know which framework to choose, don’t worry. This guided tour takes you to the Strangeworks code library a little later on in this article.
By the way, did you notice I wrote NINE frameworks? As you can see in the screenshot, that’s neither a typo nor an autocorrect error.
The Strangeworks built-in guided tour first takes you to the “hello, quantum world” experiment. The design is clean. It’s easy on the eyes. And, if you’re brand new to quantum computing, this is really where you want to start. Plus, if you look closely, you’ll notice that we’re using Qiskit. There’s a reason for that: you’ll discover later that free access only includes IBM backends, and Qiskit is the logical choice when working with IBM backends. Unfortunately, the circuit is pre-built, so while the tour brings newcomers to the appropriate experiment, the tour itself is not educational and does not explain this experiment.
The “circuit resources” screen is interesting, and not just because circuit width and circuit depth are confused. As long as we remain in the NISQ era, we are very concerned about error rates. CX gates, aka X, aka NOT, aka controlled-X, aka controlled-NOT, are particularly error-prone. This screen could potentially help you optimize circuits for quantum processors by at least helping you keep track of how many total operations you have at any given time, especially in regards to CNOTs.
The results also include the OpenQASM for the circuit. This is fairly standard, actually, but its presence at the end of the walk-through is a well-placed introduction to the language. Because the “hello, quantum world” circuit is pre-built for you, newcomers are hopefully wondering how to construct it for themselves. If that’s the case, the eight lines of code are right there. I recommend adding code comments and a link to the language reference, so hopefully, someone from Strangeworks will read this.
By the way, if this is your first-ever quantum computing experiment and you want to tell the world, you can easily make it public. Check this out: https://quantumcomputing.com/bsiegelwax/projects/test
The histogram is aesthetically pleasing but, for a simulation, the results are a bit surprising. For this specific circuit, you would normally expect to see a perfect 50/50 ratio of 00 and 11. But, except for the lack of noise-related results, this simulates real qubits better than most. On real quantum processors, you’re not going to see perfect results, and the Strangeworks simulator is simulating that.
In addition to showing a histogram, you can display a table of the results. Even if you have a circuit with just a handful of measured qubits, histograms become unreadable quickly. So, this format looks like it should be far more readable if you need to measure more than just a few qubits. There certainly is sufficient width to display fairly long bitstrings, anyway.
As mentioned earlier, free accounts only have access to IBM backends. Enterprise partners have access to 10 additional partners, but not all of them could fit in this screenshot. Then, lower on this screen, there is a list of 10 prospective future partners. In total, Strangeworks presumably hopes to offer as many as 21 backends at some point.
In fact, this seems to be touted as the strength of the platform: “Run your code on any of our EQ (Enterprise Quantum) hardware providers and compare your results in one place.” It’s worth noting, however, that the cost to upgrade is not published; you have to email Strangeworks to upgrade.
Create a post? That’s right. Your Strangeworks account includes your very own blog. It’s a smart strategy, quite frankly, because if you’re blogging about your experiments through Strangeworks, you’re promoting Strangeworks. They obviously want you to do that, because they’re making it just about as easy as they possibly can to do so.
What does it look like after you create a post? Check it out: https://quantumcomputing.com/bsiegelwax/test
The library is not particularly deep, but it’s broad. Maybe you use one framework and you would like to try out another. Or, maybe you’d like to compare the frameworks and blog about it. Either way, you can get a quick start by cloning one of these entries, modifying it, and running it. It’s good to preview what’s here, because these are your choices back in the beginning when you’re creating a new project.
Besides a breadth of languages and frameworks, the library also includes a breadth of topics. One of the killer apps of quantum computing is expected to be quantum chemistry and, as shown above, it’s in there for your perusal. I mostly looked at the OpenQASM section, where I was surprised to see a Quantum Walk. You see that with Python libraries, sure, but not usually with OpenQASM. Who knows what’s in there that might pique your interest?
Wait, something’s missing. Have you noticed it?
With all of the features that Strangeworks has, the one obvious omission is visualizations. If you design a circuit in OpenQASM, you don’t see Bloch spheres or Q-Spheres. You don’t even see a circuit diagram. My guess is that they want you to upgrade your account and access the broad range of quantum computing frameworks available, through which you can generate your own visualizations. After all, there’s no revenue in OpenQASM.
Other than that, Strangeworks is certainly feature-rich. They obviously want you to log in and stay right there. Choose from a large selection of frameworks, get support, browse a code repository, and blog about your adventures all in one place. And, to be honest, there are so many features I probably missed some!