Vikhrmodels/habr_qa_sbs huggingface dataset:
Вопрос: В каких случаях стоит делать S.P.A. приложение?

Лучший ответ:
SPA нужно делать всегда (если есть ресурсы).
1. Снижаем нагрузку
2. Индексируется поисковиками уже давно нормально: нужно прочитать требования от ПС для более корректной индексации и понимания процесса.
3. Возможность переносить SPA-приложение на различные платформы при необходимости.
4. Возможность создания stand-alone приложения с того же кода.
(я могу перечислять до бесконечности...)О, SPA!
Как мало в этих буквах...
И как же много смысла в них!
Для тех,
Кто пишет код "красиво",
И ценит в жизни каждый миг!
©2016

Худший ответ:
Если вы делаете браузерную (html) игру, то есть, по сути, у вас одна страница у каждого пользователя и куча динамического контента. Эту кашу, в принципе, индексировать не получится, поэтому можно изначально забить на поисковики и делать SPA.
Примеров тьма - бойцовский клуб и куча аналогов, ботва и т.д., а так же Iframe приложения (и игры) вконтакте, фейсбук, одноклассники, тоже многие делают на html.
Продвигаются такие игры либо внутренними механизмами соц. сетей, либо рекламой.
Библиотеку (тематический сайт) делают по всем канонам для поисковиков.
Вопрос: На сколько безопасно располагать 1000 виртуальных машин в одном сегменте сети и какие есть риски?

Лучший ответ:
Броадкаст сожрёт заметную часть пропускной способности сети. Учитывая, что у вас это ещё и на несколько датацентров будет растянуто -- пропускная способность будет падать ещё заметнее, учитывая длинные пинги между датацентрами.
Второй момент -- смотря что это будут за виртуалки. Если это всё виртуалки разных клиентов, то безопасность будет страдать, это факт. Если, конечно, у вас там не будет каких-то хитрых технологий изоляции клиентов друг от друга, типа vmware-вской vapp fencing.

Худший ответ:
Броадкаст сожрёт заметную часть пропускной способности сети. Учитывая, что у вас это ещё и на несколько датацентров будет растянуто -- пропускная способность будет падать ещё заметнее, учитывая длинные пинги между датацентрами.
Второй момент -- смотря что это будут за виртуалки. Если это всё виртуалки разных клиентов, то безопасность будет страдать, это факт. Если, конечно, у вас там не будет каких-то хитрых технологий изоляции клиентов друг от друга, типа vmware-вской vapp fencing.
Вопрос: Почему глифы цифр в шрифтах скачут по вертикали?

Лучший ответ:
Просвещайтесь ;-)
1. Вики.
2. Справочник Паратайпа.
3. Fonts.com

Худший ответ:
Я пару шрифтов с таким же написанием цифр встречал.
Так что это модное стильное и молодежное решение
Вопрос: Axios и Fetch — что Вы используете и чем отличаются?

Лучший ответ:
Так как fetch это полифил то когда fetch будет в большинстве браузером полифил можно будет просто убрать не меняя код. Использовать можно с чем угодно.

Худший ответ:
https://medium.com/@nzvtrkk/fetch-vs-axios-js-для-...
Вопрос: Что будет если просрочить контракт?

Лучший ответ:
Автоматически ничего не будет.

Худший ответ:
Как договоритесь с клиентом. В общем случае эта дата формальная.
Вопрос: Когда я отрываю yii проект на сервере, то в documentRoot что прописывать?

Лучший ответ:
По мне так только тебе известно куда ты его ставишь. Но в DocumentRoot пишут директорию /web, там где index.php

Худший ответ:
DocumentRoot указывает на корневой каталог сайта. Всё что выше - не доступно к прямому запросу извне.
Вопрос: Как обойти anti-adblock на qaru.site?

Лучший ответ:
Использовать stackoverflow.com вместо этого кривого автопереведенного сайта.
Ну, или вот на коленке накидал юзерскрипт, который приводит стили в порядок:if (document.readyState === "loading") {
  document.addEventListener("DOMContentLoaded", makeOk);
} else { 
  makeOk();
}

function makeOk() {
	setTimeout(
	function() {
		let elementList  = Array.from(document.getElementsByClassName('desc'));
		elementList .forEach(element => {
			element.attributes.style = "";
		});
		let elementList2  = Array.from(document.querySelectorAll('div.answer-row > div'));
		elementList2 .forEach(element => {
        element.className = "";
		});
	}, 500);
}

Худший ответ:
Да, один из сайтов просто с неимоверным количеством рекламы. Ну да ладно.
Для хрома установить приложение User JavaScript and CSS или аналогичное, в котором можно прописать свои скрипты или css. В колонке JS написал:window.onload = function(){
      	var elts = document.getElementsByClassName("answer-row");
        for(var e = 0; e < elts.length; e++) {
            var elt = elts[e].childNodes[1];
            elt.style.setProperty('transform', 'scale(1, 1)', 'important');
            elt.style.setProperty('direction', 'ltr', 'important');
        }    
    }
или как написал Александр Талалаев, только нужно дождаться завершения загрузки windowwindow.onload = function(){
        $('.desc').parent().removeClass();
    }
Красный банер теперь только в другую сторону смотрит! Гы))!
Вопрос: Как лучше писать на python под android?

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

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

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

Худший ответ:
Для C# есть Bot framework
Сейчас он поддерживает достаточное количество мессенджеров.Можете посмотреть как работает поддержка диалогов
Вопрос: Как лучше реализовать регистрацию пользователей в Django?

Лучший ответ:
Ну и мой ответ, если проект новый то сам бог велел использовать способ который описан в доке:
https://docs.djangoproject.com/en/1.11/topics/auth...

Худший ответ:
Неплохо будет создать свою модель пользователя, но включать туда не все поля User, а те, которых в нем нет и добавить OneToOne, связав таким обтразом свою модель со стандартной.
Плюсы такого подохода:
1. DRY вы не повторяете того, что уже написано
2. Вы можете использовать стандартные средства аутентификации, а так же хеширования паролей, а не писать это самому
Вопрос: Поможете разобраться с текстовым сайтом?

Лучший ответ:
Вы давно этот вопрос задавали, сто раз уже начать делать бы успели.
1) Зарегистрировать права на тексты. Зависит от вашего желания преследовать нарушителей. На 100% нет
2) Реально
3) Лучше сделать и жалеть, чем жалеть о том что не сделал
4) Обратить внимание на качество информации. Сайт сделаете - кинете сюда, попросите SEO-аудит, вам укажут на ошибки. Исправите и готово. Заранее не подготовитесь ко всему.

Худший ответ:
1) Нет, нельзя. Загружая что-то в Интернет, Вы по умолчанию соглашаетесь на любой вид использования Ваших материалов. Можно попытаться, но это выглядит глупо.
2) Конечно, заработок в сетях возможен исключительно на текстовых сайтах.
3) Если нравиться, то почему не взяться?
4) Внимание нужно обратить на всё. Это и СЕО и содержание и оптимизация. Этой ядрёной помесью можно и обжечься (нет). Если есть неутолимая жажда создания сайта - действуйте, не оглядывайтесь!
Я желаю Вам только успеха. Как заработаете свой первый миллион - напишите.
Вопрос: Чем сисадмин отличается от devops?

Лучший ответ:
Сравните список требований и увидите чем они отличаются

Худший ответ:
Сравните список требований и увидите чем они отличаются
Вопрос: Как реализовать линк?

Лучший ответ:
maybe-v это значения get параметра user. Чтобы он отображался так user/maybe-v а не так &user=maybe-v  нужно соответственно настроить UrlManager.

Худший ответ:
Почитайте про rewrite в настройках веб сервера. Там можно сделать преобразование таких ссылок в понятные url?user=maybe-v, таким образом юзер пользуется одними, а веб сервер преобразовывает и обрабатывает другие
Вопрос: Оценка уровня верстки?

Лучший ответ:
1) Фон зеленого блока сделан некоретно. Нужно либо использовать цвет с альфой rgba, либо если и делать картинкой, то размером 1x1px
2) Кириллица в CSS файлах.
3) Освойте какую-нибудь методологию (популярен БЭМ, но можете посмотреть также на аналоги, например RSCSS или Atomic CSS).
4) Надо бы сделать hover для кнопок, чтобы цвет менял.
5) .main-form input распространяется даже на кнопки, добавляя к кнопке лишний border-bottom
6) Почему-то заголовок "СОВРЕМЕННЫЙ ПОДХОД К АВТОМАТИЗАЦИИ ..." имеет шестой уровень, хотя по логике, это h2
7) В адаптивке есть косяки, например прижатые к краям экрана блоки, текст под заголовком "Современный подход к автоматизации " имеет странный левый отступ.
8) В модальном окне есть форма, и в ней каждое поле имеет margin-top: 20px, допустим. Но к этому еще добавляется тег br между полями, хотя он там никакой роли не играет, т.к. поля занимают всю ширину, и насильственные переносы строк там не нужны, куда лучше обернуть каждое поле в отдельный div.
9) e-mail'ы и номера телефонов лучше засовывать в ссылку mailto: и tel:.
Это основные ошибки и замечания, остальное либо не заметил (т.к. проверял поверхностно), либо заметил, но посчитал это слишком субъективным.

Худший ответ:
до портфолио это  не дотягивает ибо:
1)семантики нет
2) адаптив хромает
комрады выше или ниже дополнят список
Вопрос: Как правильно распределить обязанности по веб разработки?

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

Худший ответ:
Фронт, бек, дизайн.
Вопрос: Как любителю разобраться с кодеками/форматами. Что и как? Как использовать с бесплатным ПО?

Лучший ответ:
Нужно настраивать: формат (mov, mpg, mp4 и прочее. В Адобе сохранял в mkv), кодек видео (в списке десятка 3-4), кодек аудио. Вот вам мой топ кодеков для любительского использования:
1) H.264 (контейнер mp4) - большая часть видео в интернете пока распространяется в нем. В меру легкий, приемлемо выглядит. Крепкий середнячок. Битрейт для FHD 1080p50 - 15-25 мбит в секунду.
2) VP9 (контейнер webm, mp4) - форсится гуглом как замена H265 (см. далее), причем вполне успешно. Уже поддерживается многими железками, настройки примерно те же, что и для H265, но большая часть профессионального софта его не поддерживает. Зато поддерживает ffmpeg - в общем кодек-мечта для любителя открытого ПО. До сих пор вроде бы не считается на видеокарте, но это не точно.
3) H.265 (контейнер mp4) - разработан как замена для H264, в основном с расчетом на высокие разрешения (4К и выше), но прекрасно справляется и с обычным FHD. Лучше сжимает, качество получается лучше, чем с H264. Для вашего FHD битрейт в районе 10-14 мбит секунду. Работает весьма медленно, жрет много ресурсов как на создание файла, так и на воспроизведение. 
Почетное упоминание: QuickTime (контейнер mov) - стандарт Apple. Не для маков использовать смысла нет. По битрейтам не подскажу, ибо не вспомню - а сам сижу на винде. Поддержка воспроизведения примерно как у H264.
Остальные, если вкратце, вам не нужны. Либо устарели, либо не имеют особых преимуществ перед названными выше, либо профессиональные.
Кодек аудио как правило - AAC или Opus. Битрейт 128 кбит или выше.Что будет гарантировано работать (воспроизводить 1080p/50 видео + звук) на ТВ (с флешки на LG, Samsung и прочих)? H.264 работает даже на кофеварках наверное, так что можете смело выбирать его.Я так понимаю, в программах типа shortcut кодеки и прочие штуковины тоже из бесплатных.Все доступные вам кодеки бесплатны для вас, но некоторые из них платные для производителей железок и\или софта.

Худший ответ:
1. Быстро пойти и почитать ffmpeg.org
Чаще даже проще загуглить что-то вроде: ffmpeg mov to mp4
2. Нет. Гарантировать воспроизведения никто не может
Вопрос: Как разметить SSD накопитель при установленной системе не имея CD привода?

Лучший ответ:
Панель управления -> Администрирование -> Управление компьютером -> Управление дисками

Худший ответ:
Он пустой что ли? если да, то форматируй штатными средствами. А не поможет, то парагоном
Вопрос: Где обрабатывать данные, на беке или фронте?

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

Худший ответ:
Отрисовывать - то на фронте, естественно.
А сами данные на бэке привести в более-менее отрисовываемый вид - отфильтровать нужный диапазон, сгруппировать что нужно и т.п.
Вопрос: Стоит ли брать такой заказ?

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

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

Лучший ответ:
Как google оптимизирует картинки?
Хреново он их оптимизирует. Только ширину с высотой уменьшает, если на сайте они ужаты. Чтобы гугл не ругался, просто не вписывайте картинки в контейнеры меньше их размеров и не уменьшайте их через стили.
Если хочется бесплатной оптимизации. Для png рекомендую использовать 
pngquant --force --skip-if-large --speed 1 256
Если хочется выжать еще немного - поверх проходимся PNGZopfli, но это долго.

Худший ответ:
Решение найдено: консольные утилиты identify, compare. (www.imagemagick.org)
Вопрос: Как выбрать из таблицы строки, чтоб сумма значений не превышала заданную величину?

Лучший ответ:
Вроде так должно сработатьSELECT *
FROM (
  SELECT *,
    SUM(amount) OVER (ORDER BY created_at) AS sum_amount
  FROM таблица
) t
WHERE t.sum_amount <= ?;

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

Лучший ответ:
Чтобы защититься от eval, нужно не использовать  eval. Остальные методы можно обойти,  все зависит от времени которое это займет.

Худший ответ:
Запретить все операции взаимодействия с внешней средой (файловой системой, удаленными серверами, базами данных и т.д.)
Вопрос: Как сделать отправку формы заказа на две почты?

Лучший ответ:
Реализовать это довольно просто, нужно в функцию mail передать в качестве первого параметра строку с несколькими адресатами:$myaddr = "ОСНОВНАЯ_ПОЧТА, ДОПОЛНИТЕЛЬНАЯ_ПОЧТА";

Худший ответ:
Добавить переменную $dopaddr = "Дополнительная_ПОЧТА";
И послеmail($myaddr, $subj, $text, $headers);
добавить mail($dopaddr , $subj, $text, $headers);
Вопрос: Хватит ли мне блока питания?

Лучший ответ:
Смотри на БП таблицу мощностей по линиям. Тебе нужна линия +12В. Их там может быть две - питание видюхи и питание накопителей. Грубо умножай число в графе на 0,75, чтобы учесть китайский КПД. Складывай пиковую мощность карты, TDP процессора (максимальная или типичная мощность - пофиг, ибо тепло с потолка не берется), примерно по 10Вт на каждый диск в корпусе и еще 75Вт на питание материнки (хз что там на PCIE будет висеть, поэтому берем максимум).
Если сумма мощностей не превышает мощность БП по линии 12В, то скорее всего он потянет нагрузку.

Худший ответ:
Для этого можно юзануть онлайн калькулятор для БП
https://www.bequiet.com/ru/psucalculator
Вопрос: Добавлять год/лет в зависимости от числа?

Лучший ответ:
function plural(number, titles) {  
    cases = [2, 0, 1, 1, 1, 2];  
    return titles[ (number%100>4 && number%100<20)? 2 : cases[(number%10<5)?number%10:5] ];  
}

var declension = ['год', 'года', 'лет'];

console.log('1 ', plural(1, declension));
console.log('2 ', plural(2, declension));
console.log('5 ', plural(5, declension));
console.log('7 ', plural(6, declension));
console.log('10 ', plural(10, declension));
console.log('20 ', plural(20, declension));

Худший ответ:
_javascript.ru/forum/misc/41799-problema-so-sklonen...
Второй пост, дан ответ на Ваш вопрос.
Вопрос: Как правильно использовать AJAX + PHP?

Лучший ответ:
Обратную связь реального времени можно сделать через:
а) WebSocket
б) Long Polling
в) Другие морально устаревшие или извращённые решения, вроде "Опроса", "Gif Push", "iframe push", etc...
Смотреть в гугле, т.к. сюда код не влезет, например: socketo.me/docs/hello-world

Худший ответ:
Схема с Ajax такая:
ajax отправляет запрос на определенный адрес, так скрипт делает нужную выборку и возвращает или готовый кусок html или данные в формате json. При получении ответа от сервера, заменяем старый блок на новый или формируем новый на основе полученного json.
Например:$('select').on('change', function() {
  var chosen = $(this).val(); //берем выбранный результат
  var url = 'http://somemydomain.ru/some-controller/some-action?chosen=' + chosen; //формируем урл
  $.get(url,function(data){ //отправляем ajax запрос
     $('#blockToUpdate').html(data); //вставляем данные пришедшие от сервера
  });
})
соответственно на сервере что-то типа этого:function actionSomeAction(){
$chosen = $_GET['chosen'];
return '<p>Выбран '.$chosen.'</p>';
}
Есть еще удобный плагин PJAX:
https://github.com/defunkt/jquery-pjax
Вопрос: Как прекращать прием заказов на сайте при выключении компьютера?

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

Худший ответ:
Напиши сервис, который будет с компьютера раз в минуту вызывать страничку site.ru/i_am_online, которая в свою очередь будет обращаться к базе, а сайт будет из базы брать, что если в течении двух минут нет активности, значит заказы не принимаем...
Вопрос: Как установить Windows на несколько дисков?

Лучший ответ:
Поменяйте на HDD

Худший ответ:
Как правило сама Windows и основные программы занимают 40-60Гб.
Некритичные к скорости работы программы можете ставить на HDD.
Так же туда можно перенести папки "Документы" и "Рабочий стол".
И места хватит. Не надо фотки и фильмы хранит на системном диске и все будет отлично.
Чтобы ОС работала быстро на SSD обязательно должны располагаться следующие файлы в порядке важности -
1)Файл подкачки.
2)Профиль пользователя (конкретно папка AppData)
3)Сама система (папка Windows)
4)Файлы программ - (папки Program Files)
Все остальное можно размещать на HDD.
Общий принцип - все что часто используется, и критично к скорости на SSD.
А архивы, крупные файлы к которым редко обращаются и прочее - на медленном HDD.с программами (которые ставятся только на С)Большинство программ спрашивают в какую папку будет идти установка. Нетрудно поменять.
Если вдруг не спрашивает - что бывает редко, можно установить, а потом перенести с помощью симлинка.
P.S. В любом случае - ни в коем случае не  забивайте SSD под завязку, оставьте хотя бы 30Гб свободного пространства - иначе скорость будет падать. Проверьте работает ли TRIM - например этой утилитой
Если вдруг TRIM не работает - постарайтесь чтобы заработал, обычно на старых компьютерах проблема в выключенном AHCI.
Если TRIM вообще никак не работает и не заработает - оставьте over не меньше 10Гб, лучше больше. При работающем TRIM это тоже полезно, но не  критично.
Вопрос: Как рисовались шедевры художественной культуры?

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

Худший ответ:
Традиционный вопрос в millennial-стиле: "какая последовательность простых шагов приведет к искомому результату, желательно - сразу?"
Рисовать прилично действительно можно научиться. Для этого нужно изучить технику, композицию, анатомию и практиковаться (построение композиции, работа с цветом, рисунок с натуры, начиная с простого, типа кубиков и гипсовых фигур, а не котов), желательно - иметь возможность получать обратную связь от кого-то, кто профессионально занимается именно преподаванием графики/живописи, а не просто от художника. Обычно, это занимает около четырех лет. Вопрос о необходимости фотографий, естественно, бессмысленен.
Вопрос: Блоки мешают друг другу, как исправить?

Лучший ответ:
Если это отдельный блок на странице, то сделайте два блока с display:inline-block, задайте им ширину по 50% (или иное соотношение) и вертикальное выравнивание сверху. В один блок поместите список с заголовком, в другой - картинку.

Худший ответ:
я сделал бы вот так .holder { overflow:hidden;}
.banner { float:right;}<div class="holder">
        <div class="banner">
           <img src="../image/banner.png">
        </div>
        <div class="box">
            <h1>Product name</h1>
            <div class="list_h">
                <ul>
                    <li>Put on this page information about your product</li>
                    <li>A detailed description of your product</li>
                    <li>Tell us about the advantages and merits</li>
                    <li>Associate the page with the payment system</li>
                </ul>
            </div>
        </div>
 </div>
Вопрос: Как уменьшить размер изображения?

Лучший ответ:
Возвращать URL не оригинальной картинки, а её заранее пожатой версии.

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

Лучший ответ:
Запустить IE из под wine.Использовать готовый враппер на wine, вроде WineBottler. Там есть IE.Запустить IE с виртуалки с виндой.Использовать онлайн-сервисы для рендеринга под нужными версиями браузеров, вроде BrowserStack. Это не просто скриншотилки, это интерактивные готовые виртуалки.

Худший ответ:
Это шибко древний IE.
Он вам не нужен.
Вопрос: PyPy медленнее чем node.js?

Лучший ответ:
А на реальных проектах с использованием uvloop и asyncpg даже обычный Python теперь быстрее Node.JS

Худший ответ:
Про реальное быстродействие тебе придется задумываться, когда станешь senior разрабом на большом проекте
Тогда у тебя уже будет опыт работы со всемит тремя платформами python/js/java и у тебя будет понимание, что тебе нужно в конкретном месте
Вопрос: Возможно ли создать программу, чтобы она брала 2 фотографии с подписчиков группы ВКонтакте и постил их?

Лучший ответ:
1) Да, можно
2) Любой популярный ЯП
3) Уметь писать на этом ЯП + читать API документацию ВК

Худший ответ:
В дополнение к ответам ссылки на документацию:
https://vk.com/dev/access_token
https://vk.com/dev/photos.get
https://vk.com/dev/polls.create
https://vk.com/dev/wall.post
Вопрос: Как использовать progress bar если много файлов на загрузку?

Лучший ответ:
(скачал) / (нужно скачать) * 100%

Худший ответ:
(скачал) / (нужно скачать) * 100%