pavki/hr_qa_sbs_best_bad huggingface dataset:
Вопрос: Возможно ли подключить второй монитор к встроенной видеокарте?

Лучший ответ: почитай про разницу выходов DVI https://itm-components.co.uk/blogs/news/what-are-t...
сравни с тем, что у тебя на материнке и действуй соответственно
в DVI-D нет аналогового сигнала, соответственно в переходнике должен быть конвертер
в DVI-A и I аналоговый сигнал есть, соответственно достаточно просто кабеля DVI-VGA
разные DVI разъемы специально имеют немного разные коннекторы, чтобы ты не мог подключить DVI-I кабель к DVI-D

Худший ответ: можно.
 по серии проца посмотри на https://ark.intel.com/content/www/ru/ru/ark/produc...
Вопрос: Какой язык выбрать для простой обучающей программы?

Лучший ответ: Один день (чтоб вспомнить и написать) на Делфи и готово. Можешь написать мне, набросать небольшое ТЗ, а я сделаю тебе эту программку в свободное время

Худший ответ: Это можно реализовать на VBA прямо из Excel
Вопрос: Как правильно передать множество параметров в функцию в Golang?

Лучший ответ: В таких случаях лучше передавать структуру как параметр.
Пример
type User struct {
    Name string
    Email string
    // все нужные поля далее
}

func CreateUser(r.Context(), user)

Худший ответ: В некоторых кейсах функциональные опции могут оказаться более подходящим решением.
Дейв Чейни подробно писал об этом https://dave.cheney.net/2014/10/17/functional-opti...
Вопрос: Как получить переменную из XMLHttpRequest?

Лучший ответ: const response = await fetch('localhost:1100/api/motivation/salesData?dt=2021-09-01');
const code1 = await response.json();
Изучайте, что такое асинхронность в JS и как с ней бороться.
https://developer.mozilla.org/ru/docs/Learn/JavaSc...
https://developer.mozilla.org/ru/docs/Learn/JavaSc...

Худший ответ: Никак
https://ru.stackoverflow.com/q/554290/190728
Вопрос: При скачке Hamachi вылетает ошибка, почему?

Лучший ответ: это ошибка при установке.
запустите установку от имени администратора

Худший ответ: Нашёл ответ, продублирую его:
открыть командную строку с повышенными правами. Для этого введите CMD в меню «Пуск» или в поле поиска на начальном экране, а затем одновременно нажмите клавиши Ctrl+Shift+Enter.
Кроме того, в Windows 7 и Windows 10 вы можете перейти в меню «Пуск», «Все программы» и «Стандартные». Затем щелкните правой кнопкой мыши командную строку и выберите «Запуск от имени администратора».
Нажмите кнопку «Да», когда увидите приглашение UAC.
В командной строке выполните следующую команду msiexec /a путь к файлу
Пример: msiexec /a C:UsersDonDownloads7z920-x64.msi

Источник: https://otvet.mail.ru/question/229538839
Вопрос: Для чего перезагружать сайт с помощью тега?

Лучший ответ: Для редиректа через определенное время, там url можно указывать:
<meta http-equiv="refresh" content="10;url=https://example.com">

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

Лучший ответ: На сайте производителя в разделе Поддержка для своей материнской платы, либо в книжке-мануале. Например:
https://ru.msi.com/Motherboard/B560-A-PRO/support#mem
https://ru.msi.com/Motherboard/Z170M-MORTAR/support#mem
https://www.gigabyte.ru/products/page/mb/ga-z77-d3...

Худший ответ: На сайтах производителей.
Вопрос: Как решить проблему с Linux?

Лучший ответ: "Готов для десктопа".
Загрузитесь в LiveCD и сделайте fsck для корневого раздела.
Он не может системный раздел подгрузить, fsck может помочь.

Худший ответ: Я не уверен что в Ubuntu есть, но поиши средство восстановления системы или что-то подобное. Результат не гарантирован, но попытаться стоит.
Вопрос: Где взять идеи для python проекта?

Лучший ответ: Там же, где и все остальное
1) в собственной голове

2) в гугле, вот пример как это делать:


Худший ответ: отпиши в тг  @moreengine
есть несколько проектов
Вопрос: Правильность схемы драйвера лазерного диода?

Лучший ответ: в нем нет входа ТТЛ
Я вас удивлю, но в лазерах нет входа ТТЛ. Когда говорят про этот самый вход имеют ввиду плату управления, а не лазер.
шимить лазер не получиться
Почему? Сделайте ШИМ контроллер и "шимте"  на здоровье.
Опишите пожалуйста недостатки и недостоинства этой схемы, а также заработает ли она вообще?
Чисто теоретически схема должна работать, на практике нужно знать параметры лазера. В обще и целом схема фуфло. Вам нужен ШИМ регулятор тока, а не полевик с затвором в воздухе

Худший ответ: если irf в данном состоянии открывается/закрывается (влом гуглить параметры) то будет работать.
Вопрос: Из-за майнинговой истерии, цены взлетели только на видеокарты или на все комплектующие (процесоры, мат.платы, озу)?

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

Худший ответ: Сказали, что майнеры закупают видеокарты и целиком ноутбуки.
Вопрос: Где найти просмотрщик фото без рамок и меню?

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

Худший ответ: Попробуйте https://photoqt.org/
Вопрос: Как правильно поставить тип параметру?

Лучший ответ: interface TodoItem {
    id: number
    subtitle: string
    important: boolean
    done: boolean
}

const generalToggle = (arr: TodoItem[], id: number, propertyName: keyof TodoItem) => {
        const idx = arr.findIndex((item) => item.id === id);
        const oldItem = arr[idx];
        const value = !oldItem[propertyName];

        const item = {...arr[idx], [propertyName]: value};
        return [
            ...arr.slice(0, idx),
            item,
            ...arr.slice(idx + 1)
        ];
    };

А еще лучше, храните TODO объектом по ключам (для мутаций) и отдельно список IDs (для рендера списка), чтобы O(n) не гонять на каждое изменение.

Худший ответ: interface TodoItem {
    id: number
    subtitle: string
    important: boolean
    done: boolean
}

const generalToggle = (arr: TodoItem[], id: number, propertyName: keyof TodoItem) => {
        const idx = arr.findIndex((item) => item.id === id);
        const oldItem = arr[idx];
        const value = !oldItem[propertyName];

        const item = {...arr[idx], [propertyName]: value};
        return [
            ...arr.slice(0, idx),
            item,
            ...arr.slice(idx + 1)
        ];
    };

А еще лучше, храните TODO объектом по ключам (для мутаций) и отдельно список IDs (для рендера списка), чтобы O(n) не гонять на каждое изменение.
Вопрос: Последовательность чтения кода браузером?

Лучший ответ: Percivald, ты не понимаешь.
Тут три действия, а не два.
1. Запланировать показ текущего значения изменяемого объекта planet (console.log() делает именно это!)
2. Изменить значение объекта planet
И спустя некоторое (пусть и небольшое) время
3. Отобразить текущее значение изменяемого объекта planet.
Не важно, в каком порядке выполняются 1 и 2, к момент выполнения 3 значение planet уже будет изменено.

А вот если выводить строку, например, innerHTML, ситуация изменится, потому что строки не изменяемы!
И тогда будет так:
1. Запланировать показ объекта-строки, которая в настоящий момент находится в объекте planet.
2. Сменить содержимое planet на другое. Старая строка при этом не пропадает, так как её показ уже запланирован. Про новую строку консоль ничего не знает.
И спустя время
3. Показать в консоли запланированный объект-строку.

Иными словами, в первом случае содержимое объекта planet читается на шаге 3, где оно уже изменилось. Во втором случае, значение строки, которую мы взяли из planet, тоже читается на шаге 3 - но тот факт, что внутри planet эта строка была заменена на другую, ни на что не влияет.

Вот, на пальцах:
Вариант 1


Вариант 2


Худший ответ: Интересно, если поставить задержку, то в консоли остается первое значение.
Видимо пока console.log еще выполняется, но не вывел значение, начинает выполняться изменение innerHTML, которое заканчивается раньше, чем console.log вывел значение.
<script>
            function init() {
            var planet = document.getElementById("greenplanet");
            console.log(planet );
            setTimeout(() => {
            	planet.innerHTML = "Red Alert: hit by phaser fire!";	
            },1000);
        }
            window.onload = init;
</script>
Вопрос: Перестал открываться сайт, как вернуть его в исходное состояние?

Лучший ответ: вам сюда https://freelance.habr.com

Худший ответ: Кто поставил пароль на public-папку?

Сайт английским языком говорит, нужно ввести пароль. Значит, его кто-то поставил.
Вопрос: Как восстановить почту?

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

Так что общайтесь с тех ПО, напишите им слезную мольбу про восст доступа к почте и убедите. это вполне работает, там живые люди как и Вы

Худший ответ: Думаете есть шансы через суд их заставить дать мне доступ?
Нет. mail.ru - бесплатный почтовый агрегатор и он Вам не должен ничего. У него есть правила, он им следует, а на Вас он просто плевал - Вы же не Дерипаска, не Киркоров :) 

Только переписка с саппортом.
Вопрос: Зачем нужны программы-шреддеры?

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

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

Лучший ответ: Если вы имеете в виду то, чтобы добавить кнопку на сайт, но чтобы она была видна только вам (то есть не делать никаких code-injection, которые навредят другим), то для такого даже не нужно писать никаких userscript'ов, можно воспользоваться расширением для браузера Automa, создав там сценарий абсолютно любых действий, которые будут производится по нажатию или при загрузке страницы, подробнее можно ознакомиться в репозитории или найти ролик на YouTube.

Худший ответ: Если сайт не ваш, тогда вижу только один вариант, написать плагин для браузера, который это будет делать.
Вопрос: Как правильно установить на QT — 5.15.2 плагин wwWidgets?

Лучший ответ: Этой страничке минимум 10 лет. Актуальная версия wxWidgets - 3.14, и скрещивать ее с Qt можно только от очень большого желания создать себе побольше причудливых проблем. 
Уже пытались запилить wxQt - и его развитие довольно быстро ушло в полную стагнацию.

Так что в рамках одного проекта - либы кьют, либо вэ-икс-виджеты. Не смешивать, и взбалтывать тут тоже не о чем.

Худший ответ: Блииин, мне очень позарез нужен TextEdit с тулл баром редактирования



Есть ли какой способ попроще реализовать, у меня защита ВКР через месяц, а времени учить уже нет (в универе за 3 месяца до защиты сообщили, что необходима прога для диплома, а то чему 3 года учили уже не актуально, так что е***тесь как хотите)?
Вопрос: Создание читов с нуля?

Лучший ответ: Смысл изучения С++ для декомпиляции майнкрафта несколько отсутствует, так как сервер написан на java, а взламывать клиент - а смысл?
Изучите как работает сеть, изучите как работает сервер, какие пакеты отправляет/принимает, ищите уязвимости.

Худший ответ: А что за читы?
Если добавить денег/здоровья, то все значения переменных хранятся в памяти, их нужно найти и поменять. Для винды есть artmoney, для линукса - scanmem.

Хотите убрать стены и поставить автоприцел - тут уже зависит от предметной области. Сейчас и на нейронках уже делают автоприцелы)
Вопрос: Как выбрать ключ ssh?

Лучший ответ: Варианта три:
1. Использовать один ключ, второй не нужен. Ключи - это персональные данные, у каждого свой собственный приватный ключ, а где нужно - прописывается публичная часть.
2. Зарегистрировать ключ в SSH Agent `ssh-add ~/.ssh/testFolder/id_rsa` (на винде могут быть сложности)
3. Указать ключ при подключении: `ssh -i ~/.ssh/testFolder/id_rsa root@123123123`

Худший ответ: Когда генеришь ключ (или уже готовый, то просто переименнуй пару) указываешь имя ключа с привязкой к проекту: id_rsa_project1  и id_rsa_project1.pub и при подключении указываешь необходимый ключ: ssh -i ~/.ssh/id_rsa_project1 root@123123123
Вопрос: Как прибавить число к названию переменой?

Лучший ответ: Не надо этого хотеть

Худший ответ: Понятия не имею где это может пригодится
for(var i=0; i < 10; i++) {
  eval(`var or${i} = "blabla";`)
}
console.log(or1)
console.log(or2)
console.log(or3)
Вопрос: Как прибавить к дате несколько дней (суток) с точностью до минуты?

Лучший ответ: Вы вместо минут вывели месяц.
$new_date = $date->format('Y-m-d H:i:s');

Худший ответ: Не работал с DateTime, не знаю, почему такая дата получается. Но вот такой способ работает корректно:
$timestamp = strtotime($old_date);
$newTimestamp = $timestamp + 60*60*24*10;
$new_date = date('Y-m-d H:i:s',$newTimestamp);
Вопрос: Как перевести иконку в линии?

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

Худший ответ: Вот в Ill например:
Вопрос: Как чекнуть скорость редиректов?

Лучший ответ: cURL умеет замерять время https://stackoverflow.com/questions/18215389/how-d...

Пример:
~$ curl -w "time_connect %{time_connect}\ntime_redirect %{time_redirect}s\n" \
 -o /dev/null -s http://wordpress.com/

time_connect 0,052253
time_redirect 0,000000s

Ещё есть утилита httpstat:
httpstat -IL http://wordpress.com/

  DNS Lookup   TCP Connection   Server Processing   Content Transfer
[     3ms    |      25ms      |       140ms       |       53ms       ]
             |                |                   |                  |
    namelookup:3ms            |                   |                  |
                        connect:28ms              |                  |
                                      starttransfer:231ms            |
                                                                 total:284ms

Худший ответ: открываешь страницу, и через f12 в devtools всё видно.
Вкладка Network
Вопрос: Где купить прокси для python скрипта?

Лучший ответ: Как тебе уже ответили. Поиск в гугле даст тебе все ответы.

Сфера услуг эта такая тема, где нужно опираться на отзывы и собственный опыт. В любом случае в большинстве шопов проксю можно взять погонять на несколько дней/неделю. И цены сейчас вполне небольшие.

Так что вооружись парой десятков статей и страниц с отзывами и в бой тестить.

Это за тебя никто делать не будет.

Худший ответ: Бесплатные (публичные) списки прокси: socks4, socks5, http
обновление каждые 10 минут
есть экспорт каждого списка в файл - кнопка экспорт в заголовке таблицы
Вопрос: Почему не могу подключиться к удаленной Mysql через DBeaver?

Лучший ответ: Удалённый доступ по-умолчанию запрещен.

Худший ответ: Используй SSH туннель.  В настройках подключения в DBeaver поищи, там есть такая опция. 
Не надо светить портом 3306 в мир - это плохо кончится.
Вопрос: Зачем нужен GitHub?

Лучший ответ: Если тебе «просто нужно надежное хранилище кода и программ», то тебе нет нужды ходить в веб-интерфейс.
Завёл аккаунт, прописал ssh-ключ и всё.
git commit, git push, git pull вот и все твои команды.

Худший ответ: Как разберешься как пользоваться ) Сразу поймешь для чего нужен Github  =)
Вопрос: Ошибка в Telegram PHP Bot?

Лучший ответ: в чем проблема - говорит интерпретатор.  обращение к несуществующим свойствам объекта. в json эти поля не пришли.

Худший ответ: 100% рабочий вариант...

$callbackData = file_get_contents("php://input");
$ac = json_decode($callbackData, true);

if (isset($ac["message"]))
{
	//Информация об отправителе комманды
	$idMessage = $ac['message']['message_id'];
	$fromGroup = (empty($ac['message']['chat']['id'])) ? 0 : $ac['message']['chat']['id'];
	$fromUser = $ac['message']['from']['id'];
	$from = ($fromGroup != 0) ? $fromGroup : $fromUser;
	$user_info = $ac['message']['from'];
	$command = $ac['message']['text'];
} else if (isset($ac["callback_query"])) {
	//Информация об отправителе комманды
	$idMessage = $ac['callback_query']['message']['message_id'];
	$fromGroup = (empty($ac['callback_query']['message']['chat']['id'])) ? 0 : $ac['callback_query']['message']['chat']['id'];
	$fromUser = $ac['callback_query']['from']['id'];
	$from = ($fromGroup != 0) ? $fromGroup : $fromUser;
	$user_info = $ac['callback_query']['from'];
	$command = $ac['callback_query']['data'];
	$editMessage = true;
}
Вопрос: Как можно считывать все запросы отправленные в базу данных с момента её создания?

Лучший ответ: А как получить ежедневные подробные фотографии строительства дома, в котором вы живёте? Ведь если его строили, и фото можно было делать - значит фото есть!

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

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

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

Вы сдвинули указатель HEAD на конкретный коммит. Теперь сделайте git checkout master (если основная ветка master, что скорее всего) и наблюдайте оба коммита.

Худший ответ: А ещё можно попробовать команду
git checkout -
Это вернёт указатель HEAD в предыдущее состояние, в данном случае на вершину вашей ветки.
Вопрос: Можно ли магическим образом создать объект?

Лучший ответ: Вы всё делаете правильно, метод render() и не должен быть статическим, но что бы всё заработало корректно, вам нужно использовать другой вид записи.
Router::get('/', 'Неймспейс\\SiteController@home');
Либо использовать PHP 8.0

Постараюсь вкратце пояснить почему.
Когда вы пишете такую конструкцию
use App\Controllers; // к примеру
//...

Router::get('/', [SiteController::class, 'home']);
SiteController::class как бы так сказать, преобразуется в App\Controllers\SiteController

Но автор библиотеки плевать хотел на эти ваши неймспейсы и всё что вы там себе придумали.  
Он берёт данные, которые вы передали и получает массив вида
[
    0 => 'App\Controllers\SiteController',
    1 => 'home'
];
Потом проверяет этот массив на is_callable()
https://github.com/skipperbent/simple-php-router/b...

А такое выражение до PHP8 возвращает true, поэтому всё это дело отправляется дальше на исполнение в
call_user_func_array() пытаясь вызвать метод статически
https://github.com/skipperbent/simple-php-router/b...
Отсюда и ошибка.
Объект же класса ещё не создан
---
Автор предлагает все неймспейсы указать отдельным методом до старта
SimpleRouter::setDefaultNamespace('App\Controllers');
Тогда можно указывать класс без неймспейса и всё будет работать.

Но в этом случае любой анализатор кода либо тот же Шторм скажет вам, что вы делаете какую-то дичь.
И как поступить решать уже вам.

Худший ответ: Может так?
Router::get('/', [new SiteController(), 'home'])
Вопрос: На чем построить внутренний портал предприятия?

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

интеграция с ADActive Directory Authentication Plugin.

телефонный справочникЕсли номера и персоналии просто перечислены на странице, то для быстрого поиска и сортировки желателен tablelayout Plugin.

карточки сотрудниковЭто обычные страницы. Данные можно структурировать с помощью struct Plugin. Есть попроще — data Plugin, но struct на один-два порядка интереснее.

структураВыбор не очень большой, но есть.

новостиBlog Plugin. Дополнительно к нему можно будет поставить плагины Tag, Cloud и Linkback.

опросыЕсли я правильно понимаю, что под «опросами» понимается, то Bureaucracy Plugin.

по возможности интеграция с MoodleЭтот пункт требует разъяснения со стороны автора вопроса.

Худший ответ: Redmine плюс соответствующие плагины. Если плагина нет - просто берется и пишется нужный.
Вопрос: Что будет если ампер меньше?

Лучший ответ: Непредсказуемо. 
Может хватит, может нет. 
Вполне вероятно что в момент пиковой нагрузки будет перезагружаться. Поэтому блок питания должен быть как минимум 1А. 
Блоку питания в принципе без разницы, он больше своих 0,6А не выдаст.

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

Лучший ответ: Open VPN - это протокол.
А как реагирует инстаграм - фиг знает. Скорее всего никак (ну мб капчу даст, чтобы подтвердить, что ты человек).
Если совсем паранойя - сделай туннель до реального компьютера с бытовым интернетом, а не до датацентра.

Худший ответ: Если вы используете официальное приложение Instagram, теневой бан вряд ли получите. Его дают, если аккаунт вылетает на проверку телефона или почты.
Вопрос: Данные из 1С через python telegram?

Лучший ответ: Поддержу вариант Константина с открытием REST-интерфейса на стороне 1С.

Если на стороне python не планируются дополнительные возможности и он 100% будет делать транзит данных из/в 1С, то python в этой схеме 100% третий лишний и проще сделать бэкенд полностью на 1С.

Загуглил про Brom - это набор библиотеки для python и расширения (плагина) для базы 1С. Выглядит как быстрое решение, но я бы не применял. Высокие риски - нет публичных аудитов безопасности и нужно верить разработчику на слово; вендерлок и нужно платить разработчику для исправления ошибок; отсутствуют возможности для кастомизации и расширения функционала. Все равно даже с Бромом нужно делать публикацию базы 1С на веб-сервере. Тогда уже проще в 1С опубликовать стандартный OData-интерфейс и использовать стандартные библиотеки python для работы с http и json.

Худший ответ: https://infostart.ru/public/1709618/ и прочее на сайте....

а использовать Бром или что другое все зависит от решаемых задач. 
Борм, это набор инструментов для интеграции,  его использовать или ваши вкусовые пристрастия это субъективно.
Вопрос: Можно ли уже использовать flex gap и почему grid-gap работает с flex?

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

Худший ответ: grid-gap использовать не надо
gap для flex еще рано. Смотри версии браузеров.
Вопрос: Добрый день. Вопрос по Python связанный с вводом данных. Вводить число надо так чтобы программа принимала числа со знаками после запятой?

Лучший ответ: Давайте посмотрим на код вашей программы.
a, b, c, d = map(int, input().split())
Как вы думаете, что делает функция, выделенная жирным шрифтом?

Худший ответ: a, b, c, d = map(int, input().split())
Вот тут вместо int укажи float
Вопрос: Стоит ли строить своё изучение/обучение именно так?

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

Худший ответ: Добрый день. 
Как вариант, можно глянуть на программу подготовки Java разработчиков из курсов (погуглите).
А в целом:
- Computer Science
- Algorithms & Data Structures
- SQL (также глянуть на ACID, на уровни изоляции и т.д.)
- OOP
- Java
- Design Patterns (паттерны проектирования - Gof, GRASP). Прочитать про SOLID, KISS и т.д.
OOP & Java можно изучать параллельно, чтобы наглядно понять например, что такое interface или class и т.д. 

В вопросе вижу тег android. Скорее всего для андроид нужно изучить kotlin, нежели Java. Но знание Java только будет плюсом.