Задать вопрос
  • Проблема в процессоре?

    @rPman
    Скрин синего экрана то покажи. Код скажет все необходимое.

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

    @rPman
    Согласен с ответом DollyPapper, но формально возможна ситуация когда так можно делать

    К примеру, если научить объект Position сообщать о действиях над собой своим овнерам, создав абстрактный класс CanHavePosition с виртуальным методом doMoving который должен быть имплементирован в классе Character (который наследуешь от CanHavePosition) и вызываться на каждое движение Position::to (способы оформления могут другими быть, например наоборот, в конструкторе Character будет вызываться метод init у Position с колбеком, который будет вызываться внутри Position::to) то такое оформление как у вас будет оправдано.

    Само собой, нет необходимости так делать всегда, и нет нужды следовать строго прямо гайдлайнам, хотя они и 'написаны кровью и ошметками говнокода', всегда можно найти ситуацию, когда не нужны over engineering.

    В конечном счете весь синтаксический сахар и возможности языка созданы чтобы облегчить работу разработчикам и уменьшить шансы им допустить ошибку в коде, и всегда можно найти предел, когда не нужно делать работу ради работы, а делать все ради результата.
    Ответ написан
    Комментировать
  • Как определить или вернуть цвет ячейки в Google Таблицы?

    @rPman
    функция BGHEX(ячейка) вернет строку #XXXXXX
    Дико извиняюсь, не проверил, нужно создать свою функцию с помощью appscript, вот тут пример именно для данной задачи
    Ответ написан
    2 комментария
  • Не открывается файл Питона через Notepad++, что делать?

    @rPman
    зачем в имени файла добавили $( и ) ? он не находит каталога с таким именем '$(C:'

    убери их

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

    @rPman
    По факту любой linux/freebsd/windows позволяют на фаерволе настраивать перенаправление портов программно. Простейшим скриптом периодически сканируешь прокси и генерируешь команды к iptables на смену таблиц перенаправлений.

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

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

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

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

    Обычно там файловая система ext4, так что инструментов и гайдов тьма. Понятно что и шансы не 100%.

    p.s. ты включал резервное копирование файлов в облако гугла? когда телефон настраивают в первый раз, эти опции включают не задумываясь подавляющее большинство пользователей. Т.е. есть шанс восстановить данные (если это сами приложения не запрещают, например google authentiticator не бакапит базу 'паролей' в сеть)
    Ответ написан
    Комментировать
  • Как получать тексты "Балабобы" через Python?

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

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

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

    p.s. я очень любил старый opera с движком presto за подобное поведение, при нажатии назад браузер игнорирует любые настройки кеша и гарантированно не лезет на сервер, показывая содержимое максимально быстро
    Ответ написан
  • Какая ОС, по вашему мнению подойдёт лучше?

    @rPman
    неверные предрассудки

    Выбирать само собой linux, тут даже не обсуждается.

    Если у тебя свой специалист по настройке (или ты сам таковым являешься) то ОС нужно выбирать по тому в чем лучше разбираешься.

    Если говорить про то, какую именно то выбор должен быть не системы второго уровня поддержки, а первого, на основе чего создаются эти дистрибутивы, т.е. не ubuntu а debian.

    Фиксация релизной версии есть во многих ОС, даже у gentoo можно 'стабильную' ветку выбрать (на правах шутки ибо релиз в gentoo это как тестовая ветка в debian или даже новее).
    Ответ написан
    3 комментария
  • Какие есть бюджетные ip видеосерверы для оцифровки аналогового сигнала в цифровой?

    @rPman
    Систем видеонаблюдения?

    Я сильно не копался, но цены на этом рынке какие то нездоровые,...

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

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

    Стоимость самодельного сервера по работе с ip-камерами на порядок дешевле стоимости централизованных энкодеров. Подбор камер - отдельный разговор, ключевое слово чтобы они могли отдавать сырой видеопоток без проприетарного приложения (дешевые потребительские камеры этим грешат, завязывая решение на платный видеосервис от производителя).
    Ответ написан
    2 комментария
  • Падение производительности диска старых ВМ в KVM. TRIM или что?

    @rPman
    Ваш dd на хосте проверит только линейное чтение, особенно актуально для hdd дисков, и с ним у вас похоже все ок.

    Возможная причина падения скорости - фрагментация qcow2, пересоздаей (если есть снапшоты, то надо думать можно ли так) контейнер примерно так
    qemu-img convert -p -O qcow2 source.img destination.img


    Еще есть фрагментация дисков внутри самой виртуалки, плюс у ntfs mfat фрагментируется (если большими объемами создаются файлы, правятся и удаляются) плюс растет без уменьшения, размазанный по всему диску, это вообще решить можно только пофайловым копированием на новый диск.
    Ответ написан
    Комментировать
  • Как открыть директорию в проводнике из браузера?

    @rPman
    Это можно сделать плагином к браузеру (наименьшие шевеления у клиента - 1 клик на согласие установки).
    Т.е. пишешь расширение, которое будет добавлять api по открытию проводника, желательно такие вещи делать с контролем, например ограничить вебсайт или потребовать apikey и т.п.

    Готовых расширений полно (гуглить app launcher) можно использовать как пример кода.
    Ответ написан
  • Как взломать MD5 hash без соли?

    @rPman
    Один пароль md5 проще искать простым перебором. Так как это твой пароль, то список используемых символов скорее всего известен, или даже можно использовать заранее сгенернированные пароли из базы паролей. Реализаций для видеокарт именно для md5 открытых полно, что даже для одной старой видеокарты и 8-символьного пароля займет несколько дней.

    p.s. Радужные таблицы, имеют смысл если нужно взламывать много паролей, там же название программы
    При этом вероятность нахождения пароля с помощью данных таблиц составит 0,7542 (75,42 %), сами таблицы займут 596 ГиБ, генерация их на компьютере уровня Пентиум-3 1 ГГц займёт 3 года, а поиск 1 пароля по готовым таблицам — не более 22 минут.

    Однако процесс генерации таблиц возможно распараллелить, например, расчёт одной таблицы с вышеприведёнными параметрами занимает примерно 33 часа. В таком случае, если в нашем распоряжении есть 100 компьютеров, все таблицы можно сгенерировать через 11 суток.
    Ответ написан
    Комментировать
  • Почему низкая глубина цвета у RDP?

    @rPman
    Какой то экзотический случай.

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

    Не поленись, по подключайся к этой проблемной машине не из windows а из linux (livecd в виртуалке например) с помощью remina там есть возможность поменять версию протокола, по перебирай, возможно твоя машина вынуждает подключиться с какой то конкретной и это глючит.

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

    @rPman
    ты на каждую запись из f_list (отфильльтрованную по условию в where) выводишь ВСЕ users, вот они и умножаются
    sql это про умножение таблиц друг на друга, когда они указаны во from

    необходимо задать условие как связаны записи из f_list с users, обычно это foreign key индексы (или у тебя там еще табличка промежуточная)

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

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

    Иначе реализуй на основе сокетов, тогда будет пофиг на какой машине в кластере работает процесс
    Ответ написан
  • Как генерировать ошибки для ключевого слова?

    @rPman
    библиотеки такой нет, делать самому, обычным перебором.
    - разрывы: цикл по количеству букв в слове - 1: вставить пробел на i-ое место
    - повторить если нужно по два, три.. более разрывов в слове, пропуская более одного пробела рядом
    - пропуски: то же самое только вместо вставки пробела удаляем символ
    - удвоения символов: то же самое только вместо подстановки пробела, подставляем текущий символ
    - опечатки и подстановки
    в плохом варианте, перебором для каждого допустимого символа делаем то же самое что для пробела
    в хорошем варианте, каждому символу задаем список символов, на которые он может быть заменен (соседние на клавиатуре)

    в результате на каждое слово будет массив его модификаций.

    p.s. не понимаю как все это поможет решению поставленной задачи?
    Задача - реализовать неточный поиск с использованием алгоритма Ливенштейна
    это алгоритм вполне конкретный и очень простой, в нем нет никаких генераций подстановок и опечаток
    Ответ написан
  • Как сделать диск С компьютера системным диском в Virtual Box?

    @rPman
    virtualbox это НОВЫЙ компьютер, соответственно если что то нужно получить таким же как на оригинальной машине, нужно поступать точно так же как поступил бы если бы настраивал вторую машину.

    Как вариант, создать виртуальную машину как клон оригинальной системы (сделать копию диска, загрузившись в livecd), само собой документы, чтобы не делать две копии, открывать 'по сети', которую можно настроить между виртуальной машиной и оригинальной (по умолчанию там nat лучше сделать сетевой мост bridge с сетевой картой машины, если у тебя есть локальная сеть а интернет не подключен напрямую к компу)
    Ответ написан
    1 комментарий
  • Как проверять архивные бэкапы?

    @rPman
    Известная проблема, написать программу, которая будет проверять корректность бакапа, но кто проверит проверяющего? еще одну программу писать?

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

    Поэтому в конечном счете нужно это делать вручную, не доверяя своим ранним настройкам.

    p.s. по теме, к примеру если используешь популярный архиватор winrar то у него есть опция проверки архива после архивации, а так любые утлиты сравнения файлов или подсчета хеша, та же md5sum (linux пакет утилит можно получить установив cygwin)
    Ответ написан
    Комментировать
  • Почему Openvpn не открывает localhost?

    @rPman
    Причем тут openvpn и localhost?
    Тебе нужно подключившсь к серверу по openvpn подключаться к localhost? во первых твой проект должен слушать не localhost а 0.0.0.0 или хотя бы ip адрес в той сети, которую поднимает openvpn и кстати, запуск проекта который слушает порты должен происходить после запуска openvpn так как 0.0.0.0 биндит только адреса, доступные на этот момент

    p.s. минутка бреда - а ты настроил nat на localhost чтобы достучаться до серверного?
    Ответ написан