artalog – Telegram
artalog
4.2K subscribers
533 photos
40 videos
39 files
897 links
Развернутые ответы на вопросы в чатах, мысли от рабочих процессов.
Вопросы - @artalar.
Download Telegram
Задачка простая - создать скрипт элемент, если такого нет.

На первом скрине типы ругаются, потому что ТС не сужает тип после переприсваивания переменной, что странно и я не знаю почему так происходит. С юнионами такое работает, а вот с интерфейсами и наследованием, видимо, правила другие. В любом случае, onload правильно ошибку выдает.

На втором скрине, кажется, все красиво, но не типобезопасно, хотя ТС считает иначе. Вот воспроизведение ошибки в рантайме.

На третьем скрине уже решение правильное по типам и рантайму, но вербозное.
Конечно, хотелось бы какой-то хелпер, который делает асерт querySelector на HTMLScriptElement и мы бы могли использовать одну переменную, но у нас на проекте либы для контрактов нету. Как оно могло бы выглядеть можете посмотреть на 4 скрине.

Про рантайм контракты я рассказывал в этом докладе.
👍2🔥1
Live stream started
Live stream finished (1 hour)
Семантические селекторы

В статье Style with Stateful, Semantic Selectors описывается идея использования атрибутов доступности как селекторов состояний. Мне кажется это идея очень правильной: нужно не забывать про те фичи что уже есть в платформе, использование их косвенных свойств (видимость в css), помогает гарантировать что про них не забудут и это сделает качество продукта лучше для части пользователей.

В чатике по a11y подсказали какие ещё атрибуты отвечают за состояние элемента и теперь одна из главных задач для #mono это реализация этой практики.

https://github.com/artalar/mono/issues/5
👍2😁1
А я вот не считаю макос операционкой с хорошим UX.

Новость о дырке в безопасности, но дело совсем не в этом.

Только что зашел в Software Update (почему не System??) и там написано что ОС актуальна, при этом написано что последний чек был вчера днем, wat? Кнопки “проверить апдейт” нет. Захожу в Advanced, там тоже нет кнопки, закрываю модалку, с окна стирается вся инфа и показывается лоадер, wat? Лоадер висит секунд 15 - столько нужно что бы сделать гет на последнюю версию??
Окей, говорит, есть апдейт. Нажимаю обновится - грузит 3ГБ О_о

UPD: скачал три, а в More Info показывает 2.21.

И вот таких вот вещей куча.

Для меня Mint лучшая ОС. Но даже винда мне нравится больше макоса, жаль только тормозит по причине и без.
👍10👎5👏2
В пятницу делюсь интрересным видосом, как обычно.

https://youtu.be/PUv66718DII

В этом докладе десятилетней давности показана разработка на технологиях, о которых и сейчас мы можем только мечтать. Какие-то обрывки есть в нашем повседневном инструментарии, но слаженной системы не наблюдается вовсе.
Очень вдохновляющий доклад. И постоянно повторяйте себе при просмотре - это 2012 год 🙂
👍4
Кек, некст использует только одно ядро вашего сервера, и вот как это исправить.
🤔14
Сложность фронт разработки одинаковая у маленьких и больших компаний, а сложность бек разработки различается для маленьких и больших компаний
Anonymous Poll
26%
Согласен
74%
Не согласен
Уже неделю вся семья болеет, поэтому тут так тихо. Сам уже выздоровел, но много времени нужно на помощь родным, так что я не успеваю написать пост про ценность иммутабельных данных: зачем они нужны и какие проблемы помогают решать.
Если у вас есть знакомые статьи про это - поделитесь в комментариях, скину сюда если будет что-то интересное.
Designing Events-First Microservices

Сегодня хочется порекомендовать доклад про событийную архитектуру, ключевые мысли которого можете видеть на скриншотах.

Информация преподносится хорошо и будет полезна всем инженерам, не только бекенд разработки. Например, описанные принципы помогают понять как реактивное программирование помогает уменьшить связанность кода. И этот принцип применим абсолютно везде: от UI-виджетов, до бекенд сервисов.
👍8
На что уходят часы разработки реатома - ну я туплю в то как промисы работают (не первый раз уже). Первый скрин - как было, второй - как стало (комментарий внизу описывает почему).
🤔4👍2
https://news.1rj.ru/str/ctodaily/1626

Помимо топика, меня не устраивают облачные диски своими корявыми клиентами, в которых часто не хватает каких-то фич и есть проблемы с UX.

Что бы я хотел - это локальное приложение для синхронизации нескольких дисковых ресурсов: гугл драйв, авс, sftp, локальная папка и тп. Я управляю с любого файл менеджера своими локальными папками и файлами, а оно автоматом расползается бекапами по всяким дропбоксам и на личную виртуалку.
Не знаете таких приложений?) Быстрый гуглинг ничего дельного не дал, обычно предлагают комбайны, которые все на себя замыкают и денег за это просят.

UPD: спасибо за рекомендацию rclone.org.

Почему я против локальных (в квартире) NAS’ов:
1) Нужно выложить сразу много денег.
2) Отключение света или электричества в квартире явление не редкое и гарантий тут нет.
3) Стихийное бедствие в виде пожара, грабежа, да банального “зацепил провод и упало” грозит потерей всего. А любой переезд = офлайн.
4) Хотите доступ с интернета? Платите помесячную аренду за белый IP.
Заменил в реатоме ts-node на tsx - колдстарт поменялся с “быстро”, на “мгновенно”.

UPD: а дело, оказывается, в дефолтах. ts-node делает тайпчек по умолчанию, а tsx нет. Но я все равно останусь на tsx, потому что он без проблем запускает код с модулями, ну и вообще посмотрите сравнение.
❤‍🔥14👍1🔥1
А под vscode экстеншен писать совсем изи
🔥14
artalog
А под vscode экстеншен писать совсем изи
Еу, ну вот мое первое расширение для vscode NPM noscripts in file menu.

Разработка заняла часа три, не больше, с учетом первого погружния в документацию и регистрации в Azure devops для возможности паблишить в маркетплейс.

Из проблем, я так и не смог авторизоваться в CLI vsce, но смог ей собрать пакет и залить через веб интерфейс маркета.

Уточню, я знаю что в Explorer и так можно включить раздел NPM Scripts, но с ним очень не удобно работать когда у вас куча пакетов - это простыня джисона.
👍6🔥1