Writing simple compiler or OS or bootloader for learning is fine.. but "microcoded a branch-predicting, pipelined processor" is hard code stuff..
I would rather say people should at least improve algo & data structure, ability debug issues, even if they are not able to fix it...ability to find or debug thing is important.
I would rather say people should at least improve algo & data structure, ability debug issues, even if they are not able to fix it...ability to find or debug thing is important.