Week 32 — Coding Projects
Core
Implement a toy error-correcting code.
- NumPy: Implement a simple linear block code or Hamming code. Then implement a tiny Reed-Solomon encoder over a small finite field. Encode, corrupt, and decode small messages.
- Metal: Batch encode many messages in parallel. Or batch syndrome computations. · Reading: MBT — batched compute pipelines over structured data.
- Vulkan: Encode/syndrome compute passes over codeword buffers. · Reading: Vulkan Book — multi-pass compute processing over codeword buffers.
- CUDA: Reed-Solomon-style finite-field kernels with syndrome accumulation. · Reading: CUDA Book — batched algebraic kernels and syndrome accumulation.
- Stretch: Add erasure decoding in a toy setting. Visualize codeword distance behavior.
- Verify: Valid codewords satisfy parity/syndrome conditions · Small errors are detected or corrected as expected · Finite-field implementation is consistent.