Quantum Computing for Advanced Computer Scientists
This comprehensive 30-week curriculum transforms expert computer scientists into quantum computing practitioners, with a special focus on practical applications and quantum-enhanced predictive analytics. Designed for those with strong programming skills but average mathematical background, the curriculum emphasizes hands-on implementation over theoretical proofs.
Duration: 30 weeks (7 months) Time Commitment: 15-20 hours/week Prerequisites: Expert programming skills, basic linear algebra, willingness to learn Outcome: Job-ready quantum software engineer with predictive analytics specialization
| Module | Weeks | Topic | Focus |
|---|---|---|---|
| 1 | 1-2 | Mathematical Foundations | Linear algebra, complex numbers, probability |
| 2 | 3-4 | Quantum Mechanics Basics | Qubits, superposition, measurement |
| 3 | 5-7 | Quantum Computing Fundamentals | Circuits, gates, information theory |
| 4 | 8-10 | Quantum Programming | Qiskit, Cirq, PennyLane, Q# |
| 5 | 11-14 | Core Quantum Algorithms | Deutsch-Jozsa, Grover, QFT, Shor |
| 6 | 15-17 | NISQ Programming | VQE, QAOA, optimization |
| 7 | 18-21 | Quantum Machine Learning | QML, neural networks, time-series prediction |
| 8 | 22-24 | Advanced Topics | Error correction, fault tolerance |
| 9 | 25-28 | Practical Projects | Industry applications, capstone |
| 10 | 29-30 | Industry & Careers | Current landscape, future directions |
A unique 4-week supplementary module covering:
- Variational quantum forecasting
- Quantum kernel methods for time-series
- Quantum reservoir computing
- Hybrid classical-quantum predictive models
- Real-world applications in finance, healthcare, and climate modeling
# Clone the repository
git clone https://github.com/yourusername/quantum.edu.git
cd quantum.edu
# Create virtual environment
python -m venv quantum_env
source quantum_env/bin/activate # On Windows: quantum_env\Scripts\activate
# Install dependencies
pip install -r requirements.txt
⚠️ Platform Note: TensorFlow Quantum prefers Linux and is unsupported on macOS. See README-install.md for platform-specific instructions.
For detailed installation instructions including Docker setup and troubleshooting, see README-install.md.
Quick Install (Linux):
pip install -r requirements.txtStart your quantum journey with practical linear algebra:
# Example from week1-exercises.py
import numpy as np
def create_bell_state():
"""Create a Bell state - the 'Hello World' of quantum computing."""
ket_00 = np.array([1, 0, 0, 0])
ket_11 = np.array([0, 0, 0, 1])
bell_state = (ket_00 + ket_11) / np.sqrt(2)
return bell_state
# Run the exercise
bell = create_bell_state()
print(f"Bell state: {bell}")
# Output: Bell state: [0.707 0. 0. 0.707]Materials:
week1-linear-algebra-essentials.md- Complete curriculumweek1-exercises.py- Hands-on coding exercisesweek1-resources-guide.md- Curated learning resourcesweek1-assessment-quiz.md- Self-assessment with solutions
Learn quantum-enhanced prediction through practical examples:
# Example from prediction-labs-exercises.py
from quantum_prediction import VariationalQuantumRegressor
# Create quantum predictor for time-series
vqr = VariationalQuantumRegressor(n_qubits=4, n_layers=3)
# Train on historical data
vqr.fit(X_train, y_train)
# Make quantum-enhanced predictions
predictions = vqr.predict(X_test)Materials:
quantum-predictive-analytics-module.md- 4-week deep diveprediction-labs-exercises.py- Complete implementationsprediction-integration-guide.md- Integration across curriculum
Each week includes practical labs with increasing complexity:
- Warm-up (30 min) - Concept implementation
- Main Lab (2 hours) - Full algorithm/application
- Challenge (1 hour) - Extension or optimization
- Real-World (Optional) - Industry application
# Lab B.1 from prediction module
def quantum_stock_predictor(historical_prices, n_days_ahead=5):
"""Predict stock prices using quantum-classical hybrid model."""
# 1. Preprocess data
features = extract_technical_indicators(historical_prices)
# 2. Quantum feature encoding
quantum_features = quantum_feature_map(features)
# 3. Hybrid prediction
quantum_lstm = HybridQuantumLSTM(
classical_layers=2,
quantum_layers=1,
n_qubits=4
)
predictions = quantum_lstm.predict(quantum_features, horizon=n_days_ahead)
return predictions
# Run prediction
future_prices = quantum_stock_predictor(apple_stock_data)| Component | Weight | Description |
|---|---|---|
| Weekly Labs | 40% | Hands-on programming assignments |
| Module Projects | 35% | Integrated applications |
| Capstone Project | 25% | Industry-relevant quantum application |
- ✅ Complete 80% of all labs
- ✅ Pass module assessments (70% minimum)
- ✅ Submit working capstone project
- ✅ Present final project to peers
- Quantum Trading Algorithm - Portfolio optimization with prediction
- Medical Diagnosis System - Disease progression forecasting
- Climate Model - Weather prediction with quantum enhancement
- Cryptographic Protocol - Quantum-safe security implementation
- Custom Project - Your own quantum application
{
"python.linting.enabled": true,
"python.formatting.provider": "black",
"jupyter.widgetScriptSources": ["jsdelivr.com", "unpkg.com"],
"extensions": {
"recommendations": [
"ms-python.python",
"ms-toolsai.jupyter",
"qsharp-community.qsharp-lang-vscode"
]
}
}# Install useful extensions
jupyter labextension install @jupyter-widgets/jupyterlab-manager
jupyter labextension install @jupyterlab/plotly-extension# Configure IBM Quantum access
from qiskit import IBMQ
IBMQ.save_account('YOUR_API_TOKEN')
IBMQ.load_account()
# List available backends
provider = IBMQ.get_provider(hub='ibm-q')
print(provider.backends())# Configure AWS Braket
from braket.aws import AwsDevice
device = AwsDevice("arn:aws:braket::1:device/quantum-simulator/amazon/sv1")- Week 1: Complete linear algebra essentials
- Week 2-4: Focus on quantum basics
- Week 5-10: Master quantum programming
- Week 11+: Dive into algorithms
- Week 1: Quick review + assessment
- Jump to Week 8: Start with programming
- Focus on Weeks 15-21: NISQ and QML
- Add Prediction Module: Specialized skills
- Complete in 15 weeks: 2x pace
- Skip to Week 5: Fundamentals
- Focus on implementation: Less theory
- Multiple projects: Build portfolio
- Practical First: Every concept includes working code
- NISQ-Focused: Realistic expectations for current hardware
- Prediction Integration: Unique focus on forecasting applications
- Industry-Ready: Real-world projects and deployment
- Flexible Pacing: Self-study or cohort-based
- Community Support: Active Discord and forums
We welcome contributions! Please see our Contributing Guide for details.
- Fork the repository
- Create a feature branch (
git checkout -b feature/AmazingFeature) - Commit your changes (
git commit -m 'Add some AmazingFeature') - Push to the branch (
git push origin feature/AmazingFeature) - Open a Pull Request
- Additional exercises and solutions
- Real-world datasets
- Industry case studies
- Translation to other languages
- Bug fixes and improvements
- Complete linear algebra essentials
- Understand quantum states and measurements
- Build first quantum circuit
- Run circuit on real quantum hardware
- Implement Deutsch-Jozsa algorithm
- Master Grover's search algorithm
- Implement Shor's factoring algorithm
- Build VQE for molecule simulation
- Create quantum machine learning model
- Complete prediction module
- Understand error correction
- Build fault-tolerant circuits
- Complete capstone project
- Present to community
- Obtain certificate
Track your progress with our built-in analytics:
from curriculum_tracker import ProgressTracker
tracker = ProgressTracker(student_id="your_id")
tracker.log_completion("week1_exercises")
print(tracker.get_progress_report())
# Output:
# Overall Progress: 3.3% (1/30 weeks)
# Current Module: Mathematical Foundations
# Next Milestone: Complete Week 2
# Estimated Completion: 29 weeks- Quantum Software Engineer ($120k-$200k)
- Quantum Machine Learning Researcher ($130k-$220k)
- Quantum Algorithm Developer ($125k-$210k)
- Quantum Applications Consultant ($140k-$250k)
- Quantum Systems Architect ($150k-$280k)
- Research Papers: Curated reading list updated monthly
- Advanced Topics: Topological quantum computing, quantum complexity
- Specializations: Quantum chemistry, cryptography, optimization
- Certifications: IBM Qiskit Developer, Microsoft Azure Quantum
- PhD Programs: Partnerships with universities
- Access to private job board
- Monthly meetups and workshops
- Research collaboration opportunities
- Mentorship program
- Conference discounts
This curriculum is licensed under the MIT License - see the LICENSE file for details.
If you use this curriculum in your research or teaching, please cite:
@misc{quantum-curriculum-2024,
title={Quantum Computing Curriculum for Expert Computer Scientists},
author={Richard Riehle},
year={2025},
url={https://github.com/rriehle/quantum.edu}
}Special thanks to:
- IBM Quantum team for Qiskit resources
- Google Quantum AI for Cirq tutorials
- Microsoft Quantum for Q# materials
- PennyLane team for QML frameworks
- The quantum computing community for continuous support
Ready to dive into quantum computing? Here's your first exercise:
# Your first quantum program
from qiskit import QuantumCircuit, execute, Aer
# Create a quantum circuit with 1 qubit
qc = QuantumCircuit(1, 1)
# Put qubit in superposition
qc.h(0)
# Measure the qubit
qc.measure(0, 0)
# Run the circuit
backend = Aer.get_backend('qasm_simulator')
job = execute(qc, backend, shots=1000)
result = job.result()
counts = result.get_counts(qc)
print(f"Your first quantum measurement: {counts}")
# Output: {'0': ~500, '1': ~500} # Perfect superposition!Welcome to the quantum era! 🌟