Как стать автором
Обновить
-12
0

Системный инженер

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

Это какой такой язык thread-safe? Какой из существующих компиляторов сам, без помощи разработчика, определяет какие участки кода и области памяти нужно защищать а какие нет, да ещё и с учётом того что ситуация меняется в процессе выполнения в зависимости от того какие данные поступили на вход?

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

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

Может, если речь о чём-то очень прямолинейном на уровне "Hello, world!" и можно сделать всё почти автоматически, но на любом сложном проекте вся эта автоматика либо сломается, либо замедлит всё в разы.

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

На данном этапе пока всё ещё проще делать синхронизацию почти вручную (используя примитивы синхронизации и прочие подобные механизмы) и пытаться "думать как процессор", но это всё же чуток сложнее чем "распознавание лиц в 10 строк на питоне".

Из практики. Когда-то давно реализовали мы REST-like API для одного сервиса, задокументировали и раздали пользователям (их тогда было несколько сотен).

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

А когда пошли первые жалобы мы столкнулись с одним интересным явлением - пользователи начисто игнорировали тело если получали что-то кроме 200 в ответ, и совершенно искренне не могли понять зачем читать тело если есть код.

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

По этой причине следующая версия API была построена по простому принципу - 200 - запрос дошёл до приложения, >= 300 - не дошёл. И дело пошло - с тех пор проблем и вопросов у пользователей сильно поубавилось, потому что детальные отчеты в теле были достаточно красноречивы, и самое главное - их стали читать и парсить.

С тех пор у меня есть чёткое убеждение - не надо смешивать транспорт (HTTP) и приложение (JSON/XML/etc), а также не надо пытаться впихнуть в куцые варианты кодов HTTP варианты ответов приложения - их банально недостаточно и они практически бесполезны в сложных API. А если API доступно не только через HTTP (да, есть и другие транспорты), то отсутствие привязки только упрощает разработку.

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

Разумеется, в очень простых API, где всё влезает в HTTP-коды их можно использовать (хотя и остаётся неоднозначность с 404), но это частный случай.

По поводу кэширования - есть же вполне себе стандартизованный Cache-Control, который решает проблемы с прокси и прочими посредниками, а если прокси его не понимает или пытается "умничать" - то грош ему цена.

Лучшее что есть - это упомянутый выше SyncThing. К тому же мультиплатформное - можно даже с Android/iPhone синхронизировать (правда iPhone пока бета и нужен бубен).

Если файл изменился на Windows, то в систему Linux передаются только различия (дельта).

И как это поможет если (к примеру) в начале файла окажется один новый байт? Или наоборот, удалится один байт?

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

Если же нет вставок или удалений - тогда всё ок, CDC шустрее чем фиксированные блоки.

Достижение чего? Поищите CVE по ключевому слову rust, их дохренища. Убийца ошибок как-то не справляется, вопреки рекламе. Да и по рейтингу всё ещё на задворках, хотя его уже который год называют "языком будущего" и всячески нахваливают - хотя он не тянет не то что на "крупнейшее", но даже просто на "достижение".

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

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

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

Это для сервера на стороне NAS в /etc/samba/smb.conf.

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

sysctlпо любому нужно, умолчания там просто никакие.

Вы же упомянули что по самбе получаете всего 50% - так что вероятно что что-то недокручено.

Насчёт самбы. У меня такие настройки:

  socket options = SO_RCVBUF=10485760 SO_SNDBUF=10485760 IPTOS_THROUGHPUT TCP_NODELAY
  large readwrite = yes
  max xmit = 65536
  min receivefile size = 65536
  use sendfile = true
  aio readsize = 65536
  aio writesize = 65536
  guest account = nobody
  read raw = yes
  write raw = yes

Ещё парочка параметров:

sysctl net.core.wmem_max=33554432 net.core.rmem_max=33554432

По гигабитной сетке оно даёт стабильный 100 MB/s в обе стороны на файле размером в 100G (сами диски умеют около 150 MB/s) на Windows 11 без дополнительных настроек. Даже на 10 гбит сетке скорость была близка к 1 GB/s (при записи/чтении на NVME диск).

И насчёт проверки скорости. dd в чистом виде не покажет скорость диска, нужно добавлять oflag=direct (при записи на диск) или iflag=direct (при чтении), но лучше всего для этой цели использовать fio (есть в пакетах) примерно так:

fio --filename=fio-test.bin --size=10G --rw=write --bs=1m --eta-newline=1 --direct=1 --name=write

--filename нужно указать путь к файлу на диске, размер по желанию но лучше не менее гигабайта (чтобы обойти кэш самого диска, если он назойливый). Параметр --direct=1 не даст системе кэшировать операции. Для теста на чтение соответственно использовать --rw=read.

Этот тест покажет реальную производительность диска при записи/чтении больших файлов последовательно (обычно то для чего и используется NAS).

Чтобы исключить потенциальные проблемы с самой сеткой - можно использовать тулзу типа iperf3 (есть и для Windows тоже) - померять скорость в обе стороны и посмотреть на загрузку процессора на NAS - если сетка даёт весь гигабит и процессор не сильно грузится - значит должно получится и с самбой.

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

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

В случае же с почтой всё совсем не так - во-первых, сертификаты (или ключи в случае PGP) нужны самим пользователям, их нужно где-то брать и что-то за это платить, а если не платить (PGP & co) то придётся заморачиваться цепочками доверия, как-то проверять подлинность и вот это всё - это не очень приятно и времязатратно даже для понимающих людей, что уж говорить про условных сантехников и флористов.

Шифрование почты станет мейнстримом только если (и это большое "если") кто-то придумает систему аналогичную HTTPS когда у пользователя реально будет "один клик" для отправки зашифрованного письма и проверки подлинности полученных, без возни с приватными ключами и прочим, и при этом не придётся всё это повторять при смене адреса email, причём не только своего но и всех с кем идёт переписка.

Есть существенная разница между "пойти в гугль, собрать что-то вредное из компонентов в супермаркете, реализовать и применить" (нужны мозги) и запросом к чему-то а-ля ChatGPT в духе "Напиши мне подробный пошаговый план как отравить всех в большом помещении за 5 минут используя только продукты бытовой химии и аптеку" (мозги почти не нужны).

Очень скоро появятся системы заточенные на подобные планы (и обученные на многочисленных руководствах для всяких партизан) - и жить станет ещё веселее. Хотя в теории это всё как бы и так есть в гугле и прочих яндексах, да...

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

Чего боится эта публика в воззвании, непонятно.

Раньше тонко манипулировать людьми могли единицы (условно), сейчас, с помощью моделей типа GPT на это способны чуть меньше чем все.

Не стоит забывать также о том что очень много глупых жуликов и прочих мелких преступников получает в свои руки универсального советчика который позволит им "поумнеть".

Как по мне, это немножко страшно, особенно если учесть что критическое мышление и здравый смысл не очень распостранены.

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

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

Роботы точно не конкуренты всяким челленжам с TikTok с компанией и пачки всяких *tube, сюда же можно добавить кучу всяких супергеройских "детских" фильмов, причём там обычно ни слова на тему "не пытайтесь повторить дома".

Бизнес-идея таких проектов проста: набрать аудиторию и затем продать ей свои токены.

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

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

Если вы видите что в городе М — зарплата в два раза больше — это сигнал что там не хватает специалистов данного профиля

Я правильно понимаю что в Москве имеет место быть дефицит дворников по сравнению с Костромой?

И даже если нейронка достигнет 99.5% точности, всё равно ошибка в одном документе из 200 - это до хренища.

А у человека точность 100%? Они не ошибаются в том чему учились по 5-10 лет, или в том с чем работали 20-30 лет?

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

Можете назвать хоть одну нетривиальную область где люди никогда не ошибаются? Или где у них точность достигает хотя бы 80%? Может вы знаете нейрохирурга у которого за 30 лет практики хотя бы 80% операций успешны? Или адвоката который на 100% реализовал свои знания? Или, хотя бы, может знаете водителя который во всех аварийных ситуациях реагировал вовремя и правильно?

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

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

Так что да, даже 80% "из коробки" - это уже очень высокий процент, хотя бы потому что у человека "из коробки" это вообще 0%, плюс лет 20 учёбы "обо всём", плюс 5-10 лет специализации (с неопределённым успехом) - и вот сразу после выпуска там едва ли будет хотя бы 80%, и не факт что будет больше даже после 10 лет практики.

Можно ли пить чай, люди договорились. Можно. Поэтому проблемы нет.

Наверняка есть те кто считает что чай пить нельзя.

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

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

Так могу я есть говядину или свинину (и мясо вообще), или нужно согласие в письменном виде от всех представителей человечества?

Как гарантировать что меня не попытается убить кто-то из тех кому не нравится что я ем мясо вообще или какое-то конкретное, потому что это нарушает его этические (или какие-то другие) принципы?

Там же есть король с королевой ферзём, чем не правительство?

Да, данная конкретная сеть (ChatGPT) была обучена на данных из Интернет, но всё же не только на них, к тому же не в чистом виде - научили же её быть вежливой, человеколюбивой и т.п.

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

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

А вот насчёт того что из поисковика что-то можно удалить - в теории-то оно так, но вы знаете хотя бы один случай когда удалялись данные о сайтах (к примеру) тех кто верит что Земля плоская, или тех кто верит в астрологию? Сеть просто забита подобным мусором, не говоря уже о менее очевидных глупостях типа "если есть много морковки то улучшается зрение" - и никто никогда этого удалять не будет. Да, очевидно вредные сайты иногда удаляются и даже блокируются, но вот остальное - остается там навсегда, и найти нужное уже становится искусством. Все эти миллионы блогов и прочих мнений где тоже пишут чушь с умным видом - кто их будет удалять если де-юре нет нарушений? Поисковики явно в этом не заинтересованы, не говоря уже о тех кто против вообще какой-либо цензуры и сразу поднимают вой.

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

Чаще всего поисковые запросы в Google постоянно связаны с последними новостями и местной или личной информацией...

Чаще всего это всё же не так. В результатах гугля можно найти много чего но приходится посещать кучу сайтов чтобы найти реальный ответ на вопрос типа "как сделать ...?" или "что такое ...?" (это, кстати, самые частные запросы) - и часто его там нет, а если и есть то результаты (в зависимости от сайта) довольно противоречивы, да и достоверность тоже далека от идеала.

В то же время, ChatGPT на вопрос "Как ухаживать за кактусом?" даст вполне подробную инструкцию, по шагам, и с вероятностью в 90% она будет верной. Если что, можно уточнить - с гуглем этот номер не пройдёт, особенно если человек не владеет гугл-фу.

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

То что нет поиска актуальной информации - ок, не проблема, гугль и компания всё же никуда не денутся, но то что уже есть (а будет ещё больше и точнее) - более чем достаточно для удовлетворения большинства запросов.

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

Да, бывают глюки, да, нужно уточнять или даже спрашивать "Are you sure?", но всё же это лучше чем мнение диванного эксперта на каком-то "тематическом" форуме или даже среднего отвечающего на StackOverflow.

Так что будущее не такое уж и мрачное - наоборот, появился свет в конце туннеля поисковиков, и лет через 5 максимум это будет очень годная штука.

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

Информация

В рейтинге
Не участвует
Откуда
Nordrhein-Westfalen, Германия
Зарегистрирован
Активность