Закончил вчера второй проект на хекслете: «вычислитель отличий». Результат моих трудов в нпм: https://www.npmjs.com/package/compare-files.
Для меня этот проект оказался значительно сложнее первого. В первом проекте была одна задача, с которой пришлось долго разбираться: организация правильной архитектуры. Послее ее решения все пошло довольно легко. Во втором же проекте пришлось почти на каждом шаге подолгу думать, какого решения от меня ожидают. Причем по итогу не везде удалось до этого решения дойти.
К сожалению, не находил времени описывать в блоге ход проекта, как я это делал в прошлом, так как боялся не успеть закончить его вовремя. И то, в итоге едва успел, отправив последний шаг на проверку вечером воскресенья.
В общем, участие во втором проекте лишний раз напомнило простую истину, что по-настоящему чему-то научиться можно только на практике.
Предполагается, что в проетке нужно применять знания из курсов: построение аст, обработка деревьев, полиморфизм. Пока смотришь уроки, все кажется довольно простым и понятным. Но как только появлется необходимость самому применить те же концепции в немного другом контексте, то все уроки почему-то сразу выветриваются, а мозг самопроизвольно начинает изобретать велосипеды.