Марвин Хагмайстер (core-разработчик Preact) как-то запустил команду
npm install внутри Preact, которая работала дольше 3 секунд, чем привлекла внимание. Марвин начал разбираться, что же там так долго работает — оказалось, пакет semver вызывался во время установки больше 20 тысяч раз. 20 тысяч раз, Карл!Пакет
semver — это утилита для работы с версиями пакетов, вроде ^6.0.0, 4.0.0-alpha.4, 1.x || 2.x и так далее. Нужная. Но можно ли её ускорить?В статье Марвин показывает, как ему удалось написать свой кастомный парсер, который в 25 раз быстрее.
Хороший пример того, как можно задуматься всего об одной оптимизации и попробовать сделать эффективнее огромную JS-экосистему.
https://marvinh.dev/blog/speeding-up-javascript-ecosystem-part-12/