artalog
4.23K subscribers
542 photos
40 videos
40 files
913 links
Развернутые ответы на вопросы в чатах, мысли от рабочих процессов.
Вопросы - @artalar.
Download Telegram
artalog
CleanShot 2022-03-11 at 11.59.51.png
CleanShot 2022-03-11 at 12.19.00@2x.png
560.2 KB
Еще пара скринов текущей темы и Nord, на который намного проще пересесть, если все же захочется попробовать что-то низкоконтрастное.
🤔1
Мне тут подсказали что писать выражение за ифом в одну строку плохо потому что это “смесь которая читается тяжело”. И что лучше писать такие вещи через логические операторы, вроде isSome && effect().

Проблема с однострочным написанием действительно есть - неконсистентность выравнивания и обособления скобками с многострочным вариантом исполняемого кода. Неконсистентность это всегда избыточная когнитивная нагрузка и лучше ее избегать. Но писать три строчки вместо двух меня тоже совсем не радует. Тут нет единственно верного решения и стоит смотреть на подготовленность каждого разработчика в команде к такому кодстайту: можете ли вы парсить код в голове быстро в независимости от кодстайла (тогда стоит писать меньше кода) или вы читаете код медленно.

Лично мне быстрее понимать менее выразительный, но более концентрированный код. По той же причине беру низкоконтрастную тему и узкий шрифт, см. пост выше.

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

Из интересного: можно поискать ишьесы на подобные темы в prettier и посмотреть мой доклад про семантику в программировании.
👍2🤔1
artalog
Мне тут подсказали что писать выражение за ифом в одну строку плохо потому что это “смесь которая читается тяжело”. И что лучше писать такие вещи через логические операторы, вроде isSome && effect(). Проблема с однострочным написанием действительно есть …
В личку спросили про баги которые могут вызывать &&. Это редкий кейс, но я с таким сталкивался.

Условия: отсутствие стат типизации и колбек приходящий извне, который возвращает булеан или ничего (undefined).
Ну и потом кто-то передает () => isSome || setTimeout(…) забыв о том что вернется intervalId. Ну и мы потом конвертируем число в тру и получаем позже ошибку.

P.S. а есть языки в которых void и undefined это про разное и можно явно понять что вернулось из функции, а не гадать, undefined это от return undefined (find на массиве или get на мапе) или от отсутствия return.
👍4
Трамплины.

Еще два года назад я хотел написать про трамплины для “перепрыгивания” глубины стека в рекурсивных вычислениях на чистых функциях, но ни времени, не ума на это не хватило.

Поделюсь сейчас просто своими заметками и продублирую ссылки на ишье к ТС в котором применяются трамплины для обхода небольшой глубины рекурсии системы типов: TypeScripts Type System is Turing Complete, и неплохую статью с детальным разбором темы: Using trampolines to manage large recursive loops in JavaScript.

P.S. в недописанной статье я хотел сперва разобрать зачем вообще нужны вычисления на типах и сделал простенький, но полезный пример с тайп-сейф функцией нормализации. Там наглядно видно какие ошибки она помогает ловить, при этом помогая писать меньше тайп анотаций.

#fp #ts
👍4
mermaid

Наконец, попробовал этот тул для текстового рисования графиков в Markdown. Совсем чуть-чуть и пока все понравилось, довольно удобно. На скринах то что я написал и как это рендерится.

Напомню, в Gitlab поддержка есть уже давно, а в Github появилась месяц назад.
👍7
#ide буду делиться приятными темками, иногда. Ayu спокойная, но выразительная, много сидел на ней.

А если вам хочется поэксперименитровать - CRT.

оу, какой ужасный жпг получился, простите.
👍4🤔2
Live stream started
Live stream finished (28 minutes)
2022-03-23
artalog
👍2
Пятница.
Старшие школьные классы у меня были очень насыщенные, но одни из лучших воспоминаний касаются МДС.
Не могу сейчас найти время на то что бы вернуться к прослушиванию этой замечательной передачи, поэтому попробую уталить свой зуд советом послушать это вам 🙂
Начать можно с Роберт Хайнлайн — Дом, который построил Тил 52 мин. Рекомендую!

Дальше можно пойти по классике: Лем и Азимов, хотя там и множество другого интересного есть.
👍9
Войс через несколько минут про новый реатом (v3)
🔥4
Live stream started
Live stream finished (30 minutes)
Live stream started
Пол часа поговорим на любую тему
Live stream finished (1 hour)
Внезапные стримы без конкретной тематики в ближайшее время станут нормой, тк сын растет и на прогулке становится все более самостоятельным. А мне скучно :)

Хочется общаться на общие темы ИТ и тренды. Микрофон у всех открытый. Прям как в офисе когда-то.

Текстовые посты так же продолжат появляться, ничего не меняется. Если формат стримов вам как-то мешает (в ленте), выразите это реакцией, подумаю что делать с этим.
👍20🔥2