Задать вопрос
  • На windows float выводится с запятой, а на linux с точкой. Как исправить?

    @rPman
    Удивительно, что нужно сделать с windows чтобы в php номера форматировались под настройки локали (в русской там запятая стоит, но я точно помню даже со времен winxp в официальных сборках php там возвращались точки, собственно я сейчас порыл коментарии под setlocale и там твоя проблема подтверждается)
    Наверное setlocale похоже не отрабатывает корректно, покажи вывод после setlocale - localeconv, точнее что там в decimal_point будет

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

    Либо использовать number_format чтобы фиксировать свой десятичный символ вне зависимости от локалей
    Ответ написан
  • Linux Ubuntu установлена на ноутбук, я подключаю к нему монитор. Как исправить фризы в системе при попытке перейти в режим "один дисплей"?

    @rPman
    nvidia дискретная, корректная работа в linux в таких случаях возможна только с проприетарными драйверами, советую попробовать как legacy, идущие в комплекте с операционной системой (настройки - программы и обновления - драйверы) так и последние с офф сайта nvidia (в этом случае советую следить за обновлениями ядра и вручную переустанавливать или даже брать новую версию)

    p.s. железо относительно новое, советую поставить 22.04 LTS, легко не будет, не весь софт еще обновил поддержку но это можно будет решить виртуализацией/контейнеризацией
    Ответ написан
    1 комментарий
  • Как удалить элементы векторов по одинаковому индексу С++?

    @rPman
    может в некоторых крайних случаях работать чуть медленее
    не могу представить ситуацию когда один индекс и список объектов будет медленнее нескольких для каждого поля.
    подскажи в каких
    Ответ написан
  • Как сделать локальную базу данных?

    @rPman
    локальная sql база данных - это sqlite

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

    @rPman
    Универсальный способ удаления программ в linux, установленных с помощью пакетного менеджера
    1. определить как называется пакет (его настоящее название а не то что подменяет отвратительный Центр Приложений)
    можно посмотреть в самом центре приложений снизу в описании будет написано что то типа
    GHex is a hex editor for the GNOME desktop.

    можно забить в поиск synaptic или консольной apt свое название gnome hex editor и в полученном списке ищем что то похожее
    p.s.
    это одна из причин за что Центр приложений ненавидят
    помимо страшных тормозов на топовых машинах
    у них какой то свой список приложений и рядовому пользователю не совсем понятно что есть что, даже описания не совпадают иногда с тем что в пакете, вто что покажет apt show ghex
    Description: GNOME Hex editor for files
    The GHex program can view and edit files in two ways, hex or ascii. Good
    for editing saved game files.
    а вот что центр приложений
    GHex is a hex editor for the GNOME desktop.

    GHex can load raw data from binary files and display them for editing in the traditional hex editor view. The display is split in two columns, with hexadecimal values in one column and the ASCII representation in the other. A useful tool for working with raw data.
    кстати они еще умудрились мультиязыковую поддержку убить, в пакетах есть русскоязычное название а в центре приложений только английское


    либо смотрим свойства ярлыка запуска, там будет команда, что то типа
    ghex %F
    это имя приложения не обязательно будет совпадать с именем пакета, поэтому для гарантии можно поискать среди установленных
    определяем путь к запускаемому приложению если в ярлыке не указан
    # whereis ghex
    ghex: /usr/bin/ghex /usr/share/man/man1/ghex.1.gz
    затем определяем имя пакета по имени файла (не обязательно запускаемого)
    # dpkg -S /usr/bin/ghex
    ghex: /usr/bin/ghex

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

    2. узнав имя пакета его можно удалить либо synaptic либо в консоли
    apt remove ghex
    или
    apt purge ghex

    вторая команда не только удалит пакет но и файлы настроек которые пользователь или программа за время работы понасоздавала

    если что то идет не так, то нужно смотреть сообщения об ошибках
    p.p.s. есть мощный консольный GUI для пакетного менеджера - aptitude, умеет много проблем разруливать
    Ответ написан
    Комментировать
  • Какую систему управления БД выбрать?

    @rPman
    Все действия в игре записываются в БД
    в подавляющем большинстве случаев новички вот тут срезаются
    так ли нужно ВСЕ действия делать доступными на веб сервере? прямо изменения координат или угла его зрения (которой к примеру мышкой игрок управляет)?
    p.s. если не понял сарказма - нет, не надо

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

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

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

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

    @rPman
    использовать готовую функцию будет некрасиво, в правильной 'школе' за такой даже безупречный ответ должны ставить оценку 'хорошо'

    для 'отлично' я предлагаю написать функцию, которая будет заметно эффективнее и вместо N умножений будет делать примерно log(N)
    для этого попытаться представить возведение в степень не как N раз X*X*...*X а как (N/2 раз X*X*..*X)^2, а чтобы это делать в цикле, поступить так, если N четное, то делим его на два, вызываем рекурсивно свою же функцию и результат умнажаем на самого себя, иначе берем N-1 и делаем тоже самое но результат дополнительно умножаем на X

    p.s. полгаю если сумеешь заменить рекурсию на цикл, будет однозначно плюсищем
    Ответ написан
    Комментировать
  • PDO PHP проверить выполнение INSERT?

    @rPman
    используй sql запрос INSERT IGNORE и после запроса проверяй количество вставленных записей с помощью rowCount
    Ответ написан
    1 комментарий
  • PHP cURL не работает с https прокси. Прокси точно работает. Что я делаю не так?

    @rPman
    твоя прокси умеет работать только с http, а https сайты с ней не работают (запрос подвисает в бесконечный таймаут)
    CURLOPT_SSL_VERIFYPEER, false
    вот такие выкрутасы на анонимных проксях могут прокатить, так как прокси атакуют Man-in-the-middle, подменяя на невалидный сертификат, т.е. у тебя утекут либо логины пароли либо куки либо еще какая то критичная информация, а еще прокси могут подменять трафик, в лайтовом виде - подмена рекламного идентификатора и просто реклама, а в хардкоре... любые финансовые сервисы станут уязвимы
    Ответ написан
    1 комментарий
  • Возможно ли автоматически определить язык с помощью Speech Recognition (Python)?

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

    p.s. у гугла есть android (физическое железо, эмулятор кажется не подойдет) проприетарные библиотеки и наборы данных для распознавания, позволяющие делать это оффлайн для кучи языков, но на сколько я знаю лицензию на их использования они не раздают, но я слышал что народ как то приспосабливали эти библиотеки самостоятельно... процесс не простой, с каждым обновлением формат их использования будет меняться. Так же я слышал о попытках использования готового гугловского приложения google translate на android, с настройками на оффлайн распознавание (симулируя поведение человека и считывая содержимое экрана с помощью приложений на основе технологий для людей с ограниченными возможностями), можно что то сделать... наверняка там будет тьма подводных камней, так как гугл будет с этим бороться

    p.p.s. до 4-ой версии android доступ к распознаванию речи как я понимаю был официальный
    Ответ написан
    Комментировать
  • Как достать базу данных без доступы к Mysql /phpmyadmin?

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

    база данных по умолчанию лежит /var/lib/mysql полностью заменяешь на новой установке (при выключенной машине или службе) на ту что скопировал и все будет работать

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

    p.s. mysql позволяет работать с базой без пароля при наличии рута
    нужно остановить службу и запустить ее в консоли командой
    mysqld_safe --skip-grant-tables &
    Ответ написан
    2 комментария
  • Почему колонки при подключении к телефону на басах затихают?

    @rPman
    грубо говоря - нужен усилитель, смартфон тупо не способен выдать нужную мощность, он ожидает хилые наушники
    Ответ написан
    Комментировать
  • Как включить VT без BIOS?

    @rPman
    очень интересно, что такое произошло что 'раньше было а потом перестало'!

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

    p.s. о чем думают вопрошающие, которые практически в каждом подобном вопросе не выдают важную для помощи им информацию - что за модель материнки и процессора.
    практически во всех ситуациях, чем больше информации ты выдашь тем больше шансов что тебе помогут, да ты можешь заранее не знать что важно а что нет, тем более нужно больше информации.
    Ответ написан
    3 комментария
  • Как блокировщик рекламы понимает что это реклама?

    @rPman
    По таблицам доменов и css селекторов рекламы, которые публичны (каждый блокировщик таскает с собой такие, некоторые общие)
    например списки ublock origin и https://easylist.to/ и https://gitlab.com/curben/urlhaus-filter#malicious... и т,п.
    Ответ написан
    Комментировать
  • Не открываются консольные программы, как решить?

    @rPman
    Однозначно, что то ты сделал лишнее, инструкции на видео вполне исчерпывающие.

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

    p.s. kali linux внутри windows это хардкор, зачем начинать обучение с вырезанием 'глад через задницу'?
    Ответ написан
    Комментировать
  • Как рассчитать комиссию monero rpc?

    @rPman
    как я понимаю нельзя, из-за особенностей анонимных транзакций
    Ответ написан
    4 комментария
  • Как купить MetaMask токен?

    @rPman
    это типичный скам токен
    гуглится такой токен в сети BNB на pancakeswap ликвидность в 17 баксов (буквально)

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

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

    Истинно верующие криптаны говорят
    - только биткоин истинный бог, алилуйя
    Ответ написан
    4 комментария
  • Как в Linux создать 1 том из двух дисков?

    @rPman
    backup format restore, используя livecd или консоль восстановления (лучше удобный livecd)

    у тебя на выбор lvm, mdadm (рейд 0 - stripe), btrfs/zfs
    делать резервную копию временно на новый диск, затем выбираешь любой инструмент (в зависимости от выбора будут требования по разбивке дисков), форматируешь раздел, восстанавливаешь и расширяешь диск.

    самое простое использовать btrfs, это файловая система поддерживает онлайн из коробки и добавление/удаление дисков и расширение разделов, в т.ч. raid всех уровней, сжатие на лету, дедупликация (инструменты кстати пока еще не из коробки), бесплатные снапшоты и прочее прочее, поддерживается grub (т.е. не нужно делать /boot раздел) и т.п. (к сожалению efi раздел для secureboot или biosboot для legacy на gpt все еще нужны)

    т.е. длелаешь копию на втором диске, затем форматируешь раздел на старом как btrfs, копируешь обратно, добавляешь к первому диску второй раздел команда
    btrfs device add /dev/sda1 /dev/sdb1
    затем обновляешь grub
    grub-install /dev/sda --root-directory=/path/to/mounted/root

    p.s. кстати в linux файловые системы можно разворачивать прямо на диске, без создания разделов (но тогда нужен /boot где то разворачивать)
    Ответ написан
    Комментировать
  • Как установить Microsoft SQL Server на неподдерживаемые дистрибутивы?

    @rPman
    универсально - контейнирзация (например докер) или даже виртуализация
    Ответ написан
    Комментировать
  • Какой open source проект написан на труъ Си++?

    @rPman
    можно какой-нибудь ярко выраженный пример кода, на который жалуются коллеги?

    могу предположить
    вместе с c++ обычно идут библиотеки std, даже не так, можно printf а можно cout, можно со строками работать, ковыряясь с байтами самостоятельно, strccpy, while(*buf) и т.п. а можно пользоваться std:string, кучей готовых реализаций (и сильно неэффективного кода но с меньшими шансами на ошибки)
    Ответ написан
    Комментировать