Size: a a a

Монада Кедавра

2020 June 28
Монада Кедавра
мало нам было баннеров при  вызове npm install, теперь кто-то додумался создать полноценный слив данных в виде аналитики для нпм пакетов: встречайте scarf

отсылает на левые сервера информацию о вашей операционной системе, айпишники, название корпоративной сети и метаданные корневого пакета. здорово, правда? 😕 пакет уже начали использовать redux-form, final-form и react-table, проверьте свои зависимости
источник
2020 July 05
Монада Кедавра
вкладка performance в девтулзах хрома имеет настолько невменяемый ux, что ей можно пытать. зато просто в реализации и поддержке.

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

выбирайте наилучшее, а не самое простое решение

https://t.me/defront/568
Telegram
Defront — про фронтенд-разработку и не только
Джек Франклин — разработчик Chrome Dev Tools — написал статью про важность простоты кода — "Keeping Code Simple".

Основная идея статьи. Число строк кода — это не очень адекватная метрика для оценки качества кода. Если одну задачу можно решить в несколько строк кода и если есть альтернативное решение в несколько раз больше, это не означает, что первый вариант лучше. Вполне возможно, что решение с меньшим числом строк будет менее читабельно и труднее в поддержке. Хороший код — это такой код, который прост в поддержке, лёгок в понимании и не требует больших сил для изменений.

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

#programming #musings

https://www.jackfranklin.co.uk/blog/keep-javascript-code-simple/
источник
2020 July 23
Монада Кедавра
Cloudflare год назад: Verizon поломали часть интернета, потому что забыли про лимиты для защиты своей конфигурации BGP, вот лентяи!

Cloudflare на этой неделе: как вы уже заметили, мы уронили сеть на трёх континентах и кажется всему виной отсутствие BGP лимитов в наших настройках...

🤷🏻‍♂️


https://blog.cloudflare.com/cloudflare-outage-on-july-17-2020/


https://blog.cloudflare.com/how-verizon-and-a-bgp-optimizer-knocked-large-parts-of-the-internet-offline-today/
источник
Монада Кедавра
источник
2020 September 08
Монада Кедавра
интерактивный разбор понятия эффектов и коэффектов в языках программированияинтерактивный разбор понятия эффектов и коэффектов в языках программирования

эффекты это то, как код влияет на окружающий мир: чтение и запись мутабельного состояния, IO, а коэффекты это то, как окружающий мир влияет на код

к примеру, чтение текущего времени через performance.now() это коэффект, так как таймеры предоставляются системой и могут быть заменены по её усмотрению. примечательно, что именно это произошло после обнаружения уязвимости spectre, которая использовала таймеры системы для кражи защищённых данных через javascript. для борьбы с этим браузерам пришлось временно понизить точность результата, чтобы предотвратить утечку данных через процессорный кэш. иными словами то, что должно было быть чистым коэффектом (способом системы повлиять на ход выполнения программы) получило непредвиденный побочный эффект — чтение данных самой системы

понятие эффектов уже давно активно проникает в мейнстрим программирования и упоминается даже в реакте; наверняка адаптация идеи коэффектов тоже не за горами, думаю это позволило бы углубить понимание процессов, протекающих в наших приложениях и системах

http://tomasp.net/coeffects/
источник