pavki/hr_qa_sbs_best_bad huggingface dataset:
Вопрос: В чём проблема с кодом из книги М.Саммерфилда?

Лучший ответ: Не знаю что там в книжке, а у вас Incident наследуется от Object, который определённо не является mapping объектом (каковым является, например, dict).
Оператор распаковки ** к нему неприменим.

Худший ответ: Меня всегда это поражало: зачем люди покупают книги, состоящие из скриншотов, листингов и воды? Вот прямо даже интересно. Стоимость - кошмарная: от 1 до нескольких тысяч. Без гарантии, что осилишь и что это пригодится. Одноразовый, по сути, продукт - если осилишь, то, скорее всего, больше к этому не вернёшься... 
Есть, конечно, "Искусство программирования", Драконова книга и т.д. Но их не много.
А тут - в книге Python 3.0  и очень странные примеры. Про то, как чуть ли не руками читать/писать XML. Длиннющие портянки кода... Это примеры для начинающего? Зачем? Для профессионала? Он и сам разберется...
Мой совет - бросай это дело. Если с основами языка разобрался - попроходи https://checkio.org/ 
Попробуй порешать практические задачки в той области программирования, в которую нацелился (web, ml, gui big-data и т.д.) Найди интересные проекты тебе проекты на github и разоберись как работает, что можно улучшить...
Реальная практика всегда лучше выдуманной (из 2009 года :-) )
Прошу прощения, если резко...
Вопрос: Как обновить базу данных на Android с выходом новой версии приложения?

Лучший ответ: например, так
или google://sqlite+migration+android :)

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

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

Худший ответ: эм, писать что-то вроде этого в js$(document).ready(function(){
    var count = 0;
    $('img').click(function() {
        if (click == 0) {
             img.attr('src', 'новый url картинки');
             click++;
        } else {
             img.attr('src', 'старый url картинки');
             click = 0;
        }
       return click;
     });
})
p.s. установить Jquery
Вопрос: Как исправить Ошибку при импорте конфига .ovpn?

Лучший ответ: Если я правильно понял, то ты прочитал по диагонали некий мануал из интернета, скопировал пример конфига и без редактирования и вникания в опции пытаешься его запустить, так?
> route remote_host 255.255.255.255 net_gateway
Вместо remote_host и net_gateway должны быть конкретные адреса.
Директива route добавляет маршрут до указанной подсети. Используется обычно при соединении сетей через туннель.

Худший ответ: Удалил эту строчку
route remote_host 255.255.255.255 net_gateway
И в IPv4 Settings -> Soutes поставил check на Use this connection only for resources on its network
Вопрос: Как скачать изображение с сайта на HTTPS?

Лучший ответ: Вечер добрый.
Код вполне рабочий, картинка загружается.
Права на запись в директорию image есть?
p.s.
Вот это я бы заменил$fp = fopen($path,'x');
  fwrite($fp, $content);
  fclose($fp);
p.s.s
Весь Ваш код можно заменить на следующий$link = 'https://media.istockphoto.com/photos/two-red-balloons-picture-id505640210?k=6&m=505640210&s=612x612&w=0&h=cr76FHFVLlU1y-artTN3-T77P1XzTwbfou2zjLlZxms=';

copy($link, realpath(dirname(__FILE__)) . '/image/505640210.jpg');

Худший ответ: Попробуйте добавить: curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
Чтобы увидеть ошибки можно сделать так:curl_setopt($ch, CURLOPT_VERBOSE, true);
curl_setopt($ch, CURLOPT_STDERR, fopen('php://output', 'w'));if (file_exists($path)) : // wtf?
    unlink($path);
  endif; // синтаксис шаблонов, зачем он здесь?
Вообще все сохранение можно заменить на file_put_contents
Вопрос: Как прижать flex-контейнер к правой стороне?

Лучший ответ: Банальный margin-left: auto творит чудеса. Привет хитрые моменты из спецификации :)
Вот ваше решение:
https://jsfiddle.net/a0hz7hp1/3/

Худший ответ: А может сделать так
https://jsfiddle.net/a0hz7hp1/1/
Вопрос: Имеет ли смысл начинать с Си?

Лучший ответ: Плюсы:
Си это сила. У него пока нет конкурентов в системном программировании (разве что rust подкрадывается и D, но они чуть на другие вещи ориентированы).
Минусы:
Сегодня Си это специфика. Это либо системное программирование (разработка драйверов, низкоуровневых вещей, баз данных, интерпритаторов, компиляторов) либо микроконтроллеры и т.д. Так же есть определенные задачи для которых критически важна производительность, там и ассемблер иногда используют, но скоро перейдут на FPGA.
То есть знание Си = знание архитектуры комьютера, а это уже неплохо и пригодится. Сам же язык относительно простой и много времени на его изучение не потребуется.
Если же вас интересуют более мэйнстрим вещи вроде web или мобильная разработка - проще сразу брать какой-нибудь современный динамический язык (python, javascript) и радоваться жизни.

Худший ответ: С++ - это почти надмножество Си, потому придется.
Вопрос: В чём преимущество функций над методами контейнеров?

Лучший ответ: Ну, прямо сразу мы получаем возможность вызывать std::size() еще и для C-массивов, кроме стандартных контейнеров.
Также, для нестандартных контейнеров, доступа к коду которых нет, всегда можно добавить свободные функции begin(), end(), size() , в отличие от методов.

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

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

Худший ответ: Делают. Сложно. Закрытая информация =)
Но, но! 
Вот в субботу будет открытый ивент у нас, приходите =) 
https://events.yandex.ru/events/meetings/15-oct-2016/
Многое расскажут. Окей окей, кое-что расскажут.
Вопрос: Что нужно знать для создания 2D движка?

Лучший ответ: C, C++, OpenGL, OpenAL, Bullet/Box2D, glfw, glm, glew, GLSL, vectors, matrices и вся линейная алгебра. Форматы данных, структуры данных. Пайплайн рендеринга и механизмы работы видеокарты. Ну и UI фреймворк какой-нибудь.

Худший ответ: Вот вам полезный курс статей, думаю пригодится https://habrahabr.ru/post/248153/
Вопрос: Как по очереди с интервалом грузить картинки из папки на компьютере на стену группы VK?

Лучший ответ: Получить все файлы в папке (массив или список), цикл for, а в нем sleep.

Худший ответ: Запускать скрипт планировщиком, добавив ему запоминание того, какие картинки он уже постил.
Вопрос: Как выровнить блок nav по центру?

Лучший ответ: Можно датьmargin : 0 auto;
Можно попробовать переделать на родителю position: relative; и .nav 		@include transform(translate(-50%, -50%));
		top: 50%;
		left: 50%;

Худший ответ: codepen.io/slow_D/pen/ZpoyXp
или нужно что-то более кроссбраузерное?
Вопрос: Роутер на Windows, нужно ли сетевое экранирование внутренней сети?

Лучший ответ: Как надо:
отдельный маршрутизатор на границе, серверы и все компоненты, работающие с внешним миром напрямую - в отдельную зону DMZ, между DMZ и внутренней сетью - statefull fw. На windows-сервере ISA-прокси для внутренних пользователей, прямая маршрутизация между офисными ПК, DMZ и внешним миром запрещена. Все это хозяйство желательно резервировать.
Как можно ака бюджетный колхоз-вариант:
Один линукс сервер, он же stateless fw, желательно на нем прокси, nat менее желателен. Windows-сервер выкинуть вообще. Серверы отделите вланом от пользователей. Прямая маршрутизация между всеми компонентами разрешена, доступы режутся iptables.
Как будет.
Местный админ пойдёт к руководству и скажет, что я не умею управлять всем этим, чтобы управлять этим хозяйством надо ещё двух человек. он же поможет руководству составить ТЗ и методику приемосдаточных испытаний (если он вообще знает, что это такое). Руководство проникнется и выставит вам требования под его дудку.

Худший ответ: 1. Никогда не понимал людей раздающих интернет и осуществляющих маршрутизацию на Windows Server. Даже Kerio на винде вызывал жуткую изжогу.
2. В идеале, внутренняя сеть должна быть разделена на vlan, сервера должны жить отдельно, офисные компьютеры отдельно (иногда и офис разносится по отделам в разные подсети), wifi гости тоже отдельно и все это сдобрить хорошей порцией acl. А на серверах жесткое разделение и контроль доступа.
Вопрос: Апгрейд или Новый ноутбук?

Лучший ответ: ssd + ram скорее всего выручит вас на пару-тройку лет

Худший ответ: Процессор у вас нормальный так что его лучше не трогать. Замените ОЗУ где-то до 8 гигов, а если поддерживает то лучше до 16. Купите SSD на от Samsung или Kingston на 250 или 500 гигов, а HDD впихните в дисковод.
В Xiaomi Air 12.5 смысла не будет. Вы можете апгрейднуть свой ноутбук и по характеристикам он будет лучше чем Xiaomi Air 12.5 за менее большую цену.
Но, если вам не нужно его таскать, то можете собрать добросовестный ПК за 25-30к ориентированный на запуск виртуалок.
Вопрос: Система распознавания «плохих» фотографий. Как реализовать?

Лучший ответ: Нейросеть натренировать можно, а вот шерсть с ладошек после этого не выведешь ;)
Если серьезно - усилия для сколько-нибудь успешного решения такой задачи многократно превысят усилия по модерации в любом обозримом времени. Роботы неизбежно будут применять тупые алгоритмы и выдавать ложные срабатывания, если у вас нет big data размером с весь Яндекс.Диск.
Купидонов, одетых в крылышки, робот забанит, а негров, насилующих корову - нет.
Лукьяненко еще двадцать лет назад иронизировал по этому поводу: - Знаете, вводили такую международную программу: "СРАМ"?
     Качаю головой. Нет, не помню.
     - Она должна была отслеживать преступников по ключевым словам в электронной переписке, - морщась, поясняет Томилин. - А торговцев порнографией - по розовому цвету голых тел в видеороликах... И знаете, что произошло? Возникла мода - каждое, самое невинное письмо, писать на розовом фоне и сопровождать лозунгами, шапкой из фраз вроде "НЕТ ТЕРРОРИЗМУ! ВЗРЫВЧАТКУ ДОЛОЙ ИЗ ЖИЗНИ! НАРКОТИКИ - НЕ НАШ ВЫБОР, ПОКУПАЙТЕ ЙОГУРТ!" Через полгода программу свернули. 

Худший ответ: Возможно, нужно натренировать нейросеть, но результат не 100%. Есть и готовые решения, допустим из этого списка (работоспособность не проверял). https://ourcodeworld.com/articles/read/582/top-5-b...
Вопрос: За какое время загружается linux на платформе ryzen 3?

Лучший ответ: А какое отношениетяжелые текстовые редакторы,android studio, ide
имеют к за какое время загружается linux
???
И тем более - при чем тут процессор? Загрузка тяжелых программ, особенно на Джаве - это запил винта, процессор для них вообще не требуется.
Собственно, я как раз недавно сменил Phenom II на Ryzen 3. Платформа поновее, память побыстрее, но SSD и HDD те же - никакой разницы при запуске что системы, что IDE не заметил.

Худший ответ: За какое время загружается linuxТут от вас многое будет зависит, от SSD. У меня на i5-8250U с Debian 10 + SSD 860 EVO + KDE ОС стартует за ~11-10 секунд, если верить systemd-analyze.
Рядом стоит Debian 9 (Debootstrap). Стартует за 9 секунд. Если отключить загрузочный экран, то будет грузится быстрее. Если отключить ненужные systemd юниты, то будет грузится быстрее. Если не тащись в ОС хлам - будет грузится ещё быстрее.ubuntu, mintЭти двое будут медленее грузится чем тот же Debian. Ещё от DE/WM очень многое зависит.UPD.: странно, что никто ещё Gentoo не посоветовал
Вопрос: Arduino и 7 акселерометров LSM6DS33?

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

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

Лучший ответ: Наверное потому, что о ней никто не слышал?
К тому же дорого, нет тех.поддержки русской, нет специалистов. Ну кому она нужная такая?

Худший ответ: Вообще, советую присмотреться к форку от Odoo - Flectra(https://flectrahq.com/)
По коду он на 99.99% совместим с Odoo. Но, в отличии от Odoo, он полностью открыт
Вопрос: Как разбить число на разряды?

Лучший ответ: А если еще погуглить, то можно найти более правильное решение.number.toLocaleString()

Худший ответ: О, смотрите-ка - погуглил за вас:revenue.toString().replace(/\B(?=(\d{3})+(?!\d))/g, ' ')
Вопрос: Почему телефон совершает непонятные действия?

Лучший ответ: С тобой пытаются войти в контакт инопланетяне.
Не обращай внимания, ну их.

Худший ответ: Установи AVG проверь на вирусы
Вопрос: Сортировка,Фильтрация,Поиск данных.Как это все работает?

Лучший ответ: Я так подозреваю что это все работает на PHP.
И не только. Есть множество бэкэнд-языков. Но в целом да, работает все на серверной стороне.и немного трогаю PHP,MySQL.
Трогают девушек, а языки изучают :)Хотелось бы получить хотя бы заоблочочное понимание как работают эти "ФИЛЬТРЫ",на чем их пишут,и любые другие мысли по данному вопросу,если вам не сложно.Так сказать наделите хотя бы каким то пониманием.Уж очень интересно мне
Если брать конкретно связку PHP / MySQL - то чаще всего идет банальная выборка по полям таблицы. Как только дойдете до работы с БД - поймете о чем я. Ничего сверхъестественного в этом деле нет.
Лучше составлю вам план дальнейшего изучения:Изучаете PHP на уровне функции / переменные / ввод и вывод данных.Изучаете SQL и как работать с MySQL базами на PHP.Делаете форму со вставкой в таблицу, вывод данных, редактирование.Разбираетесь с условиями WHERE (like и т.д.).Разбираетесь в JOIN-ах и связующих таблицах. По началу покажется очень сложным, но посвятите этому время.Изучаете ООП структуру PHP (Классы, неймспейсы, типы функций и переменных). Переписывайте все на него.Переходите на фреймворки вроде Laravel
Времени на этот список уйдет от 4х до 12ти недель.

Худший ответ: "Я так подозреваю что это все работает на PHP"
Нет. На PHP будут работать средства их построения, обработка самогофильтра - задача СУБД. Вашего же mysql, например.
"Хотелось бы получить хотя бы заоблочочное понимание как работают эти "ФИЛЬТРЫ",на чем их пишут,и любые другие мысли по данному вопросу,если вам не сложно.Так сказать наделите хотя бы каким то пониманием.Уж очень интересно мне"
Думаю, стоит начать с SQL. Возможно потом - ORM,
Вопрос: Как вы организуете файлы на компьютере, а также ваша личная база знаний?

Лучший ответ: Винда предлагает для этого т.н. "Библиотеки" - не люблю этот инструмент и не пользуюсь им, поскольку там объединяются файлы, находящиеся в действительности чёрт знает где. А я привык знать точное расположение файла.
Поэтому я в каждом компе по старинке (ещё с Win95) настраиваю папку "Мои документы", задавая ей расположение на разделе d:/ (UserData). 
Остальное - по обстоятельствам, без единого подхода.

Худший ответ: 1. Хранить фильмы на компе в 2017? серьезно? фото в яндекс диске
2. Папка "Полезное" -> Книги.txt, Вещи.txt, Фильмы.txt в них хранятся ссылки на какие-то материалы.
3. Raindrop.io
4. Не особо этим озадачиваюсь, но подписан на некоторые паблики в вк, всякие хабры и около него. Все интересное сохраняю в raindrop
Вопрос: А где можно программировать в двоичных и 16-ричных системах?

Лучший ответ: Начните с Ассемблера. Дальше поймёте :)

Худший ответ: Гуглите hex редакторы, например HIEW
Вопрос: Как безопасно для себя работать через интернет с иностранной компанией?

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

Худший ответ: А чем они вас могут обмануть? У вас что оплата через два года окончания работы?
Вопрос: Как скопировать html код одного блока сайта и все стили его дочерних элементов?

Лучший ответ: Копипастишь кусок html и весь css сюда https://uncss-online.com/
Жмакаешь кнопу
Профит!!!!!!

Худший ответ: Для того чтобы скопировать HTML-код вам достаточно скопировать ссылку на сайт и использовать любой специализированный сервис. Например, вот этот онлайн-пасер кода вполне вам подойдет. Просто вставьте ссылку в поле и запустите копирование. После чего вы делите и сохраните код.
Вопрос: Можно ли использовать WHERE при JOIN?

Лучший ответ: Когда Вы пишите from table1, table2 where...
sql сначала строит декартово произведение матриц (размером count(table1)*count(table2)), а затем получившуюся огромную таблицу фильтрует.
Когда вы пишите join - sql делает фильтрацию на стадии построения декартова произведения, что существенно ускоряет процесс и уменьшает потребление памяти на запрос.
В случае если в какой то из таблиц сильно меньше релевантных записей ( к примеру у нас в базе 1 000 000 пользователей, но всего 10 000 городов) или одна из таблиц не нужна для фильтрации всего запроса (например мы ищем пользователей-женщин без учета города проживания) будет сильно быстрее убрать 2ю таблицу из запроса вообще, получив в первом запросе данные из таблицы users, выбрав на ЯП нужные id и сформировав 2й запрос в базу для получения городов.
select ... from users where user.sex = 0;
select ... from city where city_id in (...)
Imho использование from table1,table2 это признак профнепригодности (к слову как и sql_calc_found_rows хотя это к делу не относится)

Худший ответ: Обе эти ( эквивалентные ) формы перечислены в стандарте, а процесс выпиливания из стандарта SQL таких базовых вещей занимает десятилетия. Так что на нашем веку ничего ни откуда не удалят, пишите так как считаете более читаемо. 
В целом основные точки зрения на этот вопрос такие:
- Всегда писать JOIN и никаких гвоздей
- Две-три таблицы писать через запятую, для остального - JOIN понятнее
Вопрос: Как определить массу нагрузки на валу двигателя?

Лучший ответ: Вариант "в лоб" найти формулу момента под двигатель.
Насколько я помню момент прямо пропорционален току через двигатель, ну и коэффициенты, которые надо будет нарыть/вычислить/получить экспериментально.
Надо будет получить среднеквадратичное значение тока, по нему вычислять момент М (Н*м). 
Используя момент М (Н*м) и длину плеча l (м) до нагрузки - вычислить нагрузку на валу = M/l и перевести это из Ньютонов в кг или сразу момент в килограммах считать.
Если скорость известна, а тиристор открывается на одно и тоже время, то можно просто составить таблицу:
Используем набор импровизированных нагрузок и замеряем какие при этом обороты.
Строим таблицу, затем график и прикидываем функцию которая приблизительно отразит зависимость скорости от нагрузки для данного двигателя. Используем ее.

Худший ответ: на валу может быть "момент", а не "масса". в калькуляторах подобных https://kataltim.ru/krmom.php подставлять значения, подбирая под свои данные. кпд пишется для большинства "стандартных" двигателей на шильдиках, вместе с номинальным напряжением/током и cos(f)
Вопрос: Vlan Default что значит?

Лучший ответ: default (untagged) vlan это номер vlan который присваивается приходящим пакетам у которых нет метки vlan те обычному access трафику. 
Запомните, внутри коммутатора не бывает нетегированного трафика. все идет с тегом. Метка ставится на входе в коммутатор и убирается на выходе если номер vlan соответствует номеру untagged vlan для порта, а если убрать с порта вообще все vlan, то ни входящий ни исходящий трафик в него ходить не будет.
Если вы написали какие нить ACL на порт, то они работают уже после.
Пор может быть без default (untagged) vlan, но это не ваш случай.

Худший ответ: vlan default  - это чаще всего влан с тегом 1, который присутствует на коммутаторе из коробки.
Вопрос: Почему не работает pip3 ошибка сертификата SSL?

Лучший ответ: Вообщем, другим на будущее, перед установкой Python'а на SentOS, необходимо поставить библиотеку openssl (openssl-devel). Пересобрал установленную версию 3.5.3, установив заранее вышеозначенную библиотеку и "о чудо" pip3.5 перестал ругаться. Так же получилось и с версией 3.6.0

Худший ответ: however the ssl module in Python is not available - вам указывают явно на то, что модуль поддержки ssl для python-а не установлен.
Вопрос: Есть ли разница между двумя функциями?

Лучший ответ: не изобретайте велосипед)))
библиотека STL
используйте std::vector
и std::rotate
определение и пример
en.cppreference.com/w/cpp/algorithm/rotate

Худший ответ: 1. Будьте осторожны, перед нами динамический массив, сделанный расширением стека. Не на всех компиляторах есть, плюс стек ограничен парой мегабайт.
Нормализацию размера лучше сделать shift %= size;
Подпрограмма работает с локальной переменной и всё, что она делает, идёт на экран и больше никуда.
(вообще стоит разделять обработку и вывод!)
Время работы size.
2. Сдвигаем на один элемент нужное количество раз. Время работы shift·size.
3. Как за size «на месте»…квоПрох := НОД(shift, size)
для i = [0..квоПрох)
  i1 := i
  tmp := a[i]
  вечный цикл
    i2 := (i1 + shift) % size
    если i2 = i
      прервать вечный цикл
    a[i1] := a[i2]    
    i1 := i2
  a[i1] := tmp
Вопрос: Как количество файлов влияет на работу сервера?

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

Худший ответ: Если коротко, то влияет. Насколько будет заметно вам никто не скажет, много условий.
База данных тоже состоит из файлов.
Вопрос: Можно отследить телефон?

Лучший ответ: ОК, допустим щам вам скажут что да, можно. Дальше что? Поедете по отслеженному адресу бить морды? Попробовали бы сначала в полицию обратиться, а они бы вам уже сказали можно или нельзя отследить, тем более что сами вы запрос на отслеживание не сможете сделать. Исключение - если были активированы сервисы отслеживания у гугла - это вроде где то в аккакнте надо смотреть (https://www.google.com/search?q=android%20find%20m... )

Худший ответ: Отследить могут, но только по запросу полиции, потому что у простых клерков нет такой возможности.  А службе безопасности нужна бумажка - на каком основании отслеживают.
Так что только через полицию.
Если ему еще не устроили полный сброс - то можно через приложения(аакаунт) гугла или самсунга отследить.
Вопрос: С чего начать изучение JAVA? и стот ли его вообще учить как 1-й язык программирования?

Лучший ответ: Самый правильный путь изучить java - это перестать беспокоиться о том правильно-ли ты учишь java, a просто решать на нем задачи, как и на любом другом языке. Да, язык местами громоздкий, отчасти неконсистентный (например, сосуществование примитивных и объектных типов), необьятно-огромная стандартная библиотека, так что можно по-незнанию изобретать велосипед а потом хлопать себя по-лбу. 
Я лично поддерживаю подход, что нужно как можно раньше научить человека читать API. Полезно будет ознакомиться с шаблонами проектирования. Желательно идти от задачи к решению, тогда в мозгу активируется процесс усвоения материала. (т.н. проблемно-ориентированное обучение) Задач для тернировки конструкций языка валом кругом, начиная от интерактивных платформ типа codingame, hackerrank,   codehunt,  codewars  и заканчивая  просто сборниками задач как codingbat.
Тут был как-то вопрос мол стоит ли сначала изучить Java а только потом переходить на разработку под Android. Один из ответов, я бы просто печатал на обложке каждой книги по java: "Вы никогда полностью не изучите Java".  Может после такого откровения вы станете отноститься к этому проще.

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