Задать вопрос
  • Как сделать прогресс бар с отрезками?

    ipatiev
    @ipatiev Куратор тега PHP
    Потомок старинного рода Ипатьевых-Колотитьевых
    Задачка, конечно, очень смешная.
    И как всегда - на арифметику

    Шкала у нас нелинейная, первый шаг 100 единиц, последний - 2000.
    Но при этом для вычислений мы берём не позицию шага, а его значение.
    Ну и разумеется получаем то, что получаем.
    250 от 3000 - это никакие не "примерно 50 единиц", а примерно 8 процентов. Вот эти 8 процентов вам и показывает.

    Длина отрезка при разбивке на 5 частей будет 20%
    И вот 8 от 20 как раз и составляет те самые "примерно 50" процентов длины первого отрезка :)

    Выше товарищ правильно пишет про отладку.
    Но отладка в обязательном порядке состоит из двух вещей:
    1. Надо понимать, что делает твой код. В частности, иметь представление, какое значение каждая переменная должна иметь на каждом этапе.
    2. Запускать код, выводя промежуточные результаты, и сравнивая их с ожидаемыми.

    Без п.1 заниматься отладкой бессмысленно.
    Именно поэтому для программиста очень важно понимать, как работает его код. Иначе он просто не сможет его отладить.
    Ответ написан
  • Перенос файлов между серверами без моего участия?

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

    В сессии screen, уже не боясь оставить/отключиться, вместо scp, может, удобнее воспользоваться rsync — он зипует, что может ускорить передачу:
    rsync -avz /var/www/projectOldName  user@newserver.example.com://var/www/projectNewName

    И нажать Ctrl + A, D — чтобы покинуть работающий вирт. терминал и спокойно отключиться от SSH. Позже, когда снова зайдете, командой screen -r снова подключитесь к оставленной сессии.
    Ответ написан
    Комментировать
  • Как правильно установить Qt Creator для всех пользователей компьютера?

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

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

    Часто, все, что нужно сделать, чтобы сделать программу доступной для всех пользователей на компьютере, - это скопировать эти ярлыки в место, к которому могут получить доступ все пользователи, такие как Public Desktop или меню «Пуск». Для этого:

    Найдите ярлык (ы) приложения в учетной записи пользователя, выполняющего установку. Общие места, где создаются иконки:
    Меню Пуск пользователя:
    C:\Users\\AppData\Roaming\Microsoft\Windows\Start Menu\Programs 1
    Рабочий стол пользователя:
    C:\Users\\Desktop 2
    Скопируйте ярлык (ы) в одно или оба из следующих мест:
    Рабочий стол всех пользователей:
    C:\Users\Public\Public Desktop
    Меню Пуск всех пользователей:
    C:\ProgramData\Microsoft\Windows\Start Menu\Programs 3

    1 Также доступно через %APPDATA%\Microsoft\Windows\Start Menu\Programs
    2 Также доступно через %USERPROFILE%\Desktop
    3 Также доступно через %ALLUSERSPROFILE%\Microsoft\Windows\Start Menu\Programs
    Ответ написан
    3 комментария
  • Как помочить ноги в алготрейдинге?

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

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

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

    Rsa97
    @Rsa97
    Для правильного вопроса надо знать половину ответа
    С ходу же:
    try
    {
        if (from > to)
            throw "Incorrect couple 'from - to' for generating random numbers";
    }
    catch (const char *message)
    {
        std::cerr << message << '\n';
        exit(1);
    }
    Зачем нужен такой изврат, если вы ловите исключение сразу же? Чем хуже
    if (from > to)
    {
        std::cerr << message << '\n';
        exit(1);
    }


    bool init(IntList1D &list, int number)
    {
        if (list == nullptr || *list == nullptr)
        {
            if (list == nullptr)
                list = new IntList1D_element *;
            *list = new IntList1D_element(number);
            return true;
        }
        return false;
    }
    Чем меньше глубина вложенности, тем лучше. Ранний выход из функции лучше, чем выход в самом конце. Сравните
    bool init(IntList1D &list, int number)
    {
        if (is_initialized(list))
        {
            return false;  
        }
        if (list == nullptr)
        {
            list = new IntList1D_element *;
        }
        *list = new IntList1D_element(number);
        return true;
    }


    bool is_inited(const IntList1D list)
    {
        if (list == nullptr || *list == nullptr)
            return false;
        else
            return true;
    }
    Здесь и название функции кривоватое и чересчур усложнена сама функция.
    bool is_initialized(const IntList1D list)
    {
        return (list != nullptr && *list != nullptr)
    }

    Не соблюдаете единый стайлгайд. В некоторых местах одиночные строки после if взяты в фигурные скобки, в некоторых нет. Выберите один какой-либо стиль и придерживайтесь его. (Hint: добавлять строки гораздо проще, если всегда используются фигурные скобки).
    Ответ написан
    7 комментариев
  • Самостоятельное согласование ядра и дистрибутива Linux?

    SignFinder
    @SignFinder
    Wintel\Unix Engineer\DevOps
    В 18.04 есть 5.x ветка ядра
    ставится командой
    sudo apt-get install --install-recommends linux-generic-hwe-18.04
    Ответ написан
    Комментировать
  • Как устранить ошибку с оплатой в Android приложении в Play Market?

    xez
    @xez Куратор тега Java
    TL Junior Roo
    Но ведь я использую 3 версию, почему вылетает ошибка?

    Вы используете стороннюю библиотеку, которая называется "android-inapp-billing-v3", а ошибка у вас о версии "Play платежей".
    В android-inapp-billing-v3/library/build.gradle :
    dependencies {
        androidTestImplementation 'com.android.support.test:runner:1.0.2'
        androidTestImplementation 'com.android.support.test:rules:1.0.2'
        implementation 'com.android.support:support-annotations:28.0.0'
        implementation 'com.android.billingclient:billing:2.0.1'  // Видимо об этом идет речь
    }
    Ответ написан
    1 комментарий
  • Что делать с гарантийным HDD, если появились сомнения в его надёжности? Как правильно покупать HDD?

    Zettabyte
    @Zettabyte
    Проф. восстановление данных ▪ Вопрос? См. профиль
    Что делать с гарантийным HDD, если появились сомнения в его надёжности?

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

    в SMART нашлись ещё и следы 13 ударов

    Ноутбучные диски весьма чувствительны к физическому воздействию. Ставили ноут на тумбочку или табуретку, задели её ногой - в СМАРТ это отразится. Ударили кулаком по столу, на котором стоял работающий ноутбук - то же самое, и т.п.
    При хорошо прокачанном параметре "Удача" добить можно и долбящим рядом на столе сабвуфером.
    Кроме того, неясно как это отразится на возможность обмена по гарантии - могут и придраться, что вы по диску стучали.

    Я полагал, что в идеале у нового, только что с фабрики, HDD в тесте должна заполняться только верхняя строка теста

    Такие времена ушли примерно в районе ухода с рынка Fujitsu, может на пару лет позже. Тогда начало активно применяться адаптивное форматирование, позволившее использовать, скажем так, "неидеальные" пластины благодаря индивидуальному подходу к ним.
    Сейчас вы легко можете купить новый 2 ТБ диск, который на самом деле отбраковка 3 ТБ, 3 ТБ, который по факту обрезок 4 ТБ, не прошедшего тесты, и т.п.

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

    Выйти из строя может даже более новый диск - нам приносили на восстановление данных купленные и три и две недели назад.

    Возможно ли, что мне продали диск б/у? Вообще, возможна ли имитация фабричной упаковки

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

    Как правильно покупать HDD?

    Когда только принесли домой диск и он новый, т.е. не содержит никакой информации, возьмите ту же викторию, либо R.tester (в нём можно детализацию выкрутить до максимума): https://rlab.ru/tools/rtester.html
    И в такой программе запустите сначала тест записи по всей поляне (уничтожает данные), а после него - такой же тест чтения (именно read, не verify) - это будет лучшей проверкой жёсткого диска, которую можно сделать самостоятельно в домашних условиях.
    Ответ написан
    1 комментарий
  • Что делать с гарантийным HDD, если появились сомнения в его надёжности? Как правильно покупать HDD?

    @Drno
    Тоесть Вы удивляетесь тесту диска, на котором сейчас у Вас запущена винда + Вы фоном еще что то делаете?)
    Еще и используя наверняка файл подкачки на диске...

    Если нужен нормальный тест - запускайте с загрузочного диска)
    Ответ написан
    2 комментария
  • Под каким пользователем лучше устанавливать PostgreSQL?

    rozhnev
    @rozhnev
    Fullstack programmer, DBA, медленно, дорого
    При установке PostgreSQL в Linux автоматически будет создан пользователь postgres, который станет владельцем файлов кластера БД.
    Ответ написан
    6 комментариев
  • Ценятся ли программисты-самоучки в странах Евросоюза?

    sergey-gornostaev
    @sergey-gornostaev
    Седой и строгий
    Ценятся профессионалы, всем плевать, как этот профессионализм был получен. Но надо понимать, во-первых, что желающих получить blue card много, а мест мало. Поэтому вам придётся конкурировать с целой кучей профессионалов и при прочих равных шансов больше будет у обладателей дополнительной бумажки. Во-вторых, интерес западных работодателей начинается на том уровне профессионализма, который у очень выдающихся программистов достигается лет через пять работы, а у остальных через десять. То есть ваш год самообразования - вообще ничто.

    P.S. Вопрос на ресурсе задавался уже очень много раз. Для программиста критически важно уметь искать информацию самостоятельно.
    Ответ написан
    8 комментариев
  • Стоит ли мигрировать в cloud ля личных целей?

    @Drno
    А чем отличается по вашему облако яндекса от проксмокс?
    У вас проблема с чем - с проксмокс или с контейнерами внутри?
    Контейнеры достаточно просто бэкапить собственно...
    Ответ написан
    1 комментарий
  • Почему приходит пустое обязательное поле из формы?

    ThunderCat
    @ThunderCat Куратор тега Веб-разработка
    {PHP, MySql, HTML, JS, CSS} developer
    Нельзя надеяться на проверки на стороне клиента, во первых конечно же перед отправкой данных надо попытаться скриптом проверить что все поля заполнены (это ничего не гарантирует, но исключает случайную отправку формы или простую подмену данных), а во вторых на сервере обязательно проверить наличие данных нужного формата, и если не соответствуют - ничего никуда не отправлять, а на фронт отправить ошибку типа "не заполнены обязательные поля".

    Главное правило веб разработчика - по умолчанию все что приходит с клиента - хрень, мура и попытка взлома, до тех пор пока не доказано обратное.
    Ответ написан
    5 комментариев
  • Как при помощи C# менять ip на пк?

    @rPman
    вызывать штатную утилиту netsh, это будет наиболее простой способ решить почти любую задачу связанную с сетью, которую в принципе можно решить, даже те которые не решаемы в официальном gui
    Ответ написан
    3 комментария
  • Как исправить парсер?

    SoreMix
    @SoreMix Куратор тега Python
    yellow
    Без входных данных непонятно, но я так понимаю открывается iframe на весь экран. Перед тем, как взаимодействовать с ним, нужно переключится на него, т.к. у iframe свой HTML.

    # сначала находим его
    iframe = driver.find_element_by_class_name('flocktory-widget')
    # потом переключаемся на него
    driver.switch_to.frame(iframe)
    # ищем кнопку выключения, точно так же через driver.find_element_*, кликаем на нее.
    # после того как закрыли iframe, выходим в обычное окно
    driver.switch_to.default_content()


    Либо удаляем через JS:
    driver.execute_script('document.getElementsByClassName("flocktory-widget")[0].remove()')
    Ответ написан
    Комментировать
  • Как исправить парсер?

    ScriptKiddo
    @ScriptKiddo
    Последовательность действий:
    1) Перед кликом проверять наличие iframe виджета
    2) Если есть - переключиться на iframe с виджетом
    3) Нажать в нем кнопку закрытия
    4) Восстановить контекст iframe
    5) Продолжить работу

    Переключиться на iframe:

    # Xpath надо написать самому
    iframe = driver.find_element_by_xpath("//iframe")
    driver.switch_to.frame(iframe)


    Восстановить контекст iframe

    driver.switch_to.default_content()

    Либо можно воспользоваться requests

    import requests
    
    params = {
        'name': 'Иванов Иван Иванович',
        'numberOrInn': '1111111111',
    }
    
    response = requests.get('https://www.rgs.ru/api/agents/checkAgent', params=params)
    
    # {"Status":"NotFound","ErrorCorrelationIds":[],"ErrorCode":null}
    print(response.text)
    Ответ написан
    Комментировать
  • Как обезопасить себя от неадекватных заказчиков?

    DevMan
    @DevMan
    без толкового ТЗ, результат - ХЗ.
    это аксиома, даже не правило.

    способ тут только один: не работать с мудаками.
    а вот "определение мудаков" - очень ценный скилл. и нарабатывается он только на собственных шишках. чужие тут не сильно помогут.
    Ответ написан
    8 комментариев
  • Можно ли восстановить данные с SSD?

    Zettabyte
    @Zettabyte
    Проф. восстановление данных ▪ Вопрос? См. профиль
    Можно ли восстановить данные с SSD?

    Да, но не самостоятельно.
    Как SATAFIRM 11 отображаются SSD построенные на основе контроллера Phison PS311. Это происходит из-за того, что у диска повреждена микропрограмма.

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

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

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

    GoodRam CX400

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

    - P.S. -
    Не сообразил добавить это сразу, но ваш ССД - уже третий на Тостере с такой проблемой за последние 10 дней :-/
    Ответ написан
    5 комментариев
  • Падает скорость цп с 2,59 до 0, 75 после 1 часа игры в +/- средние игры (от доты до ведьмака). В чём проблема?

    paran0id
    @paran0id
    Умный, но ленивый
    Смотрим спецификации: https://ark.intel.com/content/www/ru/ru/ark/produc...

    TCASE
    Критическая температура - это максимальная температура, допустимая в интегрированном теплораспределителе (IHS) процессора.

    TCASE 67.9°C

    Он у вас кипит до троттлинга.
    Ответ написан
    5 комментариев
  • Как сделать, чтобы бот не обращал внимания на пунктуацию?

    Zoominger
    @Zoominger Куратор тега Python
    System Integrator
    replace('все знаки препинания', '')
    Ответ написан
    2 комментария