Как посчитать нарастающий итог?
#database
Частая ошибка начинающих #nodejs разработчиков – лишняя нагрузка CPU. Один из методов разгрузить CPU это использование базы данных для расчетов. Большинство разработчиков используют агрегатные функции, но не оконные. Возможно, их отпугивает название, которое на английском звучит как OS от Microsoft – windows.
На картинке к рецепту вы видите различие работы агрегатных и оконных функций. В качестве примера, решим SQL задачу.
Дана схема:
Вывести историю операций пользователя с балансом на момент окончания операции.
Решение будет иметь вид:
Ссылки:
🔗 пример в db-fiddle,
🔗 документация по windows функциям.
#database
Частая ошибка начинающих #nodejs разработчиков – лишняя нагрузка CPU. Один из методов разгрузить CPU это использование базы данных для расчетов. Большинство разработчиков используют агрегатные функции, но не оконные. Возможно, их отпугивает название, которое на английском звучит как OS от Microsoft – windows.
На картинке к рецепту вы видите различие работы агрегатных и оконных функций. В качестве примера, решим SQL задачу.
Дана схема:
CREATE TABLE users ( id SERIAL PRIMARY KEY, email varchar(100) NOT NULL);CREATE TABLE operations ( id SERIAL PRIMARY KEY, user_id int4 NOT NULL, amount int4 NOT NULL, created_at timestamp DEFAULT now(), FOREIGN KEY(user_id) REFERENCES users(id));Вывести историю операций пользователя с балансом на момент окончания операции.
Решение будет иметь вид:
SELECT *, SUM(amount) OVER (PARTITION BY user_id order by created_at) as balance FROM operations;Ссылки:
🔗 пример в db-fiddle,
🔗 документация по windows функциям.
Top 8 web things to know from Google I/O 2021
#worth_seeing
На прошлой неделе прошел Google I/O 2021. Это конференция, где Google показывает свои новинки, в том числе и связанные c Google Chrome. Рекомендуемое к просмотру видео показывает 8 новинок и занимает всего на 4 минуты. Так же есть полная версию What's new for the web platform на полчаса.
На #nodejs разработку может повлиять анонсированная поддержка WebAssembly SIMD внутри Google Chrome. SIMD расшифровывается как Single Instruction, Multiple Data. С его помощью можно ускорить расчеты, например обработку изображений, видео и т.д. Подробней, что такое SIMD. Мы получим обновленную версию v8 с его поддержкой в v16 Node.js. Пока я не видел обоснованного использования WebAssembly на бэкенде, но инструмент явно интересный.
#worth_seeing
На прошлой неделе прошел Google I/O 2021. Это конференция, где Google показывает свои новинки, в том числе и связанные c Google Chrome. Рекомендуемое к просмотру видео показывает 8 новинок и занимает всего на 4 минуты. Так же есть полная версию What's new for the web platform на полчаса.
На #nodejs разработку может повлиять анонсированная поддержка WebAssembly SIMD внутри Google Chrome. SIMD расшифровывается как Single Instruction, Multiple Data. С его помощью можно ускорить расчеты, например обработку изображений, видео и т.д. Подробней, что такое SIMD. Мы получим обновленную версию v8 с его поддержкой в v16 Node.js. Пока я не видел обоснованного использования WebAssembly на бэкенде, но инструмент явно интересный.
YouTube
Top 8 web things to know from Google I/O 2021
Want the highlights of Chrome Developer Keynote? We’ve got you covered! Learn what’s new for the web platform in this recap as we share how the web is evolving, the privacy sandbox, and many more new capabilities such as major performance boosts and enhanced…
JavaScript fwdays’21
#conference
На следущей неделе будет онлайн-конференция JavaScript fwdays’21. Уверен, что вы знаете этот бренд.
Программа конференции из состоит из докладов по вечерам в будние дни и в дневных в выходные. Подробней можно посмотреть на сайте. Бесплатные билеты позволяют посмотреть стрим. Если вы хотите посмотреть доклад в записи, то стоит приобрести билет. Это хороший способ поддержать конференцию, которая заботиться о комьюнити.
➡️ Регистрация: https://fwdays.com/en/event/javanoscript-fwdays-2021
💵 Цена: 60$, промокод на 10% – node_recipes_friends
Я не буду делать традиционный обзора программы конференции, а пойду готовить свой доклад Deep dive Into NestJS. Он уже 1-го числа вечером. До встрече на стриме.
#conference
На следущей неделе будет онлайн-конференция JavaScript fwdays’21. Уверен, что вы знаете этот бренд.
Программа конференции из состоит из докладов по вечерам в будние дни и в дневных в выходные. Подробней можно посмотреть на сайте. Бесплатные билеты позволяют посмотреть стрим. Если вы хотите посмотреть доклад в записи, то стоит приобрести билет. Это хороший способ поддержать конференцию, которая заботиться о комьюнити.
➡️ Регистрация: https://fwdays.com/en/event/javanoscript-fwdays-2021
💵 Цена: 60$, промокод на 10% – node_recipes_friends
Я не буду делать традиционный обзора программы конференции, а пойду готовить свой доклад Deep dive Into NestJS. Он уже 1-го числа вечером. До встрече на стриме.
Fwdays
JavaScript fwdays’21 conference
Online conference for JavaScript developers
What's Next, The Future of Node.js
#worth_seeing
Вы знаете, кто такой Майкл Доусон (Michael Dawson)? Уже 6 лет он член комитета отвечающего за развитие #nodejs. На английском это звучит как Collaborator and Technical Steering Committee member. Его можно увидеть почти на любом видео с заседаний Node.js working groups в youtube канале nodejs-foundation.
Не буду представлять столь подробно двух других участников сегодняшнего видео. Они, как и Майкл, члены Node.js working groups. Таких группы больше десятка. Часть видео как раз об этих группах.
Это видео затрагивает Node.js Roadmap, точнее почему у Node.js подобен самураю, у которого нет цели, а есть только путь. Идет речь об LTS циклах и стабильности. Разбирается, почему Major релизы зачастую не имеют новых фич. Они идут в минорных релизах. В завершение показывается как внести свой вклад в развитие Node.js.
Рекомендую посмотреть видео, чтобы лучше понять как именно развивается Node.js как платформа.
#worth_seeing
Вы знаете, кто такой Майкл Доусон (Michael Dawson)? Уже 6 лет он член комитета отвечающего за развитие #nodejs. На английском это звучит как Collaborator and Technical Steering Committee member. Его можно увидеть почти на любом видео с заседаний Node.js working groups в youtube канале nodejs-foundation.
Не буду представлять столь подробно двух других участников сегодняшнего видео. Они, как и Майкл, члены Node.js working groups. Таких группы больше десятка. Часть видео как раз об этих группах.
Это видео затрагивает Node.js Roadmap, точнее почему у Node.js подобен самураю, у которого нет цели, а есть только путь. Идет речь об LTS циклах и стабильности. Разбирается, почему Major релизы зачастую не имеют новых фич. Они идут в минорных релизах. В завершение показывается как внести свой вклад в развитие Node.js.
Рекомендую посмотреть видео, чтобы лучше понять как именно развивается Node.js как платформа.
YouTube
What's Next, The Future of Node.js - Joe Sepi, Michael Dawson and Bethany Griggs
Presented by Joe Sepi, Michael Dawson and Bethany Griggs
Want to know what is next for Node.js? New features? Major changes? What’s controversial? Key initiatives at the technical and organisational level?
- Learn about new features in the latest versions…
Want to know what is next for Node.js? New features? Major changes? What’s controversial? Key initiatives at the technical and organisational level?
- Learn about new features in the latest versions…
Подборка node.recipes за май 2021
#monthly_list
Рецепты для #nodejs разработчиков:
➡️ Что такое Race Condition на клиенте?
➡️ Как использовать cron в Node.js?
➡️ Как запускать Node.js с доп. аргументами?
➡️ Как документировать логику?
➡️ Что такое Floating Promise и почему это опасно?
➡️ Как уменьшить потребление памяти во время TypeScript компиляции?
➡️ Что такое .npmrc и почему его стоит добавить?
➡️ Как определить не используемые зависимости?
➡️ В чем проектировать структуру базы данных?
➡️ Как понять запущен ли Node.js внутри Docker?
➡️ Какая связь у UUID и MD5?
➡️ refactoring.guru
➡️ Как работает Readonly в TypeScript?
➡️ Как итерировать массив?
➡️ Как успевать за развитием web-development?
➡️ Как и зачем проверить, что код запущен под нужной версий Node.js?
➡️ Как автоматизировать работу с git?
➡️ Как посчитать нарастающий итог?
Обзор релизов:
🚀 Node.js 14.17
🚀 Что нового в TypeScript 4.3?
Freebies:
🤑 MongoDB University
Доклады, которые стоит посмотреть:
👀 How to Build and Run Node Apps with Docker and Compose
👀 42 WebStorm Tips and Tricks
👀 Зачем нужен тип "true" в TypeScript?
👀 HTTP/3 by Daniel Stenberg
👀 10 Things I Regret About Node.js
👀 Serverless by Stefan Judis
👀 Mo'Problems, Mo'Nads by Kyle Simpson
👀 Top 8 web things to know from Google I/O 2021
👀 What's Next, The Future of Node.js
Voice Chats:
🎤 Q&A
🎤 About Node.js Job Market, в гостях Алеся Кулакова
🎤 About testing, в гостях Хотемской Александр
🎤 About GraphQL, в гостях Павел Черторогов
#monthly_list
Рецепты для #nodejs разработчиков:
➡️ Что такое Race Condition на клиенте?
➡️ Как использовать cron в Node.js?
➡️ Как запускать Node.js с доп. аргументами?
➡️ Как документировать логику?
➡️ Что такое Floating Promise и почему это опасно?
➡️ Как уменьшить потребление памяти во время TypeScript компиляции?
➡️ Что такое .npmrc и почему его стоит добавить?
➡️ Как определить не используемые зависимости?
➡️ В чем проектировать структуру базы данных?
➡️ Как понять запущен ли Node.js внутри Docker?
➡️ Какая связь у UUID и MD5?
➡️ refactoring.guru
➡️ Как работает Readonly в TypeScript?
➡️ Как итерировать массив?
➡️ Как успевать за развитием web-development?
➡️ Как и зачем проверить, что код запущен под нужной версий Node.js?
➡️ Как автоматизировать работу с git?
➡️ Как посчитать нарастающий итог?
Обзор релизов:
🚀 Node.js 14.17
🚀 Что нового в TypeScript 4.3?
Freebies:
🤑 MongoDB University
Доклады, которые стоит посмотреть:
👀 How to Build and Run Node Apps with Docker and Compose
👀 42 WebStorm Tips and Tricks
👀 Зачем нужен тип "true" в TypeScript?
👀 HTTP/3 by Daniel Stenberg
👀 10 Things I Regret About Node.js
👀 Serverless by Stefan Judis
👀 Mo'Problems, Mo'Nads by Kyle Simpson
👀 Top 8 web things to know from Google I/O 2021
👀 What's Next, The Future of Node.js
Voice Chats:
🎤 Q&A
🎤 About Node.js Job Market, в гостях Алеся Кулакова
🎤 About testing, в гостях Хотемской Александр
🎤 About GraphQL, в гостях Павел Черторогов
Итоги мая 2021
телеграм канал @node_recipes
⚙️ количество подписчиков почти преодолело 1000
✅ эксперимент с Voice Chat оказался успешным. На еженедельных эфирах в среднем 40 слушателей. Формату быть.
✅ появилась айдентика и слоган
❓ не понятна актуальность постов в формате #raffle и #freebies
⏱ трудозатраты 10-12 часов в неделю
комьюнити GDG Cloud Kyiv
✅ официальная регистрация и освоение платформы
✅ первый Cloud Jam с 15 участниками
⚙️ формирование комьюнити в работе
⚙️ другие форматы и план на июнь
⏱ трудозатраты 3-4 часа в неделю
Доклады
✅ "Road to production" в ходе конференции Dev.Pro JS Conference
✅ Уже завтра "Deep Dive Into NestJS" на JavaScript fwdays’21
⚙️ Node.js TDD 15 июня
⏱ трудозатраты 10-20 часов на доклад
Проекты в работе, не готовые к официальному релизу
⚙️ Личный сайт
⚙️ Сайт node.recipes на английском с еженедельной email рассылкой
⚙️ Серия воркшопов по Node.js и Cloud Native разработке
⏱ не хватает времени и/или мотивации
Спасибо за поддержку и обратную связь.
телеграм канал @node_recipes
⚙️ количество подписчиков почти преодолело 1000
✅ эксперимент с Voice Chat оказался успешным. На еженедельных эфирах в среднем 40 слушателей. Формату быть.
✅ появилась айдентика и слоган
❓ не понятна актуальность постов в формате #raffle и #freebies
⏱ трудозатраты 10-12 часов в неделю
комьюнити GDG Cloud Kyiv
✅ официальная регистрация и освоение платформы
✅ первый Cloud Jam с 15 участниками
⚙️ формирование комьюнити в работе
⚙️ другие форматы и план на июнь
⏱ трудозатраты 3-4 часа в неделю
Доклады
✅ "Road to production" в ходе конференции Dev.Pro JS Conference
✅ Уже завтра "Deep Dive Into NestJS" на JavaScript fwdays’21
⚙️ Node.js TDD 15 июня
⏱ трудозатраты 10-20 часов на доклад
Проекты в работе, не готовые к официальному релизу
⚙️ Личный сайт
⚙️ Сайт node.recipes на английском с еженедельной email рассылкой
⚙️ Серия воркшопов по Node.js и Cloud Native разработке
⏱ не хватает времени и/или мотивации
Спасибо за поддержку и обратную связь.
Какие директивы есть в TypeScript и зачем их использовать?
#typenoscript
Директива это комментарий, который говорит TypeScript компилятору изменить свое поведение. Существуют Triple-Slash Directives, которые выходят за рамки этого рецепта. Их использование оправдано при создание библиотек, но не приложений.
Сегодня же речь об директивах начинающихся
➡️
➡️
➡️
➡️
Каноническим примером использования @ts-expect-error является обращение к приватному свойству в unit тесте.
Тут можно прочитать рекомендацию, что в каком случае использовать @ts-expect-error или @ts-ignore. Выработанную договоренность лучше закрепить на уровне линтинга с помощью @typenoscript-eslint/ban-ts-comment.
#typenoscript
Директива это комментарий, который говорит TypeScript компилятору изменить свое поведение. Существуют Triple-Slash Directives, которые выходят за рамки этого рецепта. Их использование оправдано при создание библиотек, но не приложений.
Сегодня же речь об директивах начинающихся
@ts-. На текущий момента, в версии TypeScript 4.2, их существует 4:➡️
// @ts-check – применяется только в начале javanoscript файла. Используется в ходе перехода с JS на TS. Для typenoscript файлов не применим.➡️
// @ts-nocheck – применяется только в начале файла. Все ошибки в файле будут проигнорированы. Используется и в JS, и в TS. Рекомендован в случае перехода на TS.➡️
// @ts-ignore – возможная ошибка на следующей строке будет проигнорирована.➡️
// @ts-expect-error – ошибка на следующей строке будет проигнорирована. Если ошибки нет, то TypeScript компилятор выкинет ошибку Unused '@ts-expect-error' directive. Использование предпочтительней, чем @ts-ignore. Каноническим примером использования @ts-expect-error является обращение к приватному свойству в unit тесте.
Тут можно прочитать рекомендацию, что в каком случае использовать @ts-expect-error или @ts-ignore. Выработанную договоренность лучше закрепить на уровне линтинга с помощью @typenoscript-eslint/ban-ts-comment.
Ответы на вопросы о закончившемся докладе:
❓ Видео в паблик будет в конце августа. Для владельцев Full ticket уже доступно.
❓ Хочу спросить в личку. У нас на проекте... Тут два варианта 1) Вытащить специфику проекта, чтобы можно было задавать публично. Например, в четверг на Voice Chat разберем. 2) Делать индивидуальную консультацию. На это на июль нет времени.
❓ А почему в докладе не было ...? Потому, что это не часть фреймворка, которой нет в документации.
❓ Будет ли повтор доклада? Да. Ближайшие 1-го июля в дружественном комьюнити @mathrandomcommunity
❓ Слайды тут
❓ Видео в паблик будет в конце августа. Для владельцев Full ticket уже доступно.
❓ Хочу спросить в личку. У нас на проекте... Тут два варианта 1) Вытащить специфику проекта, чтобы можно было задавать публично. Например, в четверг на Voice Chat разберем. 2) Делать индивидуальную консультацию. На это на июль нет времени.
❓ А почему в докладе не было ...? Потому, что это не часть фреймворка, которой нет в документации.
❓ Будет ли повтор доклада? Да. Ближайшие 1-го июля в дружественном комьюнити @mathrandomcommunity
❓ Слайды тут
Где брать сниппеты кода?
#service
Я не сторонник дублирования кода, но ради нескольких хелперов затаскивать в приложение lodash, rambda или их аналоги не стану. Вместо этого я пишу их сам. Большинство JS хелперов пишутся в одну строчку. Многие из моего helpers.ts можно найти на 1loc.dev.
Вот парочка полезных #nodejs разработчику:
➡️ Проверить, что код запущен в Node.js:
➡️ memoize для длительных вычислений
#service
Я не сторонник дублирования кода, но ради нескольких хелперов затаскивать в приложение lodash, rambda или их аналоги не стану. Вместо этого я пишу их сам. Большинство JS хелперов пишутся в одну строчку. Многие из моего helpers.ts можно найти на 1loc.dev.
Вот парочка полезных #nodejs разработчику:
➡️ Проверить, что код запущен в Node.js:
const isNode = typeof process !== 'undefined' && process.versions != null && process.versions.node != null;➡️ memoize для длительных вычислений
const memoize = fn => ((cache = {}) => arg => cache[arg] || (cache[arg] = fn(arg)))();👍1
OpenJS World уже сегодня!
#conference
Сегодня начинается конференция OpenJS World 2021. Подробное интро конференции тут.
Если вы еще не зарегистрированы, то рекомендую это сделать. Это бесплатно.
Для тех кто подумывает об #nodejs сертификации.
1) регистрация дает 50% скидку
2) David Mark Clements делает доклад как раз о ней.
При изучение программы обратите внимание, что справа есть фильтры. Самый полезный из них
#conference
Сегодня начинается конференция OpenJS World 2021. Подробное интро конференции тут.
Если вы еще не зарегистрированы, то рекомендую это сделать. Это бесплатно.
Для тех кто подумывает об #nodejs сертификации.
1) регистрация дает 50% скидку
2) David Mark Clements делает доклад как раз о ней.
При изучение программы обратите внимание, что справа есть фильтры. Самый полезный из них
Slides Included. Я вижу такое впервые, когда доклады идут сразу со слайдами. Боюсь за себя и других докладчиков, если это станет трендом.Обзор Node.js v16: Timers Promises API
#nodejs_api
Шестнадцатая версия #nodejs меняет работу с таймерами. Раньше мы не могли отменять промифисицированные таймеры. Теперь это возможно благодаря AbortController-ы. Промифисицированный таймер можно сразу получить из
из
#nodejs_api
Шестнадцатая версия #nodejs меняет работу с таймерами. Раньше мы не могли отменять промифисицированные таймеры. Теперь это возможно благодаря AbortController-ы. Промифисицированный таймер можно сразу получить из
timers/promises, аналогично fs/promises . Функция setIntervalиз
timers/promises, будет возвращать не Promise, а asyncIterator. Его можно итерировать через for-await-for. Примеры в документации.Audio
#voice_chat
Гость: Николай Крещенко, Senior Software Engineer в финтех сфере. Сейчас занят в разработке высокконагруженного бекенда необанка в Дубаях.
Вопросы
❓ Чем Cloud Native подходы в разработке отличаются от традиционных
❓ из чата по теме Cloud Native
Ссылки:
🔗 книга Cloud Native
🔗 Aviatrix Certified Engineer Multi-Cloud Networking & Security Courses
🔗 7 missing factors from 12 factor application
PS Изначально формат должен был быть Q&A, но в последний момент я пригласил Николая и изменил фокус на Cloud Native. Прошу прощения у кого были другие ожидания
Гость: Николай Крещенко, Senior Software Engineer в финтех сфере. Сейчас занят в разработке высокконагруженного бекенда необанка в Дубаях.
Вопросы
❓ Чем Cloud Native подходы в разработке отличаются от традиционных
❓ из чата по теме Cloud Native
Ссылки:
🔗 книга Cloud Native
🔗 Aviatrix Certified Engineer Multi-Cloud Networking & Security Courses
🔗 7 missing factors from 12 factor application
PS Изначально формат должен был быть Q&A, но в последний момент я пригласил Николая и изменил фокус на Cloud Native. Прошу прощения у кого были другие ожидания
Что должен знать Junior Node.js Developer?
Вчера во время Voice Chat Андрей задал вопрос: "Какие необходимые навыки/знания ты бы выделил для junior nodejs разработчика?". Вопрос можно брать для отдельного часового обсуждения и все равно не будет раскрыт полностью.
Обратите внимание, что в русском языке Junior переводиться младший специалист. Это означает способность самостоятельно решать задачу. Уровень Middle – тоже самое плюс немного проектировать фичи, Senior – проектировать фичи, Lead – строить процессы.
Вот мой список для Junior:
➡️Знание JavaScript/TypeScript, чтобы по примеру из другого файла сделать схожую фичу и покрыть ее тестами
➡️Знание работы с GIT, достаточные для открытия Merge Request
➡️Знание Docker и CLI, достаточные чтобы по хорошей документации проекта развернуть локальное окружение.
➡️Прочитана и понята документация по Node.js и фреймворку, что бы бы знать как и что в ней искать.
Завершу двумя полезными ссылками:
🔗Building Modern Node.js Applications on AWS хороший обзорный курс, для тех кто не работал с Cloud Native
🔗Матрица компетентности от Ильи Климова
Вчера во время Voice Chat Андрей задал вопрос: "Какие необходимые навыки/знания ты бы выделил для junior nodejs разработчика?". Вопрос можно брать для отдельного часового обсуждения и все равно не будет раскрыт полностью.
Обратите внимание, что в русском языке Junior переводиться младший специалист. Это означает способность самостоятельно решать задачу. Уровень Middle – тоже самое плюс немного проектировать фичи, Senior – проектировать фичи, Lead – строить процессы.
Вот мой список для Junior:
➡️Знание JavaScript/TypeScript, чтобы по примеру из другого файла сделать схожую фичу и покрыть ее тестами
➡️Знание работы с GIT, достаточные для открытия Merge Request
➡️Знание Docker и CLI, достаточные чтобы по хорошей документации проекта развернуть локальное окружение.
➡️Прочитана и понята документация по Node.js и фреймворку, что бы бы знать как и что в ней искать.
Завершу двумя полезными ссылками:
🔗Building Modern Node.js Applications on AWS хороший обзорный курс, для тех кто не работал с Cloud Native
🔗Матрица компетентности от Ильи Климова
Consuming Nodejs Observability Features in Kubernetes Environments
#worth_seeing
Сегодняшнее видео приятно рекомендовать по многим причинам.
Во-первых, сама тема – мониторинг #nodejs метрик да еще в Kubernetes. На многих проектах нет мониторинга. Разработчики не знают как его сделать, а DevOps инженеры не понимают особенностей Node.js.
Во-вторых, докладчики из Red Hat, компании которая много делает для open source в общем, и для Node.js в частности.
Во-третьих, подача самого доклада. Ребята подкупают своей простотой и открытостью. Вот вы много видели докладов, где докладчик джун (Alex Alykiotis)? А где докладчик (Luke Holmquist) шутит со своего имени Лукас и показывая йоду из звездных войн? Такое интро настраивает на простоту. Действительно сложная тема раскрывается легко и интересно.
#worth_seeing
Сегодняшнее видео приятно рекомендовать по многим причинам.
Во-первых, сама тема – мониторинг #nodejs метрик да еще в Kubernetes. На многих проектах нет мониторинга. Разработчики не знают как его сделать, а DevOps инженеры не понимают особенностей Node.js.
Во-вторых, докладчики из Red Hat, компании которая много делает для open source в общем, и для Node.js в частности.
Во-третьих, подача самого доклада. Ребята подкупают своей простотой и открытостью. Вот вы много видели докладов, где докладчик джун (Alex Alykiotis)? А где докладчик (Luke Holmquist) шутит со своего имени Лукас и показывая йоду из звездных войн? Такое интро настраивает на простоту. Действительно сложная тема раскрывается легко и интересно.
YouTube
Consuming Nodejs Observability Features in Kubernetes Environments - Alex Alykiotis & Luke Holmquist
Presented by Alex Alykiotis and Luke HolmquistOnce you get your application running in production, the next question is how do you keep it running and runnin...
Node.js middleware - никогда больше!
#worth_seeing
Вряд ли среди русскоязычных веб-разработчиков есть те, кто не знают Тимура Шемсединова. Он один из топ докладчиков по #nodejs. Не все идеи из его докладов я разделяю, но точно могу рекомендовать их к ознакомлению. Докладов у Тимура много. Конкретно этот знаменателен тем, что в конце идет обсуждение Ильей Климовым.
#worth_seeing
Вряд ли среди русскоязычных веб-разработчиков есть те, кто не знают Тимура Шемсединова. Он один из топ докладчиков по #nodejs. Не все идеи из его докладов я разделяю, но точно могу рекомендовать их к ознакомлению. Докладов у Тимура много. Конкретно этот знаменателен тем, что в конце идет обсуждение Ильей Климовым.
YouTube
Node.js Middleware – никогда больше! [ru] / Тимур Шемсединов
Видео с онлайн-конференции JavaScript fwdays'20 autumn, которая прошла 22 сентября 2020 года.
Описание доклада:
Почему приложение работает нестабильно, происходит утечка памяти и процесс часто вылетает? Почему вам сложно найти ошибку и нужно долго делать…
Описание доклада:
Почему приложение работает нестабильно, происходит утечка памяти и процесс часто вылетает? Почему вам сложно найти ошибку и нужно долго делать…
Prisma Day
#conference
Я люблю Vendor-конференции. На них можно послушать доклады и для новичков, и для тех кто глубоко освоил технологию. Есть возможность познакомиться с командой разработки и задать им вопросы.
Сегодня речь именно о такой конференции: Prisma Day пройдет 29-30 июня. Если вы не знакомы с этой технологией, то на конференции самое время составить свое мнение о ней.
#conference
Я люблю Vendor-конференции. На них можно послушать доклады и для новичков, и для тех кто глубоко освоил технологию. Есть возможность познакомиться с командой разработки и задать им вопросы.
Сегодня речь именно о такой конференции: Prisma Day пройдет 29-30 июня. Если вы не знакомы с этой технологией, то на конференции самое время составить свое мнение о ней.
На что влияет environment variable
#cli
Переменная окружения
Я предпочитаю его переопределять на Visual Code.
В зависимости от того, какой shell вы используете это строчку необходимо внести в
Примеры, когда будет вызван редактор:
➡️
➡️
➡️ при клике по строчке ошибки в браузере вашего React приложения.
Есть быть более точным, то многое программное обеспечение использует EDITOR, если не задан SOMETHING_EDITOR. Например, можно использовать
EDITOR?#cli
Переменная окружения
EDITOR определяет, какой текстовый редактор использовать при многострочном пользовательском вводе или редактирование файла. По умолчанию в Unix системах это vim, в Windows – notepad.exe.Я предпочитаю его переопределять на Visual Code.
export EDITOR='code'В зависимости от того, какой shell вы используете это строчку необходимо внести в
~/.profile, ~/.bashrc, ~.zshrc, то есть в конфигурационный файл вашего shell.Примеры, когда будет вызван редактор:
➡️
npm config edit➡️
git commit➡️ при клике по строчке ошибки в браузере вашего React приложения.
Есть быть более точным, то многое программное обеспечение использует EDITOR, если не задан SOMETHING_EDITOR. Например, можно использовать
REACT_EDITOR и GIT_EDITOR, но не NPM_EDITOR. Читайте документацию или исходный код конкретного ПО.