Получи случайную криптовалюту за регистрацию!

Валя читает ишью

Логотип телеграм канала @valya_reads_issue — Валя читает ишью В
Логотип телеграм канала @valya_reads_issue — Валя читает ишью
Адрес канала: @valya_reads_issue
Категории: Технологии
Язык: Русский
Количество подписчиков: 2.06K
Описание канала:

boosty.to/valya_reads_issue
Делюсь интересными ишьюсами и пул-реквестами в мире фронтенда и около
github.com/7rulnik twitter.com/7rulnik

Рейтинги и Отзывы

3.00

3 отзыва

Оценить канал valya_reads_issue и оставить отзыв — могут только зарегестрированные пользователи. Все отзывы проходят модерацию.

5 звезд

1

4 звезд

0

3 звезд

1

2 звезд

0

1 звезд

1


Последние сообщения 3

2022-02-22 21:55:27 В Купибилете я настраивал пайплайн с нуля. В Альфа-Банке делал похожий трюк с оптимизациями — там получилось срезать 19 минут (45%). В январе внедрил кеш для тайпчека в pnpm, что дало экономию в ~12 минут.

И вот, уже больше года я думал что же делать с тем, что я люблю и умею лучше всего. Фул-тайм в компаниях этим заниматься невозможно, т.к. рано или поздно получается «сделать красиво» либо оптимизировать просто дороже, чем жить с тем, что есть. Из этого вытекает достаточно простая мысль — консультации.

Последний год я думал о том как же делать это правильно, как находить клиентов и т.д. Нужно ли говорить, что ответов ни на один из этих вопросов я не нашёл. Тем более область достаточно специфичная: у маленьких компаний проблем с CI нет т.к. нет и кода, а большие компании не особо любят работать с контракторами и хотят нанимать таких людей в штат. Единственное, к чему я пришёл за последний год — нужно меньше думать и больше делать (хех, очевидно). От того, что я думаю в своей голове «ну как же правильно» настоящие клиенты не появятся.
837 views18:55
Открыть/Комментировать
2022-02-22 21:11:25
Последние 4 месяца в Авиасейлс я переделывал CI пайплайн нашего фронтенда. Так получилось, что проект достаточно молодой, LoC не так много, а пайплайн приходилось ждать по 25 минут. Решили, что нужно срочно это исправлять.

Получилось достаточно много оптимизаций:
• поправил лимиты на ресурсы (CPU) в кубернетесе;
• убрал дубликаты — нод-модули устанавливались дважды: на хост и в докер-контейнере. Теперь устанавливаем их сразу в контейнере и уже из него достаем их на хост;
• избавился от лишних шагов — например, мы клонировали репозиторий целиком, т.к. нам нужно знать какие ветки существуют. А теперь мы получаем ветки через git ls-remote;
• включил кеширование для чего только можно — TS, Jest, ESLint, webpack и Storybook;
• запускаем джобы максимально параллельно.

Всё это помогло уместить пайплайн в 10 минут без кеша и в 5 с кешем, т.е. на 15-20 минут быстрее! А это, в свою очередь, увеличило количество возможных деплоев с 12 до 23 в день!
1.1K views18:11
Открыть/Комментировать
2022-01-29 22:07:49 Fetch в Node.js

Я писал про undici и появление fetch в нём.

И вот, решено! Undici будет поставляться вместе с нодой. А это значит, что теперь глобально будут доступны fetch, Request, Response и Headers.

В 16 ноде будет доступно под флагом --experimental-fetch. С выходом 18 ноды, в апреле, фича должна перейти в статус стабильной.

Таким образом ишью Implement window.fetch into core вот-вот исполнится 4 года и его закроют.
1.0K views19:07
Открыть/Комментировать
2022-01-23 16:22:46 util.parseArgs()

Вот уже 3 года тянется дискуссия на тему стандартного способа парсить CLI аргументы в Node.js.

Внутри скриптов нам хочется понимать какие флаги и с какими опциями передал пользователь и как-то менять поведение утилиты. В ноде эти опции можно получить через process.argv.

Запустив, например, команду для билда сторибука:
yarn build-storybook --output-dir dist/selene-static/storybook --quiet

Вызвав process.argv(), получим следующее:

[
"/Users/v7rulnik/.fnm/node-versions/v16.10.0/installation/bin/node",
"/Users/v7rulnik/projects/aviasales/selene/node_modules/@storybook/react/bin/build.js",
"--output-dir",
"dist/selene-static/storybook",
"--quiet"
]

Т.е. просто плоский список с разделением по пробелам. Работать с ним, прямо скажем, не очень удобно. Это послужило появлению yargs и minimist, которые упрощают парсинг, группируют название и опции и т.д.

И вот, в рамках обсуждения из ишью появилось предложение встроить в ноду утилиту для парсинга util.parseArgs(). Уже доступен полифилл @pkgjs/parseargs, но использовать его пока что не стоит. Это всего лишь proof of concept, который будут дорабатывать и, позже, он окажется доступен в самой ноде.


P.S. Если взглянуть на массив аргументов, то будет видно, что первым элементом всегда является путь до node. А вторым скрипт, который мы запускаем. Именно поэтому часто можно встретить process.argv.slice(2) — такиим образом обрезают два первых элемента, которые не содержат полезной информации.
733 viewsedited  13:22
Открыть/Комментировать
2022-01-20 19:48:38
Наткнулся тут на твит. Ну не нравится Lerna человеку, ну и ладно, подумаешь. Но только вот Дэниел является (ну или являлся) мэйнтэйнером этой самой лерны.

Что ж, так иногда бывает.
313 views16:48
Открыть/Комментировать
2022-01-13 19:23:08
Разработчики Parcel представили новый транспилятор CSS, написанный на Rust. Благодаря ему минимификация стилей происходит до 100 раз быстрее по сравнению с CSSNano.

https://parceljs.org/blog/parcel-css/
661 views16:23
Открыть/Комментировать
2021-12-21 14:24:02 Пакетные менеджеры: есть ли жизнь за пределами npm?

А вот и запись моего доклада с Podlodka Frontend Crew.
Он, кстати, вошёл в топ-3 по итогам голосования

Слайды есть в описании к видео.
1.8K views11:24
Открыть/Комментировать
2021-12-17 00:35:36 Прошло 7 месяцев с анонса о создании Rome Tools Inc, и Джейми Кайл уходит из компании. Напомню, что он являлся ко-фаундером.

Что ж, Rome wasn't built in a day.

P.S. За новость спасибо @alexander_shepelin
776 views21:35
Открыть/Комментировать
2021-12-15 01:41:47 Supporting the Future of React

Ещё одно приобретение Vercel: Sebastian Markbåge присоединится к команде уже в январе. Последние 9 лет он работал над реактом в фэйсбуке. Интересно, что несмотря на переход в другую компанию, он продолжит работать над реактом. Посмотрим что из этого выйдет.

Ну и вот блог-пост.
842 views22:41
Открыть/Комментировать
2021-12-08 23:22:42
React Forget

Только что Xuan Huang (работал над Hermes) презентовал свой ресёрч React Without Memo.
Это компилятор, который позволит не использовать React.memo, генерируя код, который будет мемоизироваться автоматически. Пока что это закрытый эксперимент (React Forget это кодовое название) и не факт, что он завершится удачно.

Прикладываю 3 скриншота:
1. как выглядит мемоизированный код, который мы пишем сейчас;
2. как может выглядеть исходный код с использованием такого компилятора;
3. результат компиляции.

Ну и посмотрите сам доклад, он супер короткий.

P.S. Очень рад, что команда React двигается в эту сторону. Мне кажется, я до сих пор не понимаю когда мне нужен useCallback, а когда не особо, и, главное, как всё это правильно написать.
3.7K views20:22
Открыть/Комментировать