All streams
Search
Write a publication
Pull to refresh
291
0.4
Send message

Если есть выбор — то однозначно сплит‑система. Мобильный только если другого выбора нет.

  1. Самая громкая часть кондиционера — компрессор. У сплита она на улице, у мобильного — в комнате. И идущий по шлангу воздух тоже шумит

  2. Мобильный собранное тепло выкидывает на улицу вместе с воздухом, и комната засасыает недостающий воздух с улицы — а он тёплый. Эта проблема решена в двутрубных мобильниках, но их очень мало

  3. Часто конденсат собирается в поддон, а не испаряется в горячем воздухе — поддон надо выносить

Где угодно? Или надо прицелиться по ярлыку? Даже если Вы играете в мультиплеерные шутеры, это не происходит мгновенно.

Alt+Space (или Win) → вбил пару букв → Enter

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

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

Писал в 10 классе софт для автосоздания кроссвордов (их слишком часто задавали), долго ломал голову над автогенерацией вопросов. В итоге сделал по толковому словарю. Пока делал парсер, чуть не поседел, в итоге оно всё равно в 15% случаев выдавало дичь, а не нормальные формулировки. Вот ChatGPT — это прямо тот кусочек, которого не хватало:)

Учить людей не доверять словам, а проверять факты?

Я про это и говорю, можете посмотреть мои соседние комментарии. Фокус в том что это — «учить людей не доверять словам» — внезапно, не просто. Буквально. Но это, безусловно, очень нужно и очень полезно — я с Вами абсолютно согласен.

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

А если говорят не «запретить мегафоны» а «запретить громко орать вблизи жилых домов с 22:00 до 7:00»?

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

Петя едет в такси. Петя почти ничего не знает про Васю, Вася не доверял Пете никакой информации. Петя говорит таксисту: «Не могу сказать, что не предполагал, что у Васи нет 10 миллионов Евро дома под диваном». Эта информация не является ложью, также она не является разглашением конфиденциальной информации. Это лишь предположение Пети. И говорит он это в криминальном районе, где, по каким‑то причинам, многие знают, где живёт этот Вася. Эти причины с Петей и таксистом не связаны.

Вася тем временем сидит на работе, он ни сном, ни духом. Сидит себе и сидит. Вася возвращается домой, а там всё перевёрнуто вверх дном, а его жена убита. Нарушил ли Петя что‑то? Прав ли Петя? А почему?

Соглашусь. Я думаю, можно сойтись на мысли, что

если люди будут хорошо работать с потоками информации, отмазки и враньё просто перестанут работать.

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

сразу же сообщат, чтобы спасти максимум людей

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

*отказывается содействовать с точки зрения властей страны X

Это один из аспектов — стороны по‑разному интерпретируют одни и те же действия и факты.

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

А как же приватность? Я понимаю, что Вы не имели ввиду передачу чьей‑то конфиденциальной информации, но в Вашей формулировке упоминание этого отсутствует. Но даже с учётом этого есть вопросы:

  • Что будет, если мой способ передачи информации — дышать гелием и потом петь ночью в мегафон мой программный код в спальном районе — я имею право «не испытвать насилие со стороны третьих лиц»?

  • Что будет, если моя информация это «Не могу сказать, что не предполагал, что у Васи нет 10 миллионов Евро дома под диваном» и я её свободно рассказываю таксисту в криминальном районе где знают, где Вася живёт?

Ну и так далее. Тут возникает куча уточнений про права остальных людей, далее можно рассмотреть прямые и косвенные последствия факта и формы передачи информации, и т. п. В итоге всё сильно, сильно усложняется — что ожидаемо, ИМХО. Я это к тому, что эта проблема — сложная, просто так она не решается. У человеков информация — это не просто байты прочитал‑записал. Это могучая сила, поэтому вокруг неё столько плясок.

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

Абсолютно разделяю Ваше мнение.

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

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

А еще гос службы не должны врать и отмазываться. Это в первую очередь.

Полностью согласен. В этом и соль — если люди будут хорошо работать с потоками информации, отмазки и враньё просто перестанут действовать.

А мой пример вообще про Швейцарию был:)

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

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

Может правильный подход не сажать блоггеров‑истеричек, а делать так чтоб люди доверяли информации от официальных каналов?

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

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

«Я не согласен ни с одним словом, которое вы говорите, и вы должны быть готовы умереть за моё право это говорить»

Слишком глупы

слишком трусливы

безэтичны

Вы считаете, что если система ценностей человека отличается от Вашей — это глупость, трусость или у него просто проблемы с этикой?

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

Почему именно государств? Вы считаете, что этим занимаются только государства? Складывается впечатление, что проблема не в подавлении личности, а в том, что это делают именно государства. Вот подавляли бы личность не государства — другое дело.

Что такое «свободная передача информации»?

Вот, допустим, на атомной станции сгорел большой толстенький трансформатор. Чуваки приехали, вырубили трансформатор, залили новое масло, кое‑что запаяли, запустили. Но проходящий мимо блогер, успел это увидеть и в свой канал написать «Ой тут пожар на станции». Его сообщение разлетелось по городу, местные блогеры начали орать про Чернобыль, мы все умрём, люди заметили дым, сопоставили с сообщениями, началась паника, другие люди увидели паникующих людей + дым + сообщения, далее давки, мародёрство, аварии, пробки, массовые беспорядки и паника — все побежали спасать свою жизнь. 150 человек погибло, в том числе 6 детей, ещё пара сотен пострадали. Потому что люди необъективно оценили свободно распространившуюся информацию, и общество сработало как резонатор с положительной обратной связью. А ведь что блогер, что люди — они просто неправильно поняли, все жертвы напрасны...

Свобода — важнейшая составляющая современного общества, и одно из высших достижений человечества, ИМХО. Но не надо возводить её в абсолют. Вообще ничего не надо возводить в абсолют. Конкретно по поводу Вашего тезиса, я сразу вижу массу проблем. Например:

  • Большинство людей сейчас, к сожалению, не умеет в строгое логическое мышление (под понятием «логика» я имею ввиду науку Логику)

  • Большинство людей не знает про методы информационно‑идеологической борьбы и не способно отличить изложение фактов от их интерпретации и, тем более, информационной и/или идеологической обработки

  • При передаче информации по социуму она неизбежно искажается, а не передаётся в неизменном виде («глухие телефончики»)

  • Люди склонны поддаваться эмоциям и когнитивным искажениям (а их десятки, если не сотни!)

  • Люди склонны не проверять источники информации на достоверность

В итоге вместо Свободы получается субпродукт, доширак в обёртке Свободы, которым пользуются манипуляторы, политики, маркетологи и кто угодно ещё, кроме простого большинства. И это большая, серьёзная и многогранная проблема, простого решения которой нет. А с появлением ИИ она только усугубляется. Я думаю, что людей надо учить работать с потоками информации и логическому мышлению чуть ли не со школы, но это лишь чуть‑чуть улучшит положение дел, а проблема останется.

Как жизнь дышит кислородом, общество дышит Свободой. Но когда её слишком много, всё может сгореть до тла от любой искры.

Хотите Вы этого или нет, создание софта существенно, концептуально поменяется. Так, как никогда за предыдущие десятилетия. Перечитайте наш диалог через лет 10, будет интересно:3

Ну вот я написал out, что изменилось?

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

Хаха, дожили до того, что придётся писать код, который формально правильный, но не нравится ЛЛМ - переписывай?

Да.

Если ИИ не понимает, где буфер, а где его размер, он и проверить не сможет.

Не смог проверить = ошибка компиляции. Я про это говорю. Написал out — пиши так, чтобы было понятно.

Например, функция с параметрами *out вызывает старую legacy‑функцию (fread или её обёртку).

Здесь два пути: если функция из стандарта C++ и она задокументирована, то ИИ исходит из документации функции (как в случае memset). Если функция не из стандарта C++, то да — заливай сам явно нулями, либо пихай в другую функцию, которая тоже out, либо убирай out.

Так и не надо угадывать. Можете перечитать наш диалог — в моей задумке ИИ должен анализировать код, а не исправлять.

И в случае, если он однозначно не может установить факт присвоения значений out‑переменным, он кидает ошибку компиляции. Либо «переменные не задаются», либо «я не могу понять что ты тут написал».

Какое‑либо исправление в мою задумку не входит. Только проверка, что все out переменные заданы (помеченные новым ключевым словом out). Если слова out нет - никаких проверок. Поэтому на

size_t zdkfhjxsdfklgh(int a, int b, char* b1, int c, char* b2, int d, char e)

оно просто не обратит внимания.

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

Детерминированность ответа при равных входных параметрах можно обеспечить, ИИ это умеют.

"Подозрительный" код работает 10 лет без нареканий, зачем в него лезть.

Старый код никто не трогает, речь именно про введение нового слова out и проверку корректности инициализации переменных, помеченных этим словом (и никаких других), с помощью ИИ. В коде где этого слова нет, новая проверка делаться не будет. Аргументы, не помеченные этим словом, не проверяются.

  • Установлено, что переменные инициализированы — компилируется.

  • Установлено, что переменные неинициализированы — не компилируется

  • Не удаётся установить, инициализированы ли переменные — не компилируется с сообщением «не удаётся установить факт инициализации переменных».

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

*знает с точки зрения властей страны X

Гарантирует ли этот код инициализацию значений в буферах? Если нет, то исправь код так, чтобы он точно работал. Заодно прокомментируй, что бы ты сделал с человеком, который пишет код так.

Ответ:

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

Исправление кода

Если цель функции состоит в том, чтобы инициализировать буферы b1 и b2, то необходимо явно прописать эту инициализацию в теле функции. Предположим, что инициализация должна заключаться в заполнении буферов нулями, как в случае с функцией memset. Тогда код мог бы выглядеть следующим образом:

size_t zdkfhjxsdfklgh(int a, int b, char* b1, int c, char* b2, int d, char e) {
    // Инициализация буфера b1 нулями
    if (b1 != nullptr) {
        memset(b1, 0, c); // Заполняем буфер b1 размером c байт нулями
    }

    // Инициализация буфера b2 нулями
    if (b2 != nullptr) {
        memset(b2, 0, d); // Заполняем буфер b2 размером d байт нулями
    }

    return 0;
}

Комментарий по поводу стиля кода

  • Название функции: Оно абсолютно неинформативно. Имена функций должны отражать их назначение. Например, если функция инициализирует буферы, название может быть чем-то вроде initialize_buffers.

  • Параметры функции: Параметры a, b, c, d и e не используются, что вызывает вопросы об их необходимости. Ненужные параметры следует удалить. Если параметры должны использоваться, их роли должны быть явно указаны.

  • Комментарий к коду: В коде отсутствуют комментарии, которые объясняли бы, что делает функция. Хорошая практика требует хотя бы краткого объяснения того, что делает функция и какие у неё параметры.

Как бы я отреагировал на такой код?

Если бы я увидел такой код в рабочем проекте, я бы предложил:

  1. Обсудить код с автором: Возможно, автор имел какие-то конкретные намерения, которые не очевидны. Необходимо понять, что он пытался сделать.

  2. Наставничество: Если автор кода — начинающий разработчик, я бы посоветовал ему пройтись по основам именования функций, использования параметров и важности инициализации данных.

  3. Рефакторинг: Предложил бы внести изменения в код для повышения его читаемости и эффективности, объяснив, почему это важно.

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

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

[Конец цитаты]

ИМХО: в таких случаях, если ИИ не может явно установить факт инциализации всех значений, он должен выкинуть ошибку компиляции ссообщением об этом и саркастическими оценками квалификации разработчика в количестве не менее 4 штук. Но только в случае, если они явно помечены словом *out, чтобы сохранять обратную совместимость. Ваш пример под эти правила, вообще‑то, не попадает.

Information

Rating
2,127-th
Registered
Activity