Vikhrmodels/habr_qa_sbs huggingface dataset:
Вопрос: Как мне поступить с образованием после 9 класса?

Лучший ответ:
Есть такая штука... называется Армия. Если после 11 класс не идти в ВУЗ, то пойдешь в Армию.
Дальше решай сам.
ЗЫ
степик устал спамить в каментах своими мартышками, и решил скрыто рекламится?

Худший ответ:
Вы зря так недооцениваете российские вузы. Если получится - попробуйте поступить в МФТИ/МГУ/ВШЭ, поступить туда тяжело, учиться еще тяжелее, но на выходе вы получите очень качественное всестороннее образование.
Вопрос: Как назвать переменные?

Лучший ответ:
Конкретно в этом случае я бы просто назвал: likes_in_vkpost(). 
Поясню:
1. 
Если функция используется в правой части и присваивает значение в переменную в левой части, то что это если не геттер-функция? Зачем еще раз заострять читателю кода "Нет чувак, я тут 100 пудов достаю лайки из поста". Ему надо просто сказать "Лайки из поста". Не верит, пойдет в функциию и почитает ее код или заглянет в код юнит-тестов.
Если в коде гет-функии шлется http-запрос, потом получается http-ответ. Потом что-то считается. То это означает нарушение принципа "одно действие одна функция". 
* Послать запрос одна функция
* Получить ответ другая
* Проанализировать еще одна
* А вот достать уже полученное из сети и хранящееся в объекте или каком-либо хранилище в памяти это и есть гет-функция. По этому ее делают read-only , чтобы она не разрушила объект и тогда она получается "свойством объекта" и по этой причине нет смысла использовать 'get' в имени функции
2. Глагол в функции имеет смысл использовать только тогда, когда вы хотите ЯВНО сказать, что тут нужна крайне внимательно присмотреться.
2.1. У вас есть сложный вычислительный процесс по подсчету лайков и этот код может "тупить", т.е. долго работать тогда и надо говорить compute_likes(). Читающий код задумается при глаголах: compute, analyze, etc
2.2. Обновление значений в объекте тоже может нести опасность и по этой причине нужно добавлять 'set' . Если у чувака объект рушится, то он задаст вопрос: "А кто изменяет объект?" и тогда он будет искать глаголы : set, update, push, pop, etc
3. Используйте грамматику английского языка
Возьмем предложения "Эта строка пустая?", "Эти данные зашифрованы?". Как бы вы спросили это по-английски?
'Is string Empty?" , 'Is data encrypted'?. Тогда в коде будем читать как:
if ( str1.empty() )
if ( data1.encrypted() )
Если вы будете использовать схему:
if ( str1.is_empty() )
if ( data1.is_encrypted() )
То вы нарушаете грамматику английского. Глагол 'to be' в вопросительных предложениях ставится ДО подлежащего! Возьмите к примеру документацию к C++ стандартной библиотеке и прочтите описание std::string.
Оговорка: Это не касается случая, когда вы пишите в процедурном стиле. Пример:
empty(driver_data_request)
тут сложно понять что имел ввиду автор и поэтому 'is_empty' вполне имеет смысл!

Худший ответ:
1. Нормальное, бывает даже, чем длиннее тем лучше.
2. getLikeFromVkPost - исключительно из опыта, названия переменной camel case-ом. С подчеркиванием - значения констант
3. Для JS влияет только если на размер вес .js файла.
Вопрос: Можно ли на Java выгрузить видео с youtube?

Лучший ответ:
А может как-то попробовать подойти с другой стороны? Например, в java есть http-client, вот через него обратиться в youtube api.

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

Лучший ответ:
А не проще просто при новом запросе проверять - успел/не успел до времени закрытия? Успел - ок, заносим данные,  не успел - победитель последний юзер внесший изменеия. На стороне юзера яваскриптом таймерный отсчет от текущего времени и до конца аукциона.

Худший ответ:
Крон можно запускать и не раз с минуту. Точнее запускать раз в минуту, но делать sleep. Пример читать тут: vam.in.ua/index.php/it/15-other-posix/82-cron-nsec...
Но можно пойти в mysql, там начиная с версии 5.1 есть event_scheduler Подробно и доходчиво тут: https://habrahabr.ru/post/123391/
Единственно не могу понять, что это за аукцион который длиться меньше минуты. Обычно в аукционе время идет у пользователя в браузере, а при обращении к серверу, просто проверяется истек он или нет. И соответственно статус лота храниться не в false и true, а вычисляется исходя из метки времени конца.
Вопрос: Как получить доход соизмеримый с продуктивностью?

Лучший ответ:
я был бы куда продуктивнее если бы знал, что в скором времени получу вознограждение соизмеримое с затраченными силами
Вам тогда в собственный бизнесБывают ли способы внутри компании получать допольнительные бонусы, какие-либо проценты в проекте?
Опционные программы есть очень редко в огромных компаниях и там что бы его получить надо сначала стать ведущим и 3 года подряд рвать ))
А ещё в больших кампаниях можно ничего не делать месяцами и деградировать, а можно делать но потом проект сочтут не приоритетным и закроют, может даже вас уволят даже если вы хорошо работали, просто не нужны... В маленьких вы обычно занимаетесь более прикладными и более нужными вещами.

Худший ответ:
учитесь, растите
или проще
Вопрос: Как считать данные с USB устройства в браузер?

Лучший ответ:
Ну почему не читают описание по собственным ссылкам?
Написано же в инструкции: Работает по интерфейсу USB клавиатуры
главное фокус ввода на поле установить и все заполнится.

Худший ответ:
Это сложная тема. Когда я пробовал работать с баркод-сканером то сделал такие выводы:устройство может работать в режиме клавиатуры (легкий вариант);устройство может работать в режиме usb-девайса (сложный вариант);в хроме есть usb api (еще есть hid api) для "общения" с устройствами usb, можно получать/отправлять данные на usb;в винде все плохо с дровами для устройства, тогда как в линуксе можно читать из "файлов". Не знаю как оно точно называется в линуксе, это по сути порты usb.
Api в хроме называется chrome.usb. В нем нет интерфейсов по типу sendData и receiveData. Для работы нужно шарить как работает usb, как отправлять команды, его интерфейс. Там все не просто.
Вопрос: Как показывать разные версии сайта мужской и женской аудитории?

Лучший ответ:
всё проще =)if (user.config.sex = MALE) {
  ...
} elseif (user.config.sex = FEMALE) {
  ...
} else {
  ...
}

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

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

Худший ответ:
проблемы с внимательностью? ну проверяйте дважды, пишите тесты. структурируйте так, чтобы логические части были в привычных местах.
почитайте "Идеальный код", там автор прилично внимания этому вопросу уделяет...
Вопрос: Наиболее дешевый способ сделать USB3.0 HDD сетевым устройством с SMB?

Лучший ответ:
Приобрести недорогой NAS и засунуть в него хард, при необходимости избавившись от SATA-USB обертки?
Купить роутер с USB портом и поддержкой SMB?
P.S. стоит сначала убедиться, что usb адаптер не встроен в сам диск, иначе варианты с sata отпадают. (вряд ли вы решитесь диск распаивать для вывода sata разъема)

Худший ответ:
Имеется внешний накопитель с USB 3.0 и устройство, которое может его использовать только по LAN через SMB.
Устройство, которое - оно одно всего лишь?
Вопрос: Как принять переменную в контроллере laravel?

Лучший ответ:
Заменить url из примера наurl: "{{ route('НАЗВАНИЕ_РОУТА') }}",
А дальнейшие "как", "что" и "куда" зависят от ваших задач и потребностей, и располагаются на с кровью и любовью выстраданных страницах столь ненавистной вами документации: https://laravel.com/docs/5.7/blade

Худший ответ:
function add(obj) {
        var id = obj.id;
        $.ajax({
            url:  document.location.origin+ "/main/add_to_card",
            type: "POST",
            data: {"id": id},
            cache: false,
            success: function (response) {
                window.location.reload();
            }
        });
    }
А в контроллере$id = request()->input('id')
Вопрос: Разные цены для разных групп?

Лучший ответ:
В псевдокоде это будет так:select(к какой группе принадлежит пользователь){
  case пользователь из Группы А:
    показатьЦеныДляГруппыА();
  case пользователь из Группы Б:
    показатьЦеныДляГруппыБ();
  ...
}
В opencart есть даже вкладка специальная для цен/групп: 
p.s. какой вопрос — такой ответ. Формулируйте вопрос точнее или детальнее.

Худший ответ:
Вопрос был решен с помощью скидок.
Вопрос: Объединить 2 сетевые карты в 1?

Лучший ответ:
Агрегирование каналов

Худший ответ:
Такой технологии нет, самое ближайшее это агрегирование каналов, к примеру LACP, но и в этом случае скорость больше чем скорость физического интерфейса не получить. Канал станет шире, но не больше. Можно отдавать трафика на 2 Гбит сек множеству клиентов, но отдать одному можно только 1 Гбит.
Сейчас сетевые карты и так работают в дуплексе.. те одновременном приеме-передаче. Разделять 1 на прием а вторую на передачу смысла нет.
Вопрос: Как установить определенную версию chrome в Ubuntu 16.04?

Лучший ответ:
Вот тут есть пакеты старых версий: security.ubuntu.com/ubuntu/pool/universe/c/chromiu...

Худший ответ:
Chromium вроде с открытым кодом.
https://github.com/chromium/chromium/releases
Вопрос: Можно ли спасти жёсткий диск?

Лучший ответ:
Много текста, мало толку.
Читаете SMART диска, если смарт нормальный, то вероятно проблемы с софтом.
Если смарт плохой - выбрасываете диск.

Худший ответ:
Судя по гуглу, кривой размер не проблема.
А вот с этой серией дисков беда...
https://habrahabr.ru/post/251941/
Вопрос: Как равномерно выравнить иконки?

Лучший ответ:
Родителю дай :
display:flex;
align-items:center;

Худший ответ:
Непонятно какая у вас структура тегов. Хорошо бы выложить сюда: https://jsfiddle.net
В общем случае: https://html5book.ru/css3-flexbox/
Альтернатива:
display:table
inline-block
background-position
Вопрос: Существуют ли библиотеки для сравнения изображений, аналог Google Image?

Лучший ответ:
digiCam умеет искать дубликаты изображений в коллекции при помощи нечеткого сравнения (слепки со всей коллекции создаются на некотором этапе этого процесса). Я проверял (когда-то давно), она действительна способна найти различные изображения, отфотошопленные из одного, или разные кадры, снятые один за другим. Конечно, ложноположительные срабатывания случаются, но уровень "похожести" при поиске можно задавать. На каких библиотеках все это построено, думаю, станет понятно после чтения исходников (opensource же).

Худший ответ:
https://www.clarifai.com/
но проще/дешевле самим обучить нейронные сети
Вопрос: Выбор платформы для сайта подобие фл.ру?

Лучший ответ:
Выбирать то, с чем умеет работать команда разработки.
Преимущественно фреймворки.
Брать цмс - ерунда какая-то, но вот ребята из WP сделали https://5bucks.ru/

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

Лучший ответ:
Отвечу кратко, используйте Trello - Играет роль таск менеджера, и там отлично можно делать спринты по агиле. Сейчас напилино очень много разного рода интеграций для Трелло и Slack + Trello, тоже хорошо работал.
Для гит - ставьте на дев сервера - GitLab или смотрите в сторону платного аккаунта на GitHub или BitButcket. 
Баг трекер используйте из GitLab/GitHub Issue, ибо банально легко можно отслеживать как так провигается когда кто-то делает коммит с #issue_id.
Ну и система коммуникаций, должна быть на высоте! Я бы брал бы Slack.
Если нравится продукция Atlassian смотрите в сторону Jira, BitButcket и HipChat.
Но для меня лично лучше всего подходит GitHub, Trello, Slack и всё.

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

Лучший ответ:
Посмотрите: "Объектно-ориентированное мышление" Мэтт Вайсфельд

Худший ответ:
Примерно так это работает.typedef void (*MethodType)();    // Тип указателя на функцию

void myMethodFunc();               // Функция, указателем на которую может служить 
                                                         //  переменная типа MethodType

typedef struct {      // Тип некоего класса    
     MethodType pMethod;  // Виртуальная функция
} SomeClassType;

SomeClassType someObject;
someObject.pMethod = 0;     // Абстрактный объект (интерфейс)
someObject.pMethod = myMethod;  // Определённый объект
Вопрос: Один белый IP адрес от провайдера редирект на mikrotik'е на 2 сервера?

Лучший ответ:
Nginx Proxy если разные серверы. Если один, то прекрасно несколько сайтов на одном IP уживутся.

Худший ответ:
Реализация с помощью nginx, Спасибо "Sanes":
https://www.dmosk.ru/miniinstruktions.php?mini=ngi...
Вопрос: Как стать тру админом?

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

Худший ответ:
windows server, AD, GPO, LDAP, виртуализация, *nix, freebsd 
Во первых, забуть про freebsd он мертв.
Во вторых, меняй работу на работу администратором.
Виртуализация KVM, XEN, Hyperv самые популярные, забуть про OpenVZ и прочую чушь, остановись на чем нибуть одном.
Работа с БД. MSSQL для 1С на винде, MySQL администрирование сайтов. Ну PostgreSQL если 1С на Linux.
Из Linux'a научись писать скрипты на bash.
Самообучение норма когда ты знаешь чего хочешь. Если ты не знаешь, тогда велком в крупную компанию где тебе будут ставить цели и задачи. На испытательном сроке тебя дрючить сильно не будут, за 3 месяца научишься работать, либо заставят, либо выгонят. 
Я видел достаточно горе админов которые не знают даже, что такое VLAN. И ничего живут, учатся.
Вопрос: Насколько важно ООП в Python?

Лучший ответ:
ООП совершенно необходимо, если вы собираетесь писать что-то большее, чем скрипты на 30 строк.
Учить ООП через мобильное приложение я бы не стал. Я пробовал приложение от SoloLearn по SQL, несколько минут в него повтыкал и удалил. Это баловство, серьёзную тему так изучить нельзя. Неудивительно, что вы ничего не поняли.
Читайте книги и пишите свой код.
На самом деле, в ООП нет ничего запредельно сложного. Оно базируется на простых принципах.
Объект - это способ представить связаный набор данных и методы для работы с этими данными в виде одной смысловой единицы.
Класс - это просто схема, которая описывает объекты определённого типа. По этой схеме, как по чертежу, компьютер создаёт объекты-экземпляры.

Худший ответ:
Большинство современных языков программирования следуют принципам ООП.
На мой взгляд, начинать надо с ООП, а не с того, какой синтаксис у цикла for в Питоне, например.
Вопрос: Как хранить и где локально данные от своей игры?

Лучший ответ:
В локальной базе данных.

Худший ответ:
Сериализация/Десериализация.
Вопрос: Как полностью написать сайт с нуля, если ты знаешь только frontend?

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

Худший ответ:
для простенького сайтика - достаточно знать html
если вы хотите, чтобы он был красивым - нужны знания html+css+графический редактор для изображений
для каких-то более сложных моментов нужно знать javascript - это для выполнения в браузере
ну а сервер разрабатывать, при необходимости сделать нечто большее, чем позволяют перечисленные выше технологии
Вопрос: JavaScript не получает массивы PHP в формате JSON. Как это исправить?

Лучший ответ:
ну как бы а чего вы хотите передавая в сериализацию ассоциативный массив?
либо объявляйте обычный массив array("Париж", "Марсель"), либо на клиентской стороне работайте с получившимся объектом
UPD: в селекторе $( "select [name='country']" ).bind у вас лишний пробел после select

Худший ответ:
Надо указать, что скрипт ожидает именно json, а не plaintext:$.get({
   url: 'url',
   dataType: 'json'
})
    .success(function(){})
    .fail(function(){});
либо можно использовать шорткат для этого:$.getJSON('url')
    .success(function(){})
    .fail(function(){});
Вопрос: Как делать Ajax запросы в vue.js?

Лучший ответ:
Попробуйте использовать axios :)axios.get('/url').then((response) => this.data = response.data.response)
.catch((error) => console.log(error.response.data));
P.s: import axios from 'axios'; для использования

Худший ответ:
установить и использовать vue-resource
Вопрос: На что ругается nginx?

Лучший ответ:
nginx ругается на && потому что логическое and и or не поддерживаются в директиве if.
Это как раз одна из многих причин, почему map просто придётся использовать :)

Худший ответ:
На глаз if ($http_referer != "demo.company.ru" && $remote_addr != 192.168.88.0/24) должен быть в блоке server, а не location.
Вопрос: Что такое цепочка маршрутизаторов?

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

Худший ответ:
Сети для самых маленьких. Часть 3. Маршрутизация
Вопрос: Как внедрить все файлы в exe?

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

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

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

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

Лучший ответ:
От яндекса вам потребуется только создание и вывод метки на карте. Всё остальное, как то, авторизация пользователя, хранение в своей БД и вывод по авторству уже придётся пилить самому. Думаю разобраться в документации Яндекс Карт, будет самое лёгкое.

Худший ответ:
Делается так: 
Сервер, который строит страницу (php | asp | ...), должен построить и javascript, в котором создаются объекты для работы в api Яндекс.Карты (как в примере документации Яндекс Карт):
1) либо прямо в html;
2) либо сервер формирует json-данные с метками. Затем ваша js-функция инициализирует объекты меток яндекс-картВот тут активно обсуждают эту тему - тут и примеров много
Вопрос: Провайдер отключает порт, причина?

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

Худший ответ:
Кажется я нашел возможную причину блокировки. Сегодня подключил еще одну медь, после подключения которой, спустя секунд 10 пропадали пинги. Это меня натолкнуло на тесты. В случае со вторым провайдером это оказался ipmi, который находился в режими dhcp. После указании статики, пинги перестали пропадать, возможно по этой же причине мне отключали порт. Поживем увидим...
Вопрос: Продажа открытого кода php, как защитить от перепродажи?

Лучший ответ:
Переводи в open source в лицензией, хоть какая-то защита прав будет, а так по факту никакие средства не помогут

Худший ответ:
Как совершенно верно сказал Александр Аксентьев  - кому нужно, тот все равно взломает, все зависит от того, что за код. Зашифруешь - расшифруют и взломают. Обфусцируешь - очистят и взломают. Да, полное школие может и отвалится сразу, мотивация решает :)
Вопрос: Как можно сделать такое на движках интернет-магазинов?

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

Худший ответ:
Факт прост. Переход из социальных сетей по ссылке (см. referer). А сделать на любой написав плагин.
Вопрос: Болят глаза! hp 430 g3 Что делать?

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

Худший ответ:
потому что TN матрица. так скажем эта самая отстойная матрица - скорее всего именно из за него. бери с IPS
Вопрос: Нормально ли создавать каждому ajax'у свой php файл?

Лучший ответ:
Делают ещё хуже - берут фреймворки, вроде yii2, Laravel, Symfony и у вас куча файлов)

Худший ответ:
Гуглить и читать про MVC/Rest и так далее.
По вопросам, если я вас правильно понял: нет; язык не запрещает; чаще всего новички, остальные - по обстоятельствам.
Вопрос: Как делают вот такие баннера?

Лучший ответ:
Верстают. Загляните в исходный код. Это 1е, что должно придти вам на ум!

Худший ответ:
promo.hvalacloud.com/spiral.svg + @keyframes animation
Пример анимации https://jsfiddle.net/y6zfa4qL/
Вопрос: Какие технологии/языки программирования использовались в таких легендарных игровых проектах как серия Demons/Dark souls?

Лучший ответ:
1. https://ru.wikipedia.org/wiki/Dark_Soul
https://ru.wikipedia.org/wiki/PhyreEngine
2. Что за "то время" ? DS3 вышла год назад.
3. Смотря что за игра. Никакой конкретики быть не может по такому неконкретному вопросу. "Игры" на андроид - это и казуалки с одним экраном, и мощные 3d проекты на  движках Unreal, Unity и т.д.

Худший ответ:
2. Думаю, зависит от знания технологий у ключевых разработчиков в компаниях. В крупных проектах часто используют самописные или серьезно модифицированные сторонние движки. C++ используют т.к. он дает более низкоуровневое управление ресурсами.
3. Если писать игру с нуля, знания JAVA понадобятся в любом случае, иначе все зависит от выбранного движка.