pavki/hr_qa_sbs_best_bad huggingface dataset:
Вопрос: Вопрос относительно по Redmine?

Лучший ответ: Redmine - это система управления проектами. Можно создавать описания для задач, которые вместе повлекут за собой выпуск новой версии ПО, следить за ошибками в ПО, назначать ответственных за исправление оных, прикреплять документы, писать документацию. Это удобно и для менеджеров проектов и для участников проекта, поскольку видно кто над чем работает.Создаёшь новый или открываешь существующий проект (название выпускаемого продукта или его серии)В разделе Issues кто-то создаёт новые задачи для выполнения с описанием того что нужно выполнитьКто-то (Assignee) берёт ту или иную задачу, выбирая по заранее заданному приоритету исполнения. При этом вовлечённые/заинтересованные в данную задачу лица будут получать по эл. почте уведомления при любом изменении/добавлении чего-либо в задаче или при новом комментарии.Открываются/закрываются issues (feature/bug), проект продвигается
Пример задач можно увидеть здесь: https://bugs.ruby-lang.org/issues

Худший ответ: 1. Если предметно, то по написанию плагинов для RM есть туториал.
2. Судя по тому, что все свои вопросы ты изложил в одном абзаце, до этого не писал ни на python, ни на java - тебе придется туго :). Ruby и RoR - не те технологии, с которых удобно начинать программировать, они больше подходят людей с определенным количеством опыта. Я не говорю, что это прямо невозможно, но этот путь более трудный, нежли начинать, например, с python. 
Кроме того Redmine - достаточно старое приложение, которое ведет свою историю от Rails 3 или может даже Rails 2, а сейчас большинство обучающих материалов - про 4 или 5 рельсы. Тоже не лучший вариант для начала, но все же попробуй разобраться.
3. По поводу "никто ничего не объясняет".  Я конечно понимаю, что тебе как начинающему выбирать не приходится, но вообще не рекомендовал бы строить долгосрочных планов по поводу этой конторы и подобных ей.
Вопрос: Как решить проблему с запросом в mysql golang?

Лучший ответ: Ваша проблема легко решается чтением документации.

Худший ответ: Замените SELECT * FROM ...
на SELECT user_key FROM ...
Вопрос: Как включить Wifi адаптер в kali linux?

Лучший ответ: Cannot find device "wlan0"
Failed to get interface index: No such device
Очевидно, адаптер у  вас по-другому называется.
Что выводит iwconfig ?

Худший ответ: Для чипа BCM43142 нужно использовать драйвер wl, а не b43,  смотрите https://wiki.debian.org/ru/wl
Вопрос: На каких ресурсах сидят люди, которые ранее работали в интернет-проектах об обучении?

Лучший ответ: на этих самых проектах

Худший ответ: Их не сложно найти. По своим же проектам.
Вопрос: Как анимировать изменение содержания?

Лучший ответ: Если длинныйдлинныйзаголовок1 умещается в одну строку, то будет красиво реализовать этот эффект на чистом CSS

Худший ответ: Решение оказалось простым)
Если кто-нить подскажет как его сократить - буду рад)<span class="vir">LongLongTitle1</span>$('.vir').each(function () {
        var txt = $(this).text(),
            short;

        if (txt.length > 5) {
            var start = txt.substr(0, 2),
                end = txt.substr(-2, 2);

            short = start + '...' + end;
            $(this)
                .addClass('shorted')
                .attr('data-full-text', txt)
                .attr('data-short-text', short)
                .text(short);
        }
    });
    $('.vir')
        .mouseover(function () {
            var self    = $(this),
                words   = $(this).data('fullText'),
                len     = words.length,
                wdth    = len * 10,
                c       = 0;

            $(this).animate({ 'width': wdth }, 200).text($(this).data('fullText'));
        })
        .mouseleave(function () {
            var self    = $(this),
                words   = $(this).data('shortText'),
                len     = words.length,
                wdth    = len * 10,
                c       = 0;

            $(this).animate({ 'width': wdth }, 100).text($(this).data('shortText'));
        });
Вопрос: Какая есть хорошая книга по js играм?

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

Худший ответ: Только Для совсем начинающих, я ещё даже змейку не сделал 
Имеет смысл ознакомиться с этим, как раз канвас и змейка:
https://dart.academy/web-games-with-dart-and-the-h...
Тоже в браузере.
Но не JS, а Dart. Там более логично.
Вопрос: Шифрует ли личные переписки вконтакте у себя на серверах?

Лучший ответ: Навряд ли.
Зачем им лишний оверхед?
Они даже картинки НИКОГДА не удаляют с дисков для упрощения. Удаляют только ссылки на них.
А вы хотите такую ресурсоемкую вещь как шифрование.

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

Лучший ответ: Умеете писать тексты?
Учите питон и пишите текстовый квест
Запускайте его в соцсети и мессенджеры
Нет никакой серебрянной пули, чтоб за 10 лет стать EA

Худший ответ: 1) Используй готовые движки Unity, Unreal Engine, CryEngine3 иначе никак. Свой движок  ты не напишешь, это очень долго, трудоемко и бессмысленно.
2) Язык движка Unity (C#,Javascript) , UE(C++)...
3) Любой. Если игра будет в дальнейшем продаваться, смотри на чем выгоднее. К примеру Unreal Engine полностью бесплатен, но если игра будет приносить более 3000$ за квартал то придется отдавать 5% Epic Games. На Unity придется сразу вложиться...
4) Делай то что тебе нравится. Все равно скорее всего интерес быстро пропадет и все закончится не успев начаться.
Вопрос: Как удалить параметры из адресной строки?

Лучший ответ: пример на D7use Bitrix\Main\Application;
use Bitrix\Main\Web\Uri;

$request = Application::getInstance()->getContext()->getRequest();
$uri = new Uri($request->getRequestUri());
$uri->deleteParams(['id']);

echo $uri->getUri();

Худший ответ: Это GET параметр запроса, полностью его удалить нельзя. Есть один вариант как его замаскировать. Используйте файл .htaccess для того, что бы создать ЧПУ.
Вопрос: Какая виртуальная среда для Windows 10 может использовать видеокарту (в Hyper-V к примеру не отображается моя NVIDIA 1080) установленную в ПК?

Лучший ответ: Чтобы виртуальная машина могла использовать видеокарту на полную катушку нужно ее "пробросить" с помощью настроек виртуальной машины в гипервизоре. При этом сам хост уже не сможет ее использовать. То же самое верно и для других устройств.
Чтобы вы могли пробросить в виртуалку видеокарту у вас должно быть две видеокарты. Тогда одну вы можете использовать на хосте, а другую пробросить в виртуалку.
Не факт, что ваш гипервизор умеет пробрасывать что-то, кроме USB портов.
Из того что я знаю, подобное умеют VMWare ESXi и Citrix XenServer (Hypervisor). 
Десктопные варианты гипервизоров это не умеют, имхо.

Худший ответ: Все, что написано выше - бред. Для проброса используется связка qemu-kvm и правильно настроенное ядро linux. На ЛОРе эта тема обсуждалась неоднокрано. Из реальных сложностей, которые возникнут в "первый раз" - это настройки cpu (просто указать, как у хоста - недостаточно, лично я использовал libvirt, что бы подсмотреть некоторые моменты), настройки ssd и hdd(можно использовать как отдельные диски(более быстрый способ), так и gcow2 образ диска на ext4 в lvm) и balloon driver `а
Пробрасывается как nvidia(мой вариант 1080), так и ati
Если нужно "в окне" - то есть Looking Glass
Если грамотно настроить, производительность упадет не более чем на 3-5% (пруфов к сожалению не дам)
Вопрос: Ошибка в калькуляторе на js, почему?

Лучший ответ: Это пока то, что заметил. if (a === "умножить")alert(result)
= присвоение
== это сравнение равенства
=== сравнение равенства значения и типа переменной, то есть сравниваем строку с строкой и только.

Худший ответ: let a = prompt(`Что вы хотите сделать?`, `Напишите "умножить" или "разделить", "сложить" или "вычесть"`);

if (a == `умножить`) {
	let z = +prompt(`Напишите первое число`, ``);
	let x = +prompt(`Напишите второе число`, ``);

	let result = z * x;

	alert(result);
}
Вопрос: Что нужно для первого приложения(ios/android)?

Лучший ответ: 1) Xamarin.Forms для разработки UI и бизнес-логики на C# сразу под обе платформы;
2) OSX для сборки и деплоинга билдов приложения под iOS (любой макбук подойдёт) и желательно айфон;
3) Навыки в WPF для верстки UI;
4) Навыки в SQL для работы с SQLite;
5) Visual Studio для Windows или OSX;
6) Документация по Xamarin, Android SDK и iOS SDK;
7) Прямые руки, желание изучать технологию и представление конечного результата.

Худший ответ: Начинай с изучения для аднроид Java для айос Objective C. Когда выучишь приходи.
Вопрос: Пригодится ли мне опыт 1С-программиста в работе (не 1С)-программистом?

Лучший ответ: 1с - отдельная сфера, не связанная с другими областями программирования.
Лично я (мое сугубо субъективное мнение) 1с'ников вообще за программистов не считаю.
Если хотите программировать, учите питон. Недостаток опыта можно клмпенсировать собственными проектами. Начните с самых простых. Поделитесь ими на github. В it компаниях ценятся кандидаты, у которых есть собственный репозиторий на github. Да, вам придется изучить систему контроля версий git. Очень полезный инструмент в разработке. Освоить можно за пару-тройку дней.
Есть на ютубе полезный канал для новичков, называется SHIFU.
 Посвящен развитию программиста как специалиста.

Худший ответ: Идите по 1с, сейчас хороших спецов как горячие пирожки расхватывают, особенно те кто работают с НФО и ПИФ. рарус еще то г пилит и народ очень активно привлекает сторонних спецов на доработки конфигов
Вопрос: Как сделать Link из функции в react?

Лучший ответ: Как-то такimport React, { Сomponent } from 'react'
import { withRouter } from 'react-rouer-dom'

class Game extends Component {
  constructor(props) {
    super(props)
  }
  finishGames = () => {
    this.props.history.push("/finish")
  }
  render() {...}
}

export default withRouter(Game)

Худший ответ: через history.push("/finish")
Вопрос: Как лучше сделать закрытое REST API?

Лучший ответ: CORS не имеет ничего общего с API. Т.к. это - браузерная технология и используется для скриптов внутри браузеров.Простой принцип разделения:
1. Для всех - список параметров без ключа.
2. Для себя - список параметров с неким ДИНАМИЧЕСКИМ ключом (токен подписи) и формулой его генерации, которая известна только Вам.Теперь, защита от перехвата (лучше делать, даже если есть SSL):
1. На сервере храним формулу генерации подписи запроса на основе входных параметров запроса к API и временной метки.
2. При обращении к функциям "закрытого" API (для личных целей) Вы формируете подпись запроса, предварительно СИНХРОНИЗИРУЯ время с серверным, и затем, согласно формуле, отсылаете на сервер.
3. Сервер, зная формулу делает тоже самое и сверяет значения присланной и полученной (по той же формуле на стороне сервера) подписи: если они не совпадают ИЛИ просрочена ИЛИ это дубликат - сервер запрос к API отклоняет, иначе - запрос исполняется.
4. Сервер кэширует запрос на время погрешности синхронизации, чтобы предотвратить повторное использование идентичного запроса посредством MiTM-перехвата.

Худший ответ: Вам нужно смотреть в сторону OAuth авторизации (не путать с аутентификацией).
CORS вряд ли вам поможет. Так как он дает привелегии для доменов, а не для пользователей.
Вопрос: Для чего делать такие размеры?

Лучший ответ: Смотрите ситуацию. Я человек с плохим зрением. В моём браузере стоит увеличенный размер шрифта. Я открываю сайт в котором верстальщик шрифты указал как надо, в rem, а на размеры/отступы забил и задал их в пикселях. Получается уродство:
Потом верстальщик стал умнее, и переписал размеры/отступы в rem'ы и сразу всё стало очень хорошо:
Понятно?

Худший ответ: Чтобы слабовидящие люди тоже могли пользоваться сайтом, всего лишь поменяв размер шрифта.
Вопрос: Заказчик перевел деньги, а они все еще не пришли — как узнать состояние перевода?

Лучший ответ: Как раз таки у сбербанка и бывают такие траблы. А вообще на любой банк перевод может занять до 5 дней но такое очень очень очень редко бывает. я с таким лично не разу не встречался. Максимум шли 2ое суток на сбер и то пару раз за всю жизнь, а на альфа банк вообще никаких проблем всегда не дольше секунду.
Если вы сомневаетесь что заказчик мог вас обмануть, то попросите у заказчика чтобы он сказал вам Номер транзакции затем звоните в банк и говорите так и так и называете номер транзакции и тебе уже точно скажут был ли перевод или нет вообще. А дабы не обидеть заказчика недоверием скажите ему что хотите позвонить в банк и узнать по номеру транзакции скоро ли обработают.

Худший ответ: Перевод внутри банка моментально
Перевод с карты на карту или с межбанковский до трех рабочих дней
Вопрос: Какой лучший способ автоматизировать процесс архивации и отправку по ftp Windows?

Лучший ответ: FTPRun.cmd@echo -------------------------------------------------------------------- >> ftp.log
@echo %date% %time% >> ftp.log
@ftp -s:arch.txt ftp.narod.ru >> ftp.log
@echo %date% %time% >> ftp.logarch.txtbackupdata
21784
debug
trace
prompt
binary
mput D:\MSSQL\BACKUP\*.bak
close
byeкак реализовать
Все команды серверу выполняются его ОС, в вашем случае UBUNTU.

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

Лучший ответ: Тест SPF и DKIM записей

Худший ответ: Проблема оказалась в том что ip сервера попал в спам лист. После удаления из спам листа почта стала исправно приходить.Вставить свой айпи для проверки
Вопрос: Для чего react server side rendering?

Лучший ответ: 1. SSR нужен в проектах для которых важна индексация поисковиками.
2. Такие приложения называют не SPA, а изоморфными.
3. SSR в изоморфных приложениях используется с REST API, так что проблем с мобильным клиентом у вас не возникнет.
4. Рендерится все тоже самое, что и в SPA только на стороне сервера, после передачи клиенту приложение работает как обычное SPA и взамодействует с сервером по REST API.

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

Лучший ответ: Без скрытого поля никак не обойтись, или есть способы?
Есть , удали input  hidden, а в файле php используй $_SERVER['HTTP_X_FORWARDED_FOR'] or $_SERVER['REMOTE_ADDR']

Худший ответ: Я бы оставил скрытое поле. Не вижу в этом проблемы.
Понятно, что вы привели пример - хотите получить ip пользователя. И вам правильно сказали - лучше это делать в PHP ($_SERVER['REMOTE_ADDR']).
Но не уточнили, что это ещё верно с точки зрения безопасности.
Но вернемся к передаче данных. Произвольных.
Так или иначе их проверка всегда должна быть на сервере. Поэтому любые "хитрости" на клиенте бесполезны. Или не имеют смысла. Только усложнят вам задачу.
Поэтому самый простой и наверно правильный способ - скрытое поле.
Вопрос: Как убрать из url сайта .html?

Лучший ответ: Есть два основных пути:Использовать некий условно "движок", который позволяет это сделать его средствами, а именно - позволяет на определенный url сайта отдавать не просто некий файл, а некий результат выполнения некоего кода.
То есть, при запросе вроде your-site.ru/blog/1 он будет отдавать не просто страницу your-site.ru/blog/1.html с обрезанным расширением, а обращаться к некоей функции (условно), которая будет понимать, что ей нужно обратиться к базе данных сайта, взять оттуда запись с индексом 1 и вывести ее пользователю.Если описанный выше функционал не предполагается и нужно просто убирать расширения файлов, то воспользоваться функциями модуля mod_rewrite для веб-сервера Apache, а именно создать в корне сайта файл .htaccess и прописать в нем несколько директив:RewriteEngine On
RewriteCond %{REQUEST_FILENAME}.html -f
RewriteRule !.*\.html$ %{REQUEST_FILENAME}.html [L]
Подробнее об этом можно найти в интернете по запросу вида "mod_rewrite remove html extension".

Худший ответ: ооо, чувак, тебе надо тут уже BackEnd учить. Таков твой путь:
1. Javascript.
  1.1. Сразу переходи на любой FronEnd фреймворк (рекомендую Vue.js)
2. нативный Node.js ( плюс рекомендуется знать систему OSI)
  2.1. Переходи на любой BackEnd фреймворк (раз выбрал Vue.js, лучшим выбором будет Nuxt.js, в другом случае Express вполне неплох)
Ну и дальше изучая документацию или пройдя хороший курс уже ясно будет как строится подобный url.
Вопрос: Верстка по БЭМ. Как будет правильнее?

Лучший ответ: Первый пример более правильный. Кнопка является отдельным блоком, который вы модифицируете в контексте pop-up, а содержимое кнопки является элементом кнопки. Такую кнопку вы можете без проблем использовать в любом месте сразу же с элементом button__text и модифицировать в контексте других блоков.2. Не нужно использовать повторно 
Даже если не нужно использовать повторно, возможно в будущем понадобиться. Сделав один раз более гибкий блок, вы упростите себе поддержку вашего проекта.

Худший ответ: 2й вариант более правильный, т.к ты наследуешь парент.
НО Я НЕ ЭКСПЕРТ :D
Вопрос: Как фиксировать уход пользователя с сайта?

Лучший ответ: onbeforeunload - но надо найти фиксы на FF, там асинхронность и всё такое, запросы обрываются не дойдя до сервера.
А более простой иногда - websocket сервер.
Пустой websocket в котором висит on disconnect событие.
Т.е. когда человек отключился - ушел с сайта - занесли куда-надо в базу.

Худший ответ: Как делал я в php only проектах. 
Я делал глобальный middleware который обновлял онлайн пользователя при каждом запросе. (Редис + ID с бд).
Потом когда кто то заходил на профиль человека то просто проверял онлайн ли он (если прошло больше 5 минут с последнего действия то говорил что он off и писал в редис off и потом уже не сверял время).
Вопрос: Насколько вообще может быть легальна деятельность на Upwork?

Лучший ответ: Не заморачивайтесь слишком сильно. Просто открывайте ИП, платите 6% с того что упало на расчетку, и на всякий случай откладывайте еще 6% на штрафы. Можете перейти на патент с нового года — вообще отлично. Бухгалтерия где-нибудь в Эльбе, счет в Авангарде. 
Но если прям боитесь штрафов, и хотите все сделать максимально правильно, идите в Модуль-банк или Точку, у них там есть бух. обслуживание и жесткий валютный контроль, возможно они подстелят достаточно соломы чтобы штрафов не было. А возможно и нет.

Худший ответ: Скажу только про 5, ибо по некоторым другим пунктам что-то не знаю или игнорирую:
С офшорами появляются другие заботы: законы о КИК, заботы о тех самых штрафах за незаконные операции(по 75-100% от суммы пока что), инфа точно так же может быть через год-другой раскрыта. Да и вдруг снова глобальный кризис?
Хотя, зависит от того, что Вы рассматриваете как офшор? (От этого, кстати, и стоимость обслуживания зависит).
Например, на Кипре, насколько мне известно, будет стоит как раз те $2k. (Хотя, Кипр уже вряд ли считается офшором). Плюс - 12.5% налог на прибыль(Кипру) + налоги в РФ.
По итогу получится процентов 20(или больше). И не факт, что сильно меньше придется париться в итоге.
Я сам думал, как избежать всей этой возни с валютным контролем/налоговой/ИП/НДС/и тп., но пока получается, что дешевле и проще оставаться в РФ. А деньги после уплаты всех налогов можно хранить/использовать по-разному
Вопрос: Как начать писать в функциональном стиле?

Лучший ответ: Самый хардкорный вариант - попрактикуйтесь на языке, на котором не получится писать никак по другому, кроме как в функциональном стиле. Хаскелл, Лисп, Clojure (тот же Лисп), Scheme и тд.
Более плавный - смотрите на свой код и пытайтесь по чуть-чуть переделывать его в функциональном стиле, насколько позволяет язык.
Вместо циклов - функции map/reduce/fold/etc ..

Худший ответ: Лично у меня получилось писать функционально, когда я хорошо освоился с такими понятиями как lazy функции, когда хорошо понял как работает maybe, что из любой функции можно сделать чистую. ну когда есть конкретные штуки, когда видишь почему Task может быть более интересен чем Promise, когда можешь легко написать простейший Task и map к нему. На ютубе есть видео где Фрисби на Реакте пишет.
Короче в какойто момент случиться переворот, когда просто станешь это понемногу использовать. ну все с карри и компоса начнется.
Предупреждаю, пути назад уже не будет!!!! 
вот это посмотри
https://ocw.mit.edu/courses/electrical-engineering...
еще есть книжка к курсу на русском, найдешь в сети без проблем.
Вопрос: Как понять БЭМ, и что мотивирует верстальщик в использовании его?

Лучший ответ: class="custom__button black__button login__forgot reg__button right__part mob-full__width"На вопрос верстальщику что это такое: "Это бэм"
Вам нагло соврали. Это говнокод.Понять BEM

Худший ответ: По-моему, как раз для бэкендщиков и понятен БЭМ, это в принципе единственная здравая идея из тех, что есть на фронте!!!
Потенциально ещё есть WebAssembly, чтобы убрать ГовноСкрипт, но это пока перспективы.
Верстальщика нужно выпороть... и пороть до тех пор, пока не научится.
У БЭМ есть только одна проблема, и ваш случай не редкий, люди вообще не понимают по причине массовой тупости.
БЭМ хорош в двух случаях, или для веб-студии, у которой много проектов или для больших проектов. Основная идея в том, что первая буква - это Блок, и вот любой блок абсолютно не зависит от окружения, поэтому его можно ставить в любое место проекта и не волноваться, в отличии от того же Bootstrap, в котором все на все завязано и при попытки что-то изменить, вылазит куча проблем в разных местах.
Вопрос: Есть ли способ сделать canvas адаптивным?

Лучший ответ: Задай переменную в которую отправляй ширину экрана, и от этого пропорционально уменьшай элементы.

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

Лучший ответ: читайте, потом учите фреймворки. wp для говнарей.

Худший ответ: Для начала нужно освоить 
1) html
2) xhtml + HTML5 (первое время в принципе не так обязательно)
3) Css
4) SASS, LESS
5) JS хотя бы основы
6) PHP
7) CMS созданные с использованием  PHP : Wordpress, Joomla etc
З.Ы 
Тот кто говорит, что нужно начинать что-то начинать делать с CMS полный остолоп и скорее всего далеко не в теме. CMS это всего лишь гуй для управления контентом сайта, а вто чтобы уже допилить ее под себя нужны знания и навыки которые я перечисли выше. Без них копание в CMS будет похоже на тыканье палкой в грязную лужу в попытке обрести истину. 
Удачи.
Вопрос: Как бэк-эндщику учить Javascript?

Лучший ответ: 1. Знать основы достаточно, как формируется страничка, что такое DOM и тд, по этому есть статья объемная,
тут в сжатом виде https://varvy.com/pagespeed/display.html
2. Да учебник не плохой, главное выполнять задачки прочитать все основы, после советую решать задачки на https://www.codewars.com/ очень полезная штука, после решений задачек можно поглядеть как решали другие люди.
3. После изучения ванилы, Jquery то в принципе и учить не надо, что там учить?
4. Для нормального понимания в фреймворках обязательно надо знать vanilla js

Худший ответ: 1. Знать основы достаточно, как формируется страничка, что такое DOM и тд, по этому есть статья объемная,
тут в сжатом виде https://varvy.com/pagespeed/display.html
2. Да учебник не плохой, главное выполнять задачки прочитать все основы, после советую решать задачки на https://www.codewars.com/ очень полезная штука, после решений задачек можно поглядеть как решали другие люди.
3. После изучения ванилы, Jquery то в принципе и учить не надо, что там учить?
4. Для нормального понимания в фреймворках обязательно надо знать vanilla js
Вопрос: Почему не дает поменять DNS?

Лучший ответ: В данном случае судо относится к ехо, а перенаправление в файл получается от имени текущего пользователяecho 'foo' | sudo tee /filename

Худший ответ: Потому-что перенаправление вывода.
sudo bash 
вам в помощь или 
sudo bash -c "echo "nameserver 208.67.222.222" > /etc/resolvconf/resolv.conf.d/base"
Вопрос: Как использовать jsx?

Лучший ответ: Emmet поддерживается в JSX (sublime, например)

Худший ответ: Используйте vue.js, там JSX совершенно опционален. Использую с Jade, брат жив.