• Почему не работает usb 3.0 на передней панели системного блока?

    @rPman
    зачем гадать, переставь в другой разъем на материнской плате (их там обычно несколько) и если проблема повторится - значит виноват разъем, если нет - материнская плата. Для гарантии можно проделать тест с другой машиной, где usb3 работает.
    Ответ написан
  • Как синхронизировать Win11 и смартфон только через WiFi?

    @rPman
    synchting, есть и под linux и под windows и под android и как я понял для iphone.
    приложение представляет функционал, более продвинутый чем любые облачные технологии, opensource, без необходимости устанавливать сервер, без использования и в каких то случаях даже без наличия интернета (копирует файлы напрямую)
    Ответ написан
    3 комментария
  • Что лучше, FreeXYZ.com или Free-XYZ.com (слитно или через черточку)?

    @rPman
    Бери оба, если путаешься с выбором ты, люди, вбивающие адрес по памяти (таких мало но они есть) будут так же ошибаться, не возьмешь ты, возьмет твой конкурент.

    Само собой на один адрес настрой редирект, кстати рекомендую не прозрачно редиректить, а на страничку где большими буквами написано, наш адрес такой то ;) и собирай статистику
    Ответ написан
    Комментировать
  • Какой сервер выбрать для headless Chrome?

    @rPman
    chromium отъедает больше 500мб на типовую страницу, формально половина может уехать в своп и там и остаться, но при условии что инстанс браузера не перезапускается, но тогда нужно выбирать kvm vps-ки или выделенный сервер.

    я делал приложение на java (на самом деле пофиг на каком языке) в котором использовались компоненты WebEngine - от webkit, каждый инстанс потреблял порядка 150мб и работало неплохо, но формально это отдельный браузер и его useragent нестандартный... по уму это меняется. Что интересно, если подобрать версию WebKit по старее, то потребление оперативной памяти можно значительно сократить до считанных десятков мегабайт.

    Еще вариант, при использовании mono (как альтернатива .net framework), при использовании компоненты WebBrowser используется IE (не edge!) а в linux - firefox, как минимум это было 10 лет назад это работало на очень мелкой vps-ке.
    upd. облом, майкрософт и это сломало,
    spoiler
    кто-нибудь, пожалуйста, накажите эту компанию, куда не глянь, что не задень, все где она прошлась, сломано, искорежено, куплено и заброшено
    , поэтому тут тоже придется WebKit поключать
    Ответ написан
    Комментировать
  • Есть ли какая то программа для визуальной работы с html?

    @rPman
    Eclipse Web Developer Tools, установка прямо из eclipse - help - eclipse marketplace, в настройках General - WebBrowser включаешь Use Internal Web Browser. Чтобы его открыть, жмешь правую кнопку на .html файле в Project Explorer и выбираешь Open With - Web Browser, и при желании включаешь autorefresh в нем (слева от адресной строки рядом с кнопкой refresh меню, с галочкой autorefresh), будет обновлять браузер при сохранении файлов (проверь, корректно ли он считывает разные зависимости)

    Не уверен, на сколько хорошо это работает с отладкой nodejs/php по уму должно, но как я понимаю тебе статику нужно редактировать, тут все работает как надо.

    p.s. так красиво, как было реализовано в dreamviewer не будет

    p.p.s. Microsoft Visual Studio точно таскало с собой редактор html с браузером и кажется быстрым переходом по клику в браузере в редактор, собственно больше я такого нигде кроме dreamvewer этого не видел.
    Ответ написан
    Комментировать
  • Почему не устанавливается Microsoft C++ Build Tools?

    @rPman
    гуглится документация для создания offline версии загрузчика, но запускать его нужно там где не заблокировано

    может проблема в выборе vpn? подавляющее большинство из доступных бесплатно на поверку не являются vpn а оказываются обычным прокси, работающим только в приложениях, поддерживающих их, типа браузер.
    Ответ написан
    Комментировать
  • Запуск приложений с другой OC на диске?

    @rPman
    запускать программы от Adobe на Linux, при этом запуская их в среде Windows (в другом разделе диска).
    Тоесть я сижу на Linux и прям в нем, не выходя, запускаю программы из Windows, установленной на этом же диске.
    да, это называется виртуализация (полная или с поддержкой аппаратного ускорения, включается в биосе).

    Штатно с linux идут два независимых проекта виртуализации x86 машины - qemu (с расширением kvm, это полнофункциональный вариант, включающих инструменты проброса оборудования внутрь виртуалки) и virtualbox (в поставке идет community версия, без поддержки проброса usb портов, иначе топать vitualbox.org)

    gui для qemu - virt-manager (libvirt)
    virtualbox идет со своим gui

    Недостатки, начиная с windows 10 поддержки даже ограниченного 3d ускорителя в windows guest больше нет (раньше с virtualbox шли драйвера и даже работало, на win7, с оговорками но cad приложения использовались). С kvm можно попытаться пробросить второй видеоускоритель внутрь виртуалки, с большими шансами это работает но потребуются танцы с бубном

    Есть лайфхак, не устанавливаешь в virtualbox поддержку 3d ускорителя (при установке дополнений отключаешь чекбоксик), но работаешь с windows через подключение rdp (рабочие windows разрешают 1 подключение для администраторского аккаунта). Некоторые программы так работают.

    p.s. wine - настоятельно рекоменудую использовать proton, а чтобы совсем не заморачиваться и делать все из gui, рекомендую lutris.net, приложение управляет разными версиями wine, обновляет, позволяет для разных приложений использовать разные версии ранера

    Еще раз просто не будет, вообще ожидать что в linux будут идти приложения, написанные для windows, когда как разработчики активно этому противодействуют, опрометчиво, но все же у многих получается.
    Ответ написан
    Комментировать
  • Как обрабоать данные полученные с POST?

    @rPman
    {identification: "4242", password: "424234", remember: false}
    это json строка, ее разбором на python можно заниматься с помощью штатной библиотеки json
    data = json.loads('{identification: "4242", password: "424234", remember: false}')
    print(data['remember'])
    Ответ написан
  • Ошибка с диском линукs ubuntu 23.10?

    @rPman
    Раскрою ответ который тебе уже дали в комментариях

    Поочередное использование разделов диска Windows (8 и старше версии) потом Linux, при настройках windows по умолчанию будет порождать случайные проблемы, вплоть до потери файлов (в твоем случае файловая система не монтируется).

    Причина, в windows для быстрого включения используется технология FastStartup, в этом режиме файловая система не закрывается корректно и при попытке работать с ней из другой ОС (даже если это другая установка windows!) в файловой системе накапливаются ошибки и она разваливается.

    Лечить файловую систему из windows (можно и из linux но настоятельно рекомендуется родные файловые системы чинить средствами windows). Сделать это можно в windows проводнике, свойства диска, вкладка обслуживание - проверка диска, отметить чекбокс 'исправлять ошибки' либо в диспетчере дисков (либо командой в консоли chkdsk).

    Чтобы такого больше не происходило, если компьютер выключается с целью последующего запуска другой ОС (или например диск извлечь и нести другому человеку), то выключать командой
    shutdown -s -t 0

    Либо полностью отключить гибернацию, как советовали в коментариях
    powercfg -h offТогда любое выключение будет полным (и соответствующий запуск windows медленным)
    Ответ написан
    Комментировать
  • Почему переменная постоянно растет, хотя я нигде не прописывал этого?

    @rPman
    ИИ от anthropic - claude.ai:
    В коде есть несколько моментов, которые могут приводить к неправильному поведению при работе с последним элементом массива alarms:

    Размер массива объявлен как ALARM_COUNT = 20. Это значит, что индексы элементов будут от 0 до 19 включительно. Но в некоторых циклах обработки массива используется условие i <= 30. Это выходит за границы массива и может привести к неопределенному поведению.
    При инкременте и декременте номера банка (funkции incrBank, decrBank) не проверяется выход за границы массива. Например, если bank = 20, то после inkBank он станет равен 21, что уже выходит за размер массива.
    Не инициализируются значения элементов массива alarms после номера 19. Эти элементы могут содержать случайный "мусор", который и приводит к странному поведению.

    Чтобы исправить эти проблемы, я бы порекомендовал:

    1. Использовать в циклах условие i < ALARM_COUNT вместо i <= 30
    2. Добавить проверку границ при инкременте/декременте номера банка:

    void incrBank() {
      if (bank >= ALARM_COUNT-1) { 
        bank = 0;
      } else {
        bank++;
      }
    }
    
    void decrBank() {
      if (bank <= 0) {
        bank = ALARM_COUNT-1;  
      } else {
        bank--;
      }  
    }

    3. Явно инициализировать все элементы массива alarms при старте.

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

    ИИ можно использовать как начало анализа, проверяя каждое из его предположений и задавая наводящие вопросы
    Ответ написан
    1 комментарий
  • Как создать exe файл с интерпретатором angel script?

    @rPman
    AngelScript sdk это и есть набор инструментов и библиотека по компиляции и запуску скриптов с интеграцией их в своем c++ приложении.

    Ответ я не знаю но я открываю документацию и там все красиво с примерами написано

    Вот так ты компилируешь скрипт
    Вот так ты запускаешь метод в скрипте

    Внутри sdk в каталоге sdk/samples есть примеры проектов visualstudio
    Ответ написан
    Комментировать
  • Какие легковесные дистрибутивы Linux еще остались?

    @rPman
    Не путай размер дистрибутива и размер установленной системы на диске

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

    Например одно время ubuntu server альтернативно можно было установить, загрузившись в примерно 100-200мб iso образ, с установщиком, который с удобным текстовым интерфейсом устанавливал абсолютно все пакеты по сети из репозитария..

    Место, занимаемое установленной ОС зависит не от выбора мейнтейнера, а от выбора софта, который тебе нужен. Что бы ты не выбрал, пример - если тебе нужно ставить пакеты для разработки нейронных сетей (tensorflow) на nvidia gpu, то качать тебе минимум 5 гигабайт всего что с этим связано (а то и больше).

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

    К сожалению, юзерфрендли его не назовешь, так как поддержка обновлений своего конфига это достаточно тяжелый труд (хоть и предоставлена куча удобных инструментов), который если запустить на год другой, может сильно усложнить дальнейшее обновление системы, вплоть до ее полной переустановки (по крайней мере так было с 5-10 лет назад). Придется изучать и разбираться почти во всем, что ты используешь. С gentoo именно ты являешься мейнтейнером своего дистрибутива.

    Но и результат может быть потрясающим, можно собрать графическую систему в несколько сотен мегабайт с неплохим набором современного (буквально, новее чем тестовые версии бинарных дистрибутивов) софта, с минимальными (ничем больше не достижимыми) требованиям к оперативной памяти и даже некоторыми значимыми оптимизациями для своего процессора (бинарные дистрибутивы собирают софт без них, но некоторые разработчики пакетов заморачиваются сборкой оптимизаций сразу под несколько платформ самостоятельно) что может ускорить работу в некоторых случаях.
    Ответ написан
    4 комментария
  • Каким образом можно обучить ИИ распознавать лицо python?

    @rPman
    Вроде бы openvino может работать без tensorflow (и скорее всего умеет работать с intel ускорителями), вот пример их модели распознавания эмоций
    Ответ написан
    1 комментарий
  • Какие существуют библиотеки для подключения аудиоплееров?

    @rPman
    Все зависит от плеера, у каждого свои механизмы

    Например у mpv (потомка mplayer) есть возможность управлять им, симулируя нажатия на кнопки (как я помню через stdin пайпом от своего приложения) и используя плейлист через пайп или тот же stdin, формируя его на лету своим приложением

    по нормальному mpv поддерживает скриптовые плагины на lua, есть плагин mpv-network-commands так что любое поведение можно запрограммировать
    Ответ написан
    Комментировать
  • Учитывает ли Git регистр имени файла и как его поменять?

    @rPman
    Попробуй переименовать файл
    git mv -f hello.cs Hello.cs
    если он не будет давать это сделать на твоем текущем репозитарии, переименуй файл сначала обычными средствами файловой системы в hello.cs а потом с помощью git-mv
    Ответ написан
    Комментировать
  • Как редактировать контент сайта человеку не знающему HTML (без конструкторов)?

    @rPman
    Тебе нужна 'система управления к содержимым' (content management system), в общем случае это программа которая из текста делает html, и делает это в удобном и понятном виде.

    Либо ты пользуешься готовыми системами типа конструкторов сайтов и новыми cms типа древнего wordpress, либо пишешь его сам
    Ответ написан
    4 комментария
  • Куда стоит поступать на ИИ?

    @rPman
    Не воспринимайте мой ответ как верный, но как повод задуматься.

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

    При создании современного ИИ так же используются знания из огромного количества областей, и технические знания становятся все более незначительными (но само собой обязательными). Как минимум команда разметчиков данных (тот же RLHF) должны быть сильно эрудированными и достаточно интеллектуальными, чтобы повлиять на создаваемый интеллект наиболее качественно (из того что публиковали команда OpenAI, речь идет об очень сложных вопросах, касающихся любых областей знаний, в ответах на которые нужно искать ошибки и выдавать верные ответы)
    Ответ написан
    Комментировать
  • Какие характиеристики у оперативной памяти при загрузке ее данными?

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

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

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

    p.s. безотносительно выбора ОС, могу предположить что забитая оперативная память может повлиять на количество операций чтения с постоянной памяти (hdd или ssd) при условии что эти данные могут быть закешированы и кеш этот использован (т.е. данные читаются повторно). Вся свободная оперативная память ОС будет использована как дисковый кеш (в linux это настраивается но нет никакого смысла это менять), соответственно если эту память занять подо что то другое, данные будут чаще считываться с диска.

    Но потребление ssd/hdd при чтении данных, по сравнению с 'ничегонеделанием' очень мизерное. Боюсь что это так же не имеет особой значимости.
    Ответ написан
    5 комментариев
  • Как сгенерировать случайное имя файла?

    @rPman
    return random_name + '.pdf'  # Добавляем расширение .pdf к случайному имени


    upd.
    gigachat от сбера (бесплатно без санкций)
    как изменить этот код чтобы сгенерировать случайное имя файла с .pdf в конце

    import random
    import os
     
    def generate_random_name():
        characters = 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890'
        random_name = ''
        for i in range(10):
            random_name += random.choice(characters)
        return random_name
     
    def rename_file(file_path):
        new_name = generate_random_name()
        directory = os.path.dirname(file_path)
        new_file_path = os.path.join(directory, new_name)
        os.rename(file_path, new_file_path)
        return new_file_path
     
    file_path = 'C:\\2\out.pdf'
    new_file_path = rename_file(file_path)
    print(f'Файл переименован в {new_file_path}')

    -------------- ответ --------------------------------
    Чтобы изменить код так, чтобы он генерировал случайное имя файла с расширением .pdf в конце, можно использовать следующий код:

    import random
    import os
    
    def generate_random_name():
        characters = 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890'
        random_name = ''
        for i in range(10):
            random_name += random.choice(characters)
        return random_name + '.pdf'
    
    def rename_file(file_path):
        new_name = generate_random_name()
        directory = os.path.dirname(file_path)
        new_file_path = os.path.join(directory, new_name)
        os.rename(file_path, new_file_path)
        return new_file_path
    
    file_path = 'C:\\2\\out.pdf'
    new_file_path = rename_file(file_path)
    print(f'Файл переименован в {new_file_path}')


    В этом коде мы добавили метод generate_random_name(), который возвращает случайное имя файла с расширением .pdf. Затем мы изменили функцию rename_file, чтобы она использовала новое имя файла, сгенерированное методом generate_random_name(), в качестве последнего имени файла.
    Ответ написан
    3 комментария
  • Для надёжности, какой тип внешнего диска лучше выбрать, SSD vs HDD?

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

    usb flash самый ненадежный носитель данных, из-за того что в него вставляют не очень умный контроллер, у нее хуже охлаждение и в ней скорее всего используют дешевую память. У меня есть пример несколько флешек (от дешевых и старых до midend usb3) которые от лежания в ящике стола чуть больше года перестали работать (а одна теперь работает только в usb2 разъемах)

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

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

    Напоминаю, вероятность выхода из строя hdd диска среднего ценового диапазона гуляет вокруг 1.5% за первые 5 лет, и максимум выпадает на первый год работы. Какая-нибудь дешевая 3Тб тошиба будет выходить из строя с вероятностью в 7% (личное наблюдение). Вероятность выхода из строя диска, который постоянно включают и выключают - значительно выше (в разы).

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

    Хранить данные в одной копии - лучший способ их потерять. Настоятельно рекомендую делать резервную копию.
    Если опасаешься аппаратных проблем,
    можно воспользоваться технологией raid, когда надежность диска повышается многократно за счет объединения вместе нескольких дисков (одинакового размера) за счет потери итоговой суммарной емкости равной размеру одногодиска (raid mirror 2 диска размер 1 диска, raid5 - от 3-х дисков размер итоговый 2 диска,при этом если дисков будет 32 то итоговый размер будет все равно на 1 меньше). При использовании raid1/raid5 возможна безопасная потеря 1 любого диска, raid6 - двух. Само собой когда диск умирает, рейд переходит в ненадежное состояние и необходимо заменить сбойный диск, для приложений эта замена проходит незаметно (падает производительность на время замены)

    Софтварный raid в linux позволит делать его из любых устройств, хоть флешек! как бы это не выглядело странно. В windows removable диски кажется нельзя напрямую так использовать, но можно обойти ограничение с помощью виртуальных дисков .vhdx

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