How Web Developers Can Contribute to Quantum Computing

Qiskit
Qiskit
Published in
7 min readMay 4, 2022

By Abby Mitchell, Randy Tolentino, Eddybrando Vazquez, and Leron Gil

Qiskit has matured a great deal since first launching in 2017, thanks to the support of our incredible Open Source community. Contributors regularly report and fix bugs in our code, propose useful new features, draft essential documentation, and more. In some cases, this work requires extensive knowledge of quantum computing. However, some of the most important contributions don’t require any quantum computing experience at all. In fact, with just a few basic web development skills, even you can get started contributing to Qiskit, and to quantum computing as a whole, today.

A snapshot of the code behind the recently redesigned Introduction to Quantum Computing Course in the Qiskit Textbook.

Qiskit has facilitated countless advances in quantum applications, hardware design and even theory, and thousands of students have used it as their gateway to learning about quantum computing. So when our Open Source community makes improvements to Qiskit, we like to think they’re really contributing to quantum computing as whole. Last year, we published a guide for contributing to Qiskit, covering all the different ways you can get involved — especially if you have expertise in quantum computing. But we also want to shine a spotlight on two projects in particular that are great for web developers who may not be as familiar with quantum computing: the Qiskit.org website and the new Qiskit Textbook (beta). Whether you’re an expert front-end web developer with years of experience, or a hobbyist just learning the ropes, both projects offer endless opportunities for making very real contributions to the field of quantum computing while putting your skills to use.

Why Get Involved

Web developers contribute to Open Source for all kinds of reasons, the most obvious being that writing code is fun. To be sure, projects like the Qiskit Textbook are serious professional endeavors powered by sophisticated engineering and high-quality code. However, they also present endless opportunities to explore and experiment with all kinds of novel widgets, buttons, features, and functions that spark the imagination.

We’ve also found that many web developers get involved with Open Source because they’re looking to put their skills to work for meaningful causes. Contributing to Qiskit allows you to get involved with projects that all center on an important mission — delivering accessible Open Source tools and educational resources to the next generation of quantum computing researchers and innovators.

That said, there are plenty of web developers who contribute to Open Source for more practical reasons. Some contributors get started simply because something isn’t working for them, and they want to fix it. Others are students looking to practice new skills and get valuable experience working on collaborative projects.

Contributing to Open Source looks great on a resume, and in some cases, our contributors don’t have to go very far once they’re ready to begin hunting for their next role. Our very own Abby Mitchell became a Qiskit developer advocate through her work on Open Source — making regular contributions for fun and building strong relationships with Qiskit developers along the way. It wasn’t long before she landed a full-time role on the team.

How to Contribute

If you’re familiar with common web development languages like HTML, CSS, Sass (SCSS), Javascript, and Typescript, you’ll find plenty of places to contribute to Qiskit. It’s also helpful — although not at all necessary — to have some knowledge of the Nuxt and Vue.js frameworks we use for front-end development, and the Carbon design system we use to build out our user interface. (Contributing to Qiskit is a terrific way to get experience working with UI frameworks and component-based design systems.) Even those with no web development skills can pitch in by searching for and correcting typos on our webpages, or by translating content into other languages.

Contributing to Qiskit is easy, and most web developers will already be familiar with the basics of working with GitHub, the development platform where we manage all of our projects. Both of the projects we’re highlighting in this post — Qiskit.org and the Qiskit Textbook (beta) a.k.a. “Platypus” on GitHub — have a dedicated Github repo.

Before you make contributions to either of these projects, please go to the main page of the corresponding repo and read its contribution guidelines, which you’ll find in a file named CONTRIBUTING.md. These guidelines will help you determine where you can be most helpful in that particular repo, and what kinds of contributions the digital applications team will be most likely to merge into Qiskit’s code.

(L) Main issues page of the Qiskit Textbook repo. (Top R) New issue categories. (Bottom R) Software bug issue template.

Making Effective Contributions

There are a few different types of contributions you can make, but in most cases, you’ll want to start by opening an issue. For example, to report a bug or a typo, click the “Issues” link under the name of the repo, then click the green “New Issue” button on the issues page, select the appropriate category, and fill out the form describing the problem you’re hoping to fix.

(L) Discussions page of the Qiskit Textbook repo. (R) Pull Requests page of the Qiskit Textbook repo.

You can also contribute by suggesting entirely new features for a particular web page or project. For example, we’re always looking for ways to ensure our content is accessible for as many people as possible, and we get a lot of great suggestions for new accessibility features from our Open Source community. When suggesting new features, it’s usually best to start by opening a new discussion on the repo’s “Discussions” page (see below). This gives the Qiskit team and other members of the community a chance to provide feedback on your idea before you spend time working on it.

Once you’re ready to code a fix for the issue you’re working on, or an implementation of the feature you’ve suggested, you’ll put that in the Pull Requests (PRs) tab. PRs are what you’ll use to submit your work. If you’re searching for a project you can get started with right away, be sure to take a look at the main Issues page for each repo. Our repo maintainers often tag the issues listed there with phrases like “good first issue” to make it easy for new contributors to scan through and quickly find something to work on.

In most cases, our repo maintainers will respond to new issues and PRs within two weeks — though more complicated submissions may take longer. For those hoping to refine their skills, good PR submissions will usually lead to helpful one-on-one feedback from the professional developers on our team who serve as our repo maintainers.

What We’re Looking For

Contributing to Qiskit gives you an amazing opportunity to sharpen your existing web development skills and refine new ones, while also connecting with an entire community of developers and quantum enthusiasts who will be excited to help you learn and grow. However, maintaining a successful community takes a lot of work, and it’s up to everyone to do their part.

This means, at the very minimum, familiarizing yourself with and adhering to Qiskit’s Code of Conduct. It also means working to create a positive, welcoming environment for everyone who wants to join our Open Source community, and doing your best to facilitate good collaboration. This is doubly important for anyone who hopes that their Open Source contributions may one day turn into a job opportunity with Qiskit or any other organization.

We have a lot to accomplish as a community if we want to see quantum computing technology reach its full potential. However, that work is about much more than just building better quantum hardware or solving the mathematical riddles of quantum theory. Reaching our goals will require an enormous supporting cast of people with diverse, interdisciplinary skills who can help us establish an entire ecosystem — from education and technical enablement resources to networking events and hackathons and everything in between. That’s why projects like the Qiskit.org website and the Qiskit Textbook are so important.

As an added bonus, some of our most active contributors apply to become Qiskit Advocates. Today, more than 300 Qiskit Advocates work together to grow the Qiskit community through organizing events, making open source contributions to Qiskit code, creating educational content, and more. Potential advocates must make a variety of contributions to the Qiskit community in the form of code, tutorials, textbook chapters, bug reporting, Slack support, blogs, videos, events, and more, and must pass the Qiskit Developer Certification. Learn more about becoming a Qiskit Advocate here— applications for the current round open on June 1, 2022 and are due July 1, 2022.

You don’t have to be a physicist or an electrical engineer to make a substantial contribution to Qiskit’s mission. We also need web developers, translators, editors, and every other kind of person to get involved. With a little persistence, mutual respect, and a willingness to collaborate, we believe anyone can make a tremendous impact on this technology that may one day reshape the world.

--

--

Qiskit
Qiskit

An open source quantum computing framework for writing quantum experiments and applications