Vikhrmodels/habr_qa_sbs huggingface dataset:
Вопрос: Найти ПК, у которых в сетевом адаптере старый DNS-сервер?

Лучший ответ:
> старый DNS-сервер?
Публичный или локальный?

Если публичный, то на firewall-gw смотреть какие ПК обращаются к этому DNS.
Если локальный, то назначить какому-то ПК IP этого самого DNS и смотреть wireshark кто к нему обращается на 53 порту.

В целом, пора бы DHCP освоить)

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

Выполни ipconfig /all на каждой машине и сохрани их вывод где то на сервере, там вся необходимая тебе информация - имя компьютера, наличие настройки dhcp или статика, список dns серверов, шлюз,...

с помощью powershell вот метод
Вопрос: Как запретить срабатывание POST метода?

Лучший ответ:
В upload.php в самом конце сделайте редирект на эту же страницу:
//определяем протокол - HTTP/HTTPS
$proto = (!empty($_SERVER['HTTPS']) && $_SERVER['HTTPS'] != 'off')? 'https': 'http';
//шлем заголовок для "обновления" страницы без пересылки формы.
//все последующие "ручные" обновления страницы будут происходить без отправки формы
header('Location: ' . $proto . '://' . $_SERVER['HTTP_HOST'] . '/' . $_SERVER['REQUEST_URI']);
exit;
Вообще, это "best practice", перебрасывать редиректом после обработки формы, если не было ошибок при сохранении формы.
Exit в конце прерывает выполнение остального кода.

Худший ответ:
В сессию какой-нибудь флажок добавляйте, что данные уже обработаны. А вообще, после обработки данных делайте редирект на тот же самый скрипт с каким-нибудь случайным параметром. Тогда при обновлении страницы не будет POST-запроса, будет GET
Вопрос: Как загружать для РФ один скрипт, а для других стран — другой?

Лучший ответ:
Использовать любой сервис который позволяет определять регион по IP

Или внешнее API, или библиотеки вида https://www.maxmind.com/en/geoip2-services-and-dat...

Худший ответ:
Когда-то использовал 2ip.ua
Вопрос: Для чего нужна двойная ссылка &&?

Лучший ответ:
Это называется rvalue reference

Худший ответ:
Ссылка на временный объект.

Прямо (int&& d = 5) используется крайне редко, чтобы продлить время жизни временному объекту.

Куда чаще оно используется в типах возврата (string&& Container::give()), и означает: это ссылка на объект, который спокойно можно выпотрошить. Или в типах параметров — Container& Container::operator = (string&& x): то есть принимает объект, который больше не нужен.

Для чего потрошить объекты? Вот представьте себе код.
std::vector<int> doSmth() {
  std::vector<int> r;
  r.push_back(42);
  return r;
}
...
std::vector<int> a = doSmth();

Забьём на необязательные оптимизации — как эта штука будет действовать по семантике Крестов?
std::vector<int> r; — создадим в стековом фрейме переменную r.
return r; — vector(const vector&) в какое-то место, предложенное вызывающей функцией.
std::vector<int> a = doSmth(); — vector(const vector&) из этого места в a.

Си++17 ТРЕБУЕТ, чтобы подобный возврат гарантированно вызывал ОДИН конструктор копирования (а если конструировать на месте вроде return vector<int>{ 42 }; — то ни одного), но у нас-то Си++03. Не много конструкторов? А ведь зная, что объект больше не нужен, можем просто перенести указатель из одного вектора в другой, точка — даже впрямую, без оптимизаций, никаких перевыделений памяти. Вот этот прямой перенос указателей я и назвал словом «выпотрошить объект».

Пример 1: container = string("alpha") + "bravo"; Тут в контейнер перемещается временная строка.
Пример 2: string a = "alpha"; container = a; Не компилируется: строка a не временная.
Пример 3. container1 = container2.give(); Перенос строки из контейнера в контейнер без выделения памяти.
Пример 4: string a = "alpha"; container = std::move(a); Компилируется (мы функцией move сказали: с обычным объектом обращаться как с временным), но в результате в строке a может быть что угодно и не стоит закладываться на дальнейшее её значение. Но объект после потрошения в любом случае должен быть корректным, ведь ему ещё вызывать деструктор :)

Последний вопрос: кто потрошит? Функция, которая принимает временную ссылку как параметр. В данном случае Container::op=. Чем потрошит? — ну, например, кодом myString=std::move(x) или std::swap(myString, x). А они, в свою очередь — внутренняя string::op= и дружественная swap — прямыми играми с указателями.
Вопрос: С чего начать изучение Flask'а?

Лучший ответ:
Изучить основы языка Python. Flask - это фреймворк, написанный на Python, поэтому хорошее понимание основ Python обязательно для работы с Flask. Можно начать изучение Python с книги "Python для начинающих" или онлайн-курса на платформе Coursera.

    Изучить основы веб-разработки. Flask является фреймворком для веб-разработки, поэтому хорошее понимание HTML, CSS, JavaScript и протокола HTTP необходимо для работы с Flask. Можно изучить эти темы с помощью онлайн-курсов, таких как "Основы HTML и CSS" на Codecademy или "Web Development" на Udacity.

    Прочитать официальную документацию Flask. Документация Flask очень подробная и содержит много примеров кода, которые могут помочь понять, как использовать различные функции и возможности фреймворка. Документация Flask доступна на официальном сайте: https://flask.palletsprojects.com/en/2.1.x/.

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

    Изучать Flask-расширения. Flask имеет множество расширений, которые добавляют дополнительные функции и возможности в фреймворк. Некоторые популярные Flask-расширения включают Flask-WTF для обработки форм, Flask-SQLAlchemy для работы с базами данных и Flask-Login для аутентификации пользователей.

Худший ответ:
Изучить основы языка Python. Flask - это фреймворк, написанный на Python, поэтому хорошее понимание основ Python обязательно для работы с Flask. Можно начать изучение Python с книги "Python для начинающих" или онлайн-курса на платформе Coursera.

    Изучить основы веб-разработки. Flask является фреймворком для веб-разработки, поэтому хорошее понимание HTML, CSS, JavaScript и протокола HTTP необходимо для работы с Flask. Можно изучить эти темы с помощью онлайн-курсов, таких как "Основы HTML и CSS" на Codecademy или "Web Development" на Udacity.

    Прочитать официальную документацию Flask. Документация Flask очень подробная и содержит много примеров кода, которые могут помочь понять, как использовать различные функции и возможности фреймворка. Документация Flask доступна на официальном сайте: https://flask.palletsprojects.com/en/2.1.x/.

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

    Изучать Flask-расширения. Flask имеет множество расширений, которые добавляют дополнительные функции и возможности в фреймворк. Некоторые популярные Flask-расширения включают Flask-WTF для обработки форм, Flask-SQLAlchemy для работы с базами данных и Flask-Login для аутентификации пользователей.
Вопрос: Проблемы с Virtual Box?

Лучший ответ:
Кали.Классика.
Правда, вместо того, чтобы поставить "крутой хакерский" дистрибутив и прибежать сюда с первой же ошибкой, "хакер" даже поставить его не может и прибежал сюда с этим.
Вот зачем тебе та Кали, мил человек, если ты даже такую фигню не можешь нагуглить? Никакой инструмент не сделает тебя круче, если ты не готов потратить время и силы им овладеть.

Худший ответ:
При включении компьютера зайти в BIOS и в параметрах процессора включить виртуализацию (если процессором она поддерживается).
Вопрос: Как в Ubuntu запустить сразу несколько командных строк с nodemon?

Лучший ответ:
Используй tmux или screen.

Худший ответ:
запустить сразу несколько терминалов(командных строк) - gnu screen

https://help.ubuntu.ru/wiki/screen

есть альтернативные варианты. 
https://losst.ru/shpargalka-po-tmux
Вопрос: Как реализовать битовую матрицу оптимально по памяти?

Лучший ответ:
Максимально компактно - хранить одномерную матрицу в битах целочисленного массива - по 8 бит на байт.

Для матрицы NxM бит (i,j) будет лежать в (i*N+j)/8 ячейке массива. Номер бита - надо взять остаток от деления на 8.

Можно получить любой бит и можно что угодно делать с матрицей.

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

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

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

матрицу можно хранить как построчно так и квадратами (например 8х8 бит подматрицы), выбор способа разделения матрицы на блоки определит характер распределения элементов (в приведенном примере это имеет смысл если биты имеют свойство 'липнуть друг к другу', т.е. вероятность что бит будет установлен рядом с другим установленным выше чем среди пустых бит)
Вопрос: Как подключить приложение к БД в контейнере?

Лучший ответ:
self.app_db_connect = 'mysql://myuser:password@127.0.0.1:3306/mydb'
Что ж никто доки-то не читает? Уже который вопрос с одной и той же проблемой.
Раз все в докере, то и подключаться надо через него же.
self.app_db_connect = 'mysql://myuser:password@mysql_db:3306/mydb'

Худший ответ:
Ознакомься с рабочим примером

DOCKER LAMP
Вопрос: Как правильно подключить несколько классов в собственном Yii2-компоненте?

Лучший ответ:
Как вообще можно быть программистом, не воспринимая информацию, которую вам говорит система?
Yii::$app

Худший ответ:
знак доллара забыл перед app
Вопрос: Что нужно знать для junior frontend developer?

Лучший ответ:
Frontend Developer Roadmap карта составленная профессионалами отрасли. Последнее обновление информации было 19 дней назад.
И 191К звезд на гитхабе подтверждают надежность информации
github: kamranahmedse/developer-roadmap

Худший ответ:
Посмотри на ютубе полно роликов лучше сразу на функциональных компонентах учи, классы в новых проектах сейчас не часто используют.
Учи js,react,mobx/redux, typescript я бы такую последовательность выбрал.
Вопрос: Какие есть билдеры для android приложений?

Лучший ответ:
Если есть голова, то месяца достаточно, чтобы освоить азы синтаксиса Java и научиться собирать приложения в Android Studio, благо, уроков в интернете море, да и официальные инструкции вполне понятные. 
не знаю, на кого Вы учитесь, но, судя по наличию приложения в курсовой и незнании языков, учат Вас очень плохо.
Изучайте:
https://developer.android.com/

Худший ответ:
android studio там вроде есть визуальное программирование
Вопрос: Как создать модальное окно asp.net mvc?

Лучший ответ:
Пример вы взяли видимо отсюда https://getbootstrap.com/docs/4.0/components/modal/

Посмотрите первый абзац Getting started

Проверьте что вы подключили не только файл стилей bootstrap.min.css, но и файлы js - jquery-3.2.1.slim.min.js,  bootstrap.min.js.

Худший ответ:
оказывается по-умолчанию файлы были 4.0 bs а я пыталась работать с 5.0. как только скачала в офиц сайта новые файлы и все заработало с помощью 2х строк:   
<link href="~/lib/bootstrap/css/bootstrap.min.css" rel="stylesheet" />
    <script src="~/lib/bootstrap/js/bootstrap.bundle.min.js"></script>
Вопрос: Есть ли годные платные русскоязычные курсы по Final Cut?

Лучший ответ:
Для базового уровня вполне хватает уроков с YT (основной интерфейс, работа с таймлайном и вывод материала). Ищите в сети и читайте книжку Соколовского. У Davinci Resolve есть отличная бесплатная версия, и уроков на YT от русского комьюнити тысячи, на Mac работает, в том числе и с m1. Терминология в проф среде всегда будет английской, это уже устоявшийся стандарт.

Худший ответ:
Есть отраслевой стандарт, сейчас это Adobe Premiere, просто исторически так сложилось. Поэтому он и популярнее. Да и работает на заметно более дешевом "железе", чем Final Cut.

А в целом, что Adobe Premiere, что Final Cut - всего лишь инструменты. Есть еще с десяток не менее крутых программ, причем даже бесплатных. Причем из-за того, что базой для разработки интерфейса всех этих программ были аппаратные комплексы монтажа, переучиться на другую программу очень легко. За пару лет, что довелось поработать с монтажем, использовал порядка 4-5 разных программ. Потом, монитруя уже видео для себя, попробовал еще с пяток бесплатных программ, так как платить за лицензии из своего кармана уже дороговато.

Поэтому первый совет - сначала научиться видеомонтажу, а не программе. Программу освоить не сложно.

Второй совет - учить английский - просто потому, что, к сожалению, уровень перевода большинства книг и программ крайне низкий, вплоть до того что в русской версии бывает недоступна часть функционала английской версии из-за ошибок переводчика (был пример с Adobe Photoshop).
Вопрос: Как сделать хаотичное расположение слов с помощью CSS или JS?

Лучший ответ:
Ссылка https://codepen.io/search/pens?q=Tag+Cloud

snippet

Худший ответ:
Зависит от смысла задачи. Если поместить что-то такое на сайт, то гуглить по слову `wordart wordcloud`. Если понять, как делать самому или даже попытаться сделать - гуглить по словам "Облако тегов" или вот ссылка на доку от автора Wordle

На js - Пример, и гитхаб
Вопрос: Можно ли в tracert увидеть 2 и более роутеров поключенных последовательно?

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

Обычно видно все layer 3 хопы.  Но можно где-то на маршруте встроить VPN который обогнет земной шар пару-тройку раз используя сотни промежуточных узлов, и traceroute покажет его как один хоп, потому что VPN это layer 2.

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

Худший ответ:
Если имеете ввиду что второй роутер подключен как клиент - то нет. Проще в dhcp таблице в интерфейсе роутера посмотреть. 

Или предполагается что роутер стоит ДО вашего роутера? В разрез? Тогда да
Нет, мак нельзя узнать подключив ваш кабель в другое устройство. Если мы про мак адрес WAN интерфейса
Вопрос: Какие синтаксические и/или технические ошибки были допущенны при написании кода?

Лучший ответ:
На слабенькую троечку.
Глобальные переменные, рекурсия без необходимости, тернарный оператор вместо if, работа со стилями вместо классов, переназначение onclick вместо addEventListener со всплытием. Это только то, что с ходу в глаза бросилось.
Ну и общее впечатление отсутствия единого стиля, ощущение, что куски понадёрганы из разных примеров.

Худший ответ:
const letter = document.getElementsByClassName('letter')
const wrap = document.getElementsByClassName('wrap')
const user = users.filter((item) => item.name.indexOf(event.target.value) === 0)Почему ты называешь массивы в единственном числе?
const itemList = document.getElementById(value)
        .appendChild(document.createElement('li'))А один элемент называешь списком?

const generationLetters = (func) => {
    if (someLetters.length === 5) return someLetters;
    const current = String.fromCharCode(func(97, 122)).toLocaleUpperCase()
    someLetters.includes(current) 
        ? generationLetters(func) 
            : someLetters.push(current)
    return generationLetters(func)
}Это уже индусский код какой-то. И что тут забыл тернарник?
И в целом, почему тут всё пишется в глобальный someLetters? Эта функция генератор вопросов.

Array.from(wrap)
Array.from(letter)А это что за ужас? Зачем это делать здесь и почему не сделать это по человечески? (деструктуризация)

Короче, Rsa97 всё верно написал, считай это дополнением.
Вопрос: Как ввести лист в ячейку mysql?

Лучший ответ:
Не нужно пихать структуру данных в ячейку БД. Выдели под элементы списка отдельную таблицу (отдельные таблицы) и свяжи её с основной таблицей по ключу.

Худший ответ:
Можно конечно JSON
CREATE TABLE test (
  `id` int NOT NULL AUTO_INCREMENT,
  `data` JSON,
  PRIMARY KEY (`id`)
);

INSERT INTO test (data) VALUES ('[["1411","603006669"],["111","111"]]');

select * from test;

Но как совершенно справедливо уже заметили - стоит трижды подумать прежде чем хранить массивы именно как массивы
Вопрос: Какое портативное устройство на 220в лучше всех (не хуже балона со сжатым воздухом) чистит пыль из ПК?

Лучший ответ:
Обычный автомобильный компрессор (но тут с 220 Вольтами проблема, но есть повербанки) и рессивер на 5-10 литров на 10 Бар (есть обычные компрессоры с такими рессиверами, но по размеру они шибко уж больше). И стоит иметь ввиду время накачки, т.к. "размером не больше фена" не получится накачать быстро большое давление.
Можете обычный баллон со сжатым воздухом сделать перезаправляемым - достаточно просто.

Худший ответ:
Воздуходувка это называется.
И таких вопросов уже тут куча было, мне лень искать.
Например, hitachi rb40sa. Или макита (модель не помню). Короче, смысл в том, что дуют они при 600-1000Вт мощности просто очень сильно, вентиляторы может и оторвать лопасти, и даже планки памяти выдрать, если близко дунуть на полной мощности. (это применительно к чистке ПК).
Опыт использования таких уже много лет. Но размер не как фен, больше. Вполне удобно работать им одной рукой, второй, как правило, держу то оборудование, которое продувать надо, чтобы не улетело :-)
Вопрос: Если не изобретать «велосипед», как мне углубиться в суть?

Лучший ответ:
Все кругом пишут о том, что не стоит изобретать уже изобретенное, например пишу на php. Написал свою обертку для curl, а зачем? Есть же готовое решение, к примеру guzzle. Но как мне вникнуть в суть подачи запроса на сервер, если я буду все время использовать готовые решения? Вот этого я не понимаю. Посоветуйте пожалуйста. 
Вы не понимаете различий между двумя видами деятельности - обучением и работой на производстве (т.е. написанием кода для продакшена). Обучаться нужно вам, писать продакшен код нужно бизнесу (производству). Бизнесу никогда не выгодно учить работника. Это делается вынужденно, потому что идеально подходящих на позицию людей не существует. Любой работник доучивается во время работы. Важно, чтобы он доучился за ограниченное, адекватное бизнесу время.

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

Правильный путь таков: понять, что у вас есть какой-то пробел в знаниях, а затем заполнить его написанием велосипеда. Это не единственный способ заполнения пробела, можно читать готовый код, можно читать книги. Написание велосипеда - это такой комплексный подход, когда вы тренируете сразу несколько навыков.
А после того, как вы написали свой велосипед, вам следует поискать инструмент, который решает ту же задачу, но значительно лучше и при этом значительно лучше поддерживается. И в боевом коде использовать не свой велосипед, а найденный инструмент. Вы не будете жалеть свой велосипед, если в вас будет говорить голос специалиста, а не тщеславие, т.к. тогда вы будете отдавать себе отчёт, что ваш велосипед сильно хуже и намного полезнее пользоваться зрелым инструментом (и даже участвовать в его разработке, если его код открыт).

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

Худший ответ:
А как насчёт поддержки?
guzzle в открытом доступе, коммитят 370 контрибуторов, ресолвят issues, документируют. Пользователи отлавливают ошибки.
А вы удовлетворите академический интерес, поднимете скилл, почувствуте себя сильнее. Да и забудете о своей самоделке... Интерес к этому коду потеряете и через пару месяцев забудете как он работает. А кому его поддерживать? Вам самому то больно хотелось?
Если хотите разобраться как работает под капотом, почему бы не вычитать чужой production grade код? Может быть и покоммитить, закрыть пару issue в публичном репозитарии, сделать свой вклад сообществу)
Вопрос: Как удержать игрока в игре?

Лучший ответ:
Так это главный навык геймдизайнера, им именно за такое деньги платят)

Из прикладных советов - используйте собственную наигранность. Вы ведь играли в подобные игры? вот и вспоминайте, что вам в них нравилось.

Худший ответ:
Если ваша игра ещё не вышла в прод - открыть на форуме с играми свою ветку с тестовой версией игры и предложить попробовать поиграть и оставить своё мнение, также можете выложить своё приложение на itch.io и там тоже попросить в комменты написать что думают люди.

Мой же ответ на ваш вопрос слишком сильно зависит от выбранной вами ЦА. Ведь есть стратегии, куда можно зайти, поиграть 5-20 минут, а есть такие, где около часа сессия длится. Есть стратегии, где всё просто, а есть такие, в какие играют только хардкорные олдфаги жанра.

Если вы ориентируетесь на большинство, то это казуал/мидкор аудитория, которые готовы уделять на игровую сессию примерно до 30 минут. В мобильной стратегии такого игрока может отпугнуть: перегруженный/непонятный UI, плохая цветовая гамма, отсутствие/плохой/недостаточный отклик на важные действия игрока, однообразность геймплея, навязчивый донат, ломающий баланс донат, пинг (мультиплеер), плохой матчмейкинг (мультиплеер)  читеры (мультиплеер), а также баги, влияющие на состояние потока или сохранение прогресса игрока. Это не весь список, но то, что сразу приходит в голову. Если нужно более детальное пояснение по какому-либо пункту, напишите в комменты.

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

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

Худший ответ:
=ПОДСТАВИТЬ(ПОДСТАВИТЬ(A1&"|";"-|";);"|";)

Как вариант
Вопрос: Почему GitHub не предоставляет доставляет доступ к оболочке?

Лучший ответ:
А что вы хотите от шелла в гитхабе? Выполнять команды на его серверах? Зачем?
SSH у гитхаба имеет простое назначение - аутентификация и туннель для доступа к репозиториям. Зачем там шелл?

Худший ответ:
Так написано же - ты авторизовался, но шелл тебе не дадут, ибо не положено
Вопрос: Как не позволить пользователю вставить html тег в div использую js?

Лучший ответ:
Учти что любой JS можно просто выключить у тебя на сайте и обойти. Тут нужно на стороне сервера обрабатывать и чистить от не нужного.

Худший ответ:
можете попробовать что-нибудь такое:
https://codepen.io/jrkdv/pen/KKQQdEq

но как подметили
нужно на стороне сервера обрабатывать и чистить от не нужного
Вопрос: Что делать, если SWAP почти заполнился?

Лучший ответ:
Ничего не делать.

Это самое распространенное заблуждение - мол, своп подключается, когда памяти не хватает. На самом деле это совсем не так https://habr.com/ru/post/540104/

Худший ответ:
Не парьтесь.
Система сама разберётся.
Просто выгрузила в своп лишнее.
Вопрос: Почему у практически идентичных условий разная скорость проверки?

Лучший ответ:
Могу предположить, что интерпретатор питона не пересчитывает во внутреннем цикле значение target - nums[i], поскольку оно во внутреннем цикле не меняется.
А значение nums[i] + nums[j] надо пересчитывать каждый раз.

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