kamyshev.code
2.15K subscribers
40 photos
565 links
Архитектура, код, софт-скиллы и всё остальное. Вопросы, пожелания, комментарии — @igorkamyshev

https://kamyshev.me
Download Telegram
ReScript

ReScript — строго статически типизированный язык, который компилируется в JavaScript. Раньше он назывался ReasonML.

Я узнал о нем летом — прочитал документацию, но код писать не захотел. В начале осени посмотрел о нем один доклад, потом второй и решил все-таки попробовать написать на нем что-нибудь небольшое.

Впечатления!

У него очень приятный синтаксис с кучей приятных мелочей: пайп-оператор, все является выражением, последнее выражение возвращается из функции, функции каррированы по умолчанию. А строгая система типов помогает расслабиться — люблю доверять компилятору.

Есть и странные места — две имплементации стандартной библиотеки (String и String2 передают привет), невозможность перегрузить функцию (особенно забавные тайпинги получились у React.useEffect) и другие особенности\.

Но главная причина, почему этот язык никогда не займёт сколько нибудь заметную долю на рынке — отсутствие прямого доступа до библиотек написанных на JavaScript. Причем, даже библиотеки с TS-тайпингами не подходят, у ReScript очень строгая система типов и TS-типы в нее конвертировать нельзя.
Дайджест 26 октября

🪄 очень короткий дайджест, потому что Белград интереснее разработки

+ IT релокация в Сомалиленд из Испании — история не попсовой релокации, люблю такие;

+ Как написать вакансию — большая часть вакансий на IT-рынке — полное дерьмо, это инструкция как сделать нормально;

А ещё, я решил раз в месяц переводить эти дайджесты на английский и публиковать их на dev.to. Полайкайте, пожалуйста 🤗
Пару часов назад рассказал на HolyJS доклад, а значит пора опубликовать тематическую статью 🌚

Как мы строим веб-платформу в Авиасейлс

Это краткий пересказ того, чем я занимался полтора года в Авиасейлс. Мне всегда интересно читать, как устроена разработка в других компаниях, надеюсь, и вам будет интересно читать про нас.

Кстати, если вам понравилось то, чем я занимаюсь, то напоминаю — ищем инженера в нашу команду.
Дайджест 9 ноября

+ Осознанная меркантильность — скандальный доклад Антона Назарова про две работы;

+ Type Query: jQuery Style Type Manipulation — очень странный способ описывать типы в TS-приложении с помощью инлайн JS;

+ Разбираю вакансии Додо Пиццы, Яндекса, I Love Running, Clever — Наталия Бабаева рассказывает как сделать вакансию лучше.
Frontend Crew

Во-первых, это лучшая онлайн конференция для фронтндеров. Во-вторых, она начинается уже совсем скоро — 6 декабря. В-третьих, я принёс вам промокод — kamyshev_kapunkap.

Билеты покупать тут — https://podlodka.io/fecrew

Теперь подробности 🌚

В этом сезоне будет две большие темы — фронтендерский тулинг и JS под капотом. Вот сессии, которые я больше всего жду:

1. АМА-сессия с Лукой Касонато из Deno. Да, из того самого Deno.

2. Доклад Вали Семирульника (того, который читает ишью) про пакетные менеджеры.

3. Доклад Ильи Климова про ops для dev-ов. Как известно, DevOps — это не профессия!

И, конечно, мы проведем разговорный английский клуб, который получил такие хорошие отзывы во втором сезоне.

Ещё один бонус — в этом сезоне я не курирую спикеров, поэтому у меня появилась возможность подготовить свой доклад! Так что, на первой неделе расскажу и покажу как делать плагины для ESLint.

Короче, это будет очень крутая конференция 😎 приходите и зовите друзей.

Прокомод — kamyshev_kapunkap

https://podlodka.io/fecrew
👆в промокоде была ошибка, но теперь все в порядке
Сегодня в 19:00 МСК на Ютюбе буду разговаривать с Владом Шиловым про опенсорс 👨‍💻

Приходите слушать 👉 https://youtu.be/ri2n5miYYxM
В блоге Саши Беспоясова вышла новая статья — про генерацию текста с помощью цепей Маркова на JavaScript 👀

Очень советую прочитать 🙌

https://bespoyasov.ru/blog/text-generation-with-markov-chains/
Смотрите, в Podlodka Crew открылась вакансия тысячелетия — программный директор 👩‍💼

Кому будет интересна вакансия:
💻 Разработчик, который устал писать код, и хочет попробовать что-то совсем новое, не уходя при этом из IT;
🧞‍♂️ Тимлид, который любит все, связанное с коммьюнити разработчиков;
🪄 Деврел-менеджер, который готов выйти на следующую ступень за развитием бренда одной конкретной компании.

Если вы устали от своей рутины и хотите в следующем году начать делать то, что будет приносить кайф – вакансия для вас.

Фуллтайм, 150-250к базовая зарплата, плюс дополнительные бонусы.
Я заебался банить порно-ботов, так что коментов больше не будет 🤷‍♂️

Пишите в личку, если хотите выразить одобрение или гнев — @igorkamyshev
Уважаемые люди говорят что бот поможет. Ну посмотрим 🌚
Запись моего доклада про кастомные правила для ESLint уже на Patreon 🌚

В публичный доступ выложу через пару недель, а пока подписывайтесь 🚀 https://www.patreon.com/igorkamyshev
Книга с кабанчиком

Я начал читать «Высоконагруженные приложения» Мартина Клеппмана еще в Петербурге, а закончил пару дней назад.

Наверное, вы уже догадались, что книга мне показалась непростой. Главная причина, почему я потратил столько времени на ее изучение — это постоянные ответвления.

Пока читал вторую главу, много трогал документно-ориентированные БД и изучал графовые БД. Когда добрался до третьей — написал свою реализацию SS-таблиц и LSM-деревьев на JavaScript, читал про фильтры Блума, изучал реализации B-деревьев на других языках и разбирался с колоночными базами данных. А глав там 12.

----

На закономерный вопрос «зачем фронтендеру все это» у меня есть два ответа.

Во-первых, фронтендеру важно понимать, что происходит в смежных областях. Фронтенд-разработчик, который умеет настраивать CI и может сделать простое Node.js-приложение — это круто.

Во-вторых, все фронтендеры работают с распределенными системами и просто иногда этого не замечают. Очень полезно принять это и начать изучать, что умные люди уже напридумывали в этой области.

----

Кому стоит читать.

Это сложная книга — она не подойдёт новичкам. Но если вы уже разобрались, как в целом писать программы и теперь изучаете, какие проблемы вокруг этого существуют — это идеальный мэтч.

Кстати, читал на русском — перевод достойный.
👆 доклад не зря вошёл в топ-3 сессий конференции. Посмотрите обязательно.
Кстати, говоря о ESLint.

Выкатил eslint-plugin-effector 0.5 ☄️

Новые конфиг-пресеты:
+ scope для проектов, которые используют Fork API — для тестов или для SSR.
+ react для проектов, которые используют Эффектор с Реактом.

Новые правила:
+ no-duplicate-on — запрещает навешивать на стор больше одного обработчика для одного ивента.
+ strict-effect-handlers — проверяет, что обработчик эффекта не приведет к потере скоупа.
+ enforce-gate-naming-convention — валидирует имена гейтов.

https://github.com/effector/eslint-plugin/releases/tag/v0.5.0