The challenges of biomolecular computer engineering are best illustrated by comparing them to those of electronic computer engineering. In the latter, one can conceive of an advanced and innovative computer design, use one's favorite computer-aided design software, send the design to a chip fabrication facility, and with luck have a working electronic device in short order. In the field of biomolecular computers, one can equally dream of innovative designs that can be made, in principle, from known protein building blocks. However, protein engineering is in infancy compared to electronic circuit engineering. There is no protein design software to turn to, and no fabrication facility that can engineer a protein to a specification of its function. Therefore, researchers cannot construct their own advanced protein machinery and must make do with DNA, RNA, or naturally available proteins.