Vikhrmodels/habr_qa_sbs huggingface dataset:
Вопрос: Безопасное восстановление доступа к аккаунту пользователя?

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

Худший ответ:
Авторизуйте через госуслуги! Там пароль по паспорту восстановят!
Вопрос: Почему gulp-imagemin не сжимает изображения?

Лучший ответ:
Текст ошибки легко гуглится и неминумо в итоге приведет к документации https://gulpjs.com/docs/en/getting-started/async-c...
В итоге нужно либо вызвать callback функцию по примеру akavato либо вернуть streamvar gulp = require('gulp');
var imagemin = require('gulp-imagemin');

gulp.task('compress', function() {
  return gulp.src('assets/images/*')
    .pipe(imagemin([
      imagemin.gifsicle({interlaced: true}),
      imagemin.jpegtran({progressive: true}),
      imagemin.optipng({optimizationLevel: 7})
    ]))
    .pipe(gulp.dest('app/img'))
});
А еще желательно прочесть документацию с примерами по imagemin  https://www.npmjs.com/package/gulp-imagemin и не использовать старый синтаксис для него.

Худший ответ:
gulp.task('compress', function(done) {
  gulp.src('/var/www/www-root/data/www/site-name.ru/assets/images/*')
  .pipe(imagemin({ optimizationLevel: 7, progressive: true, interlaced: true }))
  .pipe(gulp.dest('/var/www/www-root/data/www/site-name.ru/app/img'))
done();
});
Ключевое здесь done
Вопрос: Почему нормальные ОС не делают для смартфонов?

Лучший ответ:
То что вы указали не нужно обычным пользователям, которых 99%.
Если взять опенсорс проекты, то кто будет отвечать в случае их использования за баги? Откуда поддержка?
Производителям телефонов нет смысла держать команду разработчиков, которые должны подправлять ОС для 1% пользователей. Они фокусируются на новые модели телефонов, а не новые версии ОС.

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

Лучший ответ:
Удалённое подключение к компьютеру, где настроена вся среда.
Оптимально для Windows - VPN + RDP.

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

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

Худший ответ:
1. Просматривать записи выборочно. Чаще делать это для тех менеджеров, по поводу которых есть подозрения. Регулярно доводить до сведения менеджеров, что запись ведётся. Если есть нарушения - устраивать показательную порку, чтобы неповадно было. Если нет нарушений - находить любые мелочи и устраивать их публичные разборы.
Если менеджеры будут постоянно помнить, что большой брат следит за ними, этого уже может быть достаточно.
2. Что-то не очень понял из описания - каким образом происходит оплата, что менеджер может её себе забрать. Можете пояснить?
Вопрос: Выбор языка программирования для написания 2d игр?

Лучший ответ:
Как и все многие ребята моего возраста я увлекся программированием.
Прямо многие?Выучил html, css, немного php и javascript (и query).(я 11 класс)
Ну начнем с того что программирование тут только JS. И то какие-нибудь двигающиеся менюшки на JQ к программированию имеют опосредственное отношение. html и css языки разметки (не программирования). JQuery вообще библиотека аля Lego, написание на ней к JS имеет такое себе отношение.Хочу попробовать для начала написать несколько простеньких игр, типа змейки, крестики-нолики, тетриса... а какой же язык учить? 
А на самом деле пофиг какой. Это все реализуется почти на всем.Начал я с web, как раньше так и сейчас считаю, что будущее за WEB.
А собственно к чему тогда вопрос? Раз уж выучил веб, на нем и делай.
Подскажу - есть тот же Canvas, WebGL. Вот вам пример.

Худший ответ:
Больше склоняюсь к программированию для 2д, но встал вопрос, а какой же язык учить? (ведь в школе только начал учить Delphi (я 11 класс)).  Вот и УЧИТЕ то, что уже начали и знаете! Не давайте возможности другим Вас обогнать: на Delphi есть жизнь!You can compile and package your games as
    standalone (Linux, Windows, Mac OS X, FreeBSD, more... 32-bit and 64-bit),
    mobile (Android, iOS),
    web browser plugin (Linux, Windows, for browsers supporting NPAPI).
Вопрос: Два вопроса про фриланс?

Лучший ответ:
1. Сомневаешься - не суйся. 100500й вопрос на эту тему. Столько соплей подтёрли. Или вы взрослеете и берёте жизнь в свои руки или пока к мамке
2. Сомневаешься - иди в офис. Там "теплее"

Худший ответ:
Найдите рынок где ваши знания будут востребованы, например на WP куча програмистов, а вот на instantCMS не так много и на хороших спецов есть спрос
Вопрос: Как правильно организовать код в php-фреймворке?

Лучший ответ:
Учиться, учиться и еще раз учиться, как завещал дедушка Ленин.
Не видя сам код и структуру проекта, тут трудно что-либо советовать. Почитайте "Чистый код" Боба Мартина, особенно про принцип единой ответственности. Если метод вашего класса не помещается на мониторе компьютера - его необходимо переписать. Ну и все в таком духе. Главное не гнаться за чистотой кода ради самой чистоты. Все к чему призывает дядя Боб, это писать читаемый, поддерживаемый код, который после Вас смогут читать и поддерживать другие разработчики.
И еще важный момент, закрепите правила разработки на уровне команды. Т.е. что бы все писали одинаково. Структура проекта должна быть четкой и понятной. Мы в своей команде такие правила обозначили (они конечно же пересматриваются, обсуждаются) и теперь команда из 6 разработчиков легко ориентируется в коде enterprise монстра с 6 летней историей, и с over 5000 классов на борту, и даже умудряется его улучшать.
По поводу контроллеров: я лично не знаком с философией Laravel, сам разрабатываю на Java и мой framework - Spring. У меня философия на счет контроллеров такая - контроллер является посредником между front и back end-ами. Никакой логики контроллер в себе не содержит, от слова "совсем".  Вся логика вынесена в фасад, который в свою очередь может включать в себя кучу сервисов. Сервисы (по-возможности) разрабатываются с учетом принципа единой ответственности. Сервисы содержат в себе всю бизнес-логику приложения.

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

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

Худший ответ:
Раньше (давно), когда имел дело с Win я обычно так поступал: у меня был Norton Antiv, который мне нравился тем, что не грузил систему. Я год оплачивал обновления, потом полгода нет, поскольку он продолжал работать, потом опять продлевал. Нынче, как я понимаю, антивирус нагло просто перестает работать. (честно не знаю, давно сижу на Linux и Mac).  
Сейчас, когда приходится помогать с вирусами, качаю свежий iso от Dr.Web Cure It! — ставлю на флешку и проверяю. Возможно, как пишет АртемЪ , надо хорошенько все настроить, поставить бесплатное мониторинговое, а временами чекать тем же "Вебом" — он еще ни разу меня не подвел в вопросах поиска и лечения, тем более, что грузиться с флешки и лечить -- предпочтительнее IMHO.
Вопрос: Node в андроид есть?

Лучший ответ:
Может и есть, но Нода изначально не для нативных приложений. Да и что на выходе будет смотреть на юзера? HTML'ка?
Тогда проще писать сразу на Apache Cordova | PhoneGap.

Худший ответ:
Можно ещё react native использовать. На хабре была статья про него.
Вопрос: Тормозит фотошоп на сильном железе. Торможоп?

Лучший ответ:
Вопрос в лоб, а ФШ лицензия или репак от дяди Феди?

Худший ответ:
Нашел решение: убрать GPU preview.
Та же хрень с люстрой. Вместо VIEW->Preview on GPU ставим предпросмотр на ЦПУ и все летает. Толи майнер, толи не могет ФШ и Люстра правильно подцепить дискретную карту, заместь процессорной.
Вопрос: Есть ли сейчас смысл в классической парадигме управления устройствами (домены, локалки, DHCP и иные серверы), если всё это можно заменить на веб?

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

Худший ответ:
Какая разница между -" запилить веб-сервисы " и "писать тонну win32-приложений"?
Я например не вижу принципиальной разницы - что одни писать, что другие одинаково приятно. То же самое и с поддержкой.Тем более, в вебе есть куча готовых сервисов для управления проектами, общения и т.д, не надо будет пилить свои велосипедыЕсли устраивает - пользуйтесь. Но далеко не всех устраивает отдавать свои данные на сторону, и зависеть от стабильной работы интернета и чужих сервисов, да и интернет как ни странно не везде есть.Можно заменить тяжелые компьютеры тонкими клиентами.Можно. А еще можно отказаться от дорогих серверов приложений,  по максимуму перетащив все вычисления и приложения на компьютеры клиентов. Иногда это очень выгодно бывает.Вы согласны, что новая web-based парадигма управления лучше, чем классическая?Конечно согласен, что бывают такие случаи, когда она в конкретном случае лучше.
Но чаще либо хуже, либо те же яйца только в профиль.Как долго разные менеджёры и руководство будут осознавать, что перенос старого корпософта в веб необходим?Как только это станет выгодно, так и начнут переносить.
Вопрос: Как менять контент при клике+таймер?

Лучший ответ:
Возможно не самое лучшее решение. Такой ли результат хотите получить?
https://jsfiddle.net/7u3zwzt6/

Худший ответ:
Например, вот так:
https://jsfiddle.net/e30mupuL/
Вопрос: Yii2: Почему не возвращается массив?

Лучший ответ:
Но почему то ошибка:
Invalid Parameter – yii\base\InvalidParamException
Response content must not be an array.
Потому что ответ сервера не может быть массивом. Так и написано. Возвращайте в виде json, он для этого и нужен.

Худший ответ:
Потому что вы в контроллере должны по умолчанию вернуть строку, а не массив.
Для проверки массива сделайте, например,public function actionGetPartner($id){
        $partner = Partner::find()->where(['id' => (int)$id])->asArray()->one();
        print_r($partner );
    }
Или укажите, что контроллер возвращает JSON:public function actionGetPartner($id){
        \Yii::$app->response->format = \yii\web\Response::FORMAT_JSON;
        $partner = Partner::find()->where(['id' => (int)$id])->asArray()->one();
        return $partner;
    }
Вопрос: Продажа бизнеса, развод или норма?

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

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

Лучший ответ:
Это каноническая задача на самом деле.
Дело в том, что для обработки offset 400 000 - sql сервер должен фактически найти 400 000 записей удовлетворяющих условию, отбросить их и дальше уже вывести результат.
/tmp при этом переполняться по идее не должен, могу предположить что серверу тупо не хватает памяти.
Покрутите mysqltuner какой-нибудь.
Нормальных решений проблемы нет, есть обходные пути:
1) Вводите какой-то неразрывный индекс удовлетворяющий выборке, вместо limit делаете where tmp_id between 400000 and 400100 - в вашем случае вероятно не подойдет.
2) Придумываете какой-то альтернативный способ пагинации опять же без offset - например перебор дат записей или еще что-то.
3) Задаетесь глобальным вопросом нафига вообще пагинация на 400 000 записей и отказываетесь от неё :-D
Очевидно что пользователь такое количество записей не воспримет никогда, так что пусть уточняет запрос.

Худший ответ:
Попробуйте подойти иным путем к задаче: зачем нужны страницы у такой выборки?
Сделайте интерфейс, выведите в него хотя бы 200 записей и попробуйте поработать. Вы быстро поймете что листать страницы неудобно и не нужно.
Вопрос: Как правильно написать SQL запрос с под-select'ом?

Лучший ответ:
Ваше желание обусловлено неправильно спроектированной базой.
Почитайте про 3ю нормальную форму таблиц.
В данном случае нужно:
a) есть у task строго 1 или 0 картинок, картинки и бывают только в tasks:
добавить в uploads поле task_id
b) иначе:
завести новую таблицу xref_task_upload вида (task_id, upload_id)

Худший ответ:
SELECT task_name, 
  (SELECT image_path FROM uploads 
       WHERE uploads.timestamp = tasks.task_created 
        LIMIT 1) as im_path
FROM uploads
Только неудачная идея - реализовывать связь по времени добавления, лучше всё же ссылаться на первичный ключ.
Вопрос: Как настроить редирект с http на https и с www на no-www?

Лучший ответ:
В вашем сертификате должно содержаться два домена с www и без. Либо создать отдельный server с сертификатом с www

Худший ответ:
Кэп ну это же разные домены е ммае, неужеде не видно что там  даже количество букв разное, с чего вы решили что между ними есть связь большая чем " так сложилось".
Два домена  и сертификат на два должен быть ;)
Вопрос: 44 года можно ли еще стать востребованным специалистом в IT?

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

Худший ответ:
Если вопрос ещё актуален, то у вас неправильная последовательность изучения. JS гораздо сложнее (менее понятен) чем PHP. Вообще веб сложнее десктопа, но он более востребован. Можно написать пару программ на C# чтобы просто понять свои силы. Это проще в том плане, что результат сразу виден, на десктопе, не нужны серверы для чего-то более менее серьезного. А администрирование - это ещё одна специальность, которую для вебдева тоже придется изучить.
Вопрос: Утилиты (плагин Gulp) для формирования (codestyle) для SCSS, JS и CoffeeScript?

Лучший ответ:
Не советую интегрировать с gulp, по техническим причинам связка gulp-линтер работает медленнее, чем просто например eslint ./src. Интегрируйте с IDE, делайте таск в package.json, делайте проверку измененных файлов в pre-commit хуке в git.Стили — Stylelint понимает все нормальные препроцессоры (scss/sass, less, stylus). Часть правил может исправлять автоматически родственная тулза stylefmt. Альтернатив практически нету.JS — очень хорош eslint, куча гибких правил, плагинов и пресетов для этих правил. Часть правил правит автоматически. Еще есть т.н. Standard — не ловитесь на название — это просто чьи-то влажные фантазии, что он хорошо пишет JS. jslint полумертв, jshint наверное давно никто не использует, кроме автора. Для coffeescript хз, беглый гуглеж дает заброшенный https://github.com/clutchski/coffeelint

Худший ответ:
SCSS - stylelint
JS - eslint
Скачивай популярные конфиги или пиши свой. 
Готово.
P.S. CoffeeScript ещё жив О_о Вторую версию не выпустили ещё.
Вопрос: Почему some отрабатывает, а every нет?

Лучший ответ:
Почему же наоборот? Используя some, вы проверяете, есть ли в item.version_ids элемент, равный id текущего version'а. И действительно - таковых три. А использование every означает, что каждый элемент item.version_ids должен быть равен id текущего version'а - чего очевидно быть не может. Поэтому и возвращает он всегда false.

Худший ответ:
every() («каждый») – более строгий, чем  some() («некоторые»)every() вернёт true только, когда по всем элементам выполнено условие.some() вернёт true, как только хотя бы в одном встретится выполнение условия.
В вашем примере можно переписать без some() старым добрым indexOf():const availableVersions = versions.filter(
  version => !!~item.version_ids.indexOf( version.id )
);Fiddle!!~ из любого значения, кроме -1, вернёт true, а для -1 вернёт false.
Вопрос: Математика для машинного обучения и нейронных сетей при школьной базе знаний?

Лучший ответ:
Программа:
https://download.cdn.yandex.net/shad/shad_program_...
В моём случае это выглядит примерно вот так:
PS: главное понимать, что познание - это процесс, если вам каких-то знаний не хватает, то их всегда можно наверстать, но это требует времени, и чем меньше вы знаете, тем больше времени требуется. Два года назад я знал математику на уровне 6 класса школы, сейчас учусь в ШАД на 2 курсе и читаю Deep Learning Book (хотя местами и приходится копаться в учебниках).
PPS: при погружении в какую-нибудь область, первая прочитанная книга становится оглавлением к этой области знаний и углубляться дальше ты будешь уже базируясь на ней, поэтому книги накапливаются, далеко не всегда они читаются от корки до корки.

Худший ответ:
Могу ли поинтересоваться что за страна обучения и ВУЗ?
Вопрос: Правильно ли я тестирую форму в Django?

Лучший ответ:
Неправильно.
1. Проверку на аутентифицацию делать принято как@login_required
def...
это удобно - сразу обрабатывается ситуация с перенаправлением на страницу логина и т.д.
2. Сначала нужно создать объект. Обработка формы стандартным методом для POST:form = CreviewForm(request.POST or None)
if request.method == 'POST' and form.is_valid():
        obj = form.save(commit=False)
        obj.course = course
        ....
        obj.save()
        form.save() 
else:
    возврат к представлению для исправления данных и т.д.
Этот формат сам проверит и csrf, и данные в форме, и прочая-прочая

Худший ответ:
response = self.client.post('/addcreview1',
                                    {'id': "1", "creview": "course", "userview": "user", "review": "ревьюшка"})
В поле creview передается строка, а нужно число.
Вопрос: Как использовать npm пакет нас сайте?

Лучший ответ:
Слишком мало информации, вы где документ хотите генерить, на сервере ? Тогда сервер должен быть написан на node.js, если не хочется переписывать весь сервис, напишите отдельный микросервис для генерации документов и обращайтесь к нему из вашего PHP сервиса. 
https://learn.javascript.ru/screencast/nodejs
Если работать должно на клиенте, ну тогда задайте вопрос автору, каким образом можно подключить либу для использования на клиенте.

Худший ответ:
Как написал Владимир 
Для генерации и отдачи готового документа, должен быть создан базовый http сервер на nodejs const
    finalhandler = require('finalhandler'),   // пакет нужно будет поставить через npm
    http = require('http'),
    officegen = require('officegen');  // пакет нужно будет поставить через npm
    Router = require('router'),  //  пакет нужно будет поставить через npm 
   // создаем сервер и биндим роутеры на все ответы
    server = http.createServer(function onRequest(req, res) {
          router(req, res, finalhandler(req, res));
    });  

// внутри метода пишем свой код с этой либы, я особо не вникал взял пример из документации
router.get('/generate-pptx', function(request,response) {
  response.writeHead ( 200, {
    "Content-Type": "application/vnd.openxmlformats-officedocument.presentationml.presentation",
    'Content-disposition': 'attachment; filename=surprise.pptx'
    });

  var pptx = officegen ( 'pptx' );

  pptx.on ( 'finalize', function ( written ) {
      // ...
      });

  pptx.on ( 'error', function ( err ) {
      // ...
      });

  // ... (fill pptx with data)

  pptx.generate ( response );
});
// слушаем запросы на 3000 порту
server.listen({port: 3000});
Имя сайта:3000/generate-pptx
запускать сервер любым привычным способом мне нравится pm2 start server.js
таймаут ответа по умолчанию в Nodejs 2 минуты
Вопрос: Сортировка текстового поля как числа и как строки одновременно?

Лучший ответ:
В SQL нет натуральной сортировки, только два варианта ASC / DESC
SELECT * FROM table ORDER BY value ASC

Худший ответ:
Если все числовые значения - неотрицательные целые, тоORDER BY IF(`val` REGEXP('^[0-9]+$'), LENGTH(`val`), 100), `val`