#announcement
Завтра #voice_chat будет About Nest.js. В гостях Михаил Яли, Software Architect в компании Trilon, автор библиотеки nestjsx/crud.
Когда: в четверг, 27 января, в 21:00 по Киеву
Где: https://news.1rj.ru/str/node_recipes?voicechat
Агенда:
– Как связаны Trilon и Nest.js
– Лучшие Nest.js практики
– Обучение Nest.js: с чего начать
– Nest.js экосистема
До встречи в эфире!
Завтра #voice_chat будет About Nest.js. В гостях Михаил Яли, Software Architect в компании Trilon, автор библиотеки nestjsx/crud.
Когда: в четверг, 27 января, в 21:00 по Киеву
Где: https://news.1rj.ru/str/node_recipes?voicechat
Агенда:
– Как связаны Trilon и Nest.js
– Лучшие Nest.js практики
– Обучение Nest.js: с чего начать
– Nest.js экосистема
До встречи в эфире!
🔥35👍1
Что такое RegExp Named Capture Groups?
Регулярные выражения это сложно. Их чтение требует больших когнитивных усилий. Чтобы это упростить созданны Named Capture Groups.
Сравните две регулярки:
1️⃣
2️⃣
Блоки внутри круглых скобок называются capture groups. Во второй регулярке они именованные. Работают они одинаково, но после у второй после вызова exec будет поле groups, смотри картинку или пример на runkit.
Еще именнованные группы можно использовать в replace. Пример:
В eslint-plugin-regexp существует правило regexp/prefer-named-capture-group, которое форсирует использование именнованых груп.
Регулярные выражения это сложно. Их чтение требует больших когнитивных усилий. Чтобы это упростить созданны Named Capture Groups.
Сравните две регулярки:
1️⃣
/(\d{4})-(\d{2})-(\d{2})/2️⃣
/(?<year>\d{4})-(?<month>\d{2})-(?<day>\d{2})/Блоки внутри круглых скобок называются capture groups. Во второй регулярке они именованные. Работают они одинаково, но после у второй после вызова exec будет поле groups, смотри картинку или пример на runkit.
Еще именнованные группы можно использовать в replace. Пример:
"prefix-example".replace(/prefix-(?<value>.*)/, '$<value>')В eslint-plugin-regexp существует правило regexp/prefer-named-capture-group, которое форсирует использование именнованых груп.
👍32
В начале 2015 я приехал из Донецка в Киев. В то время я работал фрилансером. План был за месяц подготовиться к переезду в Черногорию: снять деньги, поменять ноут увидеться с друзьями. Один из них задал вопрос, а почему не поменять фриланс на работу в галере. Устав от ежедневного поиска клиентов я поменял удаленку на офисную стабильность и задержался в Киеве на 6 лет. В прошлом году я наконец-то отправился на зимовку в теплые страны. Сейчас у меня идет вторая зимовка в Доминикане.
Если бы жизнь сложилась по моему первоначальному плану, уверен я бы познакомился с Рубеном, чей проект я вам хочу пропиарить. Да это #реклама. Он разработчик, который живет в Черногории больше 7 лет. За это время помощь друзьям с onboarding-ом в эту страну превратилась в бизнес.
Рубен создал в Черногории IT HUB. Миссия Хаба помогать разработчикам и компаниям осваивать Черногорию, предоставить как место и возможность для коллег, куда можно приехать сменить обстановку, отдохнуть или даже релокейтнуться.
Если мне было удобней работать по европейской таймзоне, я бы обязательно воспользовался услугами хаба. Опыт самостоятельной организации зимовки в Доминикане показал, что выгоднее заплатить за опыт деньгами, чем нервничать от собственного незнания и сделанных ошибок.
Узнать подробности:
– @codeforgesHubBot
– hub.codeforges.com
- в Инстаграм https://www.instagram.com/p/CZM0YZzNvPy/
– или задать вопросы в комментариях. Рубен обещал туда заглянуть.
Если бы жизнь сложилась по моему первоначальному плану, уверен я бы познакомился с Рубеном, чей проект я вам хочу пропиарить. Да это #реклама. Он разработчик, который живет в Черногории больше 7 лет. За это время помощь друзьям с onboarding-ом в эту страну превратилась в бизнес.
Рубен создал в Черногории IT HUB. Миссия Хаба помогать разработчикам и компаниям осваивать Черногорию, предоставить как место и возможность для коллег, куда можно приехать сменить обстановку, отдохнуть или даже релокейтнуться.
Если мне было удобней работать по европейской таймзоне, я бы обязательно воспользовался услугами хаба. Опыт самостоятельной организации зимовки в Доминикане показал, что выгоднее заплатить за опыт деньгами, чем нервничать от собственного незнания и сделанных ошибок.
Узнать подробности:
– @codeforgesHubBot
– hub.codeforges.com
- в Инстаграм https://www.instagram.com/p/CZM0YZzNvPy/
– или задать вопросы в комментариях. Рубен обещал туда заглянуть.
👍15❤2
Audio
#voice_chat About Nest.js.
В гостях Михаил Яли, Software Architect в компании Trilon, автор библиотеки nestjsx/crud.
Агенда:
– Как связаны Trilon и Nest.js
– Лучшие Nest.js практики
– Обучение Nest.js: с чего начать
– Nest.js экосистема
Ссылки, о которых говорили во время чата:
- https://github.com/nestjsx/crud
- https://discord.com/invite/nestjs
- https://marmelab.com/react-admin/
- https://refine.dev/
В гостях Михаил Яли, Software Architect в компании Trilon, автор библиотеки nestjsx/crud.
Агенда:
– Как связаны Trilon и Nest.js
– Лучшие Nest.js практики
– Обучение Nest.js: с чего начать
– Nest.js экосистема
Ссылки, о которых говорили во время чата:
- https://github.com/nestjsx/crud
- https://discord.com/invite/nestjs
- https://marmelab.com/react-admin/
- https://refine.dev/
👍18🔥9
Топ-5 заблуждений об работе JavaScript
#nodejs_api
На календаре пятница, а значит пора сбавить градус практичности. Сегодня поделюсь "перлам" с собеседований. Цель поста – ликвидация безграмотность.
👎Все логические операторы (&&, ||, !) возвращают булевы значения.
Вообще-то только ! возвращает Boolean.
Вопрос для выявления заблуждения, что будет выведено:
👎Расчет возвращаемого Promise-ом значения будет запущен при await.
Нет, он будет запущен в момент создания, т.е. как только мы создали Promise мы сразу запустили цепочку (promise chain). Где вы ставите await, и ставите ли, не имеет значения.
👎Все аргументы в функциях работают одинаково.
Как и в других языках программирования примитивные и ссылочные типы ведут себя по разному.
Вопрос для выявления заблуждения, что плохо в коде:
👎Обработка событий происходит асинхронно.
Ошибка характерна и для Node.js с Event Emitter, и для FE разработчиков с Browser Events. Event handler-ы работают синхронно, причем их порядок вызова зависит от порядка добавления.
👎JavaScript обладает идеальной точностью арифметики.
Уже столько раз писали, о том что
#nodejs_api
На календаре пятница, а значит пора сбавить градус практичности. Сегодня поделюсь "перлам" с собеседований. Цель поста – ликвидация безграмотность.
👎Все логические операторы (&&, ||, !) возвращают булевы значения.
Вообще-то только ! возвращает Boolean.
Вопрос для выявления заблуждения, что будет выведено:
console.log('0' && 3)👎Расчет возвращаемого Promise-ом значения будет запущен при await.
Нет, он будет запущен в момент создания, т.е. как только мы создали Promise мы сразу запустили цепочку (promise chain). Где вы ставите await, и ставите ли, не имеет значения.
👎Все аргументы в функциях работают одинаково.
Как и в других языках программирования примитивные и ссылочные типы ведут себя по разному.
Вопрос для выявления заблуждения, что плохо в коде:
function getTomorrow(d) { d.setDate(d.getDate() + 1); return d;}👎Обработка событий происходит асинхронно.
Ошибка характерна и для Node.js с Event Emitter, и для FE разработчиков с Browser Events. Event handler-ы работают синхронно, причем их порядок вызова зависит от порядка добавления.
👎JavaScript обладает идеальной точностью арифметики.
Уже столько раз писали, о том что
0.1 + 0.2 == 0.3 это false, что многие это зазубрили. Однако, об этом забывают в доменах, где ошибка округления критична (финансы и т.п.). В таких случаях стоит использовать BigInt или подобные решения.👍19🔥19
Chrome 98 - What’s New in DevTools
#worth_seeing
1 февраля будет следующий релиз Chrome. В нем будет много обновлений в инструментах разработчика. Чтобы быть в курсе предлагаю посмотреть 6 минутное видео или почитать текстовое описание.
Большинство новшеств орентированы на фронтенд разработку. Для #nodejs и fullstack разработчиков будут интересны:
👉 Back/Forward cache tab, чтобы убедиться что сервер отдает правильные заголовки
👉 связка document.designMode + Changes tab, чтобы отредактировать прямо в браузере и скопировать в исходный код.
Ссылки:
👀Видео
📕Текстовая версия
#worth_seeing
1 февраля будет следующий релиз Chrome. В нем будет много обновлений в инструментах разработчика. Чтобы быть в курсе предлагаю посмотреть 6 минутное видео или почитать текстовое описание.
Большинство новшеств орентированы на фронтенд разработку. Для #nodejs и fullstack разработчиков будут интересны:
👉 Back/Forward cache tab, чтобы убедиться что сервер отдает правильные заголовки
👉 связка document.designMode + Changes tab, чтобы отредактировать прямо в браузере и скопировать в исходный код.
Ссылки:
👀Видео
📕Текстовая версия
🔥11👍2❤1
What’s Next for the GraphQL Spec?
#worth_seeing #graphql
Сегодня в рекомендациях видео с GraphQL Summit - November 2021. Из всех видео с конференции я выбрал именно его по следующим причинам:
– Объяснение истории развития спецификации и текущего процесса ее обновления.
– Новинки в спецификации за октябрь 2021
– Для GraphQL cпецификация особенно важна, так как реализация клиентов и серверов делают на многих языках и платформах.
– Один из докладчиков Иван Гончаров, core maintainer graphql-js.
Ссылки
👀Видео
📕Спецификация
👉Полный плейлист GraphQL Summit - November 2021
#worth_seeing #graphql
Сегодня в рекомендациях видео с GraphQL Summit - November 2021. Из всех видео с конференции я выбрал именно его по следующим причинам:
– Объяснение истории развития спецификации и текущего процесса ее обновления.
– Новинки в спецификации за октябрь 2021
– Для GraphQL cпецификация особенно важна, так как реализация клиентов и серверов делают на многих языках и платформах.
– Один из докладчиков Иван Гончаров, core maintainer graphql-js.
Ссылки
👀Видео
📕Спецификация
👉Полный плейлист GraphQL Summit - November 2021
👍3
List of 1000 JavaScript Interview Questions
#list
Сегодня в рекомендациях большая подборка вопросов для JS-интервью с ответами. Список содержит как открытые вопросы, так и тесты на понимания работы кода. Некоторые вопросы морально устарелы, но в целом репозиторий можно рекомендовать для подготовки к собеседованию на JS позицию.
#list
Сегодня в рекомендациях большая подборка вопросов для JS-интервью с ответами. Список содержит как открытые вопросы, так и тесты на понимания работы кода. Некоторые вопросы морально устарелы, но в целом репозиторий можно рекомендовать для подготовки к собеседованию на JS позицию.
GitHub
GitHub - sudheerj/javanoscript-interview-questions: List of 1000 JavaScript Interview Questions
List of 1000 JavaScript Interview Questions. Contribute to sudheerj/javanoscript-interview-questions development by creating an account on GitHub.
👍28
Подборка node.recipes за январь 2022
#monthly_list
Рецепты для #nodejs разработчиков:
➡️ Что такое WICG?
➡️ Как TC39 предложения внедряются в TypeScript?
➡️ 15 Factor App
👉 Больше 100 share: Какие вопросы задать, чтобы проверить понимание Promise/async/await?
➡️ oclif.io – Open CLI Framework
➡️ Когда и как использовать navigator.sendBeacon?
➡️ 2021 JavaScript Rising Stars.
➡️ Как использовать assert для улучшения читабельности кода?
➡️ Как запустить Recorder в Chrome?
👉 Больше 100 share: Подборка книг для изучения TypeScript
➡️ Обновление Open Machine Learning Course
➡️ Как отследить работу Garbage Collector?
➡️ Как работать с Event Emitter в async/await стиле?
➡️ Подборка книг для изучения JavaScript
➡️ Как просто улучшить работу с git?
➡️ Тонкости работы с npm noscripts
➡️ Как узнать является ли текущий файл точкой запуска?
➡️ Какие инструменты упрощают парное программирование?
➡️ Что такое RegExp Named Capture Groups?
👉Больше 100 комментариев: Топ-5 заблуждений об работе JavaScript
➡️ List of 1000 JavaScript Interview Questions
Стоит посмотреть:
👀Road to production
👀Application integration patterns for microservices
👀Advanced TypeScript Playlist by Basarat
👀Create an Application Backend in Clicks with the Amplify Admin UI
👀llhttp - new HTTP 1.1 parser for Node.js
👀Testing Pyramid Makes Little Sense, What We Can Use Instead
👀GitHub Actions с GitHub Universe 2021
👀How many hats should a DevRel wear?
👀Chrome 98 - What’s New in DevTools
👀What’s Next for the GraphQL Spec?
Стоит послушать или прошедшие Voice chat:
🎤About Best Practices, в гостях Алексей Бобырь
🎤About Software Engineering, в гостях Тимуром Шемсединовым
🎤About Conferences, с Александр Макхомед и Ирина Божик
🎤About Nest.js, с Михаилом Яли
Анонсы конференции:
👍Node Congress
👍TheJam.dev
#monthly_list
Рецепты для #nodejs разработчиков:
➡️ Что такое WICG?
➡️ Как TC39 предложения внедряются в TypeScript?
➡️ 15 Factor App
👉 Больше 100 share: Какие вопросы задать, чтобы проверить понимание Promise/async/await?
➡️ oclif.io – Open CLI Framework
➡️ Когда и как использовать navigator.sendBeacon?
➡️ 2021 JavaScript Rising Stars.
➡️ Как использовать assert для улучшения читабельности кода?
➡️ Как запустить Recorder в Chrome?
👉 Больше 100 share: Подборка книг для изучения TypeScript
➡️ Обновление Open Machine Learning Course
➡️ Как отследить работу Garbage Collector?
➡️ Как работать с Event Emitter в async/await стиле?
➡️ Подборка книг для изучения JavaScript
➡️ Как просто улучшить работу с git?
➡️ Тонкости работы с npm noscripts
➡️ Как узнать является ли текущий файл точкой запуска?
➡️ Какие инструменты упрощают парное программирование?
➡️ Что такое RegExp Named Capture Groups?
👉Больше 100 комментариев: Топ-5 заблуждений об работе JavaScript
➡️ List of 1000 JavaScript Interview Questions
Стоит посмотреть:
👀Road to production
👀Application integration patterns for microservices
👀Advanced TypeScript Playlist by Basarat
👀Create an Application Backend in Clicks with the Amplify Admin UI
👀llhttp - new HTTP 1.1 parser for Node.js
👀Testing Pyramid Makes Little Sense, What We Can Use Instead
👀GitHub Actions с GitHub Universe 2021
👀How many hats should a DevRel wear?
👀Chrome 98 - What’s New in DevTools
👀What’s Next for the GraphQL Spec?
Стоит послушать или прошедшие Voice chat:
🎤About Best Practices, в гостях Алексей Бобырь
🎤About Software Engineering, в гостях Тимуром Шемсединовым
🎤About Conferences, с Александр Макхомед и Ирина Божик
🎤About Nest.js, с Михаилом Яли
Анонсы конференции:
👍Node Congress
👍TheJam.dev
👍33🔥5
В конце сентября я писал о том, что сделал для Foxminded курс по #nodejs. Подход к составлению курсов в компании – фокус на практику без разжевывания теории, которую гуглят только когда больно. Курс окончил бета тестирование и обзавелся лендингом.
После составления курса я сопровождаю менторов и даже вел пару студентов. Отзыв одного из них:
Вообще сейчас твой курс реально выглядит как одна из лучших инвестиций в самообразование за долгое время — разумная порция боли и хорошее ощущение прогресса 🔥
Курс ориентирован на новичков в Node.js. Идеально подходит для Frontend разработчиков, которые хотят стать FullStack.
👉Запись на курс тут
После составления курса я сопровождаю менторов и даже вел пару студентов. Отзыв одного из них:
Вообще сейчас твой курс реально выглядит как одна из лучших инвестиций в самообразование за долгое время — разумная порция боли и хорошее ощущение прогресса 🔥
Курс ориентирован на новичков в Node.js. Идеально подходит для Frontend разработчиков, которые хотят стать FullStack.
👉Запись на курс тут
Хороший код это простой код. Хороший код:
– просто читать
– просто повторно использовать
– просто, то есть без опасений, вносить изменения
На английском эти свойства звучат как Readability, Reusability и Refactorability...
Но мне пора остановиться. Иначе я начну пересказывать Ryan McDermott, который предложил реализацию Clean Code в JavaScript. Лучше прочитайте его в оригинале. У него есть два замечательных репозитория, в которых он объясняет зачем и как это делать.
Ссылки:
👉 Clean Code for JavaScript
👉 3 Rs of Software Architecture
– просто читать
– просто повторно использовать
– просто, то есть без опасений, вносить изменения
На английском эти свойства звучат как Readability, Reusability и Refactorability...
Но мне пора остановиться. Иначе я начну пересказывать Ryan McDermott, который предложил реализацию Clean Code в JavaScript. Лучше прочитайте его в оригинале. У него есть два замечательных репозитория, в которых он объясняет зачем и как это делать.
Ссылки:
👉 Clean Code for JavaScript
👉 3 Rs of Software Architecture
🔥29👍9❤2
Что такое Fetch Event Source?
#package #architecture
На канале был рецепт Что такое Race Condition на клиенте? В нем я рекомендовал использовать Server Sent Events. Это однонаправленный протокол от сервера к клиенту. Является отличной альтеранативой websocket-ам, которые являются двунаправленным протоколом.
На сервере все достаточно просто. Например, в Nest.js есть хорошая документация – server-sent-events. На клиенте все не так просто – у нативного браузерного
#package #architecture
На канале был рецепт Что такое Race Condition на клиенте? В нем я рекомендовал использовать Server Sent Events. Это однонаправленный протокол от сервера к клиенту. Является отличной альтеранативой websocket-ам, которые являются двунаправленным протоколом.
На сервере все достаточно просто. Например, в Nest.js есть хорошая документация – server-sent-events. На клиенте все не так просто – у нативного браузерного
EventSource API есть ряд ограничений: нельзя передавать custom headers, только Get. Правильной альтернативой является пакет @microsoft/fetch-event-source. Он одновременно обладает всеми фишками fetch и Server Sent Events. Рекомендую к использованию и сам протокол SSE, и клиентский пакет от microsoft. Кто знает, вдруг эту реализацию сделают встроенной в браузерные API.👍12
Я соскучился по оффлайн конференциям. К сожалению, первую Киевскую JS конфу – React fwdays’22 – я пропускаю. Он пройдет в формате Online+Offline 26 февраля. Также будет несколько дополнительных эфиров в будние дни.
Программа сформирована на 40%. Вот доклады, которые мне было бы интересней всего:
🎤 Glenn Reyes выступит с докладом “Drawing the line between 3rd party and custom code”
🎤 Виктор Турский будет рассказывать о “Эффективной разработке с React”
🎤 Юлия Потапенко о ”Безопасности криптокошельков”
Конференция пройдет в гибридном формате с тремя вариантами участия:
1️⃣FREE ONLINE – просмотр докладов в free online треке (26 февраля)
2️⃣FULL ONLINE – просмотр докладов во всех треках (26 февраля) и дополнительных форматах, доступ к записям всех эфиров
3️⃣OFFLINE & ONLINE – все пункты, которые есть в пакете full online, а так же offline участие 26 февраля
👉Регистрируйтесь бесплатно или используйте промокод на скидку 7% - 66BD1D1B54.
👉Детали по ссылке https://bit.ly/3J58VKB
Программа сформирована на 40%. Вот доклады, которые мне было бы интересней всего:
🎤 Glenn Reyes выступит с докладом “Drawing the line between 3rd party and custom code”
🎤 Виктор Турский будет рассказывать о “Эффективной разработке с React”
🎤 Юлия Потапенко о ”Безопасности криптокошельков”
Конференция пройдет в гибридном формате с тремя вариантами участия:
1️⃣FREE ONLINE – просмотр докладов в free online треке (26 февраля)
2️⃣FULL ONLINE – просмотр докладов во всех треках (26 февраля) и дополнительных форматах, доступ к записям всех эфиров
3️⃣OFFLINE & ONLINE – все пункты, которые есть в пакете full online, а так же offline участие 26 февраля
👉Регистрируйтесь бесплатно или используйте промокод на скидку 7% - 66BD1D1B54.
👉Детали по ссылке https://bit.ly/3J58VKB
👍6😢1
#announcement
На этой неделе #voice_chat будет с Виктором Турским, Senior Software Engineer at Google, Non-Executive Director at WebbyLab, автором @jabanoscript.
Когда: в четверг, 10 февраля, в 21:00 по Киеву
Где: https://news.1rj.ru/str/node_recipes?voicechat
Агенда будет составлена на основание ваших вопросов из комментариев к этому посту.
До встречи в эфире!
На этой неделе #voice_chat будет с Виктором Турским, Senior Software Engineer at Google, Non-Executive Director at WebbyLab, автором @jabanoscript.
Когда: в четверг, 10 февраля, в 21:00 по Киеву
Где: https://news.1rj.ru/str/node_recipes?voicechat
Агенда будет составлена на основание ваших вопросов из комментариев к этому посту.
До встречи в эфире!
👍15❤2
#announcement
В этот четверг, 10 февраля, я буду на стриме у Сергея Немчинского. Будем обсуждать Cloud Native и Node.js.
⏰ Начало в 15:00 по Киеву.
👉 Смотреть тут
В этот четверг, 10 февраля, я буду на стриме у Сергея Немчинского. Будем обсуждать Cloud Native и Node.js.
⏰ Начало в 15:00 по Киеву.
👉 Смотреть тут
👍16🔥11
Что нового в Nodejs 16.14.0?
Вчера вышел минорный патч для LTS версии. Основным заявленным изменением является обязательное использование Import Assertions (stage 3) с JSON-модулями. Это решение было принято для сохранения совместимости с веб-платформой. Т.е. это изменение важно для FE разработчиков.
В релизе есть новые важные фичи для #nodejs разработчиков, которые упрощают разработку. Обратите внимание, что они имеют Experimental индекс стабильности. Т.е. вы их можете использовать в проде только на свой страх и риск.
👉 Улучшение работы Readable Streams
Добавленые filter и map, а так же helper isReadable. Удобство работы со встроенными стримами становиться сопостовимо с rxjs.
👉 Улучшение работы AbortSignal
Добавили
👉 process.getActiveResourcesInfo
Раньше чтобы посмотреть, что держит активным EventLoop необходимо было использовать недокументированные process._getActiveResources().
👉 Scheduler в promise timers
Является Node.js реализацией предложения Prioritized Task Scheduling. Позволяет писать:
Очевидно, улучшает синтаксис
Официальные release notes тут
Вчера вышел минорный патч для LTS версии. Основным заявленным изменением является обязательное использование Import Assertions (stage 3) с JSON-модулями. Это решение было принято для сохранения совместимости с веб-платформой. Т.е. это изменение важно для FE разработчиков.
В релизе есть новые важные фичи для #nodejs разработчиков, которые упрощают разработку. Обратите внимание, что они имеют Experimental индекс стабильности. Т.е. вы их можете использовать в проде только на свой страх и риск.
👉 Улучшение работы Readable Streams
Добавленые filter и map, а так же helper isReadable. Удобство работы со встроенными стримами становиться сопостовимо с rxjs.
👉 Улучшение работы AbortSignal
Добавили
abortSignal.reason и AbortSignal.timeout(delay)👉 process.getActiveResourcesInfo
Раньше чтобы посмотреть, что держит активным EventLoop необходимо было использовать недокументированные process._getActiveResources().
👉 Scheduler в promise timers
Является Node.js реализацией предложения Prioritized Task Scheduling. Позволяет писать:
import { scheduler } from 'timers/promises';await scheduler.wait(1000);Очевидно, улучшает синтаксис
setTimeout из timers/promises.Официальные release notes тут
🔥35👍1
Audio
#voice_chat About Work at Google c Виктором Турским, Senior Software Engineer at Google, Non-Executive Director at WebbyLab, автором @jabanoscript.
Ссылки упомянутый в ходе дискуссии:
🔗 Эффективная разработка NodeJS приложений
🔗 Node.js starter от Виктора
🔗 my-talks.net – сервис где можно подписаться на докладчиков, сделанный Виктором
🔗 www.algoexpert.io – платный сервис для подготовки к интервью
Ссылки упомянутый в ходе дискуссии:
🔗 Эффективная разработка NodeJS приложений
🔗 Node.js starter от Виктора
🔗 my-talks.net – сервис где можно подписаться на докладчиков, сделанный Виктором
🔗 www.algoexpert.io – платный сервис для подготовки к интервью
🔥18👍11❤1🥰1
Что такое npm overrides?
#cli #npm
Делая обзор Nodejs 16.14.0, я не рассказал об обновление версии npm с 8.1.2 до 8.3.1. Основной фичей обновления является
Подробней в ссылках:
🔗 npm overrides
🔗 yarn resolutions
#cli #npm
Делая обзор Nodejs 16.14.0, я не рассказал об обновление версии npm с 8.1.2 до 8.3.1. Основной фичей обновления является
overrides, т.е. переопределение версий пакетов в зависимостях второго+ уровня. Это аналог resolutions в yarn. Чаще всего это нужно, чтобы заменить версию зависимости с известной проблемой безопасности. Реже, чтобы везде использовать одна и ту же версия пакета. Теперь npm догнал yarn не только по скорости, но и по необходимым фичам.Подробней в ссылках:
🔗 npm overrides
🔗 yarn resolutions
👍24🎉3