Vikhrmodels/habr_qa_sbs huggingface dataset:
Вопрос: Facebook лежит

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

Худший ответ:
обьяснения facebook: www.facebook.com/notes/facebook-engineering/more-details-on-todays-outage/431441338919

В двух словах — перебой электроснабжения.

«This is the worst outage we’ve had in over four years, and we wanted to first of all apologize for it» — «это было худшее отключение электричество за последние 4 года, и прежде всего мы бы хотели извиниться за это»
Вопрос: Почему, конфигурируя свой nginx, не вижу того, чего хочу видеть?

Лучший ответ:
Зачем?? Почему api.127.0.0.1? Что употребляли?

Худший ответ:
не услышите того, что ожидаете. или не того Вы ожидаете, что надо.
127.0.0.1 это ip адрес. хоть и это и loopback интерфейс. А Вы пытаетесь сделать под-домен, у которого в качестве домена верхнего адреса используется ip адрес.
Я думаю, то что Вам надо:
nginx config:
server_name myserver;
...
server_name api.myserver;
и в /etc/hosts:
127.0.0.1 myserver
127.0.0.1 api.myserver
и потом в браузере myserver или api.myserver
Вопрос: Будет ли scala востребована на российском рынке?

Лучший ответ:
Это утверждение не совсем верноНо если проект пишется на java, то scala разработчик туда будет не нужен.
Scala - даже в том виде, в котором она сейчас, раскрывает гораздо больше возможностей JVM, нежели чем Java.  Scala - это не Haskell на JVM и утверждение, что jmv общая тоже не совсем корректно. Scala - это попытка совместного примирения императивной и функциональной парадигмы.  Все это дает гораздо больше возможностей грамотно и быстро применить какой-нибудь алгоритм для решения задачи. И если на чистой Java потребуется 50 строк кода для решения задачи, то на Scala - половина, а то и меньше :), а код получается более выразительный! (здесь не надо "кусаться", задачи бывают разные) 
Отсутствие 100500 вакансий на hh это не повод паники ( на linkedin ~2k). Язык молодой, но он очень стремительно набирает обороты. Насколько я знаю, Huawei начинают пилить интеграционные решения в России на scala(вместо оракловских продуктов). Так что все не так плохо :)
У Одерского и компании очень большие перспективы и амбиции! Так что, по моему мнению, Scala(или ее "апдейты") еще удивят программистов!

Худший ответ:
Что вы так сильно огорчились, scala разработчиков в разы меньше, чем java, поэтому и разброс такой. Будет она востребована однозначно. К примеру tinkoff банк использует scala
Вопрос: Kinobaza.tv, что случилось?

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

Худший ответ:
Буквально сегодня CSS начал отдаваться корректно!
Вопрос: Как сделать проброс портов в Mikrotik при обращении из локалки?

Лучший ответ:
Маскардинг не работает в вашем случае. Добавляйте явное правило SNAT для таких пакетов. 
В общем, всё выглядит примерно так.
1. LAN client -> Mikrotik,  192.168.0.100:4555 -> 1.2.3.4:87 (на роутере у этого пакета будет in-interface ether2, так как пакет действительно прилетел из локальной сети) - если в правиле указано сопоставление пакета по входящему интерфейсу для dst-nat (логичнее предположить, что он у вас указан как ether1), то никакого перенаправления не будет. Либо заводите два правила, либо не проверяете для перенаправляемых пакетов входящий интерфейс, а только адрес назначения, протокол и порт. Двигаемся дальше.
2. Mikrotik -> LAN server, 192.168.0.100:4555 -> 192.168.0.2:87 (output-interface ether2) -  Победили перенаправление и пакеты теперь успешно улетают в локалку после замены адреса назначения (в том-то и суть dst-nat). Но что будет дальше? Локальный сервак получает перенаправленный через роутер пакет и отвечает на него напрямую в обход роутера.
3. LAN server -> LAN client, 192.168.0.2:87 -> 192.168.0.100:4555 - Это ответный пакет от сервера. Но клиент ожидает пакеты с адресом источника 1.2.3.4, а не эти, и отбрасывает их. Либо молча, либо явно с посылкой ICMP-сообщения. 
Вот такие дела. Отсюда решение. Правила ната на микротике.
1. Правило для проброса портов из интернета: chain = nat/prerouting,
  input-interface = ether1, 
  dst-ip = 1.2.3.4, 
  protocol = tcp, 
  dst-port = 87, 
  action = dst-nat, 
  dst-nat-address = 192.168.0.2, 
  dst-nat-port = 87.
2. Правило для проброса портов из локалки:chain = nat/prerouting
  input-interface = ether2, 
  dst-ip 1.2.3.4, 
  src-ip = 192.168.0.0/24, 
  protocol = tcp, 
  dst-port = 87, 
  action = dst-nat, 
  dst-nat-address = 192.168.0.2, 
  dst-nat-port = 87.
3. Правило для source-nat, чтобы ответные пакеты сервера так же пошли через роутер:chain = nat/postrouting,
  output-interface = ether2, 
  dst-ip = 192.168.0.2, 
  src-ip = 192.168.0.0/24, 
  protocol = tcp, 
  dst-port = 87, 
  action = src-nat, 
  src-nat-address = 192.168.0.1
Вот как-то так. Можно, кстати, пакеты из локалки в локалку метить в цепочке FORWARD и уже на основе метки делать src-nat.

Худший ответ:
1. В Action: нужно прописать dst-nat
2. Обновите прошивку на 6.7. Там исправили баг с hairpin nat 
www.mikrotik.com/download/CHANGELOG_6
Вопрос: Как написать генератор паролей на bash?

Лучший ответ:
base64 /dev/urandom | head -10 | tr -d -c '0-9' | cut -c1-8
Кодируем случайную последовательность из /dev/urandom в ASСII по средствам base64, получаем 10 первых строк head -n10, удаляем из них все за исключением цифр tr -d -c '0-9' (знаки новой строки тоже удаляться, получится одна строка из цифр), и оставляем от них первые 8 знаков cut -c1-8.

Худший ответ:
Для начала можно посмотреть, как на Perl сделано:cat `which makepasswd`
Вопрос: Какую литературу посоветуете по PHP?

Лучший ответ:
"Слышал только отрицательные отзывы" - это от дурачков, которые не следят за развитием. 
"Вроде как, в PHP ввели ООП" - да было такое, лет 6 назад (имеется ввиду нормальное ООП). Мэтт Зандстра - PHP: объекты, шаблоны и методики программирования. 4-е издание.
На сегодняшний день PHP развивается быстрее всех и обладает почти всеми кртыми финчами, которые нужна для разработки больших проектов (менеджер пакетов, трейты, лямбда выражения, замыкания, нэймспейсы, рефлекшин, да да привет аннотации и многое другое). Уже можно разрабатывать десктопные приложения и есть расширения для работы api операционных систем. Не давно был релиз php7, который добавил некоторые возможности для работы с типизацией и существенно оптимизировал ядро.
Да вроде есть проблемы еще с потоками и демонами на php, но я думаю это порешают, не смотря на то, что он вообще не для этого создавался. 
И помните, один язык программирования любой это говно, по сравнению со стеком, где используется множество технологий под каждую задачу. Например нельзя сравнивать php vs js vs go, эти языки решают совершенно разные задачи.

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

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

Худший ответ:
Из книжек:

SICP (есть на русском) + для каждого языка есть свой мастрид — найти можно влегкую.

Если есть понимание, то начинать можно с любого языка. Но рекомендую параллельно (или до) читать о том, как программировать грамотно: изучить шаблоны и антишаблоны, уяснить правила.
Вопрос: PHP/Yii2: как ускорить выполнение ~1 млн запросов подряд?

Лучший ответ:
2. Запись всех данных в каждую таблицу одним запросом. Как? Транзакцией?
Голым mysqli без всяких оберток, пачками по столько вставок, сколько влезет максимум в . запрос (строка в 1мб должна влезать ),

Худший ответ:
https://dev.mysql.com/doc/refman/5.6/en/load-data.html
Стандартный способ загрузки больших объемов.
"Сервер не справляется"  - скорее всего памяти не хватает, разбивайте на куски, влезающие в память/выделяйте больше ее если так необходимо через Yii
Вопрос: Какая аналогия есть в PHP?

Лучший ответ:
ты или сотри тег РНР, и жди ответов только от сипипишников, или объясни внятно, что тебе нужно.

Худший ответ:
65 (cpp)   a = b = ++time;
37 (php)   a = b; // a = b = ++Graph::$time; ?
При беглом взгляде вы в бесконечную рекурсию отправляете в 49 (php) строке. $u (она же $v), то 1, то 0, то 1, то 0...  
Могу ошибаться, но кажется проблема в 37 строке php кода.
Вопрос: Сервер под несколько сайтов?

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

Худший ответ:
Извините.
ПО: mariadb, memcached, nginx, php-fpm.
Нагрузка на базу минимальная 80% запросов кэшируются.
Нагрузка на память около 16 мб.
Сейчас снимаем VPS и упираемся в процессор и память. 
Характеристики VDS
Память : 1GB
Процессор : 1 ядро 2397.222 Mhz
Вопрос: Как восстановить поврежденный файл на карте памяти?

Лучший ответ:
Вставить в кард ридер и воспользоваться софтом восстановления R-Studio.
Если же просто видео неудачно записалось, то достаточно открыть в VLC плеере и оно само его исправит.

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

Лучший ответ:
В head вот это прописали?<meta name="viewport" content="width=device-width, initial-scale=1">

Худший ответ:
Вот раз
Вот два
Вопрос: Как можно продать android игру?

Лучший ответ:
Читайте хабы Game Development и Mobile Development на хабре за последние пару лет. Там очень много статей по этой теме.
Вот выборка из моих закладок:Список всевозможных методов монетизации мобильных игрМожно ли бесплатно попасть в «топ» App Store и что...Как правильно монетизировать игруМобильная игра: где деньги?Привлечение пользователей в мобильную игруКто возьмёт билетов пачку… или о монетизации игров...
Ну и конечно же “Маркетинг игр” — книга Сергея Галёнкина
Плюс, не забывайте, что есть другие сторы для Андроид-приложений. Не гуглплеем единым :)

Худший ответ:
Вопрос продвижения частенько обсуждается на форуме 4pda.ru. Поищите там.
Вопрос: Как подключить разные версии jquery на страницу?

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

Худший ответ:
Подлючите migrate плагин - blog.jquery.com/2013/02/16/jquery-migrate-1-1-1-re...
Вопрос: Где берут термодатчики для подключения к ПК?

Лучший ответ:
я взял на ebay, поискал по словосочетанию usb thermometer, счетверенный датчик обошелся долларов в 60. Чайнософт страшноват, но задачу логгирования выпоняет.

Худший ответ:
вот это похоже?
Вопрос: Как проверить мосты на материнской плате?

Лучший ответ:
хм.. ну северный мост это слоты под ddr. память не видит - северный мост в ауте. так же северный мост рулит слотом видеокарты. южный мост рулит всем остальным - слоты pci, разъемы на материнке тип всяких ide, sata, usb, lan, audio

Худший ответ:
купить POST-диагност или вылить на неё воды и запустить. если не запустится - точно сдохли мосты
Вопрос: Каково реальное программирование на PHP и 1С?

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

Худший ответ:
1. Признать что вы ничего не достигли
2. Взять книгу по php прочитать и сделать сайт на php
3. Сделать экспорт из 1C обработать его на php и залить данные на сайт
4. Наработать портфолио
5. Попытаться снова устроиться на работу заранее продумав ответы на вопросы о достижениях
Вопрос: Как подключить камеру к Raspberry Pi на 15 метров?

Лучший ответ:
Купите IP-камеру, а лучше Wi-Fi - камеру. Это - наиболее простой вариант.

Худший ответ:
ну либо вешать малину в подъезде вместе с камерой, либо покупать отдельную целую ip-камеру, тогда и малина не нужна
Вопрос: Существует ли уголовная ответственность программиста в случае гибели людей изза ошибки в коде?

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

Худший ответ:
Где то на Хабре уже поднимался этот вопрос. Попробуйте поискать.
Вопрос: Как получить доступ к linux в электронной книге?

Лучший ответ:
Сказано что стоит ядро linux и оболочка.

Худший ответ:
Я на своей 626-й поставил "Терминал" и получил доступ к шеллу с самой электрокниги. Софт брал (если не ошибаюсь) - с 4pda
Вопрос: Приоритет отправки писем PHP Sendmail?

Лучший ответ:
Короче ответ нашелся в книжке по Sendmail

Нужно установить заголовок Precedence у писем.
Я поставил рассылке Precedence: junk. Теперь остальные письма теперь уходят сразу, а рассылка — «в фоне».
Классы по умолчанию такие: first-class, special-delivery, list, bulk, junk — по убыванию приоритета. Можно задать свои.

Возможно, потребуется в конфиге sendmail поставить QueueSortOrder=priority и увеличить ClassFactor.

Худший ответ:
может быть имеет смысле рассылку новостей слать через другой релей?
Вопрос: Есть ли какие-нибудь хорошие задачники по JavaScript?

Лучший ответ:
Вот то, что тебе нужно: learn.javascript.ru

Худший ответ:
Для начала пройдите это все.)
Не совсем Js, но закалка для мозга норм.
callumacrae.github.io/regex-tuesday
Вопрос: Можно ли придать переменной int ЛЮБОЕ целое значение, к примеру, из промежутка (C++ && Java)?

Лучший ответ:
Не надо вам в программирование лезть видимо, видимо о остатке при делении в начальной школе вы и не слышали (если уж про математику говорить)//if (i == 0 || i == (number) || i== (number * 2) || i == (number * 3)) {...}  //и так далее
if(i == 0 || i % number == 0) {...}
//if (i == 1 || i == (1 + number) || i== (1 + number * 2) || i == (1 + number * 3)) {...}
if (i == 1 || i % number == 1) {...}
// Ну и на последок
int mod = i % number;
И творите что надо с mod, будет хранить у себя ваше число.
P.S. Ну и да, не нужны проверки i==0, i==1, видимо я сам был в ударе.

Худший ответ:
Можно ли придать переменной int ЛЮБОЕ целое значение
нет
Вопрос: Svсhost.exe (netsvcs) в пике потребляет до 70% от мощности ЦП. Разве это нормально?

Лучший ответ:
ProcessExplorer от Марка Руссиновича умеет показывать стек процесса, советую посмотреть. В списке потоков ищите пожирающий и посмотрите имя dll. Как правило, это какая-нибудь служба. Скорее всего, SuperFetch — на нее много жалоб. Svchost отвечает за запуск служб
Еще можно посмотреть через ProcMon от того же Руссиновича

Худший ответ:
То, что у вас svhost.exe уже не нормально :) У всех — svchost.exe.

У меня как-то было такое, но к сожалению не помню из-за чего и как исправил… Помню софтиной смотрел от sysinternals, а потом нашёл в чем дело и исправил.

В интернете пишут из-за автоматического обновления, или вируса, или установите последние обновления и сервис пак.
Вопрос: Как указать гуглу и Яндексу на то, что контент сайта автоматически изменяется каждые Х минут?

Лучший ответ:
А робот всё равно к вам не будет приходить каждые Х минут. Да он может чаще приходить если видит что контент обновляется часто, но всё равно ходит так как считает нужным сам.
ай да робот, ай да сукин сын :)
А по делу:
Многие советуют завести rss канал и туда сбрасывать обновления. Из людей редко кто пользуется сейчас RSS, а поисковикам нравиться. Вообщем чем бы детя не тешилось, лишь бы сканировало.

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

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

Худший ответ:
Никак ... По USB не зарядишь ...
Вопрос: Убрать и добавить www

Лучший ответ:
server {
 server_name ~^(?\w\.\w)$;

rewrite ^/(.*)$ www.$domain/$1 permanent;
}

server {
 server_name ~^www\.(?\w\.\w\.\w)$;

rewrite ^/(.*)$ http://$domain/$1 permanent;
}

Как-то так, регэкспы на соответствие rfc расписывать не стал :)

Худший ответ:
ModeRewrite должен помочь :) К сожалению не знаю как он там не Ngnix правильно называется…
Вопрос: Какие качественные ресурсы (книги/ видео/ сайты) есть для желающего программировать под android?

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

Худший ответ:
developer.android.com/develop/index.html - лучший и главный ресурс для android разработчика.
А так же стоит обратить внимание на данный ресурс тык .
Вопрос: Как сделать автоматический деплой PHP приложения?

Лучший ответ:
Для автоматизации развертывания проектов на любом языке используется ansible. Это система управления конфигурации, которая отлично подходит и для деплоев. www.ansible.com В сети полным полно статей-примеров и на гитхабе кода, например:
https://www.digitalocean.com/community/tutorials/h...
https://github.com/ansistrano/deploy

Худший ответ:
TeamCity от JetBrains
https://www.jetbrains.com/teamcity/
Вопрос: Как сделать инклуды хидера и футера в Photoshop?

Лучший ответ:
Уже задавали несколько раз этот вопрос здесь — используйте смарт объекты.
Делается шапка/подвал/сайдбар и т.п. в отдельном psb и вставляется линком в макет (File/Place). Нужно поменять что-то в шапке - поменяли и в остальных файлах будет уже новый макет (только придётся обновлять вручную или использовать доп плагины). Можно создавать разные версии шапок/подвалов и в основном макете просто заменять содержимое смарт объекта.

Худший ответ:
ctrl + c ctrl + v не катит?
Вопрос: Как при помощи jQuery проверить количество элементов в массиве files[]?

Лучший ответ:
проверить, сколько есть input элементов, не пустых, в DOM с таким namevar count = $("input[name='files[]']").filter(function(el){ return $(this).val() }).length;

Худший ответ:
Насколько мне известно, получить список файлов одной командой можно только в случае использования такой конструкции для загрузки файлов<input type="file" multiple="multiple" name="upload" id="id_upload" />
но подобный атрибут потдерживается далеко на всеми браузерами. 
В вашем же случае вероятно придется делать прямой перебор как то так$('input:file').each(function() { 
console.log($(this).val())
 } );
соответственно ограничить селектор вашей формой, и вместо console.log собрать данные в массив
Вопрос: Можно ли использовать сыплющийся HDD?

Лучший ответ:
К слову, по закону — отсутствие чека не является основанием для отказа в гарантийных требованиях, ст.18 п.5 ЗоЗПП. Геморрою, конечно, должно быть побольше, но можно пободаться.

Худший ответ:
В течении двух лет очень активно использовал диск (samsung HD321KJ) на 320Gb, с кучей проблем (бэдблоки, кажется проблемы с электроникой, лог ошибок полный, одно время перегревался, в общем работал в плохих условиях вот и заболел), на нем была система (gentoo, но ее трогал раз в пол года от силы) и архив торрентов (все еще хуже, архив был на RAID0 с чередованием с другим диском, здоровым)… сначала, как только обнаружил проблемы, решио локализовать проблемы, переносом сбойных файлов в отдельный каталог (полное переформатирование диска с пометками бедов мне не подходил, да и долго это, лень было), там от силы с 3 файла было. Диск заполнен был на 90%, в редкие случаи ошибок в файлах (проблемы чаще возникали при записи — скорость падала до килобайтов) при чтении — запускал рехеш торрента и докачивал пару сбойных секторов.

Сейчас диск уже извлек, есть мысль пометить все беды как сбойные, переформатировать диск и воткнуть его куда-нибудь, пусть дальше работает до смерти.
Вопрос: Сервера для нагруженного проекта?

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

Худший ответ:
150000 запросов, это всего 1,7 запрос в секунду. 
Сколько работает один запрос и сколько он жрет ресурсов? не получится так, что не успев остановиться первый запрос, запустится десятый и нагрузка увеличится…
Вопрос: Как заработать на IT решениях?

Лучший ответ:
По такому принципу половина opensource решений работает:
1. Нужен RHEL без поддержи ставим centos, нужен с поддержкой ставим RHEL и покупаем лицензию.
2. Нужен nginx, ставим community версию. Нужны расширенные возможности пишем модули сами или покупаем enterprise версию с поддержкой. 
Подобных opensource проектов очень много, когда компания которая занимается его разработкой предоставляет платную поддержку или дополнительные фичи за деньги.
Плюс есть куча фирм, которые внедряют эти open source решения под эмблемой сокращения расходов на лицензии и предоставляют затем платную поддержку (например перевод 1c на linux + PostgreSQL или перевод телефонии на asterisk). Это как раз похоже на то, что Вы ходите. Примеров масса, услуги по внедрению opensource в it-среде могут быть в любом направлении, которое Вы знаете: почта, файловые хранилища, хостинг сайтов, телефония и многое другое.

Худший ответ:
Извините за оффтоп но считаю такую модель заработка порочной. Получается, что вам выгодно чтобы у пользователя ничего не работало нормально.
Вопрос: Как исправить memory leak in IE при удалении и повторном создании переменной?

Лучший ответ:
Переменные объявленные без спецификатора var становятся свойствами глобального объекта window (в серверной реализации global).
К таким переменным допустимо применение инструкции delete:

property = 1;

top.property;    //1
self.property;   //1
window.property; //1


Т.е. инструкция delete работает только со свойствами объектов.
Например, допустимо удалять свойства встроенных объектов:

Math.abs;        // function abs() { [native code] }
delete Math.abs; // true
Math.abs;        // undefined


Соответственно, переменные объявленные со спецификатором var удалить нельзя:
var variable = 10;
delete variable; // false
variable;        // 10


PS: в консолях типа FF, Chrome, результат работы инструкции delete  может быть не корректный.

Худший ответ:
Хм, спасибо за подсказку и новодки, попробую действитульео предопределить, а затем не удалять, а менять значения.
Но, тем не менее, если просто объявляется переменная выражением типа someval = 4; (к примеру), её уже не удалить? Для чего же существует тогда delete?