не умеешь реализовывать все виды алгоритмов сортировки, не умеешь и не знаешь как писать "чистый и идеальный код", ты не программист если не умеешь программировать на Ассемблере или двоичном коде, ты не программист если не можешь в уме вычислить интеграл, ты не программист если не можешь написать с нуля свою операционную систему.
Все правильно, но только не в случае с ассемблером, интегралом, и тем более - двоичным кодом. Ассемблер читать это желательный скилл, интегралы на бумажке достаточно уметь решать, и вряд ли тебе придётся когда-нибудь в жизни работать напрямую с двоичным кодом
Достатточно сделать что-то своё, хоть оно и будет уступать известным вещам.
Напрмер можно сделать своё сжатие данных. Будет так себе но зато это твой собственный алгоритм, голова работала, соображала.
Если способен на что-то такое то уже программист.