qiskit-community / qiskit-hackathon-korea-21

A repository for Qiskit Hackathon Korea (February 16-19, 2021)
33 stars 11 forks source link

Write a quantum computing commandline utility which followes the UNIX Philosophy #10

Closed icepolarizer closed 3 years ago

icepolarizer commented 3 years ago

Abstract

Large toolboxes are useful. It helps beginners to learn, and experts to respond in many situations. However, sometimes our toolkit just requires some minimalism. If the program is small and it works well with other programs, it can be a building block of many other brilliant programs.

My thoughts about minimal and modular quantum software

Description

Write a small but useful quantum computing commandline tool. Almost every kinds of computing started from that. Sometimes, less is more.

"The Unix philosophy, originated by Ken Thompson, is a set of cultural norms and philosophical approaches to minimalist, modular software development."

Here's the UNIX Philosophy:

  1. Make each program do one thing well. To do a new job, build afresh rather than complicate old programs by adding new "features".
  2. Expect the output of every program to become the input to another, as yet unknown, program. Don't clutter output with extraneous information. Avoid stringently columnar or binary input formats. Don't insist on interactive input.
  3. Design and build software, even operating systems, to be tried early, ideally within weeks. Don't hesitate to throw away the clumsy parts and rebuild them.
  4. Use tools in preference to unskilled help to lighten a programming task, even if you have to detour to build the tools and expect to throw some of them out after you've finished using them.

TL;DR

Members

Deliverable

Set of commandline utilities related to quantum computing, mostly for linux and unix-based systems.

GitHub repo