#112: Артём Кобзарь про собственную альтернативу TS и многое другое

Image for post
Image for post
112: Артём Кобзарь про собственную альтернативу TS и многое другое
https://youtu.be/bYSQbRYRDv8

00:00:31 Зачем писать свой статический анализатор
00:02:20 За что Илья Климов взял Артёма на работу
00:06:25 Hegel это фановаая дичь или полезный инструмент?
00:11:53 Можно ли использовать самописные велосипеды в крупных компаниях
00:18:24 Есть ли будущее у Hegel
00:23:45 Почему в докладе про Hegel не было маркетинга
00:24:59 Зачем нужен Hegel когда есть Dart
00:29:16 Чем хорош JavaScript
00:30:13 Полезные монады
00:38:21 Haskell или Closure?
00:41:00 Туда ли развивается JavaScipt?
00:48:40 Рекомедации Артёма по докладам на Holy.js 2020

Доклады, которые можно посмотреть сейчас:

Артём Кобзарь — Как и зачем я пишу свой статический…


#111: Смешиваем CJS и ESM. Гексагональная архитектура

Image for post
Image for post
https://soundcloud.com/devschacht/devschacht-111
https://youtu.be/j86fFvEi9YQ

00:00:08 Чем отличаются англоязычные митапы у нас и за границей
00:01:47 Плюсы коротких докладов
00:02:18 Как поставлять EcmaScript-модули в библиотеках
00:08:40 Conditional Exports в node.js
00:11:15 Гексагональная архитектура

ESM conditional exports
Hexagonal Architecture
Ports & Adapters Architecture

Наш Патреон
www.patreon.com/devschacht


#110: Когда начинать изучать архитектуру ПО

Image for post
Image for post
https://youtu.be/IOR1MUitCQI

Чистая архитектура. Искусство разработки программного обеспечения
https://www.piter.com/collection/programmirovanie-razrabotka-programnogo-obespecheniya/product/chistaya-arhitektura-iskusstvo-razrabotki-programmnogo-obespecheniya

Дядя Боб на Holy.js
https://holyjs-piter.ru/2020/spb/people/3kdflqk4xbhxs3iktiqx1k/

Наш Патреон
www.patreon.com/devschacht


#109: Грамотная работа с ошибками. Монада Either.

Image for post
Image for post
https://soundcloud.com/devschacht/devschacht-109
https://youtu.be/eh5flHypkDg

Как правильно работать с исключениями в DDD
https://habr.com/ru/company/true_engineering/blog/431804/

Replacing Throwing Exceptions with Notification in Validations
https://martinfowler.com/articles/replaceThrowWithNotification.html

Артём Кобзарь/Дмитрий Махнёв — (не|ну)жная монада Either на практике и в теории
https://youtu.be/S0cCjbWuvzk

Railway oriented programming
https://swlaschin.gitbooks.io/fsharpforfunandprofit/content/posts/recipe-part2.html

Наш Патреон
www.patreon.com/devschacht


Image for post
Image for post
Из доклада Бенедикта Маурера о проведённых оптимизациях в V8

Недавно в комментариях на Hexlet я поучаствовал в дискуссии на тему «Что важнее — оптимизации производительности или качество кода?» Если вернуться чуть назад, то исходный вопрос звучал так — нужно ли использовать перебирающие методы массивов (т.е. Array.prototype.map(), Array.prototype.filter(), Array.prototype.reduce() и т.д.) или стоит остановиться на старом добром цикле for ввиду его явного превосходства в производительности?

Казалось бы, такой простой вопрос одновременно поднимает две важные проблемы. Первая — вред от устаревающего знания о специфике реализации, и вторая — должна ли производительность кода стоять во главе угла.

Разберём по порядку.

Устаревающее знание о специфике поведения интепретаторов

JavaScript является интерпретируемым языком. Это значит, что при написании кода, мы никак не контролируем то, как будет выглядеть код в виде машинных инструкций. Это полностью зависит от движка, исполняющего наш JavaScript, и этих движков великое множество. Например, в Chrome наш код исполняется с помощью движка V8, в Safari это JavaScriptCore, в Firefox — SpiderMonkey. И это далеко не все. Более того, каждый движок имеет множество версий. И вот, что интересно — все браузерные движки являются конкурентами. Но как они могут конкурировать между собой за любовь пользователя? Кто-то скажет — поддержкой самых современных фишек EcmaScript! Но нет, на самом деле пользователям по большему счёту всё равно, насколько хорошо браузер что-то там поддерживает. Интерфейс приятный? Все сайты работают? …


#108: Производительность кода — это важнейший критерий качества?

Image for post
Image for post
https://soundcloud.com/devschacht/devschacht-108
https://youtu.be/d6zk_BwBgXo

О цитате “Преждевременная оптимизация — корень всех зол” http://sergeyteplyakov.blogspot.com/2009/12/blog-post_08.html

Пишем производительный JavaScript. 3 совета. https://medium.com/devschacht/3-tips-about-javascript-597c33a219d6

Наш Патреон


#107: Мониторинг node.js-приложений

Image for post
Image for post
https://soundcloud.com/devschacht/devschacht-107
https://youtu.be/cn1boolGHu0

00:01:32 Мониторинг node.js-приложений
00:14:17 Не завязывайтесь на фреймворк в бизнес-логике
00:19:37 kebab-case в названиях файлов
00:21:29 Не сходите с ума на работе

Node.js Performance Monitoring with Prometheus
https://blog.risingstack.com/node-js-performance-monitoring-with-prometheus/

Тимур Шемсединов — Масштабирование Node.js для высоких нагрузок
https://youtu.be/-yJWLaJ31NI

Не сходите с ума на работе
https://www.mann-ivanov-ferber.ru/books/ne-shodite-s-uma-na-rabote/

Наш Патреон
www.patreon.com/devschacht


#106: Итоги 2019, часть 2. Железо и софт.

Image for post
Image for post
https://soundcloud.com/devschacht/devschacht-109
https://youtu.be/kLsFEUo3z9o

Техника

  1. Полевой набор подкастера остался всё тем же (Shure SM57 + Zoom H5) но добавилась сменная голова к H5 на +2 микрофона (EXH-6)
  2. Домашний набор — не изменился, всё тот же Rode Procaster
  3. Стало много видео. Камера всё та же (Panasonic Lumix G80), но стекло Leica 15/1.7
  4. Свет. Много игрался со светом, сейчас основной набор это Elgato Key Light, Amaran AL-F7, Boling BL-P1 Vlogger
  5. Для полевых видео докуплены Rode Wireless Go в пару к Rode Fillmmaker kit
  6. Стабилизатор Snoppa Atom
  7. Внешний SSD Samsung T5
  8. iPad Pro 11

Трансляции с мероприятий:

  1. Rode Wireless Go
  2. Elgato CamLink (2 штуки)
  3. Сплиттер
  4. Камера

Полностью перестал использовать:

  1. GoPro Hero 5 Session +…

About

Andrey Melikhov

Web-developer in big IT company Перевожу всё, до чего дотянусь. Иногда (но редко) пишу сам.

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store