Обновить
1430
0.3

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

Отправить сообщение

отлично и зачем нам учить китайский?

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

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

Ну, например, v2ray, из первого, что в голову пришло. Закинули меня в чат разработчиков, а там естественно все на китайском говорят.

я вообще не заметил никакой тенденции проникновения китайского языка или хотябы отголосков его необходимости

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

Каждый байт, который пишется в терминал, дописывается в лог-файл на диске. Не в памяти — на диске

Это значительно сократит жизнь SSD, и в некоторых устаревших дистрибутивах, где в /home/$user права r-xr-xr-x, позволит читать сессии.

Ничего полезного в этом длинном комментарии нет, поберегите ваше время, читайте только при большом желании.

Ваша статья повествует только о наиболее известных, крупнейших устоявшихся проектах, которые соответствуют и техническому определению open source (открытый код, под свободной лицензией), и социальному (код доступен публично для всех, бесплатно, поощряются исправления ошибок в виде кода и просто баг репорты), и дополнительно ещё и экономически привлекательны для бизнеса (об этом позже).
Таких успешных проектов — может быть пара-тройка сотен. Капля в море опенсорса.

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

FFmpeg vs AWS

Это можно видеть даже на вашем скриншоте AWS vs FFmpeg в статье: автор аккаунта FFmpeg в твиттере из раза к разу считает, что корпорации что-то *должны*, раз они берут свободный код, хотя лицензия их этому *не обязывает*. Более того, когда Google запустил свою фаззинг-программу (объективно самую крутую в индустрии), которая автоматически выявляет проблемы безопасности и указывает на них (что само по себе большой вклад), FFmpeg захотел не просто исправления кода, но еще и чтобы Google им деньги платил за время мейнтейнеров!

LICENSE.md мы придумали, а SOCIAL.md не догадались.

Иными словами, это цифровой аналог трагедии общин, в котором из проекта к проекту повторяется цикл:

  • Изначально делается некое ПО технический-опенсорс, под свободной лицензией, решающий определённую задачу, для себя или ограниченного круга лиц.

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

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

  • Самое страшное — если ПО становится популярным (и особенно если оно стабильно работает и уникальное в своём роде) и его начинает использовать какой-то другой крупный проект. Поздравляю, теперь ваш проект — общественное благо. Одним днём на плечи автора/мейнтейнера сваливается груз в виде социальной ответственности за любую ошибку, любую проблему безопасности, потому что теперь она затрагивает не только изначальный ограниченный круг пользователей, а потенциально миллионы пользователей другого ПО, которое полагается и на ваш код, и на вас непосредственно.

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

В чём это выражается?

Задача FFmpeg, декларируемая на сайте, звучит следующим образом:

FFmpeg is the leading multimedia framework, able to decode, encode, transcode, mux, demux, stream, filter and play pretty much anything that humans and machines have created. It supports the most obscure ancient formats up to the cutting edge. No matter if they were designed by some standards committee, the community or a corporation.

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

Это не гипотетическая опасность — ошибки в демуксерах форматов файлов и мультимедиа кодеках кодеки являются одним из лидеров по эксплуатации. Вот совсем недавний пример (декодер Dolby в Android), а вот — наиболее нашумевший и сложный (JBIG2 в PDF на iOS/macOS).

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

С точки зрения twitter-аккаунта ffmpeg, использование его в AWS не показатель большого успеха и качества библиотеки, чем стоит гордиться, а большая психологическая обуза для проекта, ведь ни денег, ни людских ресурсов компания не предоставляет, и стоит ждать только ещё большего количества тикетов в случае проблем, и отсутствия исправления ошибок, которые Amazon исправляет только у себя, а не отдаёт обратно в проект.

Если у проекта нет каких-то бросающихся в глаза отличительных черт, что он не социальный, он по-умолчанию считается таковым.
Если проект на github'е, у него есть readme и секция issues, среднестатистический пользователь или программист посчитает, что автор его пишет для людей, для общества, для всех вокруг, ему интересно развивать проект, добавлять в него новые возможности (особенно которые нужны мне) и всячески улучшать на благо всех пользователей. Ведь если это не так — зачем вообще было его выкладывать?.

Раньше мне приходилось возмущающейся общественности разъяснять проблематику, разницу, но недавно наткнулся на статью Jeffrey Paul'а, в которой open-source-код сравнивается с подарком! Моё объяснение свелось к: «Не нравится подарок, не подходит? Выкинь и забудь!».

Деньги. Если вы делаете нечто, не похожее на продукт (например, библиотеку, решающую определённую задачу, которой не программист не просто не сможет воспользоваться, а которому она и не нужна), будет большим успехом вообще получить хоть что-то.
У вас хоть раз возникала мысль пожертвовать (деньги, улучшение документации, исправления в виде кода) таким широко распространённым и значимым проектам, как glibc (С-библиотека), FriBidi (библиотека для работы с письменностью справа-налево: арабский/иврит), libusb (кросс-платформенная низкоуровневая работа с USB-устройствами)?
Каждая из этих библиотек сверхпопулярна и имеет пользовательскую базу в миллиарды устройств. Обычно о них вспоминают, когда что-то не работает.

Когда я читаю статьи, подобные этой (напомню заголовок: «как обычному разработчику попасть в open source и стоит ли это делать», где в качестве примеров приводятся бесплатные продукты, созданные корпорациями, либо коммерческие и изначально на это ориентированные, но с открытым кодом), всегда возникает вопрос: а что вообще есть опенсорс для автора? Видится мне, что ныне это аналог «бизнеса с открытым кодом» с иерархией а-ля сливки общества (о которых мы и будем писать, в которые престижно вливать свой код) и какие-то бомжи со своими библиотеками снизу, к которым даже не стоит прикасаться.

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

А вы понимаете, что такое CLA? Может, следует объяснить это читающему, а то вдруг он после объяснения и не захочет контрибьютить в такой проект-то? Может, ему совсем не привлекательна идея передачи своих авторских прав корпорации? Или вдруг там прописана обязанность поддерживать код в течение X лет, а он и не в курсе?

Наличие CLA, если там упоминается передача прав, как правило означает, что в кои-то веки можно безопасно переложить ответственность за решение вашей проблемы на мейнтейнеров в виде созданного issue, а не копаться в коде, и люди не будут этому возмущаться, потому что они занимаются проектом за деньги и это их работа!

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

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

У китайцев так много своего на внутреннем рынке, что им уже можно просто обходиться только китайским везде. Они ожидают, что ВЫ будете под них подстраиваться, а не наоборот.

я чаще вакансии с требованием испанского встречал и немецкого

Их интересуют только самые выдающиеся специалисты из-за рубежа. Вы-то (и я-то) им зачем? У них своих таких в 20 раз больше.

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

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

Скорее всего это говорит о том, что для надёжного экранирования сигнала до такой степени, чтобы телефоны теряли сигнал сети, нужны более серьёзные меры или точность.

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

Я вчера, после вашего комментария, сходил в магазин ночью и позасовывал наушники и телефон в большие и маленькие микроволновки разных фирм: https://habr.com/ru/articles/1005158/comments/#comment_29609828

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

На моей домашней микроволновке прерываний сигнала при прямой видимости на кухне не возникает (8-9 метров расстояние от источника до микроволновки).

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

Я не видел ни одной микроволновки, которая бы экранировала все частоты телефона. Даже Bluetooth с его 2.4 ГГц и единицами милливатт продолжает работать, если поместить колонку в микроволновку и вещать на неё с телефона при закрытой дверце.

В микроволновке даже Bluetooth-колонки продолжают работать, а там мощность сигнала на два порядка слабее.

До недавних пор текст нельзя было выделять, сейчас завезли OCR, но ссылки всё равно остаются не кликабельными.

О каком браузере речь?
Только что проверил Firefox и Chrome — оба рендерят сайт в PDF, т.е. сохраняется текстовая информация (нет никаких картинок, чтобы на них делать OCR — сохраняется обычный классический PDF с текстовым слоем, и т.п.).
И все ссылки кликаются, естественно, текст выделяется. Всегда так было, сколько пользовался этой функцией (лет 10).

внешний вид будет сильно отличаться от исходной страницы

Это фича веба, а не баг: CSS @media print. Сами создатели сайтов управляют тем, как он выглядит при печати.

Нельзя сохранить страницу без разрывов

Достаточно сделать условно-бесконечный размер страницы, как делают для кассовых чеков и этикеток. Но да, стандартными средствами нельзя.

Да, будет.
Ваш принтер поддерживает универсальные стандарты PostScript (BR-Script) и PCL6
https://support.brother.com/g/b/spec.aspx?c=ru&lang=ru&prod=dcp8070d_all

Сканирование также будет работать.

В Почте есть возможность получить «юридически значимое электронное уведомление о вручении» на обычные письма (не zakaznoe.pochta.ru — это отдельный сервис для корреспонденции в государственные службы)
Отправлял несколько раз письма с этой услугой, в разные месяцы, с большим разбросом. Ни разу не получил уведомление! Поддержка меня уверяла, что в личном кабинете у трек-номеров, оформленных с этой услугой, должна быть отдельная кнопка для скачивания уведомления — у меня её нет. После пары месяцев переписки предложили мне запрашивать уведомления у поддержки, на каждое письмо, к которому его необходимо получить.

А при составлении обращения через личный кабинет, будучи залогиненым, они не могут идентифицировать составителя обращения/отправителя посылки, и не присылают «конфиденциальную» информацию, если данные не указаны непосредственно в обращении (которое ограничено по количеству символов).

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

Тем не менее, Почта остаётся лучшим доставщиком по соотношению цена/надёжность доставки.

Конечно, девайсы в наличии и продаются.

Ну-ну. То есть, вы утверждаете, что ИИ не нужен читабельный код?

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

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

Файл без временной метки не считается доверенным, как и подписанный после того, как об утечке сертификата стало известно (на основании временной метки, чтобы старые файлы не сломались из-за отзыва сертификата).

Надёжней делать дамп всего блока ATA Identify: sudo sg_sat_identify -H /dev/sdX, из комплекта sg3-utils.

А smartctl --identify /dev/sdX покажет дамп в человекочитаемом виде.

На Xbox 360 можно установить только специальные HDD, предназначенные именно для консоли: диск идентифицируется через ATA Identify, данные которого дублированы на диске с цифровой подписью Microsoft. Произвольный диск установить невозможно.

Для HDD от WD старых моделей давно есть программа HDDHackr, позволяющая подменить ATA Identify на произвольный дамп от другого диска, а для SSD до недавнего момента ничего не было.
Разработчик утилиты fatxplorer поисследовал разные SSD и написал утилиту, подменяющую ATA Identify на контроллерах разных производителей.

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

Пока она заточена только для xbox (не позволяет загружать произвольные дампы), но я написал сообщение, что такая функция была бы полезна многим, не только для xbox.

1
23 ...

Информация

В рейтинге
2 739-й
Зарегистрирован
Активность