pavki/hr_qa_sbs_best_bad huggingface dataset:
Вопрос: Расстояние между клиентом и сервером, задержка, как решить?

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

Худший ответ: Учитывать.
Вопрос: Как проверить наличие слова «цвет» и достать второе слово?

Лучший ответ: $color = preg_match('~^цвет (.+)~ui', $str, $match) ? $match[1] : null;

Худший ответ: Цвет (.+)
Вопрос: Своя система авторизации в джанго?

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

Худший ответ: 1) Скорее всего есть. Разница в качестве исполнения, скорее всего разница существенна и не в твою пользу.
2) Так, как того требует проект, если требования у проекта без извращений - то в документации джанги все написано про реализации аутентификаций и авторизаций.
3) Использовать встроенные в django вьюшки, которые были сделаны специально для этой задачи. 

https://docs.djangoproject.com/en/3.1/topics/auth/...
https://docs.djangoproject.com/en/3.1/topics/auth/...
https://docs.djangoproject.com/en/3.1/topics/auth/...
Вопрос: Установить службу каталогов на ОС «Linux» и создать на нём лес. Не разбираюсь в линуксе. Кто-то сможет помочь?

Лучший ответ: OpenLDAP. И, видимо, samba4, если виндовый домен нужен. Но этого в двух словах не объяснить.

Худший ответ: Два варианта, не уверен, какой имел в виду автор курсовика:
- или LDAP directory, как сказали выше
- или "натуральный" каталог NIS - https://en.wikipedia.org/wiki/Network_Information_...
Вопрос: Как решить проблему с запуском postgresSQL?

Лучший ответ: Вчера устанавливал на win10 версии: postgresql-9.6.20 ,postgresql-10.15,postgresql-11.10
и была точно такая же ошибка как у тебя на последней версии.
Решение: При установке , когда доходишь до окна Select Components снимаешь галочку с
pgAdmin4 и далее все устанавливаешь. Потом заходишь на сайт pgadmin.org и скачиваешь pgAdmin 4 и устанавливаешь.

Худший ответ: видать что-то пошло не так.
Вопрос: Какой аналог функции array_unique (удалить повторяющиеся значения) в PHP у JavaScript?

Лучший ответ: let array = { ... } — это не массив

Если таки для массива, то можно воспользоваться Set и spread
const array = [ 0, 0, 1, 1, 2, 2, 3, 3, 4, 4 ];
const arrUniq = [ ...new Set(array) ]; // [ 0, 1, 2, 3, 4 ]

Худший ответ: Если без библиотек — создай объект, и в ключи запиши значения из массивов.
Тк ключи у объекта не повторяются — лишние данные уйдут.

P.S. — сработает, если работаешь со строками
Вопрос: Как дождаться полной загрузки страницы на Selenium python?

Лучший ответ: from selenium.webdriver.support import expected_conditions as ec

element = WebDriverWait(driver, 10).until(ec.presence_of_element_located((By.TAG_NAME, "html")))
Вставьте строку с element перед строкой new_page = driver.find_element_by_tag_name('html')
Пока страница не загрузится выполнение кода не продолжиться.

Худший ответ: Можно отслеживать состояние документа через document.readyState
Когда страница в процессе загрузки, эта проперти будет loading
Когда страница загрузится - complete
(с) https://www.w3schools.com/jsref/prop_doc_readystate.asp
Вопрос: Откуда появляется ошибка?

Лучший ответ: mid = high + low;
guess = arr[mid];
Первая очевидная ошибка здесь: сумму надо бы разделить пополам.

else if (guess < item)
  low = mid - 1;
Вторая очевидная ошибка здесь: mid может быть равен 0, а значит low может вылезти за пределы массива снизу.

С условием выхода из цикла поиска при отсутствии искомого значения в массиве тоже не всё ОК.

int arr[length];
Если length = 2147483647, то программа вообще отказывается работать.
Ты пытаешься разместить массив размером 8ГБ на стеке. Как видишь, это не очень хорошая идея.

Худший ответ: int arr[length];

int		main(int argc, char **argv)
{
    ...
}
Объявите массив как глобальную переменную чтобы эта память была не на стеке. Или используйте malloc (+ free) для динамического выделения её в куче.
Вопрос: Как посчитать уникальные символы в строке?

Лучший ответ: const countUniqueChars = str => new Set(str).size;

или

const countUniqueChars = str => [...str]
  .reduce((acc, n) => (acc.includes(n) || acc.push(n), acc), [])
  .length;
или

const countUniqueChars = str => Array
  .from(str)
  .reduce((acc, n, i, a) => acc + (i === a.indexOf(n)), 0);
или

const countUniqueChars = str => Object
  .keys(Object.fromEntries(str.split('').map(n => [ n, 1 ])))
  .length;

Худший ответ: Что не так: цикл в цикле – лучше обойтись одним, если можно. Поиск можно заменить на indexOf()в качестве накопителя уникальных строка как-то нетрадиционна. Обычно массив, или ключи объекта. Или, изысканно, Set – и потом будет интересовать его длина (размер, size, кардинальность : )const text2 = 'You know nothing Jon Snow';

function countUniqChars(str) {
  return new Set(str.split('')).size;
}

countUniqChars(text2) // 13
Вопрос: Компьютер зависает спустя 20-25 минут работы?

Лучший ответ: Переустановите систему, чтобы исключить проблему с Windows.
Потом поищите закономерности в зависании (после чего, как часто, какой промежуток времени).
Я ставлю на плохой блок питания. Проверьте его напряжение в BIOS.

Худший ответ: Перегрев
Проблема с памятью
Проблема  с видеокартой (видеопамятью)
Вопрос: Болят глаза от Linux. Что делать?

Лучший ответ: Подозреваю, что шрифты нечеткие.

Худший ответ: Производители железа ленятся оптимизировать драйверы под linux. Vitualbox на win-хосте поможет.
Вопрос: Как определить наличие разрыва рисунка?

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

Худший ответ: Функция regionprops в Матлабе (Image Processing toolbox)
Вопрос: Как максимально четко и уверенно рассказать про ООП?

Лучший ответ: В этом и проблема что всем рассказывают про ООП используя "эти три принципа" хотя суть в другом - в том что ооп это программирование Обьектами которые обмениваются сообщениями и используют друг друга для выполнения задач. И только после этого людям надо рассказывать про "эти три принципа"!
Что бы объяснить суть чего либо нужно ответить на 3 вопроса:
- Что он делает?
- Как он это делает?
- Для чего это нужно?

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

Лучший ответ: Сначала решает драйвер файловой системы. Именно он распределяет запись по кластерам - логическим единицам ФС. Затем он даёт диску команду записать кластер в определённые логические секторы (LBA). Ну а потом уже диск решает, какие именно физические секторы (или блоки для SSD) соответствуют данным логическим.
У HDD, обычно, это соответствие задано жёстко, за исключением сбойных секторов, которые маппируются по специальной таблице в резервные.
У SSD есть таблица текущего маппинга, которая постоянно перестраивается так, чтобы максимально равномерно (по количеству циклов записи) задействовать блоки памяти.

Худший ответ: если мы удалили файл с локального диска С и сразу записали новый файл, то новый файл будет физически располагаться на месте (по адресу) удаленного?Нет.Кто или что решает о месте записи на HDD?Файловая система.А как SSD? Если там освободилось часть памяти, то куда будет записана новая информация? Там все гораздо сложнее - все решает контроллер диска. Во первых он оценивает блоки по степени износа и выбирает из свободных те, которые наименее изношены.
Даже если вы ничего не записываете, а просто читаете, SSD все равно будет перемещать информацию. 
А если диск заполнен полностью и свободного места для записи нет, там вообще бардак.
Чтобы записать нужно стереть, но стирать можно только большой блок размером в несколько мегабайт, и на этом блоке могут хранится как уже удаленные данные, так и актуальные. Поэтому перед стиранием блок нужно считать в память, потом записать актуальные данные и новые данные .
Вопрос: Как подключить 3 интернет шлюза в одной подсети на Debian?

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

Худший ответ: одновременно пакет не ходит через  шлюза. Ходит через тот, который указан.
Для автоматики существует BGP и OSPF.Сам IP адрес остается тот же.
Не совсем понимаю, как у вас один айпишник у разных провайдеров.
Если контора небольшая, можете поднять банально BGP на микротике по договоренности с провайдерами. Но не каждый провайдер пойдет вам на встречу с такими условиями.
Ну или настройте резервирование каналов на шлюзе. Реализация зависит от шлюза. 
В любом случае маршрут будет один.
В любом случае нифига не понятно что вы имеете ввиду под "У меня подключается другой провайдер. Сам IP адрес остается тот же."
Вопрос: Возможно ли без хостинга отправлять письма из формы?

Лучший ответ: Возможно. Через внешний SMTP сервер.

Худший ответ: без хостинга можете только ссылку на mailto протокол сделать
https://ru.wikipedia.org/wiki/Mailto

если сильно заморочиться, то динамически ее собираете 
subject body 

Но в результате только откроется почтовая программа на компьютере (телефоне)
с уже заполненной темой письма и текстом.  Отправить письмо человек должен сам.
Вопрос: Почему bootstrap4 работает частично и сильно грузит сайт на WordPress?

Лучший ответ: Подключайте скрипты правильно так css, а так js

Худший ответ: Ответили на 1-й вопрос, отвечу по тормозам...

Потому что бутстрап в себе содержит максимум. А ты используешь 5% от силы.
Отсюда вывод - собирай его под свой проект отдельно - только нужные компоненты и состояния.

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

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

Худший ответ: Решил проблему, путем добавления пользователя в доменную группу с политиками допускающими устанавливать ПО самостоятельно. 
Благодарю всех откликнувшихся!
Вопрос: Как «пощупать» Django после Rails?

Лучший ответ: хотелось бы посмотреть на то, что умеет Django и сравнить его (лично для себя) с рельсами.
В свете последних событий у ИТМО открыт бесплатный курс по связки Python + Django. Попробуйте для себя.
ITMO Course

А ниже список всего открытого на время карантина.
Course list

Худший ответ: Приходите к нам, если актуально изучить Python и Django в связке. Или по-отдельности подтянуть узкую тему. Наш курс называется «Девман», и все темы разбиты на модули, что очень удобно, если есть конкретные вопросы. 

Относительно именно Django, вот мы выпускаем новый модуль. Он не прям по азам, но очень интересен — сделали его на основе реальных тестовых заданий, которых IT-компании прикрепляли к своим вакансиям. 

Если надо будет начать со знаний проще, то вот этот модуль подготавливает. И первая задача в нём бесплатная. Можно попробовать, как зайдёт наш формат обучения. 

Так что приходите. У нас классное ревью от программистов.
Вопрос: Стоит ли покупать курсы BrainSkills?

Лучший ответ: Курсы не нужны.

Худший ответ: Да, обучение на уровне, теории достаточно
Вопрос: Можно ли скачать 33 террабайта за 7 дней при скорости 200 мегабит в секунду?

Лучший ответ: 200 * 60 * 60 * 24 * 7 / 1024 / 1024 / 8 = 14,419555664 Terabytes/week
Только непонятно откуда информация про 200 mbit/sec.
Вот я качаю 100 Мб файл с Hetzner (Хельсинки) в DigitalOcean (Франкфурт), у меня выходит 585 Mbit/sec⚡ root@dev  ~  wget https://*********/100mb.tar --report-speed=bits

--2019-05-28 13:14:56--  https://*********/100mb.tar
Resolving ********* (*********)... 95.216.141.*
Connecting to ********* (*********)|95.216.141.*|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 104857600 (100M) [application/octet-stream]
Saving to: '100mb.tar'

100mb.tar               100%[====================================>] 100.00M   585Mb/s    in 1.4s    

2019-05-28 13:14:57 (585 Mb/s) - '100mb.tar' saved [104857600/104857600]

Худший ответ: 200 мегабит, это примерно 24 мб в сек , то есть 2025гб в сутки ...или 1.98 Тб , получилось что за неделю максимум можно отправить или получить ~ 14Тб
Вопрос: Почему данные в малой таблице читается медленнее, чем в большой?

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

Худший ответ: Такое впечатление, что вы муску в тестах пытает в роли кей валуе хранилища. Использовать её в такой роли не правильно. Но если очень надо, то таблица должна быть в ОЗУ целиком. Есть статьи на эту тему.
А так попробуйте на файлах сделать типовую для СУБД задачу по выбору всех строк по значению нескольких полей
Вопрос: Как создать сайт типа пикабу?

Лучший ответ: > Не знаю с чего начать, я не веб программист
Вот вы и ответили на свой вопрос : )
Надо сначала стать веб-программистом.

Худший ответ: Скачать соответствующую CMS: livestreetcms.ru
Вопрос: Ошибка превышение лимита памяти laravel?

Лучший ответ: Читайте и загружайте частями (построчно, например).

Худший ответ: Не читай весь файл целиком. Читай и обрабатывай построчно. Можешь посмотреть в сторону LazyCollections.

Ну или можешь тупо увеличить лимит памяти в php.
Вопрос: Есть смысл это делать через css ( или просто картинкой )?

Лучший ответ: Нет смысла.

Худший ответ: Сколько же некомпетентных людей в комментариях, это шок

1) это делается в css за пару минут и легко изменяется в будущем
2) картинка не на всех разрешениях будет смотреться хорошо

В идеале, конечно же, иконки делать через шрифты (сервисы типа icomoon)
Вопрос: Как открыть окно Проводника с заданными размерами и расположением?

Лучший ответ: Простого решения не нашел.
Накатал вам программку (в архиве также есть исходники на языке C++). На проверку ошибок забил.
Использование:runexplorer.exe c:\ 0 0 500 400
(путь,координаты x,y, ширина, высота)
можно сразу несколько путей открыть:runexplorer.exe c:\ 0 0 500 400 d:\ 500 500 600 500
Проверил на Windows 8.1 и 10, но работу не гарантирую. Еще в ней стоит таймер на 5 секунд, если в течении этого времени explorer не успеет открыть окна, то их размеры не будут заданы.

Худший ответ: Программы с GUI настраивают своё окно после запуска, если в них это реализовано.
Для консольных программ эти настройки есть в ярлыке.
Вопрос: Как Junior'у разобраться в коде большого проекта на Vue.js?

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

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

Если вы спросите, и Вам скажут что это не удел мидла, курировать джунов -то этот человек редиска -  я бы на вашем месте подумал о смене компании. Иначе ваше развитие будет равно 0.

Худший ответ: Gimir Ну во первых надо понимать бизнес логику приложения, прежде чем его "разбирать". Я бы посоветовал начать с какого-то одного компонента, где интересно поврубать console.log и посмотреть где что выводит или обрабатывается. Если не понятно что-то смело обращайтесь к документации vue , там все понятно и доступно. Одновременно обратить внимание на кастомные компоненты, которые используются (package.json)  в конкретном компоненте. По гуглить про него, что делает и как отображает и обрабатывает данные. Потом уже разбирать асинхронные запросы и vuex копать. Это сугубо мое мнение
Вопрос: Почему компьютеры берут айпи из разных пулов DHCP?

Лучший ответ: В каждом VLAN'е не указан шлюз, поэтому запросы со всех вланов идет на дефолтный 192.168.2.*

Худший ответ: Я не настоящий сварщик, но по запросу "Cisco bind DHCP pool to vlan" нашел такое:
https://community.cisco.com/t5/small-business-swit...
После слова pool указывается любое название или нужный влан?
ip dhcp pool vlan1
   network 1.1.1.0 255.255.255.0
   domain-name cisco.com
   dns-server 4.4.4.2 4.4.4.1
   default-router 1.1.1.1

   lease 3

ip dhcp pool vlan2
    network 2.2.2.0 255.255.255.0
    domain-name cisco.com
    dns-server 4.4.4.2 4.4.4.1
    default-router 2.2.2.1

   lease 3
Вопрос: Как создать кодировку подключения?

Лучший ответ: На будущее: пишешь в адресной строке своего браузера, mysqli задать кодировку соединения
И тебе сразу показывает, как это сделать. Попробуй - это очень удобно.

Худший ответ: Для корректной работы клиента с сервером MySQL надо правильно установить 4 параметра кодировки подключения:

character_set_client - указывает, в какой кодировке будут поступать данные от клиента;

character_set_connection - указывает, в какую кодировку следует преобразовать данные полученые от клиента перед выполнением запроса;

collation_connection - указывает, каким образом сравнивать между собой строки в запросах;

character_set_results - указывает серверу на необходимость перекодировать результаты запроса в определенную кодировку перед выдачей их клиенту.

Если запрос и данные в БД находятся в одинаковой кодировке, и перекодировка результата не требуется, то вместо установки character_set_client, character_set_connection, character_set_results достаточно выполнить:
mysqli_query("SET NAMES 'utf8' ");

или, если collation не был задан при создании БД:
mysqli_query("SET NAMES 'utf8' COLLATE 'utf8_general_ci' ");

PS: В MySQL версий > 4.1 кодировку и collation можно установить на уровне БД, на уровне таблицы, и даже на уровне отдельной записи в таблице, по ссылке выше есть примеры.
Вопрос: Как применяется физика в разработке игр?

Лучший ответ: Просто представьте, что вы разрабатываете одну из следующих игр:

Бильярд
расчет траекторий шаров, с учетом приложенного к шару вектора силы и точки его приложения, вращательных моментов, эфекта торможения (гашения скорости) шаров со временем.

Гоночный симулятор
расчет траектории машины с учетом торможения/ускорения, инерции, столкновения с препятствиями/другими машинами, расчет деформаций элементов кузова при ударах и т.д.

Шутер
траектории разлета осколков/тел/предметов при взрывах. Транспортные средства (если есть) как в гоночных симуляторах. Поведение модели тела (траектории откидывания) игрока/персонажа/моба при физическом воздействии на него (удар авто средством/дубиной/прикладом/сковородкой, попадание пули, падение с высоты) с учетом распределения принятой моделью энергии удара по телу, силой этого удара и точкой его приложения. Например попали в голову - откидывает голову, попали в правое плече - пошло откидывание плеча и разворот корпуса, при этом противоположная сначала отстанет от разворота а потом полетит с ускорением вокруг тела по траектории вращения.

Космический симулятор
комплексное влияние источников гравитации друг на друга и на корабли, с учетом масс всех участвующих во взаимодействии объектов и как следствие их инерции

Все это физика и геометрия, достаточно сложно переплетенные между собой

Худший ответ: Физику знать вам конечно же не нужно, достаточно знать какой-нибудь физический движок, к примеру для 2D игр — Box2D. Игры пишутся на игровых движках, для мобильных самый популярный — Unity, там уже встроены физические движки, вам остается только нагуглить примеры использования.
Вопрос: Добавить к сумме еще одно поле в скрипте?

Лучший ответ: Уберите пробелы в значениях "data-compare-price":
<option value="217" data-price="2000" data-compare-price="2400">ОФД на 12 месяцев 2000р.</option>
<option value="218" data-price="2400" data-compare-price="3000">ОФД на 15 месяцев 2400р.</option>
<option value="219" data-price="4500" data-compare-price="6500">ОФД на 36 месяцев 4500р.</option>

Худший ответ: В $(this).find('option:selected').data('compare-price') у вас гарантированно лежит строка, а не число (из-за пробелов). При сложении двух строк что происходит? Правильно, они тупо соединяются

Я думаю, дальше вы всё сделаете сами)
Вопрос: Можно ли размещать в портфолио проекты с пройденных курсов по React и JS?

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

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

Поэтому ещё раз повторюсь - лучше не стоит. Создайте несколько страничек самостоятельно и засеките реальное время ушедшее на черновую работу и финальную работу с цучетом рефакторинга. Предоставьте действительно полезную информацию.

Худший ответ: А я думаю что даже нужно если хочешь быстрее найти работу. Но не указывай ,что это проект с курсов ,так как это и правда отпугивает. Поделай каких нибудь простеньких приложений и добавь парочку в портфолио. Вот у тебя и 5 лучших проектов в портфолио.
Вопрос: Какие вы знаете хорошие курсы по c# с нуля?

Лучший ответ: Книги нужно читать. Курсы нужно смотреть для закрепления уже после книг.
Вот курс, где я многое узнал уже после книги, так как это было первое серьёзное изучение языка и я много чего не увидел или не понял из книги.
Курс C# Base

Главная книга:
Язык программирования C# 7 и платформы .NET и .NET Core | Джепикс Филипп, Троелсен Эндрю

Разработка приложений ASP.NET Core

Книги (там нет книг по WPF и упоминания UWP): 
Какие посоветуете книги по C# и смежным технологиям для начинающего?

Одновременно нужно во время изучения языка создать решение (Solution) и в нём создать проекты по каждой теме или нескольким темам, что позволит в будущем возвращаться к старому материалу, чтобы быстро вспомнить. 

Грубый пример проектов в решении:
Изучение C# (.sln)
1. Переменные, циклы (.csproj)
2. Классы (.csproj)
3. Наследование (.csproj)
4. Делегаты и события (.csproj)

Все проекты нужно именовать по-английски в стиле CamelCase. Выше просто пример, чтобы было понятно.

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

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

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