pavki/hr_qa_sbs_best_bad huggingface dataset:
Вопрос: Как оценивать сроки?

Лучший ответ: Если вы знакомы с проектом и разобрали что за баг, то оценить время на его устранение не проблема.
Если вы не знаете что это за баг, то это еще не баг а production issue, и происходит его investigation до того момента, пока вы не придумаете временный workaround, чтобы пользователи могли работать, потом вы найдете root issue, заведете баг и уже тогда оцените время на его исправление.
В общем для любого senior разработчика эти вопросы должны быть понятны и ясны. Менеджер не программист и не должен им быть, но разработка крупного продукта должна каким-то образом регламентироваться. Иначе зачем платить программисту зарплату, если он не знает год он будет устранять баг или день? Как тот, кто платит вам деньги, сможет понять а хватит ли у него денег, чтобы вы ему продукт вообще написали, если оценить длительность работы нельзя?
Поэтому нужно не возмущаться, а учиться планировать свою работу.
В большинстве случаев опытный разработчик дает довольно точные сроки. Ну а на нестандартные случаи всегда закладывается какой-то процент времени. Бывают случаи, которые нельзя решить месяцами и годами - такое обсуждается, находится обходной путь и так и живут.
Agile в этом плане удобен не только тем, что можно накидать себе задач на 2-3 недели и их решать, а тем, что каждые 2-3 недели можно посмотреть назад, и понять насколько хорошо ты оценил свои естимейты, и нужно ли в следующем спринте увеличивать или наоборот уменьшать время. И так каждый спринт - смотришь и улучшаешь навыки планирования и эффективность работы.

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

Лучший ответ: nginx в роли прокси и в него сертификат от letsencrypt.

Худший ответ: 1. зачем вам ssl в вашей  песочнице, вы жгете такты процессора непонятно для чего. 
2. выпустите свой сертификат и подписывайте свои сервисы. 
Настройка доверия, цепочки отзывов сугубо в ваших руках. Впрочем можно получить wilcard сертификат и разруливать доступ на уровне firewall или на уровне самого приложения, разрешая или запрещая доступ с определенного хоста и порта
Вопрос: Как возможно по сигналу на RCA выходе определить, включено ли устройство?

Лучший ответ: Есть специализированные микросхемы для работы с видеосигналами аналоговыми.
Например EL4583 подойдёт идеально, она как раз умеет детектировать наличие сигнала, или LM1881, она может выдёргивать синхросигнал из видеовхода, можно мониторить импульсы синхросигнала, есть импульсы - есть видео.
Правда это не поможет если передаётся "синий экран" и их уже сложно найти в продаже.
А для переключения сигналов можно что-то такое использовать AD8184ARZ
Ну и как обычно можно купить готовое устройство у китайцев, что-то типа https://www.aliexpress.com/item/4000022576355.html
Вобще такая задача часто у автомобилистов бывает, экран один, а камер может быть много.

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

Лучший ответ: Lynx я его лет 15 назад под OpenBSD юзал.Он консольный, но в вопросе про это ничего не было.
Есть еще:LinksBrowshИз ОС могу порекомендовать:Puppy LinuxBodhi LinuxAntiX LinuxLinuxliteosReactOS возможно подойдет

Худший ответ: тогда уж Links2
с 1гб оперативы и учитывая что система откусит ещё метров 200 ,
остаются только такие "браузеры" :)
Вопрос: Что за >5000 странных записей в БД?

Лучший ответ: Логично же, что попытка SQL инъекции

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

Лучший ответ: 1. купи ssd 1300р, на худой флешку 200р
2.  thinstation + pxe -загрузка системы 0.5 сек ;) 
3. Если прям зашквариться gentoo ( быстрей уже точно не будит если говорить о ос стоящем на компе)

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

Лучший ответ: tar -xvf tar.gz_mvd
Дальше  смотрите что получится.  Я так думаю там будет как минимум файл vhd или avhd
Дальше создайте виртуалку 1 или 2 поколения и попробуйте примонтировать этот файл. 
PS случаем  не тащеное имущество МВД ?

Худший ответ: 1. Загрузиться с LiveCD
2. Скорпировать архив в /tmp по ssh/scp
3. Сделать вот так
fdisk /dev/sda
o\n
n\n
1\n
\n
\n
t\n
83\n
w\n
mkdir /target
mkfs.ext4 /dev/sda1
mount /dev/sda1 /target
tar -zxf /tmp/tar.gz_mvd -С /target (Исправлено)
for p in proc sys dev; do mount -o bind /$p /target/$p; done
chroot /target
blkid --output export /dev/sda1 | grep UUID >> /etc/fstab
nano /etc/fstab
4. Переносим последнюю строку в начало (Ctrl+D, Ctrl+U) и заменяем старый uuid на новый. Ctrl+O, Ctrl+X).
5. Ставим и пересобираем конфиг загрузчика:
grub-install /dev/sda
update-grub2
6. Выход и перезапуск. Профит.
exit
reboot
Вопрос: Как решить данное ТЗ для QA?

Лучший ответ: Кидаешь в бесконечный цикл.
while True:
	print("") # Твой вывод тут.
	time.sleep(20)

Худший ответ: Используя командную строку в unix консоли (или в любом другом консольном интерпретаторе), напишите команду которая каждые 20 секунд будет выводить текущее время в формате {часы}:{минуты}:{секунды}

while true; do echo $(date "+%H:%M:%S");sleep 20;done

В ТЗ ни слова про Python, только про командную строку и саму команду.
Вопрос: Можно ли так удалить Linux?

Лучший ответ: Можете. Только есть шанс, что Windows не загрузится. Всё зависит от загрузчика, если используется GRUB или иной линуксовый, нужно будет перезаписать MasterBootRecord или иным способом восстановить загрузчик Windows

Худший ответ: Да можно, но нужно будет ещё удалить загрузчик ubuntu это можно сделать заранее до удаления разделов загружаемая в windows назначаем букву диска boot разделу который скрыт обычно и удаляем образ загрузчика ubuntu. Все теперь будет грузится только windows. и можно удалять разделы с ubuntu. Как это пошагово делается в сети неоднократно обсуждалось.
Вопрос: Зачем сайтам redirect при переходе на ссылку?

Лучший ответ: По множеству причин. 
Например вас предупредить что вы идете в дикий интернет. 
Записать ваше действие
Впарить вам реферала
....

Худший ответ: Нельзя обработать ссылку с сайта vasya.ru на сайт youtube.com (хотя можно, если отследить onclick в JS) но зато никаких проблем нет отследить переход на ссылку vasya.ru/redirect.php?http://youtube.com и добавить посещенный сайт в статистику. БД
Вопрос: Почему не отображается блок с ценой на ios устройствах?

Лучший ответ: вот ошибка https://habrastorage.org/webt/pw/x0/nh/pwx0nhgqpj9...
тут не хватает квадратной скобки https://habrastorage.org/webt/ys/5f/ij/ys5fijgkae6...

Худший ответ: вот ошибка https://habrastorage.org/webt/pw/x0/nh/pwx0nhgqpj9...
тут не хватает квадратной скобки https://habrastorage.org/webt/ys/5f/ij/ys5fijgkae6...
Вопрос: На каком языке программирования лучше писать Android-приложения: Java или Kotlin?

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

Плюсы Java:
- устоявшийся зрелый язык
- огромнейшее коммьюнити, сформировавшееся за 30 лет
- 80% кода под мобилки - на Java
- проще поддерживать, легко разбираться в чужом говнокоде
- чистое ООП, а не ФП

Минусы Java:
- иногда бывает переизбыток кода

Плюсы Kotlin:
- меньше кода
- проще писать
- все хайповые говноконторы переходят на Котлин
- новый код предпочитают писать на Котлине, но Java надо знать для поддержки старого кода

Минусы Котлина:
- функциональщина
- сложность поддержки. Сложно разбираться в чужом говне
- много библиотек уходит в небытие, а куча кода уже написано. Яркий пример - Anko



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

Лучший ответ: Попробуйте в двух словах сказать (лучше оперировать голосом, а не мыслю), что говорится в первой абзаце текста, и отдельно - во втором.
Потом, чем они отличаются по содержанию.  Сравнивайте 2 и 3 абзац. В таком духе двигайтесь дальше по тексту. 
По окончании текста подведите итог, о чем он и как развивалась мысль от начала и до конца.
Так вы научитесь сжимать текст и выделять смысл, и никакие карточки вам не понадобятся.

Худший ответ: Сделайте два набора карточек - черновик и чистовик.
Сперва заполняете черновик, потом только что-то вроде хештегов - в чистовик.

А вообще, существуют термины. Это такие слова, где одно слово содержит много смысла. С опытом изучаете значение различных терминов, и пользуетесь ими.
Вопрос: Как сделать отправку сообщения, через определённое кол-во времени?

Лучший ответ: Есть специальный тэг для кода, его нужно использовать.time.sleep(10)

Худший ответ: Почему не time.sleep(10) ?
Вопрос: Htmlbook.ru VS developer.mozilla.org?

Лучший ответ: Mozilla 100%. Там более свежая информация!! htmlbook уже пару лет не поддерживается. У них есть новый сайт webref.ru, но на Mozilla (особенно английской) все равно более свежая информация

Худший ответ: Читайте оба. Принципиальной разницы нет. На mozilla еще по Javascript есть.
Вопрос: Какой MacBook выбрать студенту Технического ВУЗа?

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

Худший ответ: Будет заметна не столько мощь, сколько больший объем более быстрой памяти.
Вопрос: Учу php+laravel, сделал небольшой сайт, хочу начинать искать работу в областы php, хотели узнать этих знаний хватит для поиска работы?

Лучший ответ: Первое самое глобальное - почему laravel 5.8?
Вы документацию используете же наверняка, видели же по любому что там уже больше полугода зарелизен 6.0. А 5.8 даже уже не поддерживается критикал патчами

Шаблоны слеплены по старинке кусками без структуры.
При том что и @extends и @section вполне себе используются, но код выглядит как будто в вордпресс заглянул где пачка файлов и открываются теги в одном, а закрываются в другом. Не надо так.

Код стайла никакого, всё то разброс, то наоборот слеплено. Везде кучи пустых строк в разных местах ну и всё такое прочее.

Нейминг тоже пляшет 

Трейты это хорошо, но довольно странное использование. Как будто пытались изобрести репозитории или хотя бы вынести повторяющийся код, но почему тогда хотя бы не в моделях методами?

Что это такое и зачем я вообще не понял. Когда есть response()->json() например (и опять же местами оно есть тоже). Про ->data я уж вообще молчу.

JSON роуты намешаны в кучу с обычными. Хотя есть даже отдельный файлик api.php в routes. Это в целом-то как угодно, но опять же про кодсайтл и практики устоявшиеся внутри Laravel.

Методы которые не являются собственно обработчиками запросов в контроллерах тоже такое себе. Не сказать что криминал, но просто опять же создание мешанины.

Requests это хорошо, но почему там только required везде, а если туда массивы какие-нибудь слать начать, всё поляжет.

Используете мидлвар с параметром role:admin, а на самом деле admin захардкожен

И снова про кодстайл array() уже не очень актуально, гораздо более лаконично использовать короткий синтаксис []. 
Хотя опять же строгих рекомендаций на этот счет нет.

Указание классов $this->belongsTo('App\City'); не очень красиво, да и в IDE поддержка какая-то непонятная, как будто от этого уже давно ушли. Проще и удобнее писать $this->belongsTo(City::class);. Бонусом подсветка в IDE, автодополнение и класс импортировать через use можно в таком случае.

Зачем такое выносить? Это переиспользуемый код? Он помог сделать код чище? Вместо одной строчки кода сделали 4 на ровном месте.

Ну в общем еще много такого по мелочи можно найти. Глобально ну круд и круд, работает значит хорошо. Круды умеете писать и ларавел не первый раз увидели уже.

По сути всё про:
1. Кодстайл php, автоформатирование и вот это всё. Поставьте IDE или что-нибудь что может форматировать по PSR.
2. Кодстайл/структура Laravel тоже стоит придерживаться того как всё устроено конкретно внутри фреймворка. Чтобы код был однородным.

этих знаний хватит для поиска работы?
Пробуйте, каким-нибудь трейни-джуном-то должны взять, но по этому коду трудно сказать что вы умеете, тут и php функций как таковых не используется и логика вся "прямая" как не знаю что :)
По коду понятно только что на Laravelе что-то смастерить наверно сможете хоть и из говна и палок. На php например сможете сделать тоже самое? Даже пусть с копозером и пакетами какими-нибудь, но собрать из разных частей и склеить вместе.

Худший ответ: шли  резюме везде и ходи на собеседования - узнаешь что  требуется.
Вопрос: Почему появляется ошибка console.log is not a function?

Лучший ответ: Давайте оставим в коде только строки имеющие отношение к проблеме, тогда всё будет понятно: 

console = false;
...
console.log('something');
// Uncaught TypeError: console.log is not a function

Худший ответ: function noConsole() {
    console = false;
}
Так делать не надо, сделайте функцию логирования, которая проверяет, можно ли логировать или нет
var debug = true;

function log(...args) {
  if (!debug) return;
  console.log(...args);
}

function silentMode() {
  debug = false;
}

log({});

silentMode();

log([]);
Вопрос: Переход с одного языка на другой?

Лучший ответ: Вы все еще будете набирать буквы и цифры в редакторе кода, о каком "глобальна" может идти речь? те же иф, фор и тд, только для другой среды. Да, структура языка иная, да, они для кардинально разных задач, но алгоритмы в целом одни и те же. Скажем так: за 6 месяцев вы еще не настолько погрузились в нюансы языка, чтобы почувствовать "глобальна" изменения в подходе. Через 6 месяцев будете так же как на жс писать на свифте/пхп/котлине/акшонскрипте...

Худший ответ: Как человек 5 лет писавший на свифте и теперь изучающий js+.net - "люто ностальгирую".
Думаю вопрошающий просто запутается "что где как", потому что и js еще не "в крови" и свифт - там же.
Вопрос: Какими на ваш взгляд будут смартфоны (или иные персональные устройства) в ближайшем десятилетии?

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

Худший ответ: Например, если оглянуться на прошедшие 20 лет
Можно еще дальше пойти, и посмотреть на email письмо в виде голубиной почты.

В попытке объять необъятное вы не ловите суть решения - всё зависит от дизайна, тенденций и как сойдутся звезды в голове человека в конкретный период времени в совокупностью с 10 000 факторов. Т.е вы тупо развиваете демагогию на пустом месте.

Всё диктует мода и технологический прогресс.

Моё компетентное мнение - в будущем все будут имплантировать чипы с сим коннектором\блютус адаптером\ и микрофоном в руку, и разговаривать нажимая на запястье, как элемент управления(толстый троллинг)
Вопрос: Хочу создать бота для Вконтакте, что стоит учить?

Лучший ответ: Учить надо Гугл. Это первый инструмент в работе разработчика.

Худший ответ: Если это Ваш первый язык, то учите Python. Есть как раз курс от Яндекс.Практикум, там идёт Phyton и в курсе есть разработка чат—бота для VK. Начало обучения бесплатно, если понравиться купите курс или будете учить по книгам... Вот ссылка на курс: Яндекс.Практикум
Вопрос: Как правильно вставить в php код html с mysql_result, в котором есть php?

Лучший ответ: вообще это плохая практика, выводить хтмл через echo/print, хтмл выводите как хтмл, пхп как пхп, и все будет понятно и без лишней путаницы. Например: <img src="http://chart.apis.google.com/chart?cht=qr&chs=150x150&chl=<?= htmlentities(urlencode(mysql_result($result,$i,file_name)));?>">

Худший ответ: echo  
 "<tr>
<td><p3></p3></td>

<td><a href='../doctor/files/",mysql_result($result,$i,file_name),"'>",mysql_result($result,$i,file_name),"</a></td>
<td>",mysql_result($result,$i,uploaded_on),"</td>
<td>",mysql_result($result,$i,username_add),"</td>

<td> <img src='http://chart.apis.google.com/chart?cht=qr&chs=150x150&chl=' . htmlentities(urlencode(mysql_result($result,$i,file_name)) . ''>    </td>

</tr>";  
echo "</table>";
вместо запятых точки должны быть
Вопрос: Почему пустая программа на C занимает 6 килобайт?

Лучший ответ: Дизасемблируйте и посмотрите что там внутри программы :)

Худший ответ: Окей гугл
бинарный файл формата ELF
Вопрос: "Вставить" exe в свою программу?

Лучший ответ: Положите его рядом со своей программой и обращайтесь. По относительному пути.

Худший ответ: Можно запихнуть в ресурсы вашего exe файла, затем при первом запуске распоковывать файл рядом с вашей программой. Но так практически никто не делает, а антивирусы не любят такую автивность. Правильным решением будет создание инсталлятора для вашей программы, который будет включать помимо вашего exe файла файл PsExec со всеми необходимыми ему библиотеками.
Ну, а выше, как вариант, Василий Банников предложил работающий вариант без создания инсталлятора.
Вопрос: Яндекс.Практикум — 1 урок. Функции. Python-разработчик. В чем проблема???

Лучший ответ: Проблема в том, что вы не учитесь. Если мы этот практикум за вас решать будем, то и python-разработчиками тоже мы станем, а не вы.

Худший ответ: от 1 до 10
Вопрос: Где хранятся POST запросы при их передаче?

Лучший ответ: Нигде.
Изучи протокол HTTP.
Мда, с образованием сейчас большие проблемы

Худший ответ: Где хранятся POST запросы при их передаче?
хранятся
передаче
при передаче они передаются на сервер, хранятся у вас в браузере до обновления страницы
Вопрос: Как получить полное изображение текущей страницы?

Лучший ответ: Есть такая либа html2canvas.  Она позволяет рендерить html в канвас, хоть и не совсем точно. Когда-то такую штуку делал с помощью неё.

Худший ответ: Лично я использую это
https://chrome.google.com/webstore/detail/full-pag...
Вопрос: Есть ли смысл делать игру на blender?

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

Худший ответ: Если речь идёт о BGE он уже как год(или больше) мёртв.
Вопрос: Как управлять электрической цепью с ПК?

Лучший ответ: Лобовое решение - использовать старый 8-битный LPT-порт, который есть даже на многих современных компах (в скрытом состоянии, в виде гребенки на материнке), и каждый из битов которого легко управляется программно, записью нулей и единиц в соответствующие регистры порта. Логические сигналы, выдаваемые битами порта, надо подать на базы/затворы транзисторных ключей, коллекторы/стоки которых подключить параллельно вашим кнопкам. На этой схеме показаны два варианта такого управления - привязанный к общей массе и развязанный через оптрон:
Этот способ даёт простую возможность управлять от компа 8-ю нагрузками. Если их нужно больше, придётся придумать мультиплексирование. Самый простой вариант - убавить число выходных каналов порта до 7, количество ключей увеличить до 14 (как вам и нужно), а восьмой бит порта использовать для переключения двух групп по 7 ключей: при нуле - с 1 по 7, при единице - с 8 по 14. Но такое простое решение не позволит использовать ключи первой и второй групп одновременно. Чтобы сделать возможным одновременное управление таким количеством ключей, управляющие сигналы придётся запоминать в триггерных регистрах, а это уже сложнее.

Худший ответ: ESP8266 + например tlp504a
Но это только если кнопки не силовые. Там другое решение
Вопрос: Как добавить уникальные свойства в название выпадающего списка?

Лучший ответ: https://www.youtube.com/watch?v=wsJbCvHkaKU
В этом видео ты сможешь понять принцип перебора массива объектов.

Худший ответ: Я сделал решение  только конечного числа заранее известных массивов из твоего примера. Можно улучшить, чтобы больше автоматизировать, но работает на твоих данных из вопроса:const A = [{category: "Walls", id: "1"}, {category: "Walls", id: "2"}];
const B = [{category: "Window", id: "3"}, {category: "Walls", id: "4"}];
const C = [{category: "Walls", id: "5"}, {category: "Floor", id: "6"}];
const D = [{category: "Walls", id: "5"}, {category: "Walls", id: "6"}];

let newArr = [];
newArr['Walls'] = [];
newArr['Window'] = [];
newArr['Floor'] = [];

const allArr = {'A':A,'B':B,'C':C,'D':D};

for (let key in allArr) {
	allArr[key].forEach(function (item) {
		let tempItem = {'id': item.id, 'class': key};
		newArr[item.category].push(tempItem);
	});
}

for (let key in newArr) {
	let section = $('<details></details>');
	let summary = $('<summary>'+key+'</summary>');

	section.appendTo('body');
	section.append(summary);

	newArr[key].forEach(function (item) {
		console.log(item);
		let newElement = $('<button class="'+item.class+'">'+item.id+'</button>');
		section.append(newElement);
	})
}
Вопрос: Смысл модулей в Yii2?

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

Исходя из определения Модули (микросервисы) существуют для изоляции разных частей сайта друг от друга.  Благодаря слабой связанности и сопряженности Модуля,  можно менять одну часть сайта на другую без поломок других. При этом нужно учитывать, что база данных таких модулей тоже должна быть независима, а общаются такие модули между друг другом через API или события приложения, когда модули на одном сервере. 

При поломке одного модуля — не ломается все приложение. На эту тему можно прочитать статью Как проектировать табуретку?. Когда-то отвечал на подобную  тему  на Toster.

Архитектуру Модулей в приложении вы можете придумать сами. Главное, чтобы доменный слой был независимым. Под модули можете сделать отдельную корневую папку с названием модуля:
- Backend
- Frontend
- Shop
- Blog
Или же сгруппировать:
- Backend
- Frontend
- Modules
- Modules/Shop
- Modules/Blog
Контроллеры и вид при этом будут просто разделены по папкам модулей:
- Backend/Controller/Shop
- Backend/Controller/Blog
- Frontend/Controller/Shop
- Frontend/Controller/Blog

Например, так или так. Разделение в Models делите все по папкам модулей:
Model/Shop
Model/Blog
Подведя итог:
1. Модуль служит для изоляции отдельных частей приложения на разные детали. При поломке двигателя не сломается шасси. Шасси можно поменять на шасси от другого авто, при этом двигателю всё равно на каком шасси автомобиль.
2. Модуль можно переиспользовать в других проектах или выложить в отдельный репозиторий и подключать в composer.
3. Хорошо структурированный, читаемый и понятный код. Сопровождаемость.
4. Тестируемость
5. Горизонтальное масштабирование.
и др.

Разделение модулей происходит по папкам следуя стандартам PSR7.

Полезные статьи на схожую тему:
1. https://toster.ru/q/659155
2. Мой вопрос на форуме
3. Организация независимых модулей на Yii2

Худший ответ: Ну все правильно ты понимаешь. Модуль, что-то самостоятельное. Возможно с зависимостями. Обычно используется для упорядочивания кодовой базы.