Pull to refresh
4

Пользователь

0,2
Rating
1
Subscribers
Send message

ваш первоисточник не является законом

Вообще-то, это целый председатель Еврокомиссии, которая, на секунду, “высший орган исполнительной власти Европейского союза” и, вдобавок, “обладает исключительным правом законодательной инициативы”. Когда слова госпожи фон дер Ляйен станут законом, уже поздно будет рыпаться.

[у сервиса верификации] нет способов делать это избирательно - он просто не знает участников процесса - для него это просто обезличеные идентификаторы

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

Полностью анонимной эта процедура просто не может быть: некая авторитетная сущность должна проверить ваши документы и то, что вы реально тот, за кого себя выдаёте, и только после этого этапа появятся “обезличенные идентификаторы”. Они будут обезличенными для всех, кроме той сущности, которая их обезличила.

Давайте обратимся к первоисточнику:

"We are holding accountable those online platforms that do not protect our kids enough. The new age verification solution and the enforcement of our rules go hand in hand,” European Commission President Ursula von der Leyen said in a statement. “There are no more excuses.”

В переводе на человеческий это означает: мы, Евросоюз, будем кошмарить онлайн-платформы (соцсети, мессенджеры, блоги, форумы, онлайн-игры), которые не введут проверку возраста евроодобренным способом.

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

государство В ПРИНЦИПЕ не имеет возможности что-то разрешить или запретить.

Да просто возьмёт и не выдаст вам подтверждение возраста по любой причине или без. Вот как в России госуслуги отваливаются, если в военкомат по повестке сходить. Почему вы думаете, что в Финляндии будет как-то по-другому?

Предлагаю вам также поразмышлять, возможна ли в природе действительно анонимная система верификации возраста. То, что предлагается сейчас — это несколько государственных реестров, занимающихся криптографической аттестацией запросов от “онлайн-платформ”. В этой схеме пользователь не раскрывает личность перед сайтом, но обязан это сделать перед государством, а иначе не получит аттестацию о возрасте. Маленький побочный эффект — государство видит в реальном времени, кто где зарегался. Очень полезная информация для того, кто хочет иметь возможность разрезолвить любой никнейм в имя, фамилию и срок.

Вы выше описали всё очень похоже на то, как это планируется запустить в продакшн на всю Европу. Это можно реализовать безопасно и с минимальным раскрытием данных. Это даже может быть очень удобно для пользователя.

Но попробуйте посмотреть на это с другого ракурса: каждый раз, пользуясь таким сервисом, вы буквально спрашиваете разрешение у государства. И если этот прекрасный закон примут, вы будете должны спрашивать разрешение не только для того, чтобы купить пива, но и чтобы посмотреть видосики на ютубе, почитать срач на реддите или зарегистрироваться в мессенджере. И не только в родной Финляндии, а по всему миру — потому что не могут сервисы требовать верификацию возраста для граждан и резидентов ЕС, а всем остальным верить на слово.

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

[…] запрашивают мою дату рождения из внешнего сервиса […], а я соответственно подтверждаю, что согласен. Если вам доволилось пользоваться чем-то вроде google authenticator, то вот это примерно то же самое.

Google Authenticator и другие TOTP/HOTP-приложения вообще не так работают. Всё, что они подтверждают — что вы (вернее, ваше устройство) действительно знаете некоторый общий с сервером секрет.

прочие данные интернет магазину без надобности

“Магазину эти данные без надобности” и “магазину эти данные не раскрываются” — принципиально разные вещи, не находите?

менять прям в биосе на какой угодно, или спец. утилитой

На сетевых картах, которые мне попадали в руки, это можно было сделать прямо в "Диспетчере устройств", в свойствах:

Скрытый текст

вместо этого ее называют, но завышают процентов на 20 - статистически, и это нормально

Это означает сознательно соврать по фактам. Зачем, если можно сказать чистую правду: “Знаете, у меня там в NDA написано, что я не могу это разглашать”. Если после этого собеседующий хочет настоять на вопросе, ему придётся объяснить соискателю, что чхать можно на NDA-бумажки — в том числе те, которые подписывают в их компании.

Если Вы подумали, что я в этом тексте сторону работодателя представляю, то это не так

А на том собеседовании вы представляли сторону работодателя или какую-то иную?

Имхо, вы очень зря начали повествование именно с рассказа о собеседовании, это очень ослабило вашу аргументацию. Люди на собеседованиях скрывают свою прошлую зарплату и озвучивают только самую беззубую критику в адрес бывшего работодателя не потому, что они так боятся NDA, или потому, что они приняли волю эксплуататорского класса, как свою, а просто они не дураки говорить лишнего на собеседованиях. Более того, сейчас правильным ответам на такие вопросы учат на всех вайтишных курсах ещё до цикла for.

Попробуйте поспрашивать друзей или просто хороших знакомых об их зарплате. Значительное количество вам ответит, и ещё спросит вашу.

Контракту эндпоинта надёжнее жить в тесте

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

не в строчке, которую никто не обновит

А кто обновит строчку в .claude/rules, если контракт поменяется?

Uncle Bob про это целую главу написал

Ну написал и написал. Однако, емнип, смысл там бы не “комментарии и документация — это зло, потому что могут устареть”, а немного сложней:

  • комментировать нужно только то, что нельзя понять из кода,

  • комментарии должны находиться как можно ближе к тому коду, к которому они относятся, чтобы.

Как будто бы прям наш случай.

А .claude/rules/ это не комментарий

Точно такой же комментарий, если только у вас не в принципе запрещено лезть в код руками, без клодкода.

Меня очень удивляет, что люди с таким энтузиазмом носятся со всякими AGENTS.md, но в то же время не желают документировать всё то же самое для людей. Почему бы всему этому добру не лежать в docs/guidelines.md, docs/architecture/payments.md и т.д.? Или же прям рядом с исходниками: src/payments/CONTRACTS.md?

Спасибо за подборку — никогда не знаешь, когда пригодится.

Однако, хочу заметить, что эта интерактивная веб-таблица совершенно неюзабельна:

  • не может показать целиком две сотни строк, постоянно что-то динамически подгружает и удаляет, аж скроллить неприятно,

  • нельзя скачать ни в каком редактируемом формате (XLS, ODS, CSV),

  • нельзя даже скачать в каком-то нередактируемом формате (например, PDF), отправить на принтер, или сохранить страницу через SingleFile.

Внутри payments.md - то, что Claude не может знать из кода: «Webhook от платёжки может прийти дважды - идемпотентность обязательна.» «Таймаут 30 секунд, fallback на повторную проверку.» «Ответ 200 только если заказ найден.»

А почему эту информацию нужно размещать в .claude/, а не непосредственно в коде, в комментариях? Это же часть контракта эндпоинта, такая же, как типы параметров и их допустимые значения.

не понимаю людей, которые специально делают ошибки

А я понимаю. Мне, например, очень нравятся длинные тире, кавычки-ёлочки и вообще вся эта типографика. Кавычками уже пришлось пожертвовать, чтобы не выглядеть совсем уж как ИИ.

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

По-книжному оформленная письменная речь в интернет-общении сейчас — это реально признак или ИИ, или ОКР.

Мы переезжаем на персонализированное ПО

А у вас дома есть уже персонализированная одежда? Персонализированная мебель? Может быть, персонализированные стены и окна? Персонализированная машина под окном стоит, с персонализированным двигателем внутри?

Никто не делает персонализацию ради персонализации, потому что это, внезапно, всегда стоит денег. Наоборот, все по-максимуму переиспользуют типовые решения. Почему вы думаете, что с ПО будет другая ситуация?

У Go, конечно же, есть ниша, из которой он подвытеснил другие языки. Но утверждать, что он заменил собой C++ вообще, я бы не стал. Я вообще с трудом могу представить себе язык, который бы вытеснил C++ изо всех ниш, умудрившись при этом самому не стать драконом.

Go, который заменил C++

Не напомните, в какой момент это произошло?

У нас в проекте сообщения короткие, типа "unmarshal transport resp"

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

потому что рядом stack trace и wrap, длинные строки только мешают потом grep-ать

А зачем вы хардврапаете стектрейсы? Чтобы в жизни было больше приключений?

при установке напрямую в subvolume, на корне раздела не будет атрибута security.PDPL

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

корректную установку прямо на сабволумы, а не перенос, может сделать только разработчик астры

И я ведь правильно понимаю, что этот security.PDPL — просто расширенный атрибут файла/каталога, такой же как security.selinux? Его можно перенести с каталога на каталог при помощи setfattr или каких-то специфичных инструментов Астры?

Я ведь правильно понимаю, что проблема, которую вы решаете, в том, что инсталлятор системы поддерживает Btrfs в принципе, но не даёт возможности указать, что на какой сабвольюм ставить и с какими параметрами эти сабвольюмы нужно создать?

Если так, то эту можно поступить немного проще: у тома Btrfs есть параметр "сабвольюм по умолчанию". Он отвечает за поведение при монтировании без явной опции -o subvol= — а инсталляторы, по всей видимости, монтируют файловые системы именно так. И идея состоит в том, чтобы самостоятельно создать нужную иерархию сабвольюмов, выбрать дефолтный, а потом сказать инсталлятору, чтобы он использовал файловую систему как есть, не форматируя.

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

# cfdisk /dev/sda
# mkfs.btrfs --label ubuntu --data single --metadata single /dev/sdaX
# mount /dev/sdaX /mnt
# btrfs subvolume create /mnt/@
# btrfs subvolume set-default /mnt/@
# umount /mnt 

После этого вернулся в инсталлятор, выбрал там "Leave formatted as btrfs, mountpoint: /" и установил систему. А уже после перезагрузки в установленную систему перенёс /home на отдельный сабвольюм и поправил fstab (хотя это можно было сделать и сразу, до перезагрузки).

Я сам не проверял (потому что мне не нужно было так сложно), но кажется, что идея останется рабочей, даже если добавить создание дополнительных сабвольюмов @/home, @/var/tmp, @/var/tmp и т.д. с индивидуальной настройкой их параметров.

В наше время можно прожить всю жизнь и ни разу не брать в руки [...] копье

А вы из какого века родом? Прожить жизнь, ни разу не взяв в руки копьё, и даже не увидев его в полевых условиях — уже лет двести как режим по умолчанию.

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

зачем нужно переписывать sudo на rust?

Вообще говоря, sudo — это просто идеальный кандидат на переписывание на Rust. Это suid-бинарник, доступный любому пользователю системы и умеющий выполнять произвольные команды.

В тексте упоминается CVE-2021-3156:

We discovered a heap-based buffer overflow in Sudo
(https://www.sudo.ws/). This vulnerability:

- is exploitable by any local user (normal users and system users,
  sudoers and non-sudoers), without authentication (i.e., the attacker
  does not need to know the user's password);

- was introduced in July 2011 (commit 8255ed69), and affects all legacy
  versions from 1.8.2 to 1.8.31p2 and all stable versions from 1.9.0 to
  1.9.5p1, in their default configuration.

We developed three different exploits for this vulnerability, and
obtained full root privileges on Ubuntu 20.04 (Sudo 1.8.31), Debian 10
(Sudo 1.8.27), and Fedora 33 (Sudo 1.9.2). Other operating systems and
distributions are probably also exploitable.

Это буквально тот самый класс уязвимостей, для борьбы с которыми придумали Rust.

1
23 ...

Information

Rating
3,521-st
Location
Воронеж, Воронежская обл., Россия
Registered
Activity