Делюсь крутой ссылкой с CTO meetup. https://www.progression.fyi
В ней собраны критерии кто есть синьор/мидл/whatever в разных компаниях.
В ней собраны критерии кто есть синьор/мидл/whatever в разных компаниях.
progression.fyi
A collection of open source frameworks for helping designers and engineers to grow at work
Context Aware Content Discovery: The Natural Evolution
#rest #worth_seeing
Идея сегодняшнего видео проанализировать как скрапинг контента меняется при работе с API по сравнению с файловыми серверами. Чтобы это сделать, команда из Assetnote собрала из открытых источников Open API Specs, проанализировала тысячи апи и их реализации. Компания занимаются безопасностью, поэтому они выкладывают свои инструменты в OpenSource.
Видео это фундаментальное отчет-исследование. Рекомендую посмотреть целиком особенно если вы занимаетесь парсингом.
Слайды
#rest #worth_seeing
Идея сегодняшнего видео проанализировать как скрапинг контента меняется при работе с API по сравнению с файловыми серверами. Чтобы это сделать, команда из Assetnote собрала из открытых источников Open API Specs, проанализировала тысячи апи и их реализации. Компания занимаются безопасностью, поэтому они выкладывают свои инструменты в OpenSource.
Видео это фундаментальное отчет-исследование. Рекомендую посмотреть целиком особенно если вы занимаетесь парсингом.
Слайды
YouTube
"Context Aware Content Discovery: The Natural Evolution"
Presented by Sean Yeoh, Patrick Mortensen, Michael Gianarakis, Shubham Shah
BSides Canberra 2021, 9-10 April
BSides Canberra 2021, 9-10 April
На август по voice chat был отпуск. В сентябре буду возвращать этот формат. Мне важно ваше мнение когда их проводить, чтобы вы могли послушать эфир, поучаствовать и задавать вопросы.
Как было – Четверг, вечер в 21:00 - 62
👍👍👍👍👍👍👍👍 45%
Morning coffee – Утро буднего дня с 8 до 10 - 11
👍👍 8%
Выходной день с 9 до 11 - 5
👍👍 4%
Все равно, если и слушаю то в записи - 57
👍👍👍👍👍👍👍 42%
Напишу в комментариях - 2
👍 1%
👥 137 человек уже проголосовало.
Как было – Четверг, вечер в 21:00 - 62
👍👍👍👍👍👍👍👍 45%
Morning coffee – Утро буднего дня с 8 до 10 - 11
👍👍 8%
Выходной день с 9 до 11 - 5
👍👍 4%
Все равно, если и слушаю то в записи - 57
👍👍👍👍👍👍👍 42%
Напишу в комментариях - 2
👍 1%
👥 137 человек уже проголосовало.
Complexity vs Incomprehensibility
#principles
Я рекомендую различать сложность, т.е. метрику количества элементов системы/кода/задачи и понятность, т.е. необходимые когнитивные усилия, чтобы понять систему/код/задачу. На английском это Complexity vs Incomprehensibility. Оба этих параметры определяют стоимость создания и поддержки кода. Но именно непонятность вносит большую часть.
Вещи, которые позволяют делать ваш код понятным:
- хороший нейминг
- абстракции и паттерны
- консистеная организация кода
- код ревью
- качественно поставленные задачи
Закончу своей же цитатой: "Все сложное — это состыкованное с друг другом простое. Поэтому делай просто и одинаково. А сложным оно станет само"
#principles
Я рекомендую различать сложность, т.е. метрику количества элементов системы/кода/задачи и понятность, т.е. необходимые когнитивные усилия, чтобы понять систему/код/задачу. На английском это Complexity vs Incomprehensibility. Оба этих параметры определяют стоимость создания и поддержки кода. Но именно непонятность вносит большую часть.
Вещи, которые позволяют делать ваш код понятным:
- хороший нейминг
- абстракции и паттерны
- консистеная организация кода
- код ревью
- качественно поставленные задачи
Закончу своей же цитатой: "Все сложное — это состыкованное с друг другом простое. Поэтому делай просто и одинаково. А сложным оно станет само"
#announcement #voice_chat
2 сентября в 21:00 поговорим о том, что такое Culture Fit.
Гость: Алексей Мигутский, Senior Software Development Engineer в Microsoft. Алексей поработал в аутсорсе в Беларуси и Украине, а затем переехал в Берлин и начал свой путь в продуктовых стартапах. Последние пять лет он работает в Microsoft (Microsoft To-Do и GitHub Projects & Issues). Алексей так же занимается коачингом разработчиков (официальный Early Career Advisor в Microsoft и свой проект mtdv.io)
Вопросы:
❓ Как проходит Culture Fit Interview?
❓ Как различается в культура в ентерпрайз и стартапах?
❓ Различие в Европе, СНГ и США
❓ Как и где происходит разделение на BE/FE/FullStack? Как происходит кооперация?
Ссылка для подключения: https://xn--r1a.website/node_recipes?voicechat
До встречи в эфире!
2 сентября в 21:00 поговорим о том, что такое Culture Fit.
Гость: Алексей Мигутский, Senior Software Development Engineer в Microsoft. Алексей поработал в аутсорсе в Беларуси и Украине, а затем переехал в Берлин и начал свой путь в продуктовых стартапах. Последние пять лет он работает в Microsoft (Microsoft To-Do и GitHub Projects & Issues). Алексей так же занимается коачингом разработчиков (официальный Early Career Advisor в Microsoft и свой проект mtdv.io)
Вопросы:
❓ Как проходит Culture Fit Interview?
❓ Как различается в культура в ентерпрайз и стартапах?
❓ Различие в Европе, СНГ и США
❓ Как и где происходит разделение на BE/FE/FullStack? Как происходит кооперация?
Ссылка для подключения: https://xn--r1a.website/node_recipes?voicechat
До встречи в эфире!
Где посмотреть лучшие практики по безопасности?
#security #list
Лучшие практики безопасности веб-проектов описаны в OWASP cheat sheets. OWASP расшифровывается как Open Web Application Security Project. Вот топ-5 для #nodejs разработчиков:
🔗 NodeJS security cheat sheet
🔗 REST Security Cheat Sheet
🔗 npm Security best practices
🔗 Node.js Docker Cheatsheet
🔗 Microservices Security Cheat Sheet
#security #list
Лучшие практики безопасности веб-проектов описаны в OWASP cheat sheets. OWASP расшифровывается как Open Web Application Security Project. Вот топ-5 для #nodejs разработчиков:
🔗 NodeJS security cheat sheet
🔗 REST Security Cheat Sheet
🔗 npm Security best practices
🔗 Node.js Docker Cheatsheet
🔗 Microservices Security Cheat Sheet
cheatsheetseries.owasp.org
Introduction - OWASP Cheat Sheet Series
Website with the collection of all the cheat sheets of the project.
Подборка node.recipes за август 2021
#monthly_list
Рецепты для #nodejs разработчиков:
➡️ Что такое Breaking Change в Web API?
➡️ Почем нынче Node.js разработчики?
➡️ Обзор Node.js v16: Префикс для Core modules
➡️ JavaScript Algorithms and Data Structures
➡️ Обзор сервиса RunKit
➡️ Обзор Node.js v16: Новые JavaScript конструкции
➡️ Где изучать Kubernetes
➡️ Обзор Node.js v16: Упрощение доступа к util.types
➡️ Как и зачем использовать AsyncLocalStorage?
➡️ Как автоматизировать 2FA?
➡️ Как подтянуть TypeScript?
➡️ Зачем нужен Symbol в JavaScript?
➡️ Как использовать Node.js REPL?
➡️ 30 seconds of code – сборник код-снипетов
➡️ Почему нужно избегать магии?
➡️ Как правильно проектировать обновление в REST?
➡️ Complexity vs Incomprehensibility
➡️ Что нового в TypeScript 4.4?
➡️ Где посмотреть лучшие практики по безопасности?
Доклады, которые стоит посмотреть:
👀 Real-time communication with WebRTC: Google I/O 2013
👀 Что такое Code With Me от JetBrains?
👀 Yoni Goldberg on Integration Tests with JavaScript
👀 Знай свой JIT: ближе к машине
👀 Build Better Workloads with the AWS Well-Architected Framework and Tool
👀 Context Aware Content Discovery: The Natural Evolution
Voice Chats:
На август был отпуск. В сентябре формат возвращается в то же время. Спасибо всем, кто принял участие в голосование.
#monthly_list
Рецепты для #nodejs разработчиков:
➡️ Что такое Breaking Change в Web API?
➡️ Почем нынче Node.js разработчики?
➡️ Обзор Node.js v16: Префикс для Core modules
➡️ JavaScript Algorithms and Data Structures
➡️ Обзор сервиса RunKit
➡️ Обзор Node.js v16: Новые JavaScript конструкции
➡️ Где изучать Kubernetes
➡️ Обзор Node.js v16: Упрощение доступа к util.types
➡️ Как и зачем использовать AsyncLocalStorage?
➡️ Как автоматизировать 2FA?
➡️ Как подтянуть TypeScript?
➡️ Зачем нужен Symbol в JavaScript?
➡️ Как использовать Node.js REPL?
➡️ 30 seconds of code – сборник код-снипетов
➡️ Почему нужно избегать магии?
➡️ Как правильно проектировать обновление в REST?
➡️ Complexity vs Incomprehensibility
➡️ Что нового в TypeScript 4.4?
➡️ Где посмотреть лучшие практики по безопасности?
Доклады, которые стоит посмотреть:
👀 Real-time communication with WebRTC: Google I/O 2013
👀 Что такое Code With Me от JetBrains?
👀 Yoni Goldberg on Integration Tests with JavaScript
👀 Знай свой JIT: ближе к машине
👀 Build Better Workloads with the AWS Well-Architected Framework and Tool
👀 Context Aware Content Discovery: The Natural Evolution
Voice Chats:
На август был отпуск. В сентябре формат возвращается в то же время. Спасибо всем, кто принял участие в голосование.
Forwarded from DOU #tech
Tech voice chat на тему «Cloud Development» проведемо цієї п'ятниці!
📌 3 вересня, о 18:00, за цим посиланням.
Про що поговоримо:
☁️ як хмарні технології вплинули на підходи розробки ПЗ;
☁️ порівняємо AWS vs MS Azure vs Google Cloud (наскільки це можливо 😉);
☁️ тренди і таке інше.
Також не соромтеся пропонувати власні теми для обговорення 👉 @dzzzvinka
Спікери (список може оновлюватися):
🗣 Нікіта Галкін, Cloud Architect at Formelife, автор @node_recipes, організатор GDG Cloud Kyiv
🗣 Антон Бойко, Senior Solution Architect в BoykoAnt.PRO, засновник Ukrainian Microsoft Azure Community, Microsoft Azure Technical Expert, Microsoft Azure MVP з 2014
🗣 Руслан Кусов, AWS Cloud COE Lead at SoftServe, APN Ambassador (AWS)
❗️Формат: 30-45 хвилин говорять лише спікери, потім — підключаємо до слова слухачів.
Статті та топіки на теми: cloud, AWS, Azure
Приєднаєтеся?
📌 3 вересня, о 18:00, за цим посиланням.
Про що поговоримо:
☁️ як хмарні технології вплинули на підходи розробки ПЗ;
☁️ порівняємо AWS vs MS Azure vs Google Cloud (наскільки це можливо 😉);
☁️ тренди і таке інше.
Також не соромтеся пропонувати власні теми для обговорення 👉 @dzzzvinka
Спікери (список може оновлюватися):
🗣 Нікіта Галкін, Cloud Architect at Formelife, автор @node_recipes, організатор GDG Cloud Kyiv
🗣 Антон Бойко, Senior Solution Architect в BoykoAnt.PRO, засновник Ukrainian Microsoft Azure Community, Microsoft Azure Technical Expert, Microsoft Azure MVP з 2014
🗣 Руслан Кусов, AWS Cloud COE Lead at SoftServe, APN Ambassador (AWS)
❗️Формат: 30-45 хвилин говорять лише спікери, потім — підключаємо до слова слухачів.
Статті та топіки на теми: cloud, AWS, Azure
Приєднаєтеся?
Audio
#voice_chat About Culture Fit.
Гость: Алексей Мигутский, Senior Software Development Engineer в Microsoft. Алексей поработал в аутсорсе в Беларуси и Украине, а затем переехал в Берлин и начал свой путь в продуктовых стартапах. Последние пять лет он работает в Microsoft (Microsoft To-Do и GitHub Projects & Issues). Алексей так же занимается коачингом разработчиков (официальный Early Career Advisor в Microsoft и свой проект mtdv.io)
Вопросы:
❓ Как проходит Culture Fit Interview?
❓ Как различается в культура в ентерпрайз и стартапах?
❓ Различие в Европе, СНГ и США
❓ Как и где происходит разделение на BE/FE/FullStack? Как происходит кооперация?
Подключайтесь послушать, задавайте свои вопросы в комментариях и в эфире.
Гость: Алексей Мигутский, Senior Software Development Engineer в Microsoft. Алексей поработал в аутсорсе в Беларуси и Украине, а затем переехал в Берлин и начал свой путь в продуктовых стартапах. Последние пять лет он работает в Microsoft (Microsoft To-Do и GitHub Projects & Issues). Алексей так же занимается коачингом разработчиков (официальный Early Career Advisor в Microsoft и свой проект mtdv.io)
Вопросы:
❓ Как проходит Culture Fit Interview?
❓ Как различается в культура в ентерпрайз и стартапах?
❓ Различие в Европе, СНГ и США
❓ Как и где происходит разделение на BE/FE/FullStack? Как происходит кооперация?
Подключайтесь послушать, задавайте свои вопросы в комментариях и в эфире.
my-talks.net – портфолио спикеров
Виктор Турский был не удовлетворен github-ом для ведения списка докладов и сделал my-talks.net Идея Виктора собрать информация по докладчикам в одном месте. Поддерживаю идею.
Виктор Турский был не удовлетворен github-ом для ведения списка докладов и сделал my-talks.net Идея Виктора собрать информация по докладчикам в одном месте. Поддерживаю идею.
my-talks.net
My talks
All your talks in one place
Forwarded from GDG Cloud Kyiv (Nikita)
Новости одной строкой:
1. Прямо сейчас стартует Voice Chat пo Cloud Development
2. 11 сентября Cloud Study Jam по k8s. Регистрация
3. Проходит #GCPSuperChallenge. Суть: проходишь qwikilabs и выигрываешь GCP/Pluralsight кредиты.
1. Прямо сейчас стартует Voice Chat пo Cloud Development
2. 11 сентября Cloud Study Jam по k8s. Регистрация
3. Проходит #GCPSuperChallenge. Суть: проходишь qwikilabs и выигрываешь GCP/Pluralsight кредиты.
Telegram
DOU #tech
Статті від українських айтівців про технології. З будь-яких питань — пишіть Редакції на editors@dou.ua
Forwarded from 🇺🇦 Math.random(): javascript community
@JStify_Community - молодое JS сообщество, с интересным контентом и регулярными подкастами на YouTube (https://www.youtube.com/c/jstifycommunity), по моему мнению сообщество имеет все шансы стать самым большим во Львове или даже в Украине.
@vinjs - канал очень атмосферной конференции VinnytsiaJS (https://vinnytsiajs.org/) в канале найдете доклады, анонсы событий, интересных спикеров.
@beerJSZhytomyr - канал сообщества BeerJS в Житомире, харизма и вовлеченность организаторов делают сообщество одним из самых привлекательных в Украине, о их offline встречах ходят легенды.
#channels #friends #tofollow
@vinjs - канал очень атмосферной конференции VinnytsiaJS (https://vinnytsiajs.org/) в канале найдете доклады, анонсы событий, интересных спикеров.
@beerJSZhytomyr - канал сообщества BeerJS в Житомире, харизма и вовлеченность организаторов делают сообщество одним из самых привлекательных в Украине, о их offline встречах ходят легенды.
#channels #friends #tofollow
Чем отличаются операционные ошибки от ошибок программиста?
#code_pattern
Ошибки в ходе выполнения можно разделить на операционные ошибки (база данных не доступна, внешний API не вернул ответ и т.д.) и на ошибки программиста, т.е. баги в коде. Типичная ошибка #nodejs программиста
С точки зрения REST API отмечу, что необходимо использовать валидацию входящих данных и использовать 400 код, если она не прошла. А вот 500-ый http код создан именно для ошибок программиста.
Ошибки обоих типов должны быть залогированы, но уровень для операционных ошибок info/error, а ошибок программиста – error/fatal.
Операционные ошибки могут и должны быть обработаны. Ошибки же программиста не могут быть обработаны, так как приводят программу в неизвестное состояние. По хорошему приложение необходимо перезапустить.
Подробней по теме:
🔗Distinguish operational vs programmer errors
🔗Error Handling in Node.js
#code_pattern
Ошибки в ходе выполнения можно разделить на операционные ошибки (база данных не доступна, внешний API не вернул ответ и т.д.) и на ошибки программиста, т.е. баги в коде. Типичная ошибка #nodejs программиста
TypeError: Cannot read property '...' of undefined. TypeScript снижает количество таких ошибок, но не убирает их полностью. С точки зрения REST API отмечу, что необходимо использовать валидацию входящих данных и использовать 400 код, если она не прошла. А вот 500-ый http код создан именно для ошибок программиста.
Ошибки обоих типов должны быть залогированы, но уровень для операционных ошибок info/error, а ошибок программиста – error/fatal.
Операционные ошибки могут и должны быть обработаны. Ошибки же программиста не могут быть обработаны, так как приводят программу в неизвестное состояние. По хорошему приложение необходимо перезапустить.
Подробней по теме:
🔗Distinguish operational vs programmer errors
🔗Error Handling in Node.js
#announcement #voice_chat
9 сентября в 21:00 поговорим о команде разработки, ее составе и создании.
Гость: Виталий Ратушный, Tech Enthusiast, Interviewer, Architect. Trying to get to the bottom of things. First principles thinker. Passionate ‘bout neuropsychology and perception development.
Вопросы:
❓ Какие роли могут быть в команде?
❓ Как UX/UI дизайнер участвует в разработке?
❓ Кто такой продукт овнер и откуда он берет требования?
❓ Кто такой техлид/архитектор? Что такое право на push-back?
❓ Какой состав Dream Team?
Ссылка для подключения: https://xn--r1a.website/node_recipes?voicechat
До встречи в эфире!
9 сентября в 21:00 поговорим о команде разработки, ее составе и создании.
Гость: Виталий Ратушный, Tech Enthusiast, Interviewer, Architect. Trying to get to the bottom of things. First principles thinker. Passionate ‘bout neuropsychology and perception development.
Вопросы:
❓ Какие роли могут быть в команде?
❓ Как UX/UI дизайнер участвует в разработке?
❓ Кто такой продукт овнер и откуда он берет требования?
❓ Кто такой техлид/архитектор? Что такое право на push-back?
❓ Какой состав Dream Team?
Ссылка для подключения: https://xn--r1a.website/node_recipes?voicechat
До встречи в эфире!
Cloud Development
DOU #Tech
Аудіозапис технічного войсчату від 3.09.2021
Спікери:
🗣 Нікіта Галкін, Cloud Architect at Formelife, автор @node_recipes, організатор GDG Cloud Kyiv
🗣 Антон Бойко, Senior Solution Architect в BoykoAnt.PRO, засновник Ukrainian Microsoft Azure Community, Microsoft Azure Technical Expert, Microsoft Azure MVP з 2014
🗣 Руслан Кусов, AWS Cloud COE Lead at SoftServe, APN Ambassador (AWS)
Спікери:
🗣 Нікіта Галкін, Cloud Architect at Formelife, автор @node_recipes, організатор GDG Cloud Kyiv
🗣 Антон Бойко, Senior Solution Architect в BoykoAnt.PRO, засновник Ukrainian Microsoft Azure Community, Microsoft Azure Technical Expert, Microsoft Azure MVP з 2014
🗣 Руслан Кусов, AWS Cloud COE Lead at SoftServe, APN Ambassador (AWS)
В чем различие таймеров в Node.js и browser?
#nodejs_api
Сегодня обсудим setTimeout и setInterval. На обоих платформах данные функции доступны глобально и предназначены для запуска отложенного кода.
Первым аргументом должен быть TimerHandler. В #nodejs это может быть только функция, но в браузере это может быть еще и строка. К ней будет применен eval. Что безусловно является плохой практикой, так как может привести к проблемам с безопасностью. Используйте eslint правило no-implied-eval, чтобы следить за кодом.
Вторым аргументом является количество миллисекунд, а дальнейшие параметры будут переданы в качестве аргументов внутрь TimerHandler. Тут различий нет. Различие есть в возвращаемом значение. В браузере это будет число, а в Node.js объект типа NodeJS.Timeout.
NodeJS.Timeout имеет такие методы публичные методы:
- unref – отметить таймаут как не активный, т.е. он не будет удерживать EventLoop. Аналогичные вещи есть у сокетов, воркеров и т.д.
- ref – отменяет unref
- hasRef – дает текущее значение активности таймера.
- refresh – перезапускает таймер.
- close – аналогичен вызову clearInterval на таймере.
Чтобы отменить выполнение таймера используется clearInterval/clearTimeout. Они полностью заменяемы и в браузере, и в Node.js – по сути являются алиасами. Node.js в качестве аргумента принимает как число, так и NodeJS.Timeout объект.
На этом пора остановиться, хотя в рецепт не попали setImmediate, не публичные апи, особенности поведения в браузере в зависимости от активности таба, связь async_hooks и таймеров, event loop delay и прочее.
#nodejs_api
Сегодня обсудим setTimeout и setInterval. На обоих платформах данные функции доступны глобально и предназначены для запуска отложенного кода.
Первым аргументом должен быть TimerHandler. В #nodejs это может быть только функция, но в браузере это может быть еще и строка. К ней будет применен eval. Что безусловно является плохой практикой, так как может привести к проблемам с безопасностью. Используйте eslint правило no-implied-eval, чтобы следить за кодом.
Вторым аргументом является количество миллисекунд, а дальнейшие параметры будут переданы в качестве аргументов внутрь TimerHandler. Тут различий нет. Различие есть в возвращаемом значение. В браузере это будет число, а в Node.js объект типа NodeJS.Timeout.
NodeJS.Timeout имеет такие методы публичные методы:
- unref – отметить таймаут как не активный, т.е. он не будет удерживать EventLoop. Аналогичные вещи есть у сокетов, воркеров и т.д.
- ref – отменяет unref
- hasRef – дает текущее значение активности таймера.
- refresh – перезапускает таймер.
- close – аналогичен вызову clearInterval на таймере.
Чтобы отменить выполнение таймера используется clearInterval/clearTimeout. Они полностью заменяемы и в браузере, и в Node.js – по сути являются алиасами. Node.js в качестве аргумента принимает как число, так и NodeJS.Timeout объект.
На этом пора остановиться, хотя в рецепт не попали setImmediate, не публичные апи, особенности поведения в браузере в зависимости от активности таба, связь async_hooks и таймеров, event loop delay и прочее.
Как обнаружить синхронные операции в Node.js коде?
#nodejs_api
Каждый #nodejs разработчик знает, что блокировать Event Loop-а плохо. Блокировка может быть по двум причинам:
– cpu intensive операции, т.е. с большим количеством вычислений. Примеры: трансформация JSON объекта на 2 мегабайта, обход большого массива, подсчеты хешей.
– синхронные операции, т.е. операции которые до своего завершения блокируют Event Loop, читай дальнейшее выполнение JavaScript. Пример – все синхронные файловые операции.
Ваш код может использовать синхронные операции неявно. Кто его знает, что там в node_modules. Именно о том, как быстро найти такие места этот рецепт.
У Node.js есть специальный флаг --trace-sync-io. При его использование в консоль будут выводить trace для первого вызова любого синхронного вызова. Запускаем с этим флагом или c переменной окружения
Рецепты по теме:
- Как запускать Node.js с доп. аргументами?
#nodejs_api
Каждый #nodejs разработчик знает, что блокировать Event Loop-а плохо. Блокировка может быть по двум причинам:
– cpu intensive операции, т.е. с большим количеством вычислений. Примеры: трансформация JSON объекта на 2 мегабайта, обход большого массива, подсчеты хешей.
– синхронные операции, т.е. операции которые до своего завершения блокируют Event Loop, читай дальнейшее выполнение JavaScript. Пример – все синхронные файловые операции.
Ваш код может использовать синхронные операции неявно. Кто его знает, что там в node_modules. Именно о том, как быстро найти такие места этот рецепт.
У Node.js есть специальный флаг --trace-sync-io. При его использование в консоль будут выводить trace для первого вызова любого синхронного вызова. Запускаем с этим флагом или c переменной окружения
NODE_OPTIONS=--trace-sync-io и анализируем результаты. На своем проекте я так обнаружил, что пора выкинуть module-alias и переконфигурировать pino.Рецепты по теме:
- Как запускать Node.js с доп. аргументами?
About Team Setup.mp4
56.6 MB
#voice_chat About Team Setup
Гость: Виталий Ратушный, Tech Enthusiast, Interviewer, Architect. Trying to get to the bottom of things. First principles thinker. Passionate ‘bout neuropsychology and perception development.
Вопросы:
❓ Какие роли могут быть в команде?
❓ Как UX/UI дизайнер участвует в разработке?
❓ Кто такой продукт овнер и откуда он берет требования?
❓ Кто такой техлид/архитектор? Что такое право на push-back?
❓ Какой состав Dream Team?
Задавайте вопросы в комментариях и подключайтесь в эфир!
Гость: Виталий Ратушный, Tech Enthusiast, Interviewer, Architect. Trying to get to the bottom of things. First principles thinker. Passionate ‘bout neuropsychology and perception development.
Вопросы:
❓ Какие роли могут быть в команде?
❓ Как UX/UI дизайнер участвует в разработке?
❓ Кто такой продукт овнер и откуда он берет требования?
❓ Кто такой техлид/архитектор? Что такое право на push-back?
❓ Какой состав Dream Team?
Задавайте вопросы в комментариях и подключайтесь в эфир!
Вышел Prettier v.2.4.0
Если вы не обновляли TypeScript до 4.4, то теперь ну точно пора. В новой версии Prettier завезли поддержку новых фич из TS. Подробней в блоге
Если вы не обновляли TypeScript до 4.4, то теперь ну точно пора. В новой версии Prettier завезли поддержку новых фич из TS. Подробней в блоге
prettier.io
Prettier 2.4: new bracketSameLine option and TypeScript 4.4 support! · Prettier
This release renames the `jsxBracketSameLine` option to `bracketSameLine`, which supports HTML, Vue, and Angular in addition to JSX. The old name has been deprecated.