#rust #ruby #python #javascript
Однозначно в закладки - коллекция алгоритмов на разных языках программирования на абсолютно различные темы.
Однозначно в закладки - коллекция алгоритмов на разных языках программирования на абсолютно различные темы.
The-Algorithms
The Algorithms
Ресурс с открытым исходным кодом для изучения структур данных и алгоритмов и их реализации на любом языке программирования
Я работаю с rails около 16 лет и минимум последние лет 12 я регулярно читаю посты в разных блогах, в которых авторы хоронят фреймворк, что не мешает DHH и rails core team выпускать новые релизы. И особенно интересным было прочитать статью, в которой автор рассказывает о своей попытке перейти с rails на rust + svelte и о том, почему он вернулся обратно на rails.
old man rambling
Rewrite it in Rails
In 2022 I started building an application for creating Customs declarations. After evaluating some options and writing code in various programming languages ...
На самом деле очень интересно читать истории проектов, в которых авторы делятся своим опытом и рассказывают о совершенных ошибках и как боролись с их последствиями. Поэтому хочу поделиться статьёй от автора HexaPDF, достаточно популярной коммерческой библиотеки для генерации pdf.
Thomas Leitner's website and blog about Ruby, software engineering and the joy of solving problems.
10 Years of HexaPDF
A look at the last 10 years of implementing HexaPDF and creating a business around it
Хотелось бы думать, что это просто бешенная Моська лает на слона, но действия РКН в рамках борьбы с Cloudflare могут сильно повлиять на работоспособность сервисов на территории РФ. Также хочу напомнить, что на территории РФ также действуют иные законы и инициативы, нарушающие конституцию страны и права граждан, поэтому, если вы запускаете новый проект, то дважды подумайте в рамках какой юрисдикции он будет запущен.
Коммерсантъ
Роскомнадзор рекомендовал отказаться от CDN-сервиса американской CloudFlare
Подробнее на сайте
Forwarded from ЗаТелеком 🌐
Про блокировку ECH — объяснялка
Как вообще осуществляется блокировка РКН сейчас: они как-то, неважно как, определяют какой-то ресурс, который им нужно заблокировать. Ну, например, vpngen.org. И блокируют его в тот момент, когда пользователь обращается к этому ресурсу. Но для этого нужно определить, что пользователь обратился к запретному.
А это можно понять двумя путями:
1. По IP-адресу
2. По доменному имени в ДНС или более сложно — в запросе поймать SNI
И в том, и в том случае нужно сравнивать все запросы с некоей таблицей, которую составили заранее.
Как от этого можно спрятаться:
1. IP-адрес для ресурса можно поменять и так бегать от блокировки. Но пользователи же не запоминают цифры — им доменное имя подавай.
2. Запросы DNS можно зашифровать и тогда РКН не узнает кого блокировать. НО. Но РКН же тоже хитрая жопа — они заранее все домены резолвят с некоторой периодичностью и знают IP-адреса.
Получается, что РКН может заблокировать любой интернет-сайт в принципе... НО
Но была придумана технология ECH — Encrypted Client Hello. Вот тут лучшая статья, которая объясняет что это, но на английском: https://blog.cloudflare.com/announcing-encrypted-client-hello/
Что они делают: происходит шифрование как самих запросов от пользователя, так и ответы ресурсов. Но главное — IP-адрес можно спрятать в числе миллиардов запросов к CDN. Это как дерево в лесу прятать — хрен пойми, куда пользователь обращался. Может, к заблокированному сайту VPN Generator, а может к сайтам Газпрома, которые тоже сидят за Cloudflare...
Тогда цензор идет на беспрецедентный шаг — они блокируют сразу все запросы к инфраструктуре ECH у Cloudflare.
Поскольку технология пока не получила повсеместного распространения и сопутствующие потери невелики, то им похер на некоторое количество пользователей сайтов, поставивших галочку 'ECH on' в админке Клаудфлари.
Главное — чтоб на крамольные сайты не ходили.
В этом и беда всех технологий обхода блокировок "на стороне сервера" — пока технология устаканится, пока дойдет до большинства сайтов (и пользователей, что еще важнее!!), пока там пофиксят неизбежные ошибки и пройдут фазу внедрения — это все занимает время, которое цензор использует для разработки механизма противодействия.
Потому я считаю, что усилия надо больше прилагать на разработку средств обхода на стороне клиента — это сложнее контролировать, можно делать тихо без публичных обсуждений. И по итогу более эффективно.
Это не означает, что не нужно изобретать что-то новое, но в силу большой инертности социально-экономических структур, внедрение всегда будет затруднено и затянуто. И дает цензору время подготовиться
Как вообще осуществляется блокировка РКН сейчас: они как-то, неважно как, определяют какой-то ресурс, который им нужно заблокировать. Ну, например, vpngen.org. И блокируют его в тот момент, когда пользователь обращается к этому ресурсу. Но для этого нужно определить, что пользователь обратился к запретному.
А это можно понять двумя путями:
1. По IP-адресу
2. По доменному имени в ДНС или более сложно — в запросе поймать SNI
И в том, и в том случае нужно сравнивать все запросы с некоей таблицей, которую составили заранее.
Как от этого можно спрятаться:
1. IP-адрес для ресурса можно поменять и так бегать от блокировки. Но пользователи же не запоминают цифры — им доменное имя подавай.
2. Запросы DNS можно зашифровать и тогда РКН не узнает кого блокировать. НО. Но РКН же тоже хитрая жопа — они заранее все домены резолвят с некоторой периодичностью и знают IP-адреса.
Получается, что РКН может заблокировать любой интернет-сайт в принципе... НО
Но была придумана технология ECH — Encrypted Client Hello. Вот тут лучшая статья, которая объясняет что это, но на английском: https://blog.cloudflare.com/announcing-encrypted-client-hello/
Что они делают: происходит шифрование как самих запросов от пользователя, так и ответы ресурсов. Но главное — IP-адрес можно спрятать в числе миллиардов запросов к CDN. Это как дерево в лесу прятать — хрен пойми, куда пользователь обращался. Может, к заблокированному сайту VPN Generator, а может к сайтам Газпрома, которые тоже сидят за Cloudflare...
Тогда цензор идет на беспрецедентный шаг — они блокируют сразу все запросы к инфраструктуре ECH у Cloudflare.
Поскольку технология пока не получила повсеместного распространения и сопутствующие потери невелики, то им похер на некоторое количество пользователей сайтов, поставивших галочку 'ECH on' в админке Клаудфлари.
Главное — чтоб на крамольные сайты не ходили.
В этом и беда всех технологий обхода блокировок "на стороне сервера" — пока технология устаканится, пока дойдет до большинства сайтов (и пользователей, что еще важнее!!), пока там пофиксят неизбежные ошибки и пройдут фазу внедрения — это все занимает время, которое цензор использует для разработки механизма противодействия.
Потому я считаю, что усилия надо больше прилагать на разработку средств обхода на стороне клиента — это сложнее контролировать, можно делать тихо без публичных обсуждений. И по итогу более эффективно.
Это не означает, что не нужно изобретать что-то новое, но в силу большой инертности социально-экономических структур, внедрение всегда будет затруднено и затянуто. И дает цензору время подготовиться
The Cloudflare Blog
Encrypted Client Hello - the last puzzle piece to privacy
We're excited to announce a contribution to improving privacy for everyone on the Internet. Encrypted Client Hello, a new standard that prevents networks from snooping on which websites a user is visiting, is now available on all Cloudflare plans.
#rails За это стоит хлопнуть бургер за Собянина выпить огромную чашку свежесваренного кофе - вышли rails8.
GitHub
Release 8.0.0 · rails/rails
Active Support
Remove deprecated support to passing an array of strings to ActiveSupport::Deprecation#warn.
Rafael Mendonça França
Remove deprecated support to setting attr_internal_naming_form...
Remove deprecated support to passing an array of strings to ActiveSupport::Deprecation#warn.
Rafael Mendonça França
Remove deprecated support to setting attr_internal_naming_form...