Seol mar théacs é seo: Practical error correction codes and near-term algorithms for quantum computation