"Any sufficiently advanced technology is indistinguishable from magic." Arthur C. Clarke
In the field of computer engineering, the following appear as magic to me. I am planning to lift this mystery by building small-scale models:
- Detecting syntax errors while typing (linting)
- Code completion
- Deserializing JSON into a class instance
- Stopping a program at a breakpoint and inspecting debug information
- Interpreters (with parallelism on multicore) and compilers
- How games like Prince of Persia could be written in assembly
These would help me to transition from "user of tools" to "creator of systems."
