Vikhrmodels/habr_qa_sbs huggingface dataset:
Вопрос: Нейроная сеть на бумаге?

Лучший ответ:
Разные уровни абстракции по-разному подходят для описания различных систем, например, термодинамика плохо подходит для описания умственной деятельности человека, хотя человек -  термодинамическая система.
Циклы - это неподходящий способ описания.
Если "абстрактные примеры" не дают вам понимания - возможно, дело в вашей недостаточной подготовке, ведь кому-то же дают? Обычно в предисловии к учебнику или вводной лекции курса указывается уровень знаний, необходимый для освоения материала.

Худший ответ:
Пример из Матлаба.
Сначала двумерный образ сканированием превращаете в массив нулей и единиц (это в сетчатке глаза сработали палочки).
Далее надо придумать тип задачи. Напр., классификация (есть и другие: кластеризация, аппроксимация функции...). Под это дело подбираете архитектуру: число слоёв, количество нейронов,  активационые функции.
Потом обучение.
Вопрос: Вытянет ли macbook pro 13 2 монитора с разрешением 2к?

Лучший ответ:
неужели сложно почитать спеки?Режимы двух экранов и дублирования видеоизображения: одновременная поддержка полного штатного разрешения на встроенном дисплее и до 2560 x 1600 пикселей на двух внешних мониторах, высокое качество цветопередачи в обоих случаях (миллионы цветов)

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

Лучший ответ:
Последний vue-clie на webpack 2.x из коробки поддерживает code splitting. На выходе получается vendor.js (библиотеки из node_modules), app.js. Также посмотри в сторону lazy loading components.  То есть можно модалки например, или другие компоненты не грузить вообще если нет надобности. То есть на модалку вещаете директиву v-if и компонент подключаете так:components: {
  Modal: () => import('components/modal.vue');
}
При этом компонент на выходе будет лежать в отдельном файле и не загрузится до того, пока не отработает v-if.  
Если без v-if, то компонент загрузится асинхронно во время загрузки страниц. 
Я например, гружу так страницы через vue-router, асинхронно.

Худший ответ:
Удалить .js.map файлы. Это sourcemaps от webpack))
Дело в том, что месяц назад я добавил дополнительный loader в vue-loader.conf.js. И закомментил sourcemap-овский condition. А именно вот так:
Ха-ха. Просто я не знал как это организовать вместе)) Смешно правда?
Так вот решение:
Вопрос: Какие права безопасно ставить на корень?

Лучший ответ:
Никогда не меняйте права и пользователя на корень ( / )
Для изоляции придумали chroot

Худший ответ:
Безопасны. Не стоит без четкого знания того, что делаешь, менять что-то в корне, системных либах, grub, ядре etc. - можно по самые уши проблем хватануть.
Если FTP через proftpd, там есть вот такой параметр:DefaultRoot                     ~ !wheel
Он обрежет всем, кто не входит в локальную группу wheel доступ выше домашки - при попытке выйти выше уровнем ему будет сообщаться, то выше некуда - это корень :)
Вопрос: Что должен знать системный архитектор?

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

Худший ответ:
Системный архитектор должен уметь программировать.
Хотя бы просто потому что хороший системный архитектор может развиться только из программиста.
И да, системный архитектор должен уметь программировать профессионально, так как хороший системный архитектор развивается из программиста за не один, не два и не пять лет. А за столько лет программирования разумеется ты будешь программировать профессионально.
Теоретически, архитектор может из из админа возникнуть.
Имхо, такой архитектор будет похуже.
Но навыки программиста там все равно будут очень важны.
Вопрос: Что лучше для интернет-магазина bitrix или opencart?

Лучший ответ:
Битрикс по популярности находится на 4 месте в мире, притом после 3 бесплатных.
И он заточен под ИМАГ
инструментария в нем более чем достаточно.
Но это как сравнить фотошоп и  pbrush одно лучше н о тяжелее второе проще и дешевле.

Худший ответ:
Opencart может держать 10 000 товаров. Весь вопрос в ресурсах хостинга.
Если брать вопрос связки Битрикс 24 и Opencart то есть Модуль Opencart + Битрикс 24
Вопрос: Есть где нибудь самый разжованый гайд что такое хуки и с чем их кушать?

Лучший ответ:
К хукам (фильтрам или событиям) прикрепляются PHP функции, затем, в момент срабатывания хука, эти функции будут срабатывать.ссылка в помощь

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

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

Худший ответ:
а вы не подскажите хотя бы примерно, как мне реализовать отдельные функции удаления и записи так, чтобы не подключаться к базе по много раз? 
 Паттерн «Репозиторий»
Вопрос: Как обстоит ситуация с обновлениями приложений в Android 7+?

Лучший ответ:
Нет. Не обновит.
Почему невозможно сайт-лоадить?

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

Лучший ответ:
Коротко, ты можешь не сохранять минимальное и максимальное значение отдельно, т.к. они всегда доступны по индексу в массиве. Другое дело - это что у тебя нет этих индексов до начала прохода по массиву, тебе их просто неоткуда взять. Этот момент и определяет верное начальное состояние в решении твоей задачи. Отсутствие этого момента и приводит к тому, что твой код сейчас работает неверно.
Тебе нужны только индексы тех элементов, которые ты считаешь как минимальный и максимальный.size_t min_value_index = 0;
size_t max_value_index = 0;
Я выбираю инициализацию в 0 для того чтобы изначально обозначить первый же элемент массива и как минимальный, и как максимальный одновременно. Именно так я определю начальное состояние алгоритма.
Далее надо сделать проход по массиву.for( size_t index = 1; index < stream_length; ++index )
{
   // ...
}
Мне незачем сравнивать элемент по нулевому индексу с самим собой, т.к. я изначально уже выбрал его, поэтому проход по массиву можно начать со следующего элемента.
Теперь надо записать условие выбора минимального и максимального значений.for( size_t index = 1; index < stream_length; ++index )
{
   if( stream[ index ] < stream[ min_value_index ] )
   {
      min_value_index = index;
   }
   
   if( stream[ index ] > stream[ max_value_index ] )
   {
      max_value_index = index;
   }
}
При записи условий очень важно соблюдать логику. Нужно писать так, чтобы выражение читалось как можно легче, используя слова в названиях и порядок записи операций.
Тут видно что если по текущему индексу значение меньше запомненного минимального, то надо запомнить текущий индекс как индекс минимального значения. И для максимального значения точно так же.
По завершении цикла в min_value_index будет гарантированно лежать индекс минимального значения массива, а в max_value_index - индекс максимального.Как работает этот код.

Худший ответ:
Самое правильное, так:cout << *min_element(begin(c), end(c)) << endl;
cout << *max_element(begin(c), end(c)) << endl;
Можно такstd::partial_sort(begin(с), begin(с) + 1, end(с));
auto m = с.front();
std::partial_sort(begin(с), begin(с) + 1, end(с), greater<long>());
auto M = с.front();
Вопрос: Как запустить несколько openvpn на одном компьютере?

Лучший ответ:
openvpn всё равно же только через root работает
Достаточно в конфиге добавить:user nobody
group nobody
Имхо, зачем усложнять с виртуализацией и прочим, когда можно openvpn запускать на разных портах.
Можно хоть тысячу openvpn на одном сервере запустить, используя разные порты.

Худший ответ:
Вам нужны не OpenVPN, вам нужны прокси
Установите proxychains-ng. Ищите в репозиториях.
Запускать можно любой софт. Запуская программу через proxychains, весь трафик программы будет идти по заданному маршруту. Есть возможность использовать цепочки анонимизации состоящие из нескольких проксей, тор, vpn и проч.
Вопрос: Какой выбрать helpdesk?

Лучший ответ:
деньги есть?
можно  индийских индусов, можно пафосных американцев, можно американских индусов
а можно родные Битрикс 24, но там хз что донастраивать

Худший ответ:
Поставьте CMS Joomla!-у и дайте права пользователям создавать публикации в конкретном разделе - это будут тикеты. Кастомные/произвольные поля для публикации - можно настраивать из админки. Эта функция есть сразу после установки  "из коробки"!
В другом разделе - храните документацию.
Любая настройка стилей и внешнего вида.
Платить - никому не нужно будет.Список OpenSource Help-Desk систем
Вопрос: Как объединить vue.js и PHP с MYSQL?

Лучший ответ:
Вам предстоит узнать еще много нового, в рамках одного ответа всё не рассказать. 
Vue это фронтенд, штука, отвечающая за интерактивность интерфейса, поэтому в её документации практически нет ничего о работе с сервером. Но сама работа с сервером есть, строится она на основе запросов на сервер. Для вас актуален AJAX (это тоже фронтенд, но не часть vue).
AJAX позволяет запросить что-то у сервера без перезагрузки страницы. Теперь мы подбираемся к PHP - запрос должен обработать серверный язык, и лучше бы вам использовать фреймворк, а не чистый PHP.
В общем виде - сервер разбирает параметры запроса и на их основе отстраивает запрос в базу данных (SQL->DML).  Здесь начинается mysql. 
В ответе на sql-запрос содержится срез данных, которые запросил пользователь. Ответ преобразуется сначала в массивы или объекты выбранного вами серверного языка, а потом в JSON (или xml, или другой формат данных), после чего отдается в обработчик запроса AJAX. 
Чтобы дать рабочий пример, нужно скинуть вам целый проект. Ознакамливайтесь с упомянутыми мной технологиями отдельно, вам придется потратить на это пару вечеров)

Худший ответ:
Я тоже новичок в этом деле, но с твердостью могу рекомендовать готовый проект в коробке vue.js для фронт-енда и Laravel7 для бэк енда, https://coreui.io/vue-laravel/
Вопрос: Как разделить сайт на development и production версии?

Лучший ответ:
git + CI + миграции БД

Худший ответ:
просто код в гит положите и два сайта подымите с двух бранчей
Вопрос: C++ IDE для Линукса и компиляторы?

Лучший ответ:
Нет ничего лучше Qt. Ни под винду, ни под линукс.

Худший ответ:
Qt Creator тяжеловата? ОМГ... Я его на атомах запускаю и код пишу, нежели студия. Из аналогов только Qt Creator более менее для плюсов заменяет студию.  К тому же, сам Creator написан на плюсах, чего не скажет о CLion, Eclipse, Geany, которые написаны на Жаве.
Используй Qt Creator  и не мучай себя.
Вопрос: Почему выводится старое значение state?

Лучший ответ:
Because this.props and this.state may be updated asynchronously, you should not rely on their values for calculating the next state.Документация
Вот так правильно:this.setState(
  (state) => ({test: !state.test}),
  () => console.log(this.state.test)
);

Худший ответ:
Because this.props and this.state may be updated asynchronously, you should not rely on their values for calculating the next state.Документация
Вот так правильно:this.setState(
  (state) => ({test: !state.test}),
  () => console.log(this.state.test)
);
Вопрос: Как окончательно добить SSD?

Лучший ответ:
во время прошивки новой версии софта выдернуть диск из питания. 
Только я вам это не советовал. Вы сами к этому пришли.

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

Лучший ответ:
т.к. это хост и тут джанги нет
Не вижу причин, по которым Django нельзя было бы установить.В настройках выбрал веб сервер uWSGI
А урок нашли по CGI. Замечаете разницу?
Как описано в документации по uWSGI, создайте файл site.wsgi с содержимымdef application(env, start_response):
    start_response('200 OK', [('Content-Type','text/html')])
    return [b"Hello World"]
А рядом создайте файл .htaccess с содержимымOptions +ExecCGI
AddHandler wsgi-script .wsgi
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ /site.wsgi/$1 [QSA,PT,L]
как описано в инструкциях хостера.

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

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

Худший ответ:
Есть книга, где популярно всё описано: https://www.ozon.ru/context/detail/id/26326082/
Вопрос: Как оценить «качество» тренда?

Лучший ответ:
Похоже, вас интересует значение минимизируемой при линейной регрессии функции. Обычно это сумма квадратов расстояний каждой из точек до прямой. Собственную реализацию написать несложно. Как называются готовые функции в перечисленных продуктах, не подскажу, увы.
Если со 100% всё понятно – когда все точки на прямой и сумма = 0; то что брать за максимум, за 0% аккуратность, хуже которой быть уже не может? : )

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

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

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

Лучший ответ:
Не бойтесь использовать английский
Никто вас не будет ругать за его плохое знание

Худший ответ:
Я на 1С пишу и не замарачиваюсь на счет языка.
Вопрос: Почему функция общего прототипа не работает в разных конструкторах (ОСТОРОЖНО, НОВИЧОК!)?

Лучший ответ:
Прототипы First и Second это два разных объекта, хоть и выглядят одинаково "Object {}"
Поэтому метод, добавленный в прототип First, доступен в его экземпляре a и недоступен в экземпляре b Second.

Худший ответ:
Не очень хороший способ, но кто мешает расширить прототип родителя? Вот таким греховным образом числа в моем приложении обретают формат:/*    Метод format конструктора Number >>>
 *    Расширение прототипа
 *
 *    Метод позволяет задавать число знаков после запятой и
 *    Вводить знак валют до или после значения.
 *
 *    Пример работы:    (123456789.12345).format(2, 2, '—', '=')
 *        возвращает:    1—23—45—67—89=12
 *
 *    Все экземпляры Number наследуются от Number.prototype.
 */
Number.prototype.format = function (n, x, s, c) {
    var re = '\\d(?=(\\d{' + (x || 3) + '})+' + (n > 0 ? '\\D' : '$') + ')';
    var num = this.toFixed(Math.max(0, ~~n));

    return (c ? num.replace('.', c) : num).replace(new RegExp(re, 'g'), '$&' + (s || ','));
};
И так вот используются:Number(condPriceMin).format(0, 3, '&nbsp', '.') + '<i class="fa fa-rub"></i>';
Вопрос: Как лучше решить эту ООП задачу?

Лучший ответ:
А ваш метод GetUniversity у профессора не нарушит SOLID и агрегацию? По моему тут обычный DI - инжектируйте зависимость в профессора, просто не через конструктор, а через поле, раз профессор может туда-сюда бегать из университета в колледж.

Худший ответ:
University содержит множество экземпляров Professor.
В смысле? Университет может порождать множество экземпляров университетов, а профессор - профессоров. И они не могут наследовать - профессор не имеет ни свойств, ни методов университета.
Как верно подсказал коллега выше, принадлежность к университету - обычное свойство профессора, причем может быть многие-ко-многим. Следовательно, ответ на ваш вопрос: обычный геттер.
Вопрос: Хорошие книжки по JavaScript?

Лучший ответ:
А решается оно часто двумя строчками :)
Это по причине того, что на форумах часто код дают в функциональном стиле, состоящим из вызовов map/filter/reduce и.т.д., а новички еще не дошли до этого, и их это ставит в ступор. Может быть есть какие-то книги, которые помогают "строить мост" между голой теорией про массивы (в которой, к слову, сложности не вижу) и возможностью применить знания на практике?
Вообще, носорог и learn.java-script.ru самые простые книги по JS, есть еще You Dont Know JS, она на английском. Если они кажутся сложными, то либо программирование это не ваше, либо пробуйте читать фундаментальные книжки, типа  Код. Тайный язык информатики. Чарльз Петцольд

Худший ответ:
Если нужно именно выучить язык JS (а не научиться программировать - для этого есть другие книги и языки) и действительно понимать как он работает то посоветую серию книг "Вы не знаете JS" от Кайла Симпсона
https://github.com/azat-io/you-dont-know-js-ru в русском переводе первые пять частей можно найти только тут, их не издавали
Вопрос: Почему FlexBox не работает в Internet Explorer?

Лучший ответ:
Смотря какая версия Internet Explorer

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

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

Худший ответ:
Я тут подитожу С какими проблемами я могу столкнуться, если решу хранить данные каждого модуля в отдельной базе данных?
1) JOIN между таблицами будет мягко говоря затруднителен
2) Мелочи вроде поднятия N соединений вместо одного 
3) В конфигах держать соответственно N настроек 
4) соединение - эта операция нифига не бесплатная, как впрочем и отсоединение
5) Есть подозрение что с миграциями тоже не все будет гладко и шелковисто
6) Консистентность без транзакций - отдельная попаболь.
Выгоды ровно ноль, во всяком случае я не смог придумать ни одного аргумента про.
Вопрос: Запросы к сайту в обход Cloudflare?

Лучший ответ:
Если подключили недавно, то не у всех успели DNS-записи обновиться. Если злоумышленник знает ваш IP за Cloudflare, он может задудосить вас напрямую в любом случае, потому если поставили Cloudflare перед вами ради защиты от DDoS - рекомендуется поменять IP'шник вашего сервера на тот, о котором злоумышленник ничего не знает. Ну и дополнительно - запретить к веб-серверу доступ напрямую, разрешить только с IP-адресов Cloudflare.
Ну и напоследок, настроить nginx так, чтобы он доверял Cloudflare и подставлял IP-адрес в remote_addr: nginx.org/ru/docs/http/ngx_http_realip_module.html

Худший ответ:
Вопрос: как они попадают на сайт? Разве не весь трафик направляется через cloudflare? Выбрана защита доменного имени сайта или некого диапазона сетевых адресов? 
Сетевой адрес, к которому привязан домен из пула адресов Cloudflare?
Инженеры Cloudflare вроде как дают рекомендацию по закрытию доступа со сторонних адресов к на твой ip, кроме их подсети. Эта рекомендация выполнена?
Вопрос: Как и на чем проще и дешевле настроить резервирование канала + балансировку\объединение каналов?

Лучший ответ:
Как и на чем проще и дешевле настроить резервирование канала + балансировку\объединение каналов?Mikrotik - самое удобное и дешевое решение, но не единственное.объединение каналов двух провайдеров для увеличения скоростиСложно, но если хочется, то можно.
К увеличению скорости приводит редко, как правило увеличение довольно небольшое. 10мбит+10мбит =12-13мбит в большинстве случаев.
Зачастую бывает так - 100мбит+10мбит = 11мбит.
К уменьшению скорости приводит часто,Читал о подобном решении на Mikrotik RB951G-2HnD, но по картинке меня смущает отсутствие двух WANов WAN это порт в который приходит линк с внешней сети. Если вы подключили к этому порту линк с внешней сети, значит это WAN, если не подключили значит LAN.
К слову - на данной модели вроде ничего кроме здравого смысла не мешает сделать хоть 800 WAN портов.И можно ли на этой модели сделать балансировку каналов, чтобы вместо одного хорошего, и одного плохого по очереди было полтора хороших по скорости, пусть и не всегда?Можно сделать балансировку.
Вместо одного плохого и одного хорошего будет один плохой.

Худший ответ:
Как и на чем проще и дешевле настроить резервирование канала + балансировку\объединение каналов?
"Проще" может быть "дешевле" только за счет обрезания функций, которые обычному SOHO-юзеру не нужны, поэтому ни один SOHO-маршрутизатор не имеет двух WAN-портов :) В условиях данной задачи, если "дешевле" во главе угла - то микротик. Или они все хорошие и настраиваемые?Указанная Вами модель годится для небольшого офиса. А так они все хорошие и настраиваемые, причем совершенно одинаково - всюду стоит RouterOS, этакий перефигаченный линух.или они назначаются из ланов?WAN, LAN - маркетинговые понятия, для чайников. У микротика есть порт. Как его настроишь - так он и будет, хоть WAN, хоть LAN, хоть Tarakan :)D-Link DES-1100-24 и D-Link DGS-1210-52 - с ними можно что-то подобное провернуть
Нет. От слова совсем.объединение каналов двух провайдеров для увеличения скорости Полностью суммировать каналы нельзя. То есть нельзя например будет скачивать один большой файл на скорости (пров1 + пров2). Можно будет раскидать услуги по разным каналам - почту туда, веб сюда, vpn еще куда... Можно будет качать файлы одновременно с двух каналов для тех протоколов, где есть скачка по частям - например торрентов.
Но поскольку скорость загрузки - величина постоянно меняющаяся, гарантировать что (пров1+пров2) > (пров1) невозможно. Наличие двух каналов, как правило повышает не скорость, а надежность.