Vikhrmodels/habr_qa_sbs huggingface dataset:
Вопрос: Как узнать какой выбран option в select через React.js?

Лучший ответ:
<select onChange={e => {
        console.log(e.target.value)
      }}>
    <option value="Сложение">+</option>
    <option value="Вычитание">−</option>
    <option value="Умножение">×</option>
    <option value="Деление">÷</option>
</select>

Худший ответ:
реакт предполагает, что ты не будешь "узнавать", а будешь отрисовывать optionы, основываясь на тебе уже известных данных, которые будут храниться где-то в состоянии приложения

Можно ли это реализовать через Ref к примеру
да, работа с рефами это просто работа с DOM, ничем особо не отличается от обычного браузерного JS, но так делать условно не надо.. так-то можно select-у присвоить реф, и пройтись по всем дочерним элементам селекта, конешн
Вопрос: Можно ли сделать так, чтобы по клику на mash вызвалась определенная функция?

Лучший ответ:
Вешаешь на весь канвас событие click, получаешь из event координаты курсора, при заданных условиях запускаешь нужную функцию.

Худший ответ:
Хороший справочник по событиям! 
https://developer.mozilla.org/ru/docs/Web/Events
Для клика https://developer.mozilla.org/en-US/docs/Web/API/E...
Вопрос: Как реализовать вот такой эффект?

Лучший ответ:
Примерно так. https://codepen.io/ildar-meyker/pen/ZEBbXRB

Худший ответ:
Примерно так. https://codepen.io/ildar-meyker/pen/ZEBbXRB
Вопрос: Максимум длина для password?

Лучший ответ:
размер хэша никак не зависит от размера входных данных
вы хоть скормите 10 байт, хоть 10 терабайт - размер хэша будет одинаков.

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

Лучший ответ:
оно ?
https://automating-gis-processes.github.io/2017/le...

Худший ответ:
Нашел вариант еще проще. Включен в API Google maps
https://developers.google.com/maps/documentation/j...
Вопрос: Google Chrome переопределение геоданных для конкретного сайта возможно?

Лучший ответ:
Вроде бы нашел решение, во всяком случае после чистки кэша браузера работает, но только с открытой дев панелью

Худший ответ:
есть дополнения
с Мамбой на ура работают, но глобально
Вопрос: Как максимально обезопасить socket.io от подключений снаружи?

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

Худший ответ:
Как вариант передавать что-то на сервер, что позволит проверить авторизованный пользователь или нет.

Клиент
let socket = new io("http://localhost:7777", { query: "id=123" });

Сервер
io.on("connection", socket => {
    let id = socket.handshake.query.id;
    console.log(id) // 123
})

Пример проекта: https://github.com/space2pacman/pacman-chat
Вопрос: Как сверстать меню (активная кнопка)?

Лучший ответ:
При skew вам надо будет обрезать углы, у крайних элементов, с помощью родителя, установив overflow (что не всегда удобно при выпадающих списках).
Есть ещё вариант залить фоном:
https://codepen.io/anon/pen/rEVjed?editors=1100

Худший ответ:
Пожалуйста https://jsfiddle.net/HunteR_VRX/d56r3we8/230/
Вопрос: Photoshop vs GIMP vs Pixelmator Pro vs Affinity Photo?

Лучший ответ:
Photoshop vs GIMP
GIMP из списка удаляйте сразу, он не подлежит сравнению ни с какими профессиональными редакторами.
Если что, это официальное заявление разработчиков.

Худший ответ:
Тут однозначно Photoshop!
Вопрос: Самый простой и быстрый способ отправить webhook из cmd?

Лучший ответ:
в 90% более-менее современных версиях Windows есть powershell
в скрипте пишете
powershell.exe "invoke-webrequest 'https://url' - usebasicparsing"
Для указания хидеров или данных которые будете передавать - читайте хелп по коммандлету
Сразу предупреждаю (вы не указали версию ОС) : 
1. при первом старте может появиться окно IE с инициализацией профиля (в старых версиях posh)
2. https может не сработать если не укажете конкретную реализацию TLS которую использовать. Или вообще не сработать если, например, вас .net 3.5 в системе а целевой сайт использует минимальную версию tls 1.2

Встроенным методом - только powershell. Но вы имеете шанс столкнуться с чудесами, я вас предупредил.
Альтернативно - просто скачайте curl

Худший ответ:
Что-то все равно придется поставить, либо wget, либо curl, лучше всего postman
Вопрос: Почему программисту нужен английский?

Лучший ответ:
Как минимум для того, что-бы при сообщении вроде:
Running as root without --no-sandbox is not supported.
не бежать на форум за помощью.
действительно ли американские туториалы и спецификации лучше русскоязычных ?
Да, потому что английский язык в сфере IT - это "оригинальный" язык. Даже если отбросить фактор перевода, который очень часто может сильно ухудшить качество материала, то остается фактор актуальности, так как перевод занимает не 1 день, а с учетом того, как быстро технологии умеют развиваться, то некоторые книги, или документация к моменту перевода уже могут быть не актуальными.

Худший ответ:
Программирование - понятие растяжимое. Есть разные области. Например в рекламных сайтах и вообще в вопросах современной верстки "на острие":


Документация к инструментам в 90% есть только на английском.
Профессиональная движуха - 99% на английском.
Статьи по теме - переводят лишь малую часть, обычно спустя месяцы.
Видео лекций и туториалов - не переводят почти никогда.
Поиск ошибок в сети - условно треть ответов находится на SO (естественно на английском), треть - на GitHub (в обсуждениях на английском), треть - на англоязычных форумах.


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

А есть, например, мир 1C. Там все ровно наоборот.
Вопрос: Оптимальное железо для веб разработки?

Лучший ответ:
По процессору смотрю на i5 9400 или i7 8700.Процессор - i5, i7 точнее сложно сказать, частоту чем больше, тем лучше. Насчет графики - согласен.Память планирую 32гб. Но думаю все же начать с 16. Начните с одной планки на 16, потом добавите по мере необэодимости еще одну, две или три планки на 16.ХД WD Green WDS480G2G0B 480Гб (m.2)Ультрабюджетный офисный диск на тормозном SATA3 отличное решение для офисной печатной машинки - ворд, эксель, браузер. Дешево и сердито.
А вот вам для разработки лучше на диске не экономить,  и взять нормальный быстрый диск. Только NVMe, никаких SATA.Прошу также подсказать, какого производителя БП выбрать и какая мощность будет оптимальной.Любой качественный БП, можно ориентироваться на сертификат. По мощности - 200ватт примерно.
Что касается мат. платы - открываете сайт магазина и выбираете по нужным характеристикам - сокет, наличие нужных функций.

Худший ответ:
Как видится:
1. Можно попробовать Huanan x79, комплект на авито с 16Гб памяти выйдет 15+/-
2. Поискать сервера предыдущих поколений.
Вопрос: Rust подходит для новичка?

Лучший ответ:
Норм, простой и понятный язык:fn bar<'a>(p: &'a int) -> &'a int {
    return p;
}
Видите, как всё просто?

Худший ответ:
Тут в соседнем ответе на вопрос набросились (несправедливо) на человека за якобы неадекватный пример. Ну ок, вот вам вполне обычный код на расте, это просто сигнатура (только сигнатура, Карл!) довольно популярного метода split одного из самых популярных типов стандартной библиотеки:
pub fn split<'a, P>(&'a self, pat: P) -> Split<'a, P>
where
    P: Pattern<'a>
После того как как вы разберетесь со всеми этими лайфтаймами, владениями, ограничениями типажей, попробуйте ответить на вопрос - чем может быть этот Pattern, а чем не может, и потом познайте дзен вместе с временем жизни функции.

Ну как думаете, норм для новичков? Ну да, для новичков-хаскелистов думаю это просто еще одна монада будет.

P.S.: сам я считаю что Rust это лучшее что произошло в области языков программирования за последнее время.
Вопрос: Какой у вас алгоритм решения задач?

Лучший ответ:
1. Прочитать условие задачи
2. Понять условие задачи
3. Убедиться, что правильно понял условие задачи
4. Придумать решение
5. Оформить решение в виде кода
6. Убедиться, что код работает (кроме случаев, если задание тупое и налажать крайне сложно)

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

Лучший ответ:
Вопрос с подвохом. 
Потому что "данные, предоставленные пользователем" может означать что угодно. Поэтому формулировать надо так:

Надо использовать параметризованный запрос, если в запросе не используются переменные?

И тогда ответ будет простой и очевидный - нет, не надо. 
Это очень простое правило: используются в запросе переменные? Используем подготовленный запрос и передаем через плейсхолдер. Не используются? Можно использовать query()

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

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

Лучший ответ:
Переход на родительскую директорию по отношению к текущей директории

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

Лучший ответ:
Сложно наговнокодить добавляя/удаляя классы.
В JS:
classList.add
classList.remove
и клик addEventListenter('click')
Элемент ищем document.querySelector();

Учить можно на javascript.ru или взять курс на udemy.com, к примеру...

Худший ответ:
Интересно мнение о моем коде
Сори за говнокод
function openhide(){
  document.querySelector('.hide_sett_passive').classList.add('hide_sett_active');
  document.querySelector('.hide_sett_passive').classList.remove('hide_sett_passive');
}

function closehide(){
  document.querySelector('.hide_sett_active').classList.add('hide_sett_passive');
  document.querySelector('.hide_sett_active').classList.remove('hide_sett_active');
}

function openprebook(){
  document.querySelector('.preblock_passive').classList.add('preblock_active');
  document.querySelector('.preblock_passive').classList.remove('preblock_passive');
}

function closeprebook(){
  document.querySelector('.preblock_active').classList.add('preblock_passive');
  document.querySelector('.preblock_active').classList.remove('preblock_active');
}

function open_prebooksItems1(){
  document.querySelector('.preblock_hs_itm1_passive').classList.add('preblock_hs_itm1_active');
  document.querySelector('.preblock_hs_itm1_passive').classList.remove('preblock_hs_itm1_passive');
}

function close_prebooksItems1(){
  document.querySelector('.preblock_hs_itm1_active').classList.add('preblock_hs_itm1_passive');
  document.querySelector('.preblock_hs_itm1_active').classList.remove('preblock_hs_itm1_active');
}

function close_when_all_close(){
  document.querySelector('.cl').addEventListener("click", function() {
    closehide();
    closeprebook();
    close_prebooksItems1();
  })
}

function MakeActive_hide_sett_passive(){
  document.querySelector('.shesterenki').addEventListener("click", function() {
    openhide();
  });
}

function click_hs_itm1(){
  document.querySelector('.hs_itm1').addEventListener("click", function() {
    openprebook();
    open_prebooksItems1();
  });
}

document.addEventListener("DOMContentLoaded", function() {
  close_when_all_close();
  MakeActive_hide_sett_passive();
  click_hs_itm1();
});
Вопрос: Альтернатива Excel для рисования таблиц?

Лучший ответ:
 Libre Office слишком малофункционален
Заявление "продукт Х малофункционален" далеко не всегда означает, что он на самом деле малофункционален. Зачастую это означает "он работает не так, как продукт Y и разбираться в нем я не хочу"

Худший ответ:
Попробуйте OnlyOffice может оно умеет.
Вопрос: Что сделать для перезапуска служб автоматически?

Лучший ответ:
Из готового заюзать любой супервизор в духе supervisord, pm2. Можно и так сделать: Supervisord и forever больше не нужны. Systemd

Худший ответ:
Настроить службы так, чтобы они не вылетали. Читайте логи - обычно там написана причина.
Вопрос: Возможно ли писать на C++ со вставками C?

Лучший ответ:
Ну да, используйте extern:

extern "C" {
        //сишный код
        int g(double);
        double h();
        ....
    };

Худший ответ:
Вот и родилось поколение программистов для которых С и С++ это разные языки. Динозавры рассматривают ++ как добавку к олдовому Си в которой самое полезное - это комментирование слэшами //.
А если всерьез - уточните вопрос. Все компиляторы С++ на ура компилируют и чистый С.
Если вы напишете в одной строчке cout, а в соседней printf - небеса не упадут и компилятор не заругается, но вряд ли ваш вопрос так очевиден, скорее всего имеется ввиду что-то более сложное.
Вопрос: Как группировать программы в Windows 10?

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

Худший ответ:
Ну тип вот: https://howdyho.net/download/372
Не пробовал, но может поможет
Взято из видео Хауди Хо
Оригинал: https://www.youtube.com/watch?v=YMEJ1o86ZLg
Вопрос: Какие сервисы/хостинг могут запустить программу на nodejs, electron и puppeteer на удаленном сервере?

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

Худший ответ:
Всем спасибо!
Воспользовался этой инструкцией, только возникли ошибки с 4 шагом, но и без него пока все работает. Can't find file /home/userone/.vnc/example123.com:1.pid
Для клиента использую VNC® Viewer.
Заказал обычный дешевый vps, буду менять на более мощный.
Вопрос: Что делать если HDD шифруется?

Лучший ответ:
на HDD шифруются и скрываются А откуда ты знаешь, что они шифруются? Это не вопрос, это намёк, что ты говоришь то, чего на самом деле нет!а диск переводится GPT из MBR И как это связано с первым? И уточни, ты просто пропустил предлог – в GPT из MBR или направление перепутал?При помощи MiniTool Partition Wizard - Data Recovery удаётся расшифровать Она ничего не расшифровывает. после перевода диска из MBR в GPT Правильно, только формат она и меняет.Можно ли как-то воскрестить жесткий диск? А он и не умирает. Не нужно чинить несломанное!
У тебя стоит Win 10, при установке ты сам выбрал форматирование диска в GPT, значит у тебя стоит загрузчик и система восстановления, которая видя бред - диск в MBR - меняет его обратно в GPT - в ту сторону она умеет менять без потери данных и быстро. (я вам не ванга!)
Теперь осталось выяснить, чем ты смотришь свои файлы, точнее пытаешься и не видишь?

Худший ответ:
Я только что прочёл очень странный пост.
Уточните, чем он шифруется? TrueCrypt? Пароль ATA? LUKS?
Есть подозрение, что эта фантасмагория происходит на ноутбуке, найдите в BIOS все упоминания паролей и шифрования и отключите.
Вопрос: Как можно оптимизировать перенос текста с нижним подчеркиванием?

Лучший ответ:
Я бы так сделал https://codepen.io/notiv/pen/gOrEBZa
Разделил бы название файла на части и левую уже резал при сужении блока

Худший ответ:
Оберните название файла в блок и примените к нему стиль:
word-break: break-all;
Желательно блок выделить немного изменив фоновый цвет.

Если не нравится, то еще можно так:
text-overflow: ellipsis;
Вопрос: Какой софт подобрать для школьного класса?

Лучший ответ:
Lms  так называется такой
 Тип софта. Лучше спросите в гороно

Худший ответ:
Посмотрите в сторону MikroTik
Вопрос: Как равномерно поставить палочки в меню-гамбургер?

Лучший ответ:
На самом деле сам бургер по факту является костылём. И самое время выучить flex-box это облегчит это в разы всю разработку.
Если в лоб то родительский элемент flex
свойства flex-direction, justify-content,align-items.
3 свойства решат эту задачу

Худший ответ:
height 8px для ::after
Вопрос: Написал программу- как проверить, что не нарушаю лицензии?

Лучший ответ:
Размещайте. 
https://ru.wikipedia.org/wiki/BASS

Freeware — библиотека бесплатна для некоммерческого использования;
Shareware — «условно-бесплатная» лицензия позволяет использовать BASS в коммерческих целях неограниченным количеством shareware-продуктов, при одном условии — стоимость продукта не может превышать более €40 за каждый; подходит для индивидуальных лиц (не организаций);
Единая коммерческая лицензия — позволяет использовать BASS только в одном коммерческом продукте;
Неограниченная (безлимитная) коммерческая лицензия — позволяет использовать BASS в неограниченном количестве коммерческих продуктов.


Худший ответ:
Можете размещать. Пока вы не будете продавать программу или она не станет слишком популярной ее лицензионная чистота будет никому не интересна.
Т.к. вы используете сторонние компоненты (BASS audio library), то на них распространяется лицензия, указанная авторами компонента. Ваш код она тоже может затрагивать, надо читать конкретную лицензию.
Вопрос: Где искать помощников?

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

Худший ответ:
Вы удивитесь, но с появлением одного помощника объём работы вырастает в несколько раз, так как появляется работа по согласованию решений и распределению обязанностей. 
Плюс вы будете ждать окончания выполнения работы другим работником и в итоге разочаруетесь в "помощи".
Вопрос: Стоит ли тратить время на изучение float?

Лучший ответ:
Вот весь флоат
<div class="row"> 
   <div class="col"></div>
   <div class="col"></div>
   <div class="col"></div>
 </div>
.row {
    margin-right: -15px;
    margin-left: -15px;
}
.row:before,
.row:after {
    display: table;
    content: " ";
}
.row:after {
    clear: both;
}
.col {  
    float: left;
    width: 33.33333333%;
    position: relative;
    min-height: 1px;
    padding-right: 15px;
    padding-left: 15px;    
}

Худший ответ:
флоат для обтекания 
хотя в 2010 годах верстали и на флоатах
Вопрос: Как вам идея поднять электронику России с колен?

Лучший ответ:
Хотите и себе кусочек от распила бюджета откусить) Я смотрю, у вас в стране так многие делают, и всем пофиг. Значит у вас есть шанс :)

PS: Свои выводы я взял не из потолка, а из habra - Как дочка Ростех-а, продавшая десятки тысяч камер ...

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

Лучший ответ:
В запросе на получение количества лайков у вас нет указания на версию апи.
Просто попробуйте открыть в браузере два варианта:
а)  тот, что у вас сейчасhttps://api.vk.com/method/photos.get?album_id=profile&rev=1&extended=1&count=1&access_token=ТУТ_ТОКЕН
б) тот, который будет работать:https://api.vk.com/method/photos.get?album_id=profile&rev=1&extended=1&count=1&access_token=ТУТ_ТОКЕН&v=5.77
Кароч, в запрос "на получение лайков" добавьте в конце &v=5.77

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

Лучший ответ:
Надо позвать сетевика который настроит

Худший ответ:
А что вы конкретно хотите? Обслуживать этими адресами сайты? Или просто "прокинуть" сервис типа ICMP на внутренний адрес через net-map?
Вопрос: Как сделать прокрутку как на сайте Apple Music?

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

Худший ответ:
JS не боюсь

Вот и хорошо, делайте на js
Вопрос: Обязательно ли сейчас иметь macbook чтобы стать junior Ios — developer?

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

Худший ответ:
Для работы со свифтом обязательно нужен мак, тк полноценный эмулятор айфона есть только там. Ну и xcode тоже только там.

мне пока, что стоит дорасти до джуниора-фронтенд разработчика
Только если вам нравится эта сфера. Ну и я не советую ориентироваться на веб-студии - смотрите на то, что требуют в продуктовых компаниях (это те компании которые разрабатывают собственные веб-приложения, вместо заказной разработки).
Обычно там используются фреймворки для разработки SPA: React, Vue, Angular, а для стилей используются препроцессоры - SCSS/LESS

Ну и разработка не ограничивается фронтендом и ios - есть android-разработка, если бэкенд, есть кроссплатформенные фреймворки для мобильных приложений - тот же Xamarin, который вы упомянули.
Если очень интересна именно мобильная разработка - можете пока изучать разработку на android. Эти навыки не будут лишними
Вопрос: Физическое хранилище данных для сайта — плохая идея?

Лучший ответ:
Посчитай расходы и сравни, что будет профитнее. К примеру для таких вещей есть готовые решения по типу https://cloud.yandex.ru/services/storage
https://selectel.ru/services/cloud/storage/

Худший ответ:
Это плохая идея, если ты не понимаешь как что работает и что делать в случае проблем с железом.
Вопрос: Какая есть удобная простая ЦМС?

Лучший ответ:
Простая и удобная - хз, под требования Drupal подойдет вполне

Худший ответ:
Drupal не прост, но если опыт работы в вебе есть, то вы сможете легко это все настроить.  
Дефолные вьюхи и возможность их такой настройки. Если стандартной настройки недостаточно, то можно настроить свой шаблон для вывода.
Огромное кличесво типов полей. 
В стоке конечно ни первого ни второго нет, расширяется модулями
Вопрос: В чём ошибка объясните?

Лучший ответ:
1. restultin пустой
2. форматированные строки - дыра для sql-инъекций. Вместо них лучше использовать параметризованные запросы.

Худший ответ:
resultin пуст, тег лучше сменить на Python
Вопрос: Gembird usb 2.0 4-port hub не работает, почему?

Лучший ответ:
А ты не пробовал вскрыть корпус устройства? Какая, к лешему, схема?! :Dсоветов по созданию програмного диалога с хабом диагностики состояния
Видишь ли в чём дело – USB-хаб весьма "тупое" устройство, там всего одна микросхема, остальное – обычные электрические проводники, то есть там и диагностировать-то нечего, кроме осмотреть и прозвонить дорожки на обрыв, а если они целы, значит микросхема умерла, починить микросхему... ну ты понял.

Худший ответ:
Gembird usb 2.0 4-port hub не работает, почему?Да кто его знает, сломался наверно.не смог найти схему электрическую принципиальную хабаДа чего там искать это же FE1.1S - https://cdn-shop.adafruit.com/product-files/2991/F...
Вопрос: Не могу определиться: C# или Java?

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

Худший ответ:
И C#, и Java. А ещё JS, Python, SQL и ещё с десяток других
        Такое ощущение, что никто не читает классиков, которые говорят, что каждый год надо изучать один-два языка.
        И вообще, никогда не понимал тех, кто пытается выучить один язык на всю жизнь. Так не бывает. Все прогаммисты знают несколько языков, без этого просто невозможно работать.