pavki/hr_qa_sbs_best_bad huggingface dataset:
Вопрос: Стоит ли учить Jquery?

Лучший ответ: позорно не знать jquery, ибо его учить недолго-то.  
https://trends.google.com/trends/explore?q=jquery
https://trends.builtwith.com/javascript/jQuery

Худший ответ: Имхо, стоит. Как не крути, а за много последних лет jQuery стал для многих чуть-ли не синонимом самого JavaScript. Много людей, начали понимать и учить front благодаря простоте jQuery, от которой, в свою очередь, как было сказано выше, оттолкнулись множество других фреймворков.
Так или иначе, juery учить стоит и, как по мне - ПОЗОРНО - НЕ знать его в современном мире разработки. 
Удачи!
Вопрос: Какое направление лучше выбрать при изучении c#?

Лучший ответ: 1) С# или Visual C#?
Где вы прочитали это? В природе бывает лишь C# и он описывается стандартами. Visual %LANG_NAME% обычно Microsoft называет свои версии Visual Studio, заточенные под конкретную технологию. Но язык все равно С#.2) Что такое платформа .NET Framework?
Это как бы...фреймворк) То есть вся та среда, в которой исполняется ваша программа, включая виртуальную машину (CLI) и библиотеку стандартных классов (FCL). То есть скомпилировав свое приложение, вам его нужно этой среде передать и она гарантирует наличие всего необходимого, чтобы приложение выполнилось. Пишет о нем отлично местный гуру - Джефри Рихтер в "CLR via C#". Странно было бы, если учебники, скажем, по JavaScript вплотную рассматривали бы V8, правда?)3) Недавно прочитал про .NET CORE.
Это альтернативная реализация .NET Framework. Оно иначе работает и FCL там построена иначе. Но C# там точно такой же, как и на "большом" фреймворке, так что начав учить его вы ничего не потеряете. А уж MS позаботится, чтобы их сопутствующие технологии тоже не сильно отличались (ASP.NET MVC от ASP.NET Core, EntityFramework от EntityFramework Core.Вывод: если вы только начинаете, то вам без разницы, хоть под Core, хоть под .NET Framework, язык там один и тот же, консольные приложения такие же. Просто некоторые классы переехали в отдельные сборки. С нуля же лезть в фреймворки (ASP.NET MVC/Core, WPF, EntityFramework (без знания ADO.NET)) - рановато, освойтесь с самим языком, базовыми библиотеками.

Худший ответ: например, клиент-серверные приложения и т.п.
ищите практику работы
Вопрос: Чем конкретно занимается Frontender сейчас?

Лучший ответ: Да, фронты занимаются всем тем, что видит пользователь. И если раньше, это была только верстка под 1-2 браузера, то сейчас это верстка под разные разрешения, анимация, попапы, реактивные компоненты и много чего еще. Не думаю, что обычный бэк пишущий парсеры и API, вот так может взять psd-шный макет по слоям и сделать из него за разумное время адаптивное SPA приложение, например на Vue. Вот отсюда и выросла отрасль - фронт усложнился и нужны узкие специалисты. При этом бэк в свою очередь становится все проще и проще, тк в 90% случаев бэк это лишь набор инструкций для вывода данных из базы.

Худший ответ: Зависит от компании и опыта. Все таки это больше про js, но так же очень не помешает собирать user-friendly интерфейсы.
Что делает? Рефакторит, оптимизирует, внедряет новое, пишет хотя бы на одном из популярных фреймворков, поглядывет на node.js, пишет свои проекты. По хорошему пишет тесты, но опять же зависит от задач и времени на них.
Вопрос: Как прочитать содержимое локального txt файла с помощью js?

Лучший ответ: Никак. Браузер не даст скрипту доступ к FS.
Можно если пользователь добавит фалй сам на страницу - по аналогии с загрузкой через форму https://developer.mozilla.org/ru/docs/Web/API/File...

Худший ответ: С помощью браузера и клиентского js - никак. Это было бы не безопасно. Зашли вы на сайт а сайт парсит все ваши папки и ищет файлы типа password.txt, круто бы было, да?
Можно с помощью серверного NodeJS, нативный модуль fs.
Вопрос: Как получить связи связей в YII2?

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

Худший ответ: Про via почитаю. Сделал я пока по-другому. Добавил в запрос:$posts = Posts::find()->limit(30)->with('labelsrelations.labels')->all();
А в промежуточной модели PostsLabelsRelationships добавил связь с метками.
Вопрос: При onclick отправляется get, как исправить?

Лучший ответ: У вас внутри функции нет event так как вы его туда не передаете в вызове функции. Если всё оставить как сейчас, то нужно сделать так:
1. Либо в конце тела функции написать return false;
2. Либо так<a href="#" onclick="event.preventDefault();  popopen('.syswarning', './delete')" title="Удалить товар" class="button careful u-pull-left">Удалить товар</a>
или<a href="#" onclick="popopen('.syswarning', './delete'); return false;" title="Удалить товар" class="button careful u-pull-left">Удалить товар</a>

Худший ответ: Я не вижу в коде, где у вас этот удаляющий товар гет отправляется, скорее всего, в другом месте кода, скорее всего, он на клик первой кнопки повешен. И срабатывает раньше, чем тот код, что вызывает попап, по этому отменить его уже невозможно) В общем, посмотрите в инспекторе, какие события у вас на этой ссылке висят
Вопрос: Сам не понимаю, как я добился этой sql инъекции?

Лучший ответ: Вы язык SQL знаете вообще ?

Худший ответ: Поставил это случайно, окей я понимаю, что когда мы вводим кавычку, подразумевается что тело запроса окончено, дальше мы ставим комментарий (причем без пробела), все что после него не учитывается, потом снова кавычка, которая не учитывается вроде бы, потому что мы поставили знак комментария, однако если написать вот так '== или вот так ==' или вот так 'SELECT pass FROM users where id=9, то все это неверно, че за фигня и как это работает?
Без пробела -- распознаётся как арифметическая операция, а не комментарий (это описано в документации).
чтобы вычислить ваше выражение
login ''--''
вступает в дело неявное преобразование типов, которое преобразует '' в 0. Получается 0--0.
Чтобы сравнить все значения login в таблице c этим 0 опять вступает в дело преобразование типов и каждое значение приводится к числу (соответственно если логин начинается не с цифры, большей 0, то он будет равен 0). Ну и в результате запрос возвращает все логины, начинающиеся не с цифры, большей 0.
Вопрос: Как развиваться дальше и где черпать идеи/задачи?

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

Худший ответ: Купите например одноплатный компьютер Raspberry PI, на нем реализуют многие идеи автоматизации и компьютерного зрения. Есть фриланс и вакансии.
Можете купить для него камеру и колеса с электродвигателяли и научить ездить по размеченым краской дорожкам, так чтобы робот мог приехать в любой заданное место на складе по таким дорожкам с разметкой.
По Raspberry PI есть фриланс и вакансии, используют его вплоть до управлаления станками ЧПУ. Основной язык Python и С++ под Linux. Программисты Linux получают хорошо, а системные программисты еще лучше (сборка Linux, написание драйверов), с такой специальносью возьмут работать и заграницу.
Вопрос: Как можно собрать на div такую таблицу?

Лучший ответ: Можно по старинке и на флоатах, адаптивный пример:https://codepen.io/viewDidLoad/pen/bWPPzB

Худший ответ: Если делать в лоб ( по - тупому ) то так
Лучше делать так
Вопрос: В чём разница done и success в ajax?

Лучший ответ: Практически ни в чём. Функции, переданные туда, будут выполнены при одинаковых условиях.
Разница лишь в том, как передаётся функция-обрабочик события done (при инициализации запроса в первом случае и привязкой к обещанию во втором случая). На практике разница заключается в том, что втором примере можно указать сразу несколько функций, которые будут вызваны при завершении:var deferred = $.ajax({ ... });
deferred.done(function(data) { /* Действие 1 */ });
deferred.done(function(data) { /* Действие 2 */ });

Худший ответ: success   : function (data) {}
устаревший метод, при этом удаленный с версии 3.0
дока
Вопрос: Как фронтендиру создать хорошее веб приложение не зная php?

Лучший ответ: В последнее время стало модно использовать на стороне сервера NodeJS, то есть тот же JavaScript.  Это обусловлено тем, что стало возможно обходится без чуваков, которые пишут серверную часть на других серверных языках, и это сражу подхватили работодатели, оно то и понятно почему, зачем ещё содержать этих чуваков, если можно напрячь верстальщика, чтобы тот сварганил ему и back-end. Если выкинуть из NodeJS такие возможности как "асинхронность" и "многопоточность", то эта реализация ничем не лучше других, даже в некоторых местах хуже. Есть место и для NodeJS, где среди других он вне конкуренции, но полностью переписать и поддерживать back-end на JavaScript - это нужно быть либо фанатом JavaScript, либо упоротым!

Худший ответ: Пишем серверн а JS
NodeJS + express
NodeJS + graphql
Вопрос: Как поместить и отсортировать имеющееся ключевые слова от низкочастотных к высокочастотным в программе Key Collector?

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

Худший ответ: взять программу Excell
Вопрос: Максимальная пороговое напряжение затвора?

Лучший ответ: treshhold voltage - напряжение, при котором транзистор только начинает открываться, а значит для ключевого режима это лишь самая малость (в качестве примера IRLZ44N)
Диапазон напряжений на который рассчитан затвор транзистора обзывают gate-to-source voltage, вот его превышать нельзя
И лучше приближаться к значению gate-to-source voltage, т.к. транзистор будет больше открыт, следовательно сопротивление его канала меньше, т.е. меньше потери на нагрев транзистора.
Обычно приводят графики тока от напряжения на затворе при фиксированном напряжении, по ним видно, что при напряжениях близких к treshhold ток через транзистор не очень большой, т.к. он еще не полностью открыт.

Худший ответ: Максимальная пороговое напряжение затвора?В формулировке заголовка не хватает вопросительного слова. Если бы было Каково максимальное пороговое напряжение затвора?, то я бы ответил, что пороговое напряжение - это технический параметр, оно не бывает максимальным, и в реальных схемах на затворе может быть напряжение как больше порогового, так и меньше.
Если же никакого вопросительного слова не подразумевается, то вас можно понять так: У какого транзистора максимальное пороговое напряжение затвора? Трудно сказать, поскольку типов полевиков множество и у подавляющего большинства обычных оно лежит в пределах 2...4 вольта, как тут уже отметили. По принципу, Uпор - это просто напряжение, при котором канал полевика наиболее резко меняет своё сопротивление (т.е. переходная характеристика имеет наиболее резкий излом). Его легко измерить - надо соединить затвор и сток, и подать на эту точку относительно истока +9...12 вольт через резистор 0,5...3 килоом. При этом на транзисторе установится напряжение, равное пороговому. Этот простой способ позволяет отбирать полевики с желаемым Uпор.Полевой транзистор не сгорит?Смотря что вы имеете ввиду. Если пробой затворной изоляции, то от 5 вольт не сгорит, для этого на затвор надо подать > 20...25 вольт. Если тепловое выгорание канала, то это вопрос не к напряжению на затворе, а к подаваемому на канал напряжению и проходящему через него току. И при 5 вольтах на затворе это вполне может случиться.
Вопрос: Легко ли найти работу, не имея формального образования?

Лучший ответ: Нужно четко понять, что время айтишников без образования стремительно уходит.
Если 30 лет назад, айтишник это тот, кто мог разбить винт на партиции, поставить дос, а может даже винду, если 20 лет назад айтишник мог поставить правильные драйвера и настроить перемычки, если 10 лет назад было достаточно знать основы SQL+php, то сейчас наступает время бигдата, agile, облачных сервисов, и ноги чего-нить типа ssh/ssl торчат отовсюду. Сложная математика становится все более востребованной.
Если вы утверждаете, что вы быстро учитесь, кто вам мешает доучиться экстерном? Сдайте экзамены за два года - докажите это себе.
Кто мешает перейти на заочное, и совмещать учебу и работу, получая полное образование и корочку в конце?
P.S. Получить высшее образование ПОТОМ - в разы сложнее, чем сейчас. У вас не будет ни желания ни времени.

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

Лучший ответ: Вариант 1: https://jsfiddle.net/b62qcp06/
Вариант 2: https://jsfiddle.net/w5jsb6dg/ (здесь разница в том, что блоки 3 и 4 взяты в отдельный блок)

Худший ответ: Используйте flexbox
Вопрос: Как правильно сделать авторизацию в laravel 5.5?

Лучший ответ: Там же всё из коробки работает, что вы пытаетесь еще сделать?

Худший ответ: Надо мне было просто.
Нашел решение, может кому пригодится.
https://stackoverflow.com/questions/26073309/how-t...
Суть в том что если у вас поле с паролем называется по другому нужно добавить в файл User.php функциюpublic function getAuthPassword()
{
	return $this->password_hash;
}
Функция изменена на мой пример. Удачи!
Вопрос: Как проще сделать мультиязычность на лендинге?

Лучший ответ: Мультиязычность штука хорошая, но нужно дополнительное условие:  Для поисковиков это должно иметь значение или нет? 
Если да, то js (не считая серверного рендера на nodejs), не подходит.
Если индексирование сайта с другими языками не имеет значения, то конечно, в зависимости от сложности, можно с нуля написать на js необходимый функционал, не загружая сайт лишними библиотеками. 
Если текст на сайте не состоит из большого количество фразеологизмов и заумных фраз то можно подключить виджет от гугла, в любом случае стоит проверить как он переведет, и может быть это устроит.
Но смотря со своей колокольни,  с небольшим опытом создания мультиязычных сайтов, а также сайтов с региональными подразделениями, рекомендую переведенные версии размещать на под доменах. Особенно если на сайте с другим языком размещать другой адрес, контакты, номера телефонов и тд. При этом не указывать в мета тегах что сайт является переведенной версией. Тогда Гуглу будет в принципе безразлично, а вот Яндекс например посчитает перевод на под домене за каждый отдельный сайт, и при не очень сильной конкуренции будет выдавать их на одной странице, либо выдавать пользователям нужную версию, в зависимости от геолокации. 
Вообщем, вердикт таков: прежде чем принимать какое либо решение, нужно точно понять чего Вы хотите этим добиться.

Худший ответ: Разные языковые html файлы на отдельные поддомены
Вопрос: Как начать работать во frontend?

Лучший ответ: 1. Вот доступное руководство где и чему нужно учиться 
2. Все зависит от вас. Если можете развиваться самостоятельно, то лучше это делать самостоятельно. В сегодняшнем мире погружаться в тему и пытаться в ней разобраться главный навык для хороших специалистов. Если самостоятельно не хватает сил, энергии, запала, усидчивости, то можно пойти и на эти курсы. Правда по мне так это очень дорого, но я тот еще скупердяй
3. Мне было достаточно знать html/css, чтобы устроиться в банк на первую работу. Через полгода я ее перерос.
4. Фриланс и портфолио не обязательно связанные вещи. Для портфолио, конечно, обязательно нужно сделать как минимум 2-3 работы. Можно взять несколько дизайнов с themeforest или dribble и сверстать самостоятельно. Обязательно с адаптивом.
5. Я думаю после полугода интенсивного изучения и верстки страниц можно устроиться как верстальщик, дальше шлифовать верстку и прокачивать js, и через год можно идти уже во фронтенды и тд. Все зависит от ваших сил и времени. Я заканчиваю рабочий и день и сижу начинаю для себя изучать, итого по 10-12 часов программирования в сутки + выходные. Но это не только работа, это еще и хобби. Иногда хочу посидеть поиграть, а в итоге так засиживаюсь, что забываю обо всем

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

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

Худший ответ: Нашел ответ на stackoverflow https://stackoverflow.com/questions/14525029/displ...
Вопрос: Где можно найти верстальщиков и программистов на удаленке?

Лучший ответ: Мы нашли на мойкруг, там их довольно много.

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

Лучший ответ: Если сами не можете, то воспользуйтесь генератором теней: тык-тык

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

Лучший ответ: Загрузка всех URL, указанных в файле FILE:$ wget -i FILE

Худший ответ: Можно использовать программу Download Master. Загружаете туда список ссылок, и он сам их очередно выкачивает. Если чего-то много качать, то ему даже можно ставить лимит скорости, чтобы он вам не вешал интернет.
Вопрос: Почему не получается подключить шрифты в create-react-app?

Лучший ответ: Я делаю так: в папке fonts лежит файл fonts.css, и этот файл импортируется в App
import “./fonts/fonts.css”

Худший ответ: неправильно указан путь к файлу шрифта, ты уже в директории fonts
Вопрос: Есть ли смысл НЕ использользовать Bootstrap?

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

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

Лучший ответ: Недавно взял в США б/у Lenovo Thinkpad Helix за $100, полный фарш (Core i7, 8 RAM, 256 SSD). Потом обнаружил, что Lenovo Thinkpad Yoga мне бы лучше подошел. Рекомендую взглянуть в этом направлении (б/у в хорошем состоянии на авито или ebay), ноуты за последние годы не слишком мощнее стали.

Худший ответ: В общем если этот вопрос кто-нибудь когда-нибудь ещё посмотрит то я купила себе dell inspiron 13 и в принципе хорошо себя чувствую (правда при детальном рассмотрении оказалось что внутри стоит мать от востро....) воооот
Вопрос: Есть ли книга с объяснением создания готового приложения?

Лучший ответ: Держи
https://www.ozon.ru/context/detail/id/30957824/

Худший ответ: Вирт "Алгортимы и структуры данных"
Вопрос: Верстальщики, есть ли какая-либо программа, которая могла бы заменить photoshop?

Лучший ответ: Есть сервис у самого adobe. Если загрузить в их облако фотошоп файлы, то можно оттуда брать значения и размеры для css. https://assets.adobe.com
Платную подписку иметь не нужно.
Еще есть платный Авокод. https://avocode.com
Еще есть цепелин, но я не вкурсе как туда грузить https://zeplin.io

Худший ответ: Имхо используй тот же PAINT:)
А так, то на почитай Хабр
Вопрос: Стоит ли идти в программисты в 30 лет, но не простым, а..?

Лучший ответ: 1. Как повезет
2. Зависит от региона
3. Тайтлы, зп
Если тошнит от технологий и ЯП, то вам не стоит идти в программинг
Не может тошнить повара от не фирменной сковородки

Худший ответ: 1) Почему вы вообще решили, что на python, JavaScript, php не бывает интерпрайза? Бывает, и ничем не отличается от других. С тимлидами, техлидами и проджект менеджерами. 
2) ЗП как и везде. Специалистам платят очень много, и они востребованы. Новичкам - копейки. Без навыков вы нафиг не нужны никакому интерпрайзу.
3) Так же как и везде. Работать, выбирая проекты всё сложнее и сложнее.  В идеале - с опытным наставником.
Вопрос: Проверка на корректность и «Как измененить методы на ООП»?

Лучший ответ: Yusif Zourab, Всё есть здесь php.net/manual/ru/book.mysqli.php
Вам нужно всё  переделывать в ооп стиль mysqli, либо ничего.
Примерно так (я показал общий принцип, разгребать код не стал, он ужасен, если вообще работает):spoiler<?php

class Hook
{
	private $mysqli;
	
	public function MySQLi()
	{
		$this->mysqli = new \mysqli('127.0.0.1', 'root', '', 'products'); # Подключение к бд

		if ($this->connect_error) {
			die('Ошибка подключения ('.$mysqli->connect_errno.') '.$mysqli->connect_error);
		}
	}

	public function MySQLiQuery()
	{
		$tables = array(
			'hook_on_the_grid',
			'hook_perforation',
			'hook_on_chipboard',
			'hook_on_the_economy_panel',
			'hook_systems',
			'trade accessories'
		);
		$count_tables = count($tables); 
		$queries = [];

		# Перебирает массив $tables и создает новый с готовыми запросами
		for ($i=0; $i < $count_tables; $i++) {
			foreach ($tables as $value) {
				$queries[]  = "SELECT * FROM `$value`";
			}
		}

		return $queries;
	}

	public function MySQLiResult()
	{
		# Устанавливает кодировку для выходных данных бд
		$this->mysqli->query("SET NAMES utf8");

		$query = $this->MySQLiQuery();

		$count_query = count($query);

		foreach ($query as $value) { # Перебор массива и отправка запросов
			$result[] = $this->mysqli->query($mysqli, $value);
        }

		foreach ($result as $value) { # Перебирает первые элементы из каждой категории
			$count_nums[] = $value->num_rows($value);
        }

		foreach ($result as $value) {
			$rows[] = $value->fetch_assoc($value); # ПЕРЕДЕЛАТЬ В ООП
			for ($i=0; $i < $count_nums[0]; $i++) { 
				$rows[] = $value->fetch_assoc($value); # Перебирает и сохраняет все данные из бд # ПЕРЕДЕЛАТЬ В ООП
			}
			$rows = array_filter($rows, function($element) { #Остортировывает пустые элементы в массиве
				return !empty($element);
			});
        }

        return $rows;
    }
  }

    $hook = new Hook;

Худший ответ: Почитайте в поиске про объектно ориентированный стиль mysqli, эта возможность уже есть
Пример ООП стиля$mysqli = new mysqli("example.com", "user", "password", "database");
if ($mysqli->connect_errno) {
    echo "Не удалось подключиться к MySQL: " . $mysqli->connect_error;
}

$res = $mysqli->query("SELECT 'выбора, чтобы угодить всем.' AS _msg FROM DUAL");
$row = $res->fetch_assoc();
echo $row['_msg'];
Было бы гораздо ценнее переделать массивы в ООП стиле, чтобы можно было чейнить функции.
Вопрос: Что изучать, куда двигаться в изучении в Веб-разработки?

Лучший ответ: вот думаю изучать Дерево DOM, или может быть изучить GRID, или например еще нужно изучить как делать фотографии или видео в виде карусели когда изменяется изображениеВы ставите настолько разные штуки на одну полочку, и это говори о том, что вы кроме названия об этих штуках ничего не знаете. Разница примерно как "изучать устройство легкового автомобиля" и "изучать устройство автомобильной печки".
Подробная карта что учить: https://github.com/zualex/devmap
Не обязательно в именно таком порядке, не обязательно вникать в каждую тему до полного понимания, но по крайней мере глядя на любой подзаголовок неплохо бы хоть примерно понимать, про что там говорится.

Худший ответ: Вам нужно брать и делать реальные задания. Реальные макеты верстать, писать код js, который похож на реальный код, который можно увидеть в обычных проектах. Главное это реальные задачи. Учение ради учения не имеет смысла.