Não sei como organizaria em levels, mas ideias boas são:
- Um emulador de CHIP-8, a especificação é simples, existem vários tutoriais sobre, a implementação é bem tranquila, e é um jeito legal de começar a entender emuladores, depois você pode tentar emular o GameBoy ou NES.
- Um raytracer, apesar da nVidia ter transformado isso numa buzzword é um técnica bem antiga e bem simples pra gerar imagens realistas, também tem vários tutoriais e sobre, e em 2 horinhas vc já consegue renderizar umas esferas.
- Um servidor, conecte numa porta livre, escute conexões, interprete os requests e envie as páginas HTML em resposta, bônus se vc conseguir fazer isso em multithread.
- Um cliente FTP, tudo que vc precisa é ler o protocolo e saber usar sockets na sua linguagem.
- Um cliente BitTorrent, dar parse em bencode, fazer conexão HTTP com servidor, pedir a lista de peers, baixar os slices do arquivo se conectando a eles, leia a especificação e aprenda HTTP, se você estiver motivado o bastante, faça uma GUI tbm.
- Um interpretador de Lisp, provavelmente a linguagem mais simples de ser dar parse já que literalmente tudo é uma lista, existem vários tutoriais sobre tbm.
- Um roguelike no terminal
- Um bot de IRC/Discord
- Qualquer coisa dessa lista (em inglês)