3 195
Subscribers
No data24 hours
-47 days
-230 days
Posts Archive
3 195
Middle MERN Developer for Superworld
#promotion #vacancy
Проект: AR virtual world allowing users and brands to create, discover and monetize.
Обязанности: Improving all of our web applications. This is a Full Stack role mostly focusing on Front End. Презентация.
Формат: remote, flexible working hours, daily 30 min calls at 9am PST (7pm Kyiv time), should be available on weekdays from 9 to 11am PST to be able to collaborate with US colleagues.
Требуемый опыт: 2-4 года разработки
Технически стэк: React, Express, MongoDB, Nodejs, Mapbox, web3.js, Typescript, ReactStrap, Material UI (a style library), AWS
Зарплата: up to 5.000 USD/month, unlimited paid time off
Прочее: Английский B2+
👉Вопросы и резюме слать @alesya_k26
3 195
Обновление Open Machine Learning Course
Yorko (Юрий Кашницкий) зарелизил обновленную версию mlcourse.ai. Раньше он проходился в когортах, теперь его можно пройти в self-paced режиме. Я сам проходил этот курс. Знания из курса помогли построение процессов с Data Science инженерами.
Почему я его рекомендую для ознакомления #nodejs разработчикам? Во-первых, для прокачки эрудиции и T-shaped экспертизы. Во-вторых, все чаще API должны забирать данные из Machine Learning моделей, а значит понимание как они работают упрощают интеграцию.
Рецепты по теме:
– Как технологии будут востребованы для Node.js разработки в 2022?
3 195
26-27 января состоится #conference TheJam.dev 2022. Это двух дневная бесплатная онлайн конференция посвященная JAM стэку.
👉Регистрация
JavaScript разработчику нужно знать об этом стэке, не зря первая буква в JAM это javascript. Node.js разработчику будет полезно иметь опыт работы с какой-либо Headless CMS.
Ссылки в тему:
🔗 jamstack.org
🔗 jamstack.wtf
3 195
Testing Pyramid Makes Little Sense, What We Can Use Instead
#worth_seeing
Сегодняшнее видео предлагает переосмыслить концепт пирамиды тестирования. Глеб Бахмутов и Роман Сандлер разбирают различные подходы в тестирования JS проектов. Они вводят матрице Compromise VS Effort, предлагают список вопросов, которые стоит задать себе и команде для выбора подходов.
Для меня это самое полезное видео с ноябрського TestJsSummit 2021. Возможно, для вас будет полезнее другой доклад, поэтому прикрепляю весь плейлист. Он стоит того, чтобы уделить ему вечер.
Ссылки
👀Видео
📕Слайды
🔗Сайт конференции
👉Плелист всех видео с конференции
3 195
llhttp - new HTTP 1.1 parser for Node.js
#worth_seeing #typescript
На этой неделе в войс чате с Тимуром мы поднимали вопрос о системном программирование, т.е. создание инструментов для создания продуктов. Сегодняшний доклад как раз об этом.
В докладе Федор рассказывает как и зачем был переписан http_parser. Произошло это в 2019. Кодовая база
http_parser на чистом С перестала быть поддерживаемой. Ее переписали на С + TypeScript и назвали llparse. Его исходный код стоит изучить с целью улучшения как своих навыков работы с TypeScript, так и понимания принципов работы http в целом.
Ссылки:
👀 Видео
📕 Сайт
⚙️ GitHub3 195
Strong Junior/Middle Node JS for Milan Art
#promotion #vacancy
Проект: EduTech продукт, уже в проде и активно развивается, сайт: https://www.milanart.com/
Обязанности: имплементация и покрытие тестами новых фич продукта под руководством архитектора
Формат: Remote Fulltime, Kyiv (100% - remote) с рабочими часами близкими к UTC+2
Команда: 2 BE, 2 FE, QA, 3 designers, PM
Технически стэк: Node.js (Nest), TypeScript, PostgreSQL. Hosted on AWS. Vue 3 + SSR (Nuxt)
Минимальные требования: 1 год коммерческой разработки под Node JS
Зарплата: 3000+ USD/month
Прочее: Английский B1
👉Вопросы и резюме слать @vitalii_ask
3 195
Подборка книг для изучения TypeScript
#list #typescript
В сегодняшней подборке все книги на английском языке. Читайте на английском. Это позволит вам изучать устоявшуюся терминологию. Вы ведь не ходите называть Promise Обещанием, а Tuple Кортежем?
📕The TypeScript Handbook. В марте 2021 команда переписала руководство и держит его актуальным после каждого релиза. Поэтому обучение начинайте именно с него. Книгу можно скачать бесплатно, в конце странице
grab a copy in Epub or PDF form.
📕Effective TypeScript. Книга от O'Reilly в формате принципов языка с объяснением почему стоит делать именно так. Например: Prefer Type Declarations to Type Assertions
📕Programming TypeScript by Boris Cherny. Еще одна книга от O'Reilly с фокусом на реальной практике применения. Каждая глава заканчивается упражнениями для закрепления теории.
📕TypeScript 4 Design Patterns and Best Practices Свежая книга, которая не только показывает фичи языка, но и паттерны их использования.3 195
#voice_chat About Software Engineering Education с Тимуром Шемсединовым
Агенда:
- Проблема некачественных курсов по программированию
- Кому нужно системное программирование
- Полное разрушение высшего образования
- Программирование в школах
- Особый путь для свитчеров
- Подготовка лоукод-специалистов
- Как подготовить: постановщики задач, архитекторы, бизнес-аналитики
- Новые профессии
3 195
Как запустить Recorder в Chrome?
В 97-й версии Google Chrome появилась возможность записывать действия. Для этого добавили Recorder. С его помощью можно записывать клики в сценарий. Сценарий можно запускать и экспортировать как js файл для puppeteer.
Собственно запуск: Открываем DevTools, в правом верхнем углу жмем ⋮, потом More tools > Recorder.
Фича пока находиться в статусе preview. Надеюсь ее допилят, чтобы можно было импортировать файлы. Мечтаю работать на проекте, где QA используют что-то похожее для баг-репортов.
Подробней в Chrome DevTools.
3 195
Middle/Senior Full Stack for AXDRAFT
#promotion #vacancy
Проект: LegalTech стартап, сайт
Обязанности: написание компонентов для продукта
Формат: Partly Remote, Kyiv (70% - office, 30% - remote) с рабочими часами близкими к UTC+2
Технически стэк: Node.js, React + SSR, TypeScript, MySQL, Redis. Hosted on AWS & GCP.
Минимальные требования: 2 года коммерческой разработки на JS
Зарплата: 5.000+ USD/month
Прочее: Английский B1
👉Вопросы и резюме слать @Ivanna_Os
3 195
Как использовать assert для улучшения читабельности кода?
#typescript
В javascript разработки мы обычно используем assert в коде тестов, но не в коде приложения. Мой опыт работы с koa читабельность кода с assert получается выше.
Пример из библиотеки koa:
ctx.assert(ctx.state.user, 401, 'User not found. Please login!');
Т.е. если пользователь не найден, будет выкинута ошибка с указанным текстом и статусом 401. Дальше по коду вы можете быть уверены, что ctx.state.user определен. Для этого используется пакет http-assert.
Причем TypeScript автоматически изменит тип выражения. Это достигается за счет использования Assertion Functions, который появились с версии 3.7. Пример такой функции:
function assertIsString(val: any): asserts val is string {
if (typeof val !== "string") {
throw new AssertionError("Not a string!");
}
}
К сожалению, Nest.js и Fastify из коробки не имеют встроенного assert, поэтому приходиться писать свой маленький хелпер. Оставлю его вам на самостоятельную реализацию.3 195
Senior Full Stack for Formelife
#promotion #vacancy
Проект: Home Fitness Startup, сайт
Обязанности: Создание внутренних инструментов компании
Формат: full remote с рабочими часами близкими к UTC-8
Требуемый опыт: 4+ года разработки
Технически стэк: Nest.js, React, Google Cloud, Microservice, PostgreSQL
Зарплата: 8.000+ USD/month
Прочее: Английский С1
👉Вопросы и резюме слать @galkin_nikita
PS В январь будет эксперимент "Вакансии". Публикации 3 раза в неделю с удалением из ленты спустя 24 часа.
3 195
Есть такой проект Best of JS. Его автор каждый год делает топ OpenSource JS библиотек набравшие за год наибольшее количество звезд на GitHub. Топ разбит на категории. В категории #nodejs frameworks картина такова:
1. Next.js – находиться в категории из-за позиционирования как фулстэк фреймворк.
2. Nest.js – top-1 для BE разработки
3. Strapi – вложено очень много в маркетинг, осваивают инвесторские деньги.
Посмотреть итоги года можно тут: 2021 JavaScript Rising Stars.
3 195
#announcement
На этой неделе #voice_chat будет About Software Engineering Education с Тимуром Шемсединовым
Когда: в четверг, 13 января, в 21:00
Где: https://t.me/node_recipes?voicechat
Агенда, которую мы вряд ли успеем покрыть:
- Проблема некачественных курсов по программированию
- Обучение на основе чтения кода и исправления ошибок
- Обучение на нескольких языках и через переводы
- Полное разрушение высшего образования
- Программирование в школах
- Особый путь для свитчеров
- Кому нужно системное программирование
- Подготовка лоукод-специалистов
- Как подготовить: постановщики задач, архитекторы, бизнес-аналитики
- Новые профессии
До встречи в эфире!
3 195
Когда и как использовать
navigator.sendBeacon?
#web_api
Сегодня обсудим Web API navigator.sendBeacon. Beacon API используется для отправки асинхронного и неблокирующего запроса на веб-сервер. Запрос не ожидает ответа. В отличие от XMLHttpRequest или Fetch-based запросов, браузер гарантирует отправку запрос до закрытия страницы или перехода на другую. Поэтому данный API рекомендованный способ для отправки аналитических данных. Его синтаксис:
navigator.sendBeacon(url);
navigator.sendBeacon(url, data);
На данный url будет отправлен POST запрос. Его Content-Type будет зависит от аргумента data. По умолчанию это 'text/plain; charset=UTF-8'. Чтобы #nodejs код мог работать с таким типом контента необходимо включить соотвествующий парсер. В express это app.use(bodyParser.text());. Данные необходимо будет десерилизовать из текста.
Чтобы работать с application/json, клиент должен использовать такой код:
const blob = new Blob([JSON.stringify(data)], { type: 'application/json' });
navigator.sendBeacon(url, blob);
Тогда на сервере мы сразу получаем JSON, с которым удобно работать.
Используйте данное API для построение своей системы аналитики.
Ссылки:
🔗 MDN
🔗 Can I use3 195
Node Congress
#conference
Git Nation проводит несколько конференций в год. Возможно, вы слышали о них:
- TestJS Summit
- Node Congress
- GraphQL Galaxy
- JSNation Live
- React Summit
Первой из них пройдет Node Congress.
Когда: 17-18 Февраля
Формат: онлайн
Регистрация: nodecongress.com
Билеты: бесплатной для просмотра онлайн или 46 euro
Тем на сайте еще нет, но список докладчиков уже выложен. Программный комитет возглавляет Matteo Colina, поэтому уверен программа будет интересной. Рекомендую к регистрации и просмотру.
3 195
Create an Application Backend in Clicks with the Amplify Admin UI
#aws #worth_seeing
Сегодняшнее видео – это демо, как с помощью AWS Amplify можно сделать backend для вашего мобильного или веб приложения. Докладчик Ali Spittel, является девелопер адвокатом Amplify.
Видео рекомендуется к просмотру, так как Amplify и его аналог в GCP Firebase является отличным выбором для создания прототипа. Скорость разработки и developer experience действительно радуют. Стоит учесть, что для выхода на рынок на таком тэх стэк необходимо очень внимательно следить за правильной архитектурой и FinOps.
Ссылки:
👀 видео
📕 amplify docs
⚙️ sandbox
3 195
Advanced TypeScript Playlist by Basarat
#typescript #worth_seeing
Сегодня в рекомендациях не одно видео, а целый плейлист от Basarat. Вы знаете автора по книге TypeScript Deep Dive. В плейлисте собранны короткие видео уроки по продвинутому использованию typescript. Вот три видео, которые мне стоит пересказать как рецепты в рамках канала:
– TypeScript TYPES vs INTERFACES : Key Differences
– TARGET, LIB and POLYFILL for TypeScript and JavaScript
– TypeScript insane type: DeepReadonly
Ссылки:
👀Advanced TypeScript Playlist
📕TypeScript Deep Dive
3 195
oclif.io – Open CLI Framework
#package
Вчера на Voice Chat Алексей озвучил своей виденье, что правильная организация кода должна позволять сделать из web приложения CLI утилиту. Как правило CLI утилиты написаны на Python (например AWS, GCP). Но есть примеры и на #nodejs: heroku, salesforce, twilio. Они все написаны на фреймворке oclif. У него отличная документация, возможность сразу делать упаковку в исполняемый файл под нужную операционку, публикация на S3, поддержка typescript и отличное комьюнити. Однозначный выбор для тех.стэка в проект, которому необходима CLI утилита.
3 195
Первый #voice_chat в 2022 будет сегодня в 21:00 по Киеву. Тема: "Node.js Best Practices". Мы обсудим, где за ними лучше следить, как и когда применять. И, конечно, ответим на ваши вопросы и комментариях.
В гостях: Алексей Бобырь, Principal Engineer в JOIN, работает с NodeJS с 2013. Энтузиаст хороших практик и правильных подходов. Помнит когда async еще был библиотекой, а не словом из синтаксиса языка.
Ссылки:
- https://github.com/goldbergyoni/nodebestpractices – Best Practices, которые обсуждали
- https://github.com/galkin/workshop – воркшоп с примером трейсинга
