Мы вообще не знаем инструменты, которыми пользуемся



Показательный пример с zod. Чаще всего, его как используют: как typescript, только в рантайме.



Но дьявол кроется в деталях, как всегда. Они упускают множество мощных возможностей 👇🏼



✔️ В Zod можно определять глобальные сообщения об ошибках, и не писать одно и то же по 100 раз

✔️ Можно сделать трансформации после парсинга и декларативно превращать всякие ISO строки в Date, парсить в Bitint и так далее

✔️ В Zod есть оператор pipe, который позволяет произвести повторную валидацию поля после трансформации. И, оказывается, что zod оочень классно работает с вложенными JSON строками и подобными вложенными сериализаторами

✔️ В Zod есть discriminated union, благодаря которым ошибки в схемах становятся мега информативными. Ещё и работает это быстрее

✔️ Функцию в refine можно сделать тайп гвардом и уточнить типы в процессе валидации

✔️ И много-много всего ещё



И вот, кажется, простой инструмент. А на самом деле имеет мощное такое второе дно. Которое если открыть, можно стать более продуктивным. И код сделать более чистым и декларативным.



Это только один zod. А теперь посмотрите на ваш список зависимостей




И да, сейчас я сосредоточился на знании инструментов, чтобы вы обратили внимание на мой курс по zod на платформе.



Но есть же ещё:

- Концепции, которые реализуют инструменты

- Алгоритмы и структуры данных

- Принципы программирования

- Архитектура

- Абстрактное мышление



И много-много тем, которые супер важны, но игнорируются стандартной системой образования.



В общем, за вот этой странной картой скрывается очень глубокая и далеко идущая идея.



Если получится, будет охуенно. Если нет – как всегда повеселюсь на славу)