Vikhrmodels/habr_qa_sbs huggingface dataset:
Вопрос: Почему length === 13?

Лучший ответ:
В вашем примере сразу два косяка

1. там действительно 13 нод (узлов), потому что Node это не только html-элементы, но и текст между ними (переводы строки и пробелы в вашем случае). 
Можно перебирать не childNodes а .children, который возвращает именно html-элементы, а не все узлы. Но это решает не все проблемы, потом что:

2. Указывая не 0 а i вы удаляете не все узлы, а каждый второй.
Дело в том, что childNodes и children это live коллекции и они обновляются при каждом изменении в родительском элементе.
При удалении нулевого элемента первый тут-же становится нулевым.
Затем вы увеличиваете i до единицы, удаляете первый (он изначально был вторым), а нулевой (который был первым) остался, и снова происходит сдвиг. Иногда, кстати, этот сдвиг не упевает произойти, так что этим способом нельзя пользоваться даже если вам хочется удалить именно каждый второй.

Можно бы перебирать с конца for (let i=elem.children.length-1; i >= 0; i--) elem.childNodes[i].remove()

Можно удалять без всяких счетчиков while (elem.firstChild) elem.removeChild(myNode.lastChild)

И наконец, можно удалять вообще без перебора! elem.textContent = '' Это не только самый короткий, но и самый быстрый способ, т.к. браузер не будет пытатся несколько раз перерисовать содержимое elem.

Худший ответ:
потому что перенос строки/пробелы/табы так же являются нодой.
https://jsfiddle.net/s5kz236b/
Вопрос: Списки python, как сделать более лаконично?

Лучший ответ:
Что Вы собираетесь делать? На первый взгляд бессмыслица какая-то)
для такой структуры данных удобнее использовать словари:
a = {'шт': {'Омлет': 3,  'Яйцо ':  2, 'Помидор': 2}, 'мл': {'Молоко' : 100}}
print(a['шт']['Яйцо'])
2
print(a['мл']['Молоко'])
100

Худший ответ:
a[2:] = [a[2:]]
или
a = a[:2] + [a[2:]]
Вопрос: Как работает отрицание функции?

Лучший ответ:
Читаем и просвещаемся ))

Худший ответ:
Непонятно, как в общем работает отрицание функций в JS
никак, нет такого понятия "отрицание функции".

функция вызовется, что-то вернет и к этому значению применится оператор "!" 
в данном случае функция возвращает true или false, соответственно будет if (!true) или if (!false). как это работает вы я думаю уже должны знать. 
по простому - в этом примере если вызов compareObjects для ключей объектов вернул false (свойства key в а и b не равны) то возвращаем false (объекты a и b тоже не равны)
Вопрос: Какие технологии Linux сетевой инженер должен знать?

Лучший ответ:
Поищите в youtube Кирилл Семаев. Курсы LPIC, LPIC-2. 
Для ознакомления будет в самый раз.

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

Лучший ответ:
Спрашивайте то, что вас интересует. Если ничего не интересует - ничего не спрашивайте.

Худший ответ:
почему он ушёл из компании
Вопрос: Сайт выдает ошибку(500). Как правильно написать код?

Лучший ответ:
правильно – включить вывод ошибок и/или читать логи.

Худший ответ:
Настрой вывод ошибок. 
https://karashchuk.com/PHP/error_reporting-display...
Вопрос: Как изменить скрипт Mikrotik?

Лучший ответ:
Если 1.1.1.1 и 2.2.2.2 в вашем случае это внешние адреса головного сервера pptp под управлением RouterOS то можно использовать встроенную функцию dyndns.
И обойтись без скриптов вообще.

Худший ответ:
В терминале вводите 
 /system script edit [find name=ISP1] source
Откроется редактор, меняете нужный вам параметр и Ctrl+O для выхода и сохранения изменений.
Вопрос: Целесообразность курсов по Android?

Лучший ответ:
Курсы - налог на тупость.

Худший ответ:
За курсы - платите Вы.
А за работу - Вам.
Что же выбрать?!
Вопрос: Как распланировать обучение?

Лучший ответ:
Вот вам план обучения.
По своему опыту могу посоветовать следующее:
1. Регулярное посещение спортзала лучше выкинуть из жизни на все время интенсивного обучения. 
2. Социальные сети, фиды и новостные ленты - забудьте. Любую постороннюю информацию лучше свести к минимуму.
3. Старайтесь эффективно планировать время по выходным и хотя бы в один из них хорошо заниматься. 
4. Старайтесь высыпаться.
5. Старайтесь пить побольше жидкости.
6. Отлично, если на работе есть возможность вздремнуть в обед.
7. В транспорте можно читать книги и статьи по теме(без фанатизма), а по приезду домой практиковать прочитанное.
8. В свободное время лучше всего гулять, при этом чем живописнее и экологичнее местность, тем лучше.
9. Помещения в доме важно проветривать.
10. При симптомах переутомления лучше отойти от компьютера, воздержаться любых гаджетов, и отдохнуть в кресле/на кровати/диване.
11. Рабочее место должно быть максимально удобным.
12. Алкоголь, если не исключить, то свести к бутылке пива раз в неделю.
Если при всем этом вы будете только страдать и не будете получать хоть какое-то удовольствие от процесса, то, возможно, вам не стоит этим заниматься.
Советую прикупить маску для сна - отличный девайс для скорейшего засыпания, комфортного сна и отдыха глаз.

Худший ответ:
Во-первых, как по-мне — учиться лучше утром, а не вечером, когда приходишь домой уставший и никакая новая инфа уже не влезает.
Во-вторых, даже если утром, то от такого режима всё-равно не будет толку, так как: Вообщем, бывает даже голова болеть начинает и конечно нервы.
У вас уже на работе голова болит — куда вам учиться. Ничего не выучите и загубите здоровье ещё больше.
Есть несколько вариантов, на мой взгляд:Взять длительный отпуск на год, полтора (чем больше – тем лучше), если позволяют финансы/обстоятельства. И тогда составлять какой-то план на эти полтора года с теорией, практикой, спорт-залом и обязательно ментором, так как иначе есть риск увязнуть в изучении ненужных вещей.Сменить место работы, которое позволит обучаться в рабочее время. Желательно, чтобы эта работа была в шаговой доступности от дома.  На текущей работе договориться на парт-тайм, с обеда. Утром вы учитесь, а на работу приходите во второй половине дня....возможно есть ещё какие-нибудь варианты. Главное, чтобы у вас было 4-5 часов для обучения в первой половине дня и отдых вечером
Ваш план с 2 часами вечером, практически сразу после работы, перед сном - это перегорание 100%. Мотивация упадет после нескольких дней, либо организм напомнит о себе через какое-то время.
Вопрос: Как решить неудачную поставку null в innerHTML?

Лучший ответ:
-_-
Потому что на 11 строке document.getElementById("text") этого элемента ЕЩЁ нет в DOM
Решается переносом скрипта перед </body>

Худший ответ:
Нужно так:window.onload = function() {
   // браузер загрузил HTML и внешние ресурсы (картинки, стили и т.д.).
};
Вопрос: Когда навожусь курсором на div — появляется плавно, а когда отвожу — курсор пропадает резко. Как сделать плавно?

Лучший ответ:
Добавить transition также и в .top_text без hover

Худший ответ:
в
.top_text{transition:background 1s ease;}
добавить
Вопрос: Прокрастинация, проблемы языка или я не программист?

Лучший ответ:
На изучение почти чего угодно в сфере ИТ обычно нужны эти 3 вещи:

время
терпение
английский

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

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

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

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

Мотивация Вам нужна в виде возможности создать своё портфолио для того, чтобы показать свои умения потенциальным заказчикам и иметь возможность получать заказы для выполнения за оплату.
Вопрос: Как сократить условие?

Лучший ответ:
private static string[] _elementNames = new[] { "SiO2 (β-кварц)",  "and", "more"};

....

if (_elementNames.Contains(name))
{
    if (curTemp <= 846.15)
    {
        h = -217.75F; 
        s = 10F;
        a = 11.22F; 
        b = 8.2F; 
        c = -2.7F;
    }
    else if (....) { ....}
    ....
}

если нужно сделать читабельней именно этот кусок - можно сделать как-то так

Худший ответ:
Не можно, а нужно. :)
А вообще если условие повторяется, лучше вынеси его в переменную и всё.
Создаём массив names = [
"SiO2 (β-кварц)",
"SiO2 (α-кварц)",
"SiO2 (α-тридимит)",
"SiO2 (β-кристобалит)",
"SiO2(к) кварц",
"SiO2(к) тридимит",
"SiO2(к) кристобалит",
"SiO2 (полиморф.)"
]
Дальше можно юзнуть IEnumerable.All (или какой там метод в си# для перебора массива с проверкой условия есть, аналог https://developer.mozilla.org/en-US/docs/Web/JavaS... ?)  на нем, результат записать в переменную и подставлять в условия.
Вопрос: Обязательно ли для смены каждой сцены создавать отдельный скрипт?

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

Худший ответ:
Как вариант можно создать одну сцену, перекидывать сменой координат камеру при нажатии на кнопку на новое окно событий и работать с ним. Но подойдёт только для не весомых проектов, а вообще лучше делать по классике через скрипт хоть от этого игра и будет весить больше (правда, всё работает так же через скрипты...).
Главное чтоб работало быстро, да и учитывая то что если игра не AAA проект и там всё будет работать на скриптах то будет всё нормально восприниматься с точки зрения размера и работы.
Вопрос: Нужно ли высшее образование для релокации?

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

Худший ответ:
Если вы собираетесь в другую страну по программе где высшее образование даёт баллы проходные то может пригодится если все остальное у вас слабое, с другой стороны много где есть пункт во или подтвержденный стаж работы не менее пяти лет по специальности
Вопрос: Как выглядит исходный код функции sqrt библиотеки math (Python)?

Лучший ответ:
В исходниках cpython действительно отсылка на C-реализацию стандартных мат. функций.
А в архитектуре x86/87 функция sqrt реализована аппаратно, как команда математического сопроцессора.

Худший ответ:
https://tinyurl.com/y5dzwaah
Если интересна теоретическая основа купите учебник по "численным методам".
Вопрос: Перед тем как начать путь разработчика игр, что нужно знать?

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

Худший ответ:
Походу все начинают с верстки и уходят в геймдев) у меня тот же путь...
Главное знать C#, делай упор на него...остальное с опытом придет.
Ну и я тоже один и с каждым днем понимаю, что одному что-то сделать практически нереально!(((
Вопрос: Ошибка «invalid syntax». Что делать?

Лучший ответ:
Учить язык прежде, чем пытаться на нём писать.

Худший ответ:
Привет! Уберите этот код и сделайте такую структуру таблиц в Sqlite или какая у Вас там база данных. Удачи!
CREATE TABLE "shop" (
  "id"	INT,
  "type"	TEXT,
  "name"	TEXT,
  "cost"	INT)

CREATE TABLE "users" (
  "id"	INT,
  "nickname"	TEXT,
  "mention"	TEXT,
  "money"	INT,
  "rep_rank"	TEXT,
  "inventory"	TEXT,
  "lvl"	INT,
  "xp"	INT)
Вопрос: Как устанавливать фокус по клику на кнопку?

Лучший ответ:
Господи прости за jQuery.
Подключите jQuery. Вызов обработчика повешайте на document.ready. <script src="https://code.jquery.com/jquery-3.4.1.min.js"></script>

<script>
  jQuery(function($) {
    $("#button").click(function() {
      $('#input').focus();
    });
  })
</script>

Худший ответ:
jq не забыли подключить? все работает https://codepen.io/aliencash/pen/NWPMQEp
Вопрос: Как написать приложение, работающее с XML на C++ без использования парсера?

Лучший ответ:
В С++ 17 (Используйте последнюю Visual Studio Community) есть замечательный способ работы с файловой системой. https://en.cppreference.com/w/cpp/filesystem/recur...
Пример на той странице уже выводит список в простом текстовом варианте.
https://en.cppreference.com/w/cpp/filesystem/is_di... вам поможет понять, является ли путь директорией.
https://en.cppreference.com/w/cpp/filesystem/recur... отслеживая глубину можно понять когда нужно добавить закрывающий тег для директории.

Худший ответ:
Очень помогла эта ссылка.
www.cyberforum.ru/win-api/thread161198.html 
В файл XML просто c помощью ofstream записала, добавляя нужные теги.
Вдруг кому-то будет полезно :)
Вопрос: Как правильно вносить изменения в чужие библиотеки/бандлы?

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

Худший ответ:
Для этого существует наследование. Никаких изменений не нужно форкать, реквестить и все что угодно делать. Наследуешь класс который тебе нужен, переопределяешь нужные методы или добавляешь свои и работаешь с ним. Как раз про это правило Open-Closed в solid - открыт для расширения, закрыт для изменения.
Вопрос: Как правильно добавить элемент в массив?

Лучший ответ:
Использовать List. А если сильно нужен массив, то List потом можно преобразовать в массив.

Худший ответ:
Проблема решена. Массив создавался заранее на N элементов, где N = кол-во чисел в файле.
Вопрос: Как сейчас дела у frontend разработчика на Upwork?

Лучший ответ:
У меня дед 50 лет назад работал кучером, заказов было - тьма, а сейчас печально как то все... Почему то кучеры не особо нужны( Везде одни водители автомобилей(((UPD
А если серьезно. По моему, вы не понимаете как работает текущий рынок. Встаньте на место заказчика, кому сейчас нужна верстка? Ответ - почти не кому. Разве что студиям, которые делают какой нибудь проект и их верстальщик не справляется\не успевает, то да, вас возьмут на пару страниц. Сейчас всем нужны полноценные фронтэнд разработчики, которые и в JS могу и с беком связаться. 
Сейчас уже далеко не 2010 год, когда сайт состоял и одной верстки и отправки письма с заявкой на почту. Сейчас тонна всего что нужно знать.

Худший ответ:
Привет, когда у кого-то дела идут плохо, найдется тот у кого они идут хорошо, скорей всего вы что-то неправильно делаете, можете привести пример вашего Cover Letter? И немного статистики, сколько CL пишите, сколько вам отвечают, сколько берете контрактов.
Вопрос: Почему данные не передаются из формы, например $_POST['name']?

Лучший ответ:
Вы пытаетесь сериализовать this но в текущем контексте this это кнопка, по которой происходит клик. Сериализовывать нужно поля из формы - var form_data = $('#feedback').serialize();

Худший ответ:
Вот рабочий вариант$('#form_sendMail').on("click", function () {
	var name = $('#form_name').val();
	var email = $('#form_email').val();
	var number = $('#form_number').val();
	var message = $('#form_message').val();

	$.ajax({
		url: 'ajax/mail.php',
		type: 'POST',
		cache: false,
		data: { 'name': name, 'email': email, 'number': number, 'message': message },
		dataType: 'html',
                beforeSend: function() {
			$('#form_sendMail').prop("disabled", true);
		},
		success: function(data) {
			if (!data)
				alert("При отправке возникли ошибки, попробуйте позже.");
			else
				$('#mainForm').trigger("reset");
			$('#form_sendMail').prop("disabled", false);
		}
	})
})
Вопрос: Стоит ли читать 2 книги по программированию параллельно?

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

А каша зависит от индивидуальной организации мышления. Кто-то может, кто-то нет. Из хорошего - это тренируется.

Худший ответ:
Книгу "Мифический человеко-месяц" обязательно нужно читать в двух экземплярах параллельно. Очень помогает усвоить изложенный в книге материал.
Вопрос: Кто готов взять на стажировку с нуля по фронтенду?

Лучший ответ:
Увы никто. Сначала полгода самостоятельной работы, потом, возможно, кто-то и возьмёт. Потому что, даже если ты будешь бесплатно работать, время твоего наставника стоит денег.

Худший ответ:
Как правильно коллега заметил, если ты не готов платить, то платить придется твоему наставнику своим временем. Твоя работа это не окупит, пока тебя нельзя будет "использовать в продакшене". А теперь, внимание, вопрос: кому это надо?

Если нужен ментор, то найми. Ну или там на курсы можно пойти, платно конечно. 

Нет практической задачи - придумай. Напиши код. Еще придумай и еще напиши. Находи лучших и подражай. И пиши код. Когда кода будет достаточно - приходи, подумаем. Вот ты сейчас пришел такой: "Возьмите!" А с чего вдруг? Где пруфы, Билли? Где хотя бы репозиторий на гитхабе? Примеры работ? Где?

Удача любит подготовленных.
Вопрос: Как на CSS сделать такой блок?

Лучший ответ:
Это фиксированный блок, логика работы такая: сделать блок в сайдбаре – фиксированным (плавающим). Чтобы он прилипал только в тот момент, когда пользователь доскроллит до него. Блок должен «отлипать», доходя до футера (т.е. не перекрывать его). На tproger.ru сделано стилями position: fixed (см. скрин), но присваиваются они через js: 

Худший ответ:
shpargalkablog.ru/2013/09/scroll-block.html пункт номер 3
Вопрос: Из-за чего возникает ошибка fatal error: concurrent map writes?

Лучший ответ:
Эта ошибка возникает потому что вы из двух горутин одновременно пишете в одну мапу. Так нельзя, ибо map не потокобезопасен. Конкурентный доступ к ней надо защищать мьютексом.
Или можете использовать sync.Map, который появился в go 1.9, там это сделали за вас.

Худший ответ:
bson.M это map, это ссылочный тип. Когда вы передаете map аргументом в функцию вы передаете ссылку на участок памяти. Соответственно при конкурентном доступе к этому участку и возникает ошибка. Вам следует либо защитить этот участок примитивами синхронизации вроде sync.Mutex либо передавать в функцию не map, а копию. Например (в коде из вашего комментария)func SiteController(w http.ResponseWriter, r *http.Request) {
    bsonQuery := bson.M{}
    if node.Params.ExtendFilter != nil { //node.Params.ExtendFilter глобальная переменная
    //следует не просто взять ссылку на нее
    //bsonQuery = node.Params.ExtendFilter
    //а сделать копию для безопасного конкурентного использования
        for key, value := range  node.Params.ExtendFilter{
              bsonQuery[key] = value
        }
    }
    ....
   doc, err := documents.GetDocumentFrontend(bsonQuery, true)
}
Вопрос: Как записать iso windows на флешку из linux?

Лучший ответ:
просто и быстро
balenaEtcher 

ps должна быть в родных репах, или с сайта а в AppImage

Худший ответ:
Воспользуйтесь windows2usb.
Вопрос: Должен ли я хранить данные о юзерах и нести ответственность за их действия, если при регистрации они принимают соглашение, что не являются людьми?

Лучший ответ:
Глупая оферта вас не спасет, далее если ваш адвокат будет за это цепляться любой суд признает ее ничтожной

Худший ответ:
Пользователь при регистрации принимает оферту, что он не является человеком.Это невозможно. Такая оферта признается ничтожной.
Вопрос: Почему heroku не хочет загружать мой проект?

Лучший ответ:
Опечатка в слове reqirements.txt а надо было requirements.txt

Худший ответ:
Попробуй перезагрузить терминал(закрой и открой) И заново залогинься. Такое иногда бывает
Вопрос: Какая среда рабочего стола самая стабильная?

Лучший ответ:
Больше года постоянно работаю в Linux и последние 2 месяца провел тестируя различные среды, хотел найти для себя самую удобную как в плане работы так и в настройках.
Итого:
Gnome - визуально красива, близка к "идеалу", но через месяц использования достали визуальные эффекты и пара мелких, но очень важных и неприятных багов - 1 как ни настраивай Dashboard, всё равно не можешь добиться 100% нужного поведения; 2 - нет информации о событиях в приложении как на таскбаре, всё время приходиться перепроверять всякий Skype, Slack и т.п. И в Gnome из-за его javascript происхождения, многие апплеты вызывают периодические подвисания.
LXDE - была близка к идеалу, очень скромна в ресурсах, но не хватает многих важных мелочей, особенно для ноутов, например управление питанием и яркостью (не пишите, что всё можно добавить, я описываю готовый комплект).
LXQT - много глюков в панели и апплетах, зачем она нужна я так и не понял.
Mate - глючная панель, часть приложений убоги.
Cinnamon - плохие апплеты для панели, многие давно заброшены.
KDE - недоразумение.
i3 - пока не осилил, слишком иная концепция. Но стремлюсь, т.к. это предел совершенства.

Итого я вернулся обратно к XFCE - настраивается абсолютно всё, хорошая поддержка ноутбуков, не жрёт ресурсов и не отнимает места на экране, хорошая панель и апплеты, которые постоянно улучшаются и добавляются новые.
Новичкам посоветую Gnome - создаёт очень сильное визуальное впечатление и имеет хороший UX, чем положительно влияет на желание слезть с кожаной иглы Windows.
И ещё: после такой гибкости и удобства в Linux, от убожества интерфейсов Win начинает тошнить.

Худший ответ:
Пользую Gnome Flashback (Gnome2) лет 7-8 --- полет нормальный, ничего не хочется менять.