Vikhrmodels/habr_qa_sbs huggingface dataset:
Вопрос: Почему пропадает место на Linux Mint?

Лучший ответ:
поставь утилиту ncdu.
удобное средство смотреть какой директорий перегружен.
посоветую использовать опцию -x чтобы не залезало в примонтированные фс.

Худший ответ:
в linux через проводник всего не увидишь apt-get install mc через него смотрите показывает скрытые директории
Вопрос: Как разместить картинку через background, при этом она должна быть по центру и вверху текста?

Лучший ответ:
лучше делай так:
snippet

Худший ответ:
через псевдоэлемент ::before, либо просто  тег в разметку добавить и его стилизовать
Вопрос: Ошибка: package ....... is not in GOROOT. Как решить?

Лучший ответ:
Лучше установить пакет так, как написано в его инструкции.
Выполните в командной строке
go get github.com/adshao/go-binance/v2

Ну и импорт потом вот так
import (
    "github.com/adshao/go-binance/v2"
)

Худший ответ:
вы можете использовать g.mod replace
Вопрос: Стоит ли хранить директорию .idea на github?

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

Худший ответ:
Выводы:

Походу хранение конфигов IDE - распространенная практика, если проект ведет только один разработчик, или у всех разработчкиков одна IDE.
Если предполагается что репозиторий будут смотреть другие люди - лучше хранить конфиги отдельно
 PyCharm имеет встроенную фичу на такой случай. Хотя у меня она заработала не сразу.
Вопрос: Как подступиться к работе с фреймворками датабаз?

Лучший ответ:
Уже попытался с 7-8 различными ютуб видосами и статьями разобраться что и куда
Какой источник информации, такой и результат обучения. Читайте учебники.

Худший ответ:
Здравствуйте!
Могу лишь поделиться тем, как я начинал работать....
Во-первых, чтобы сделать свои первые шаги я взял пару видеокурсов на udemy. Цена вопроса 30-40 долларов. Взял курсы по Spring Boot & Hibernate.
Далее обязательно рекомендую прочитать книгу 
К. Бауэр - Java Persistence API и Hibernate
Это даст понимание для работы с БД. Ну а дальше продолжайте читать профессиональную литературу.
Начинайте изучать jdbc. А далее уже технологию ORM и фреймворки, которые его реализуют. например, Hibernate, EclipseLink
Вопрос: Стоит ли проходить курс по Python на Netology?

Лучший ответ:
Конечно проходите! А еще запишитесь на курсы БМ, вступите в пирамиду и секту и вообще, раздавайте свои бабки всем подряд!

Худший ответ:
Нет! Никакой платный курс не сделает  из вас разработчика.

Всему платному есть бесплатный аналог.
Вопрос: Какую java скачивать в 2019?

Лучший ответ:
Java теперь на платной основе?

Худший ответ:
OpenJDK бесплатная, качай последнюю версию.
Вопрос: Как перехватывать информацию из консоли?

Лучший ответ:
from subprocess import Popen, PIPE


def get_ping():
    args = ["ping", "-n", "4", "www.ya.ru"] # -n требуются права Администратора
    process = Popen(args, stdout=PIPE)
    """
    # Построчное чтение данных
    for line in process.stdout:
  	    print("stdout:", line.decode('cp866'))
    """
    data, error = process.communicate()  # Распаковка кортежа
    print(error)
    return data.decode(encoding='cp866') # cp866 для Windows

def main():
    print(get_ping())
    input()

if __name__ == '__main__':
    main()

Худший ответ:
from subprocess import Popen, PIPE

 # запускаем команду, вывод перенаправляем в PIPE
proc = Popen('cmd /c ping 8.8.8.8', stdout=PIPE)

#  по завершении работы proc, прочитать данные из
# stdout (и отправить ввод, если надо), результат не декодирован (bytes)
res = proc.communicate()[0]  # <- communicate возвращает кортеж (stdout_data, stderr_data)

print(res.decode('cp866')) # выводим на печать декодированные данные
Вопрос: Какая часть ПК важнее всего для скорости браузеров?

Лучший ответ:


Я нагрузил Браузер и хорошо видно где основная работа происходит. 
- Процессор. Его нагрузило практически до 100% 
- Память. Ее нужно побольше. Каждая вкладка это задача под которую выделяется память 
- WiFi. У меня это 5 GHz так как сетевая карта в какой то момент может стать узким местом.

Худший ответ:
Сборку ПК присылать не буду, потому что вопрос скорее о том, какая часть ПК важнее для скорости работы браузера, абстрактно.
Вот и получишь абстрактные ответы. Без твоего конфига - совершенно нельзя сказать где у тебя узкое место.
Вопрос: Почему програмы на винде проверяют себя на обновления?

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

Худший ответ:
Потому что майкрософт за все время своего существования не предложила адекватной системы репозитариев, а когда родило свой недомагазин, умудрилось сделать добавление чужих веток - только через задницу (private store). Никак не могут понять монополисты, что удобные и эффективные системы - только децентрализованные, без единого центра - отличный пример linux package managers как у debian/ubuntu или как у redhat.

Существуют 3rd-party репозитарии приложений, к сожалению разработчики не желают в них добавлять свои... по причине 'а какого фига я буду заморачиваться на какие то левые системы'.

з.ы. конечно, гуглаппс (как пример pm для android от монополиста) сейчас на высоте, но они еще хлебнут проблем (а пользователи и бизнес уже), про их техническую реализацию даже ругаться нет сил, хуже некуда.
Вопрос: Как понять готов ли я к освоению React после курса JS?

Лучший ответ:
Я чувствую, что вы ещё не готовы. Лет 50 ещё поизучайте, тогда будете готовы.

Худший ответ:
Всё просто - попробуй создать простенькое веб-приложение на чистых языках без ничего.
Даже без готовой СУБД - научись сам сохранять данные в файлах.
Если сможешь - ты уже настоящий начинающий программист
На это надо потратить хотя бы год - это база.
Надо так изучать эти языки - на практике, делая простой дипломный проект.
Надо чтобы вырос мозг программиста, надо уметь делать простые вещи самостоятельно.
И только после этого изучать профессиональные индустриальные фреймворки и инструменты.
Иначе ты будешь не инженером, а чесальщиком-мотальщиком который умеет работать только по шаблону.
Вопрос: Как получить имена файлов в ftplib?

Лучший ответ:
пожалуйста

пишите код каким пытаетесь

подсказка - нужно выполнить cd в директорию файлов и затем листинг

Худший ответ:
ftp = FTP('myserver')
ftp.login("user", "pass")
ftp.cwd('folder')
files = ftp.nlst()
В files будет список файлов.
Вопрос: Можно ли исправить эту очень полезную функцию PHP?

Лучший ответ:
Если уже переписываете, то переписывайте нормально. Избавляйтесь от глобального массива $CONF, рекурсии и функций без неймспейсов. Также у вас функция как записывает так и читает значения, что немного выносит мозг. Также считаю что исключению там не место, лучше заменить на значение по умолчанию

class Config {

	protected static array $register = [];

	public static function get(string $name, $default = null) {
		$keys = explode('.', $name);

		$pointer = self::$register;

		foreach ($keys as $key) {
			if (!array_key_exists($key, $pointer)) {
				/*Если ключа нет, выставить его*/
				//self::set($name, $default);

				/*Бросить исключение*/
				//throw new Exception("No such key: {$name}");

				/*Вернуть значение по умолчанию*/
				return $default;
			}

			$pointer = &$pointer[$key];
		}

		return $pointer;
	}

	public static function set(string $name, $value = null) {
		$arr = &self::$register;
		$keys = explode('.', $name);

		foreach ($keys as $key) {
			$arr = &$arr[$key];
		}

		if (is_array($arr) && is_array($value)) {
			$arr = array_replace_recursive($arr, $value);
		} else {
			$arr = $value;
		}
	}

	public static function getTree() {
		return self::$register;
	}
}

Config::set("config", [
	"name" => "test",
]);
print_r(Config::get("config"));
echo "(config)\n\n";

Config::set("config.class.name", "A");
print_r(Config::get("config.class.name"));
echo "\n(config.class.name)\n\n";

Config::set("config", [
	"class" => [
		"test" => "B",
	],
]);
print_r(Config::get("config.class"));
echo "\n(config.class)\n\n";

Config::set("config.class", null);
print_r(Config::get("config.class"));
echo "\n(config.class)\n\n";

print_r(Config::get("config.fake.key.without.value", "UNDEFINED"));
echo "\n(config.fake.key.without.value)\n\n";

Config::set("config.nullable", null);
print_r(Config::get("config.nullable", "NULL"));
echo "\n(config.nullable)\n\n";

print_r(Config::getTree());
echo "\n(all)\n";

Работает в PHP7.4

Худший ответ:
Исходный вариант кода, но исправленный:
$CONF = array('category' => array('name' => "Hello", 'data' => array()));

function aGetByKey(&$array, $index, $value = null) {
    if (strpos($index, "."))
        list($index, $key) = explode('.', $index, 2);
    if (!isset($index) OR !isset($array[$index]))
        throw new Exception("No such key: " . $index);

    if(!empty($key))
        return aGetByKey($array[$index], $key, $value);

    $old = $array[$index];
    if ($value !== null)
        $array[$index] = $value;

    return $old;
}

function conf($key, $value = null) {
    global $CONF;
    return aGetByKey($CONF, $key, $value);
}

//Хотелось-бы чтобы она работала так:
echo conf('category.name'); //Hello
echo conf('category.name', 'World'); //Hello, потому что возвращается предыдущее значение $old
echo conf('category.name'); // World

conf('category.data', ['amount' => 158, 'kind' => 36]); // echo() нельзя, потому что вернётся массив
echo conf('category.data')['amount']; //158
Вопрос: Как заставить работать CentOS 8 через два сетевых интерфейса?

Лучший ответ:
Два шлюза не надо прописывать никогда. А вы скорее всего прописываете сразу оба. Вот и задумываются сетевые программы.

Худший ответ:
Всё верно, потому что пакет приходит в один интерфейс, а потом по default route пытается уйти через другой с неверным для этого интерфейса адресом. В принципе, это даже может работать, если выключить rp_filter. Но вообще правильно говорят: не надо два шлюза, ничего из этого хорошего не выйдет.

В общем случае задача "ответить на запрос через тот же интерфейс в обход default route" решается с помощью policy routing. Нужно сделать ещё две разных таблицы маршрутизации с нужными роутами и затем выбирать их через ip rule.

Что касается тормозов при логине, то это сервер пытается проверить в DNS PTR-запись подключающегося. Соответственно, если на сервере с DNS сделать всё хорошо, то и тормозов не будет.
Вопрос: Каким способом можно реализовать настройки пользователя, зависящие от его роли?

Лучший ответ:
Я беру из конфига/ дефолт атрибутов модели и тд. Но у меня программистские проекты) Т.е. в админке делать нечего. Если в проекте важно все делать из админки выбор очевиден. Т.е. ответ - ориентироваться на потребности проекта

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

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

Худший ответ:
для начала поставьте https://github.com/barryvdh/laravel-debugbar
Вопрос: Какие современные технологии используются для разработки системы управления хостелом/гостиницей?

Лучший ответ:
можно  и просто  PHP без  всякого  vue

Худший ответ:
Я аналог 1С простейший делал на PHP без фреймворков, даже с онлайн кассой атол интегрировал, из готового что использовал PHPExcel для генерации печаток, CKeditor, Jquery, Twitter Bootstrap.
Есть альтернатива например YII.
Вопрос вообще такой, что знаете лучше, на том и делайте...
Вопрос: Как узнать номер телефона по профилю вконтакте?

Лучший ответ:
Никак.

Худший ответ:
поиском
Вопрос: Как сделать связь видеонаблюдения 2х офисов?

Лучший ответ:
Гонять видео поток с камер на регистратор через интернет, не очень хорошая затея. Как минимум нагрузка на канал и некачественная запись на регистраторе.

Худший ответ:
Поднять VPN, но нужны внешние IP на обоих точках.
Вопрос: Стоит ли использовать flash в 2019?

Лучший ответ:
Будущего у него однозначно нет и в ближайшие годы браузеры прекратят его поддержку.

Худший ответ:
Нет, его уже почти ни у кого нет. Развивать перестали.
Вопрос: Какой физический смысл импульса?

Лучший ответ:
Возьмём для пример два шара, одинакового размера. Но один из металла, а другой из дерева.
Тебе для того, чтобы заставить их двигаться с одинаковой скоростью, надо приложить разную силу.
При столкновении их скорости тоже будут по разному меняться. Лёгкий шар будет сильнее скорость менять.
При этом сумма их скоростей будет тоже меняться. 
Т.е. помимо скорости нужна ещё и масса, чтобы вычислить сколько сил надо затратить на торможение, как будут вести себя после столкновения и т.п.
Если к скорости добавить ещё и массу v*m  (импульс), то всё становится проще. Импульс после столновения сохраняется

Худший ответ:
Мера (то есть чем измеряю) - то, чем численно что-то выражаешь, типа 2 часа или 5 кг. Еще одно отличие меры от всякой фигни в том, что она имеет физический смысл, что значит, что она может участвовать во всяких описываемых физ.законами соотношениях типа закона сохранения импульса.
Вопрос: Где лучше учиться на тестировщика?

Лучший ответ:
урсы ли искать или отдельного преподавателя?
Курсы - налог на тупость и легковерие.
По поводу преподавателя - а задайтесь-ка вопросом, ну с чего бы прафисьянальному тистировщику, зарабатывающему миллионы, тратить на вас своё время за ваши копейки?

Учиться просто - идите джуном или стажёром в какую-нибудь контору.

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

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

1) раз мы делаем через WEB, то используем веб-сокеты? Есть ли какие-то еще интересные и практичные варианты для моей цели? Так же, интересует максимальное кол-во игроков? Как я понимаю это 64к человек на сервер? Или же нет?

Я бы рекомендовал UDP. Один порт и все, пробивание файрволов и серых  адресов описано. 
Кроме того в случае TCP добавляете второй IP и получаете N * 65000

2) Как стоит разделять комнаты? Делать все в одном инстансе или для каждой комнаты свой отдельный? Хранить на одном сервере или для каждой комнаты свой личный?

Все зависит от вашей логики. Я бы посоветовал мастер сервис, который раскидывает игрокам по воркерам и мигрирует с одного инстанса на другой как игрока так и комнату. 

3) Если на разных инстансах (или собственно серверах), то как в итоге соединять людей в них? В БД хранить порт комнаты на сервере или как то еще?
В бд хранится общая конфигурация, в редисе текущий кэш для быстрого доступа

4) Как при запуске GOшного инстанса сохранять и манипулировать им? Как указывать игрокам к какому подключаться?

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

Худший ответ:
Создание многопользовательского сервера на го? Задача: сделать небольшую многопользовательскую WEB игру.Не вижу препятствий. Есть куда более сложные проекты на это языке.

1) раз мы делаем через WEB, то используем веб-сокеты? Тут дело хозяйское. Можешь хоть на webRTC делать. 

Так же, интересует максимальное кол-во игроков? Как я понимаю это 64к человек на сервер? Смотря какие будут сервера. Серверам вообще всё равно сколько будет на них игроков.

2) Как стоит разделять комнаты? Делать все в одном инстансе или для каждой комнаты свой отдельный?  На уровне MVP нет. Пусть хоть хоть как-то заработает. Потом по мере роста желательно раскидать. Чтобы можно было балансировать нагрузку: в одной комнате может быть пусто, в другой густо и надо как-то ресурсы гибко предоставлять.

3) Если на разных инстансах (или собственно серверах), то как в итоге соединять людей в них? В БД хранить порт комнаты на сервере или как то еще? Есть синхронный вариант, есть асинхронный. Но лучше MVP слепить. А потом смотреть варианты. Слишком много возможных нюансов, которые надо будет брать в расчёт.

4) Как при запуске GOшного инстанса сохранять и манипулировать им? Как указывать игрокам к какому подключаться? Это уже про оркестрацию. Есть один проектик как раз на Go, который этим занимается.

PS. Под инстансом я говорю о запущеном бинарнике приложения Инстанс это обычно про некоторое окружение работающего приложения. Может быть виртуальная машина (в контексте Амазон), или контейнер Docker как сейчас модно.
Вопрос: Какое излученние от серверного шкафа?

Лучший ответ:
Хотелось бы узнать какое излучение от всего этого оборудования
От микроволновки - СВЧ- и ЭМИ-излучение в абсолютно безопасных дозах.
От компьютерного оборудования - тоже ЭМИ, но в крайне малых количествах.
Вам нечего бояться, инженеры, которые всё это спроектировали, не дураки, в отличие от параноиков, к коим вы, надеюсь, не относитесь.

Худший ответ:
Какое излученние от серверного шкафа?Как правило -обычное электромагнитное с частотой чуть более  300 ГГц.соответствует ли оно нормамКаким нормам?В одном кабинете находятся: серверный шкаф (2 сервера, 1ИБП, монитор, коммутатор), 7 рабочих мест (7 ПК), 1 Вот это точно не соответствует нормам охраны труда.
Кто же в серверной размещает рабочие места???Заземления скорее всего нет.Током кого-нибудь шарахнет.
Вопрос: Какие есть годные практики для работы с большим количеством записей в таблице (1M+)?

Лучший ответ:
Объединение нескольких колонок в одну, для однотипных данных. Они будут храниться в формате JSON.
JSON объёмнее плоской таблицы хотя бы из-за необходимости в хранении ключей.
И, насколько знаю, mysql пока умеет только btree. Что подходит для произвольного поиска от слова никак. Только для заранее известного критерия.3. Партиционирование.планирую создать новую, "горячую" таблицу с идентичной структурой.
Слово неплохое упомянуто. Осталось понять зачем всё остальное. Партицировать таблицы умеет штатно даже такая удивительная штука как mysql и очень давно.
Профилируйте где время теряете и смотрите что с данными делаете.
Озвученные цифры не впечатляют от слова совсем. Если человек хочет поиграться с разными подходами индексирования и производительностью сложных запросов - я посоветую с миллиона записей только начинать.
Типичная ошибка - пытаетесь строить аггрегаты и прочие count(*) поверх миллионов строк налету.

Худший ответ:
Сравнить колонки в таблице и в частых запросах в ней. Оставить в таблице только то, по чему могут быть запросы, скорость которых критична. Желательно оставить только поля фиксированной длины. Остальное - во вспомогательную таблицу, выборка из которой будет редкой либо только по id.
Вопрос: По фэншую ли синтаксис?

Лучший ответ:
Так писать по фэншую код или есть запись объектов в массив ровнее?У Вас тут не столько запись чего-то в массив, сколько предварительное присвоение значения переменной, с уже последующем добавлением оной в массив. Оно работать конечно будет, но выглядит несколько странно, на мой взгляд. Подобные принципы обычно используются в условных операторах или циклах (if/while), для последующей обработки переменной (результата).
Если Вам нужно просто собрать массив, обычно пишут так:$arr = [
    new Quadrate(6),
    new Cube(5),
    new Rectangle (2),
    ... ,
];
P.S. Так же этот код можно написать в строчку, если он не выходит за границу (80 или 120 символов, в IDE и редакторах эта линия почти всегда есть по умолчанию) или если просто если Вам очень хочется написать этот код в одну строку.

Худший ответ:
не ну можно и по рефлексии циклом пройти:)
Вопрос: В чем логика быть MAC адресу на первом месте при декапсулировании?

Лучший ответ:
на том уровне абстракции сетевого стека, где принимается решение о маршрутизации IP-пакета в нужную сеть (L3), пакет уже избавлен от MAC-адресов. а чтобы пакет достиг данного уровня абстракции, сначала пакет должен быть правильно обработан на предыдущем уровне абстракции (L2), где как-раз и требуются MAC-адреса.
решение о том, на какой компьютер сетевушка отошлёт пакет (свой или транзитный), в конечном итоге всегда опирается на MAC-адрес назначения (MAC-адрес конечного получателя или MAC-адрес роутера), это последняя вещь, которая становится известна перед отправкой пакета, и первая вещь, которая запрашивается из входящего пакета, поэтому MAC-адреса назначения и отправителя на первом месте, а не где-то ещё.

Худший ответ:
В чем смысл при путешествии фрейма от одного узла к другому (находятся не в одной сети) указывать первым мак адрес, если было бы логичнее указать IP, чтобы фрейм нашел нужную сети, а затем уже в этой сети по мак адресу нашел нужный узел. Если получатель не в нашей сети, то в L2 заголовке получателем будет роутер, а не конечный получатель.
Вопрос: Как проверить много электронных адресов на существование?

Лучший ответ:
Вот из за таких как  вы и вырубили VRFY
Не делайте так.  

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

Худший ответ:
Вот я такой сервис сделал - https://serendipia.email/get-started

Но, нужен API ключ, который раньше не требовался, а теперь уже .... :)

Есть и др. сервисы, платные. Возможно, есть и бесплатные -- обычно без REST API. 

Тут также надо понимать, нет 100% способа выяснить существует ли мыл, а есть только вероятность. Мои личные email-ы, которыми я пользуюсь, например, на некоторых из этих сервисов, которые я проверял, показываются как несуществующие или невалидные. Возможно потому, что эти сервисы сделаны через ж.
Вопрос: Обучение IOS разработке, курсы, репетиторство?

Лучший ответ:
Правильней написать несколько приложений. Подумайте, чего было бы вам интересно, да напишите. В процессе будут проблемы и бурелом - пробираясь через него будете учиться, искать, спрашивать, копать форумы. Это эффективней.

Худший ответ:
Сам сейчас смотрю в сторону iOS разработки. Ищу книги, статьи, с ними мне проще и удобней... В ближайшее время хочу сделать перенос своих приложений под Android на iOS. Т.е. задачи поставлены, нужно теперь только читать и применять информацию на практике. Начал изучать с ознакомления с Objective C и Swift. Последний оказался очень простым. Нужно изучить именно практику разработки под iOS и разработку приложений...
Вопрос: Где продолжать учить js?

Лучший ответ:
Рекомендую You don't know JS: https://github.com/azat-io/you-dont-know-js-ru.
Возможно http://learn.javascript.ru, хотя мне больше нравится английская версия: http://javascript.info, там и ES6 уже. Но что-то есть в одной книге, чего в другой нет.
А вообще задавали уже такие вопросы, можно поискать и еще несколько книг найдется. Если что-то конкретное найти, например сделать ту же змейку, то можно посмотреть в youtube уроки, потом после просмотра, поняв как вообще ее делать, попытаться сделать самому.

Худший ответ:
Попробуй Eloquent JavaScript, 2-ое издание есть на русском на гитхабе. В книге есть учебные проекты.