• Как выставить приоритет подключения(трафика) для отдельного девайса?

    @alexalexes
    Никак, надежность и скорость соединения будет всегда зависеть от уровня сигнала в первую очередь, во вторую очередь от занятости канала связи.
    Необходимо кинуть кабель от роутера до ноута, чтобы не зависеть от состояния эфира.
    Либо все равно кинуть кабель от существующего роутера до комнаты с ноутом и поставить туда еще один роутер - к нему подключаться как к отдельной точке доступа.
    Либо заменить существующий роутер на два новых, которые могут в mesh-сети - чтобы можно было расширить зону покрытия одной сети, а также иметь каналы на 5 ГГц, чтобы потребители трафика не задыхалить от нехватки полосы пропускания (потребители также должны уметь в 5 ГГц, и нужно иметь ввиду, что 5ГГц не такая пробивная, как 2.4ГГц).
    Ответ написан
    Комментировать
  • В чём может быть проблема с интернетом?

    @alexalexes
    Нужно настроить PPPoE подключение на компьютере для прямого кабельного соединения с провайдером.
    Когда нет проблем - подключаться к провайдеру через роутер.
    Когда проблема появится - перейти на прямое кабельное соединение (убрать из подозреваемых роутер).
    Прогнать различные тесты:
    1. Speedtest на разные серверы, а не только на тот, который выбран автоматически.
    2. Покачать торрентом популярную раздачу.
    3. Скачать большой файл. Можно, например, скачать iso образ Ubuntu на пару гигов.
    После этого сделать вывод, какой вид трафика ограничивается (и не виноват ли роутер), и обращаться с этой проблемой к провайдеру.
    Ответ написан
    Комментировать
  • Как вывести по 5 максимальных значений в строках из каждой категории?

    @alexalexes
    select A.*
           from
           (
           select B.*,
                  row_number() over (partition by B.nomin_id order by B.countUser desc) rwnm -- партишином задаем область счета строк, а сортировкой - порядок счета
                  from
                  (
                  SELECT count(user_id) countUser, nomin_id,  film_id
                  FROM votes
                  GROUP BY  film_id , nomin_id
                  ) B
           ) A
    where rwnm <= 5 -- берем по этому количеству от каждого локального счета

    См. оконную функцию row_number для MySQL 8+ версия, либо MariaDB. Но учтите, что MySQL 5 не поддерживает оконки, в ней свои костыли есть в виде использования переменных с @.

    Но всего в таблице 25 000 строк запрос выполняется 30 секунд, а потом крах.

    Индексы на каждый из атрибутов user_id, nomin_id, film_id нужно создать, тогда будет пару сотен миллисекунд выполняться.
    Ответ написан
  • Есть ли разница в высшем образовании?

    @alexalexes
    Если в названии организации, куда планируете поступить на работу, вы не видите слов государственное/бюджетное/казенное, то наличие профильного образования не будут рассматривать как обязательный пункт. Трясти вас будут за наличие опыта в определенной области IT и базового понимания, а чем вы, собственно, занимаетесь. От этого будет напряжно даже человеку с профильным дипломом. Даже если вы закончите вуз (пишется маленькими буквами), то вы все равно будете штудировать технологии, указанные в пунктах вакансий, самостоятельно, чтобы чувствовать себя уверенно на собеседовании.
    Ответ написан
    3 комментария
  • Как в Windows подать звук на несколько устройств вывода?

    @alexalexes
    Есть две пары 3,5мм колонок и 1 блютузовская.

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

    @alexalexes
    1;"Электрики";"Начальник объекта";"4 группа";"Иваныч";"АА1";1;"Дата рождения";1;"13.09.1986"
    1;"Электрики";"Начальник объекта";"4 группа";"Иваныч";"АА1";2;"Пропуск";2;"123-456789"

    Вот это перерабатывайте в подходящее представление в том процедурном языке, откуда выполняли запрос.
    То, что вы пытаетесь сделать - это не задача для SQL.
    Ответ написан
    2 комментария
  • Можно ли составить mysql запрос с выборкой не определенного множества полей?

    @alexalexes
    Можете, но свойства будут не в пределах строки (горизонтально), а в пределах колонки (вертикально).
    С помощью SQL вы можете, не забивая микроскопом гвозди, извлечь вот такой результат:
    Ручка; Цвет; Синий;
    Ручка; Цена; 10
    Нож; Материал; Дерево;
    Нож; Цена; 200;
    Нож; Рукоятка; Дерево; 
    Нож; Фото; Есть;

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

    @alexalexes
    если в Mysql какие-то строки смогут загрузиться, а какие-то - нет,

    Не бывает тут вариативности, даже случайной.
    Можете внести одну или несколько строк запросом insert (или несколькими insert-ами по одной строке, а может еще где-то update-ом или delete-ом пробежитесь). Но фиксация этих действий будет происходить, если после запросов на вставку/изменение/удаление явно будет отправлена команда commit или rollback (а может и не явно, см. что такое autocommit).
    До поступления этих транзакционных команд ваши изменения будут копиться во временном буфере СУБД и будет блокировать объекты СУБД до того момента, пока не поступит транзакционная команда (или не наступит ситуация для autocommit). Для других пользователей СУБД изменения заблокированных объектов будет недоступно, только чтение той версии объекта, которая была до наложения блокировки (не всегда таков принцип, см. что такое уровни изоляции транзакций).
    Ответ написан
    Комментировать
  • Как упростить код суммы строк?

    @alexalexes
    4*1-2
    Точно 1 а не i ?
    Имейте привычку трассировать тело цикла, раскладывая непонятное выражение на составные части (а лучше сразу писать так, чтобы анализировать проще было человекам) и писать эти части куда-нибудь в консоль/лог-файл и т.д. (не знаю, чем пользуются в VB для "быстро выгрузить что-то и посмотреть отладочные данные").
    _A = WorksheetFunction.sum(range(Cells((4*1-2),3), Cells((4*i+1),3)))
    _B = Cells((4*1-2),3)
    _C = Cells((4*i+1),3)
    _D = 4*1-2
    _E = 4*i+1
    Ответ написан
  • Как получить более глубокие знания?

    @alexalexes
    "Найди компанию с крутой командой"

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

    @alexalexes
    Помещаете свой массив с 4000 элементами в таблицу базы данных.
    Добавляете еще несколько атрибутов для записи таблицы:
    1. статус обработки парсинга, значения: 1 - добавлен в очередь на обработку, 2 - в обработке, 3 - обработка завершена.
    2. Дата и время изменения статуса обработки.
    Теперь ваш скрипт должен взять запросом из таблицы базы одну запись (один сайт) со статусом 1 (или со статусами 2 или 3, с разницей времени больше периода повторной обработки парсинга) и перевести в статус 2 и начать обработку. По окончании обработки выставить статус 3. При смене статуса обновлять его время изменения.
    Анализировать статус и переводить его в статус 2 нужно одной транзакцией, а в статус 3 - другой транзакцией.
    Если время выполнения персинга с момента старта скрипта небольшое (определяете предельное время работы одного потока и с ним сравниваете), то можно взять следующую запись в работу.

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

    @alexalexes
    var currentExtraStackFrame = null; // это нужно, чтобы не словить предупреждение в консоль undefined variable/property при обращении к свойству currentExtraStackFrame
    // этим методом вы задаете какое-то значение для свойства currentExtraStackFrame, если его нужно привести в какое-то не null значение (или вернуть в null - значение по умолчанию).
    function setExtraStackFrame(stack)
    {
      // if() тут может была лексема if, можно просто ее закомментить и не убирать скобки, чтобы git не анализировать их исправление, и так будет работать
      {
        currentExtraStackFrame = stack;
      }
    }
    Ответ написан
    2 комментария
  • Можно ли протирать монитор средством для чистки оптических поверхностей, если при этом нельзя использовать органические растворители?

    @alexalexes
    В протирке любой поверхности без разводов главной хитростью является то, что у вас должно быть две тряпочки: одна для нанесения жидкости (влажная тряпочка), другая - для удаления жидкости с поверхности (сухая тряпочка).
    При этом, не обязательно использовать состав с очищающими свойствами. Подойдет обычная вода (но для надежности можно взять фильтрованную).
    Ответ написан
    Комментировать
  • Какую установить память на ASRock D1800m?

    @alexalexes
    Посмотрите, какая у вас стоит планка памяти. Если 8Gb / 1333, то купите с таким же объемом и такой же пропускной способности. И это будет предел. Улучшать на вашей материнке больше ничего нецелесообразно, только менять ее вместе со всеми комплектующими.
    PS: Если у вас потребление памяти не упиралось в 100%, то покупка доп. планки не решит проблему. Скорее всего у вас проц. нагружается под 100% при любом вздохе.
    Ответ написан
  • Как отключить встроенное аудио на machinist x99-rs9?

    @alexalexes
    См. Azalia Configuration - это и есть звук.
    Ответ написан
  • Почему ноутбук виснет на определении ide устройств?

    @alexalexes
    Если ноутбук поддерживает загрузку с USB, то можете попробовать записать на флешку Alkid live CD (присутствует в комплекте к ZverCD / ZverDVD) и загрузить на ноутбуке эту ОС. Далее, зайти в "Диспетчер устройств" и посмотреть, какие есть устройства "Контроллеры IDE ATA". Eсли не очевидно их присутствие, то можно воспользоваться программой AIDA64 (в старой версии она называется Everest, присутствовала в комплекте утилит live CD) - там просмотреть наличие дисковых контроллеров.
    Если они ни в каком виде не обнаруживаются в системе, то скорее всего проблема в чипсете ноута.
    Ответ написан
    Комментировать
  • Как использовать часть URL как переменную?

    @alexalexes
    Типичный кейс, как использовать GET-параметры, если известен их список допустимых значений.
    <?php
    // список допустимых значений переменной $channel
    $allow_channel_list =  ["svm.sport" , "svm.music" ,  "svm.loop"];
    // значение по умолчанию
    $default_channel = "svm.best";
    // если в GET-параметрах присутствует ключ channel и значение по ключу входит в список допустимых значений...
    if(isset($_GET['channel']) && in_array($_GET['channel'], $allow_channel_list))
    {
    // ..., то переменная равняется этому значению  
      $channel = $_GET['channel'];
    }
    else // иначе, берем значение по умолчанию
      $channel = $default_channel;
    ?>
    
    <!DOCTYPE html>
    <html>
       <head>
          <title><?php echo $channel; ?></title>
    <!-- ... БЛА-БЛА-БЛА -->
    
    <?php
    // <!-- ... БЛА-БЛА-БЛА -->
    
    ?>

    Использовать так:
    test.php?channel=svm.best
    Ответ написан
    2 комментария
  • Как сделать DISTINCT для двух полей?

    @alexalexes
    Нужно воспользоваться какой-нибудь агрегирующей функцией (min, max, avg, sum, count и т.д.) и по ней группировать.
    Зависит от того, какой результат хотите получить.
    SELECT brand_name, any_function(indeks_shvidkosti) as func_indeks_shvidkosti
      FROM tires
    group by brand_name
    ORDER BY brand_name ASC

    ПС: Если вы используете Distinct, значит где-то что-то не учли в требованиях к структуре данных, что вам приходится избавляться от дублей.
    Ответ написан
  • Насколько опасно использование конструктора Function?

    @alexalexes
    такой способ представляет угрозу для безопасности

    Потому, что если злоумышленник будет иметь возможность статично внедрять HTML-фрагменты в тело документа, не имея доступа к интерпретатору JS пользователя, то с помощью атрибута data-format-value он эту возможность получит напрямую, так как может вставлять любой код JS в этот атрибут, получая доступ к локальному хранилищу, кукам. Если по кукам он не угонит сессию пользователя, то хотя бы сможет составить его фингерпринт.
    Ответ написан
    7 комментариев
  • Насколько рискованная операция - перепайка сокета в мат. плате? Какова вероятность, что плата будет работать плохо?

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