Vikhrmodels/habr_qa_sbs huggingface dataset:
Вопрос: Как определить компетентность на должность middle — senior php developer?

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

Худший ответ:
А вы для себя хоть как разделяете понятия middle/senior? Почти все пишут эти крутые слова но половина и понятия не имеют о чем пишут О_О
Если вы знаете , что значит middle/senior php developer, значит вы знаете, что должны знать эти самые разрабы. Ищите тестовые задания в интернете(к примеру в Яндексе есть тестовые задания и на сотни других сайтах тоже), записываете себе, если ответ сразу идет с задачей - хорошо, если нет - ищите ответ(90% уже есть в интернете).
Дальше нужно продолжить? А ладно - даете эти задания и следите за ходом выполнения, чтоб этот чувак не искал ответов в интернете.
Ну а текст вакансий можно скопировать с сотни других страниц с подобными вакансиями, а-ля НУЖЕН SENIOR PHP DEVELOPER
Вопрос: Начальный набор программ для Windows?

Лучший ответ:
Подскажите что сейчас входит в "Джентльменский набор" для установки с нуля?Зависит исключительно от того для чего будет использоваться компьютер.Ставят ли сейчас антивирусы, фаерволы и т.д? Если да, то какие?Некоторые ставят. Всякие.Может там какие-нибудь настройки нужны для защиты?Есть.Какие программы вы ставите в первую очередь? Нужные мне.Вопрос слишком общий, и не имеет ответа.

Худший ответ:
Virtual Box + Debian || Gentoo ||.... в чем вы там пилите ...- ))))
Вопрос: Где в Убунту находится папка «~/.gimp-2.8»?

Лучший ответ:
~/ - это папка текущего пользователя. либо /root либо /home/{username}
папки с точкой в начале - скрытые по умолчанию. в настройках "Вид" нужно выбрать "Показывать скрытые файлы"

Худший ответ:
Там и находится, по скрытому адресу.
Вопрос: Nginx, как передавать заголовки от backend'a к конечному пользователю в случае ошибки?

Лучший ответ:
Обычно ошибка nginx 502 Bad Gateway обозначает, что он не смог подключиться к backend'у, тоесть он не отвечает на заданном порту либо его очередь ожидания переполнена и он не может обслужить еще одного клиента. Тоесть в этом случае получить от бекенда какие-то заголовки, текст — просто невозможно.

Худший ответ:
А в логах бекенда не видно ошибки?
Вопрос: Почему не работает transition свойство?

Лучший ответ:
Переключение display не даст возможность применять transition. Используйте, например, opacity.
Если хотите плавное изменение свойств при наведении (или другом состоянии) — не цепляйте transition к этому состоянию (например, к :hover в вашем случае), потому что как только состояние пропадёт (увели курсор с элемента), то произойдёт резкая смена значений.
Однако, если вам нужно плавное появление и резкое исчезновение, то вешать нужно как раз на :hover (или другое выбранное для появления состояние).

Худший ответ:
a:not(:hover) span {
Для плавной смены, когда курсор выведен за пределы div
Вопрос: При ошибках PHP выводит исходный код

Лучший ответ:
Проблема в настройках не php, а apache. Похоже, что до интерпретатора php дело даже не доходит.

Худший ответ:
Проблема решилась, ошибка оказалась в FTP, при загрузке файлов, обрезался знак первый знак <, сейчас буду смотреть почему так
Вопрос: Yii2 и deploy на сервер?

Лучший ответ:
Первый деплой:git clone
composer install
yii init
#правите локальные конфиги (прописываете базу)
yii migrate
следующие деплои:git pull
composer install
yii migrate
миграции создаем ручкамиyii migrate/create createUserTable
 и правим файл миграции

Худший ответ:
Мне понравилось использовать https://github.com/yii2tech/selfupdate
Вопрос: Как записать id объявления в таблицу бд изображений после его подачи?

Лучший ответ:
Итого я понял так:
1) Есть HTML форма, в которой есть ajax-загрузчик фоток
2) Есть серверный скрипт сохранения фотки
3) Есть серверный скрипт сохранения объявы (при сабмите формы №1)
При генерации формы генерим уникальный токен формы. Его вставляем в скрытое поле формы.
Если происходит загрузка фотки, то в скрипт №2 передаем токен формы. Его записываем в отдельное поле таблы фоток.
При запросе к скрипту №3 создаем объяву, получаем ее айдишник и проставляем его ко всем фоткам юзера с токеном формы. Сам токен теперь можно у них ударять.
P.S. Код не читал (многабукв).

Худший ответ:
Решено. Сделал совсем другим способом. Кому интересно отвечу.
Вопрос: Как организовать выгрузку данных на Node.js?

Лучший ответ:
Читаем из монги потоком (типа такого: MyCollection.find({}).sort({}).stream()), дальше после нехитрых преобразований либо пишем в файл (тоже потоком) и потом отдаем nginx'ом, либо сразу отдаем браузеру. Первый вариант хорош тем, что результат можно кэшировать да и нджинкс все-таки поэффективнее ноды работает в таких вещах, второй тупо проще.
P.S. в принципе, можно и без стримов — если на серваке памяти много:)

Худший ответ:
С помощью mongoexport можно выгрузить в csv
т.е. запустить процесс, и отправить результирующий файл.
Вопрос: Коммерческая разработка кода на Python. Какими инструментами обфускации и защиты кода Вы пользуетесь?

Лучший ответ:
Никакими
Клиенту не нужен код - ему нужно реализовать функционал
Если ты боишься конкурентов - делай SaaS

Худший ответ:
Возможно, чем-то поможет 
bits.citrusbyte.com/protecting-a-python-codebase
bits.citrusbyte.com/protecting-a-python-codebase-part-2
bits.citrusbyte.com/protecting-a-python-codebase-part-3
Вопрос: Почему mithril, vue, virtual-dom быстрее react?

Лучший ответ:
Тесты замеряют разные действия, где-то добавление, где-то изменения, одни фреймворки быстрее в одном, другие в другом, отсюда и разные результаты.
Ещё сами тесты вызывают сомнения, например в первом тесте у Angular.js приделан setTimeout что-бы не делать перерисовку на каждой итерации + при этом сам тест запускается не асинхронно - это "читерство".
А при выполнении теста с React у меня браузер дергается (видимо из-за особого контента который выводится) - это бъёт по производительности, - возможно это было нарочно сделано. Так же каждый последующий тест работает в поле где есть "мусор" от всех предыдущих тестов - это тоже может снижать цифры.
Тут есть хабра-тест (сделанный пользователями с хабра), он более менее причесан, тестирует добавление/изменение, но тут React тоже не блещет, возможно React хорош в каких-то специфических случаях, хотя я видел много бенчмарков с React, и он нигде не имел особого преимущества.
PS: Если вас не затруднит, не могли бы вы сюда добавить mithril или vue для сравнения.Дополнил про React
Я особо не копал React, у меня такие мысли - они реализовали виртуальным DOM который максимально эффективно превращает один кусок документа в другой, проблема в том что на практике это не нужно - в других фреймворках делают просто сокрытие одного куска и показ другого куска - и это работает быстрее, чем перестройка DOM. Так же я слышал заявления, что React работает быстрее за счет того что они не делают чтения из DOM - видимо они сравнивают с jQuery (и vanilla js), т.к. в других MV* фреймворках, чтения из DOM делаются не часто (или только на стадии инициализации).

Худший ответ:
Решил разобраться и читаю ссылку calendar.perfplanet.com/2013/diff, видимо из-за diff алгоритма, который использует реакт.
Вопрос: Как вы ищете удаленную работу кроме бирж фрилансеров?

Лучший ответ:
работа сама меня находит :) нужно вести блоги

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

Лучший ответ:
Ответ очень запоздалый, но всё же.
Более правильный вариант (если не самый правильный) использовать данные из открытой части сайта. Они размещаются на ftp.zakupki.gov.ru. Пароль и логин: free и free. В нем размещаются все данные xml.
По этой ссылке находятся документы, необходимые для работы с ООС (схемы, описание и пр.)

Худший ответ:
Прежде всего, @fornit1917 прав насчет того, что нужно получить веб-страницу. А вот парсить регулярками - не лучшая идея. Можно посмотреть на CsQuery, удобная библиотека, легко ставится через NuGet.
Вопрос: База данных MySQL инкрементирует по 10?

Лучший ответ:
В конфиге mysql
для дебиан систем файл /etc/mysql/my.conf
Там параметры
auto_increment_increment
auto_increment_offset

Худший ответ:
Если у mysql стоит глобальная настройка переменных(auto_increment_increment, auto_increment_offset), вы можете воспользоваться сессионными переменными. Сразу после подключения к ДБ выполните два запроса:

SET auto_increment_increment = 1;
SET auto_increment_offset = 1;
Вопрос: Можно ли в Google Form передавать дополнительные параметры, наряду с ответами пользователя?

Лучший ответ:
Самостоятельно нашел, как можно передавать в гугл формы любые свои данные в скрытых полях. 
Для этого достаточно сгенерить стандартную гугл форму, создав нужное число дополнительных полей, в которых будут передаваться дополнительные данные. Затем нужно открыть форму на просмотр, скопировать со страницы код и вставить на свой сайт. Подключить те же самые стили, что подтягиваются на странице оригинальной гугл формы. После этого нужные поля надо сделать hidden-полями и подставлять в них любые свои значения. А все остальные поля формы заполняет и отправляет уже сам пользователь, как и полагается (=

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

Лучший ответ:
Можно. К тому же, в MySQL есть специальный storage engine для логов.

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

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

Худший ответ:
КО подсказывает, малой площади будет недостаточно для теплоотвода, а бОльшая -  даст такие же показатели как и равная, но при этом бОльшая будет избыточна с точки зрения изготовления.
Вопрос: C++: Инициализация srand?

Лучший ответ:
Еще варианты:
1. На Linux можно считать первые четыре байта из /dev/urandom
2. На x86/x64 можно воспользоваться командой 'rdtsc' — возвращает количество тактов процессора с старта системы. Код для GCC:
long long x;
asm("rdtsc" : "=A"(x));
srand(x);

Так и делаю, когда пишу генераторы тестов к задачам для стресс-тестирования.

Худший ответ:
Вариант — использовать gettimeofday(). Он вернет struct timeval, из которой можно достать микросекунды :)
POSIX-2008 помечает gettimeofday как устаревший, вместо него можно аналогично использовать clock_gettime().
PS. Это про POSIX-системы, на винде не факт что есть.
PPS. А причём тут C++?
Вопрос: Как отследить пользователя за прокси или впн?

Лучший ответ:
Способов обнаружить прокси достаточно много - по заголовкам Via, X-Forwared-For, Forwarded, измененному заголовку Accept:, по отличным от браузерных алгоритмам кэширования, по лимитным условиям (ограничениям на длину заголовка, URI, максимальный размер запроса), по разбиению запроса на пакеты (где-то весь POST-запрос идет одним пакетом, где-то отдельно идет заголовок включая перевод строки, где-то заголовок исключая). Но имейте ввиду, что за прокси могут сидеть куча легитимных клиентов, особенно корпоративных.
Обнаружить VPN тоже можно, но вы получите очень много фолзов, т.к. фактически технологии подключения типа PPTP, PPPoE, L2TP и различные соединения точка-точка не отличимы от VPN, а клиенты многих провайдеров получают доступ в Internet через такие виды соединения.
Скорее всего, вам нужно не блокировать по технологии подключения, а определять известные диапазоны IP-адресов VPN-провайдеров и прокси-сервисов.

Худший ответ:
Никак.
Вопрос: Сервис share.pluso.ru ворует куки?

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

Худший ответ:
Офигеть! А я их на все свои сайты ставлю!! Хорошо в консоли обратил внимание на подозрительный скрипт.
Вопрос: Какие есть captcha-сервисы?

Лучший ответ:
Посмотрите вот эту подборку, возможно пригодится 2coders.ru/20-besplatnyx-captcha-skriptov

Худший ответ:
funcaptcha.co  - весёлая капча. 
Задания: переверни предмет, выбери муж/жен на фото и т.д.
Вопрос: Сравнение двух фотографий?

Лучший ответ:
Вроде то, что вам нужно - opencv.org 
docs.opencv.org/3.0-beta/doc/py_tutorials/py_tutor...

Худший ответ:
MatLab: Toolbox'ы 'Computer Vision' и 'Image Processing'
Вопрос: Как узнать в Developer tools, какие файлы PHP отвечают за тот или иной блок на стр. сайта (WordPress)?

Лучший ответ:
для облегчения поиска пользую такую штуку, часто бывает надо на сайтах сколоченных пионэрами a-la  "Сабачатина третей категории"function wtf_this(){
    foreach ( debug_backtrace() as $called_file ) {
        foreach ( $called_file as $index ) {
            if ( !is_array($index[0]) AND strstr($index[0],'/themes/') AND !strstr($index[0],'footer.php') ) {
                $template_file = $index[0] ;
            }
        }
    }
    $template_contents = file_get_contents($template_file) ;
    preg_match_all("see:(.*)\n)siU",$template_contents,$template_name);
    $template_name = trim($template_name[1][0]);
    if ( !$template_name ) { $template_name = '(default)' ; }
    $template_file = array_pop(explode('/themes/', basename($template_file)));
    echo $template_file . ' -> '. $template_name ;
}

// обычно цепляю сюда
add_action('get_header','wtf_this',200);

Худший ответ:
Ищешь в Developer tools классы, айдишники и тд у нужных элементов. Делаешь поиск по всем файлам и находишь файлы в которых встречается этот class/id, из всех файлов уже не трудно понять который нужен.
Вопрос: Что почитать про современные интерфейсы для информационных систем?

Лучший ответ:
Психбольница в руках пациентов
:-)

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

Лучший ответ:
блок с картинкой по ширине 100%, позиционируем фон от центра
блок с меню по ширине, например, 900px, делаем ему margin auto какой-нибудь и верстаем внутри него менюшки уже.

Худший ответ:
htmlbook.ru/css/calc
можно вычислять.
Вопрос: Как разбить массив ссылок php на блоки по первой букве заголовка ссылки?

Лучший ответ:
<?php
$data = [
    [
        'name' => 'Брянск'
    ],
    [
        'name' => 'Москва'
    ],
    [
        'name' => 'Бобруйск'
    ],
];

usort($data, function ($v1, $v2) {
    return strcmp($v1['name'], $v2['name']);
});

$letter = null;
foreach ($data as $v) {
    $currentLetter = mb_substr($v['name'], 0, 1, 'utf-8');
    if ($currentLetter !== $letter) {
        $letter = $currentLetter;
        echo "--- $letter ---", PHP_EOL;
    }
    echo $v['name'], PHP_EOL;
}
--- Б ---
Бобруйск
Брянск
--- М ---
Москва

Худший ответ:
не совсем понятно что значит "[name] - это ссылки.".
но вообще как-то так.$cities = array(...);
$cities_with_letters = array();
foreach ($cities as $city) {
  $letter = substr($city['name'], 0, 1);
  $cities_with_letters[$letter][] = $city;
}
Вопрос: Хабралента в RSS?

Лучший ответ:
Если я правильно понял вопрос, то надо зайти на главную страницу (или в раздел «Новые») и посмотреть исходный код страницы. Там будет примерно вот такая ссылка с вашим уникальным кодом:

<link title="Хабралента" type="application/rss+xml" rel="alternate"
 href="http://habrahabr.ru/rss/lenta/16e6c83360f1fbcodecac632387382abca/"/>

Худший ответ:
Большое спасибо. Именно это я искал
Вопрос: При клонирования репозитория, клонируется только master ветка. Почему?

Лучший ответ:
Нет, клонируются все удалённые ветки. Просто они имеют префикс origin/удалённая_ветка А вот отслеживаемой становится только ветка master -> origin/master. 
Для того, чтобы сделать ещё одну отслеживаемую ветку - переключитесь на удалённую и выполните создание локальной ветки. Всё это можно сделать одной командой:git checkout --track -b local_branch_name origin/remote_branch_name
Где local_branch_name - имя создаваемой ветки, origin/remote_branch_name - полное имя удалённой ветки; local_branch_name для удобства можно назвать одинаково с remote_branch_name. После выполнения команды у вас появится ветка local_branch_name, которая будет отслеживать ветку remote_branch_name на сервере.

Худший ответ:
Можно клонировать конкретную ветку. Точнее вы в любом случае склонируете весь репозиторий но в рабочее состояние будет выставлена указаная.
git clone -b
Вопрос: Как брать с пользователя ежемесячную плату за услугу?

Лучший ответ:
Эта услуга называется «рекуррентные платежи». Соответственно нужен платежный шлюз который это поддерживает. Из отечественных точно знаю про paysto. Остальные можно нагуглить.

Худший ответ:
PayPal тоже умеет.
Вопрос: Как вывести значение value?

Лучший ответ:
Вы делаете абсолютно не правильно. Вам нужно подучить язык.
Пример: jsfiddle.net/IonDen/4j8Lyz71<select id="test">
    <option value="1">1</option>
    <option value="2">2</option>
    <option value="3">3</option>
    <option value="4">4</option>
</select>
Новая цена: <span id="price">1</span>var $select = $('#test'); // сохраняем в переменную ссылку на селект
var $price = $('#price'); // сохраняем в переменную ссылку на блок с ценой

// на селект навешиваем слушатель, который следит за изменениями
$select.on('change', function () {
    var value = $(this).prop('value'); // если что-то изменилось, получаем value селекта
    $price.html(value); // ставим этот value в поле с ценой
});

Худший ответ:
<select name="offer_list" class="offer_list">
    <option value="990 Р">Fullips Small Oval - "Маленький овал": 990 Р.</option>
    <option value="990 Р.">Fullips Medium Oval - "Средний овал": 990 Р.</option>
    <option value="3">3</option>
</select>
<span class="oldprice">Старая цена:<span> 1980 Р.</span></span>
<span class="newprice">Новая цена:<span></span></span>
Отдельно! где все ваши скрипты<script>
// инициализация значения при открытии - первое - естественно
$('span.newprice').find('span').text($("select option:selected").val());
// если происходит изменение значения
$( "select.offer_list" ).change(function() {
    $('span.newprice').find('span').text($("select option:selected").val());
});
</script>
Вопрос: Существуют ли криптовалюты с майнингом исключительно на CPU?

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

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

Лучший ответ:
Какой не учите, а получится русский английский :)

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

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

Худший ответ:
Мне кажется, что эти вопросы будут вечными.

stackoverflow.com/questions/2122786/code-to-parse-user-agent-string
Вопрос: Почему @media handheld не срабатывает?

Лучший ответ:
@media handheld - устаревший параметр, который более не используется. Сейчас нужно проверять физические размеры. Вот гайдлайн: https://css-tricks.com/snippets/css/media-queries-...

Худший ответ:
Используйте 
@media (hover:hover)
@media (hover:none)
@media (pointer: coarse) and (any-pointer: fine) {
https://github.com/biati-digital/glightbox/issues/...
Вопрос: Как заработать новичку на низкоуровневом программировании?

Лучший ответ:
Хм, нужно устроится на работу.

Худший ответ:
На системном программировании можно не только копейки зарабатывать. Вариантов несколько: начать самостоятельно с простых контроллеров типа stm32 или rasberrypi; устроиться на оборонку или в фирму, которая делает разработки на мк; пойти на практику в одну из таких фирм.
Например обратитесь в ртсофт в центр разработок или в центр системного ПО.
Вопрос: Платформы Java?

Лучший ответ:
Для начала Вам достаточно SE версии  JDK.

Худший ответ:
SE - это база, EE - так сказать надстройка (расширяет SE).
Лично моя рекомендация - сразу EE, ибо потом начнется нужна библиотека mail.* и еще какая нибудь.
Так сказать.public class SE extends EE {}
Вопрос: Посоветуйте call-центр какой-нибудь на обзвон контактов

Лучший ответ:
Недавно прозванивал порядка 10 call-центров.
Почти все берутся обзванивать от 1000 контактов. Стоимость базы на 1000 контактов + стоимость обучения звоноря + стоимость самого обзвона и услуги менеджера выходили под 50т. Чем больше база тем дешевле.

После того, как узнал цены, поговорил с другом, который работал на обзвоне. Он сказал, что если сумма ниже 100т. то тебе дадут на либо практиканта, либо далеко не самого лучшего. Я покопал сайты работ и нашел неплохую барышню, с опытом работы в call-центре из Астрахани.
В общем она за 12т. мне обзвонили 5000 контактов. Диск с базой я на рынке взял за 5т. И стоимость звонков по ip телефонии мне обошлась еще в 5т. 
Итого 22т. руб. 
Отсюда вывод, если обзвон не пробный и планируете пользоваться этой услугой часто, то берете сразу 3-4т контактов за 80-100т в любом call-центре и просите с них самого толкового звонаря. Они обычно действительно спецов дают, таких, что без мыла пролезет.

Если же решили просто попробовать или суммы не большие, советую просто найти человека с опытом работы на холодных исходящий звонках.

Худший ответ:
Заказывали исходящий проект у компании "СОФТКОЛ". Довольна результатом. Хотя сравнить не с кем, раньше не заказывали. У меня вышло 24 т.р. (3 000р. - подготовка проекта + 21 000р. - 3 000 минут) со своей базой. Вот тоже хотела бы отзывы почитать о других, может еще что-то выгоднее есть?