Vikhrmodels/habr_qa_sbs huggingface dataset:
Вопрос: Зачем нужны нативные языки для мобильной разработки?

Лучший ответ:
На нативных языках приложение будет работать быстрее, занимать меньше памяти, как оперативной, так и физической относительно такого же функционала, но на другом языке. Использование самого свежего функционала ОС. Да и в каком-то плане, наиболее безопаснее. Всё это благодаря низкоуровневому обращению к API и инструкциям системы.
React Native и другие подобные средства лишь упрощают разработку, сокращая необходимое время и деньги на эту процедуру. Согласитесь, для заказчика дешевле будет написать один код (но с различными исключения под платформы) для iOS и Android, чем нанимать разработчиков под каждую платформу. Такие приложения имеют ограничения по разному функционалу, что приводит к написанию ещё большего кода.Вот пример.Много лет назад из любопытства написал два одинаковых по функционалу приложения под Android на Java и Delphi (да, он тоже теперь кроссплатформенный). На Java приложение работало намного быстрее - раза в 1.3-1.5 и занимало в 4 раза меньше физической памяти.И ещё один, но про Рокетбанк.Рокетбанк выпустили новое приложение на RN для iOS и Android. Возьмём платформу iOS.
1. Функционал нового и старого приложений одинаков, но страница авторизации с подтверждением входа по TouchID в новой версии висит куда дольше - на пару секунд. Не думаю, что там такой огромный функционал, который увеличивает время инициализации приложения. 
2. Занимает в 2 раза больше физической памяти.
3. Накатывали JailBreak на прошивку... доступ к данным старого приложения получить не удалось, из нового вытащили различную инфу, включая токен сессии.
И гугл в помощь.

Худший ответ:
Flutter, к примеру, отлично поддерживает элементы интерфейса (менюшки и т.п.). И приложение, основанное на обычном интерфейсе с пользователем, ты напишешь легко.
Но при попытке написать с ним нечто, где визуальную составляющую генерируешь сам - например, игру - столкнешься с невозможностью.Любое универсальное априори хуже в деталях.
Вопрос: Структура БД для хранения комментариев?

Лучший ответ:
Выглядит как заказ на работу
Вопрос конкретно в чем? 
 - В связке родителя/потомка? parent_id
 - В выборке дерева? with recursive
 - Хотите отделить записи по времени? шардинг с условием
UPD:раздватри

Худший ответ:
Всем спасибо за ответы, принято решение хранить комменты в редисе свяжие целиком, старые только указание на место хранения
Вопрос: Какую альтернативу Gmail выбрать под Android?

Лучший ответ:
Фильтры отрабатывают на сервере.
Клиент тут вообще не при делах.

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

Лучший ответ:
Для передачи определенной информации программе, во время её запуска, используются аргументы, переданные в командной строкеC:\Users\Admin\Desktop\example.jar arg1 arg2
переданные аргументы хранятся в виде строк в массиве String, переданного методу mainpublic static void main(String args[]) {
  for(int i=0; args.length; i++)
    System.out.println("args[" + i + "] : " + args[i]);
}

Худший ответ:
Хоть ответ уже был отмечен но добавлю пару других вариантов.
1) lnk имеет доку и спецификацию в которой очень много интересного. По сути проще открой ярлык блокнотом и удивишься =) Т.е. можешь работать с ярлыком как с обычным текстовым файлом.
2) java программу можно запускать не только с аргументами. Можно сделать сколь угодно много точек входа(классов с функцией main) и вызывать нужную аргументом запуска типа java -cp MyJar.jar com.mycomp.myproj.MainClass2. Может пригодится к примеру если деалешь программу которая можно будет запустить в консольном варианте или с графикой.
Вопрос: Как получить только первое значение в таблице?

Лучший ответ:
С учётом изменения вопроса:SELECT to_char(c.date, 'YYYY-MM-dd HH24:MI:ss') as day,
       c.title, c.email, c.price, c.pages
  FROM (
    SELECT MIN(date) AS date, email FROM customer GROUP BY email
  ) AS t
  JOIN customer AS c ON c.date = t.date AND c.email = d.email

Худший ответ:
MIN(date) вместе с group by
Вопрос: Что корректнее использовать em или стили?

Лучший ответ:
В отрыве от контекста оба утверждения звучат верно.
Где вы хотите использовать em? Вот в чем вопрос.
В статье - там ему самое место.
Телефон в шапке должен быть наклонным - используйте стили.

Худший ответ:
HTML как раз и создан для того, чтобы описывать назначение объектов, которые содержит документ. А CSS создан для того, чтобы придавать нужный вид.
Тег  как раз логический:Элемент  предназначен для акцентирования текста. Браузеры отображают такой текст курсивным начертанием.
Он отображает курсив ПО УМОЛЧАНИЮ, но его смысл в том, чтобы СДЕЛАТЬ АКЦЕНТ НА ТЕКСТЕ.
Как делать акцент (красным, синим, жирным, курсивом, подчеркнутым, зачеркнутым...) это дело вкуса, и это реализуется через CSS.
Вопрос: Как зарабатывают платные сайты опросники?

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

Худший ответ:
Этим сайтам платит тот кто заказывает опрос.
Вопрос: Какая биржа фриланса сейчас самая массовая?

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

Худший ответ:
по прежнему постю такие работы на fl.ru вроде особых проблем нет
иногда еще на веблансере но редко
Вопрос: Почему Михаил Русаков вынужден спамить свои курсы?

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

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

Лучший ответ:
Ну если вам прямо по пробелу, и если действительно на C++, то вот:#include <iostream>
#include <sstream>
#include <vector>

int main()
{
	std::istringstream input{ "foo bar baz qux" };
	std::vector<std::string> result;

	// extract substrings one-by-one
	while (!input.eof()) {
		std::string substring;
		input >> substring;
		result.push_back(substring);
	}

	// print all the extracted substrings
	for (const std::string& substring : result) {
		std::cout << substring << std::endl;
	}
}
А вообще тут столько вариантов, что и не сосчитать (есть даже более короткий вариант с использованием std::copy).

Худший ответ:
Я не так давно реализовал свой вариант: https://github.com/vt4a2h/str_utils
Ну и в интернетах есть куча вариантов.
Вопрос: Сколько дается попыток на экзамен 70-410?

Лучший ответ:
Одна попытка

Худший ответ:
как и всегда = одна, а если не сдали = плати снова
hobbycomp.ru/soft/windows/ekzamen-microsoft-70-410
https://habrahabr.ru/post/262707/
Вопрос: В чем разница между css-loader vs style-loader?

Лучший ответ:
css-loader интерпритирует @import и url() в импортированном в проект css коде как import/require() и разрешает их.
style-loader  помещает css в DOM.

Худший ответ:
css-loader - преобразовывает CSS - в модуль JavaScript. 
(Входные данные: CSS, Выходные данные: JavaScript)
style-loader - внедряет CSS, экспортируемый модулем JavaScript, в тег
Вопрос: Есть ли способ получить данные передаваемые через буфер компьютера?

Лучший ответ:
Если данные передавались с камеры на флешку без отдельного копирования на жесткий диск, то использовался буфер обмена в оперативной памяти с которого невозможно восстановить данные.
Даже если был теневой файл на диске, шансов спустя месяц около 0%. Не всегда можно восстановить temp файл за вчера, не то что месяц назад

Худший ответ:
Если взяли ноут, воткнули два накопителя и перетащили файлы с места на место, НЕ СОХРАНЯЯ НА ДИСК, ничего вытащить не получится. Если это соответствует вашему "напрямую", то никаких данных не сохранилось.
Вопрос: Как получать координат gps машин для сайта?

Лучший ответ:
Для постоянного отслеживания координат объекта нужно приложение, android, ios api позволяет получать текущее местопложение с помощью сети или gps и далее использовать в приложении (отправлять данные на сервер и там обрабатывать как угодно), яндекс карты и google maps там вроде бы можно отправить свои координаты по смс, email и т.д.
PS. Я учавствовал в разаботке системы курьерской доставки, кратко говоря, был сервер и приложение под android. Приложение содержало в себе карту с отображением адреса доставки получаемого с сервера, и отправляло координаты курьера на сервер, после обработки на сервере, все курьеры и их прогресс отображается у оператора на карте, ну и прочая статистика (ср. скорость, пробки и т.д.) исходя из статистки оператор мог проложить маршрут каждого курьера. Как-то так. :-)

Худший ответ:
Карты Я и Г не только не дают нужного API, но и явно запрещают реализовывать системы диспетчеризации транспорта на них.
Вопрос: Как расшифровать код PHP?

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

Худший ответ:
Решение #3 для вас - https://www.ryadel.com/en/php-fix-warning-preg_rep...
Либо откатите версию PHP до 5.4.
Вопрос: Как переместить файлы по заданному условию?

Лучший ответ:
Вторым аргументом указывается не папка, а полный путь к новому файлу, с именем.var filename = Path.GetFileName(s);
File.Move(s, pathA + "\\" + filename);

Худший ответ:
Перед File.Move, сначала проверь есть ли файл с таким же именем в директории, если есть, то уникализируй(хоть цифру допиши, хоть timestamp) имя перед перемещением файла.
Вопрос: Почему пропал скролл колесиком мышки в Хроме?

Лучший ответ:
Проблема из-за скрипта: /wp-content/themes/CherryFramework/js/jquery.mobilemenu.js?ver=1.0
Если его в консоли заблочить для загрузки, то скролл работает. Копайте

Худший ответ:
Дык отключайте плагины постепенно. Где то тут проблема: /wp-content/plugins/
Вопрос: Как подключится к mongodb из клиентского javascript?

Лучший ответ:
Vetal Matitskiy: на мой взгляд вы ленитесь запустить рест апи, давайте рассудим, нагрузка по выборке данных в любом случае будет храниться на сервере, отдавая такие возможности во фронтэнд вы лишаете себя контроля по числу запросов, их корректности, а как следствие создаете неконтроллируемую нагрузку на бд. Минусы, которые я вижу, число одновременных подключений к бд может быть огромным, зачем себя флудить? 2. любой запрос вне вашей логики может использовать поиски к неиндексированным данным, что может привести к блокировкам. 3. вы отдадите клиенту логин и пароль на чтение, что он будет делать с ними после этого только ему известно. Теперь о плюсах использования бекэнда, чтобы совсем лениться, как вариант ставим ноду и устанавливаем фреймворк sails.js, устанавливаем проект, получаем готовую базу для бекэнд апи, генерируем апи контроллер, описываем модель и что она будет выдавать, вот вам и выборка из бд, а клиента учим отрисовывать это все в фронтэнде. можно через тот же ангуляр.
я конечно понимаю, что это не ответ на ваш вопрос, но вы не можете найти решение именно потому, что так не надо решать. 
Для примера sails new Project создаст проект
sails generate api post создаст фулрест апи с описанными методами find, findOne, create, update, destroy, populate, add, remove
ненужные отключаете и все готово.
Я конечно понимаю, держать бекэнд кажется лишним, но когда вы получите одновременно 5 - 10 запросов на полную выборку из огромных таблиц, ваш сервер встанет в ожидание и начнет отказывать клиентам в получении данных, поймете, что пришли не туда, куда хотели и будете все в спешке переделывать.
Естественно sails не обязателен в использовании, можно найти кучу других решений.
Вот например первый ответ из гугла: https://www.npmjs.com/package/restful-api
В любом случае я 10 раз рекомендую подумать перед тем, как отдавать такой функционал во фронтэнд. И да, если не передумаете, пришлите ссылку на готовый проект. может мне ваши данные покажутся полезными и я их целиком выкачаю ))))

Худший ответ:
На формуах вам посоветовали самое правильное решение.
Вопрос: Анонимность в сети. Необходимый минимум для того чтобы не обращать на себя внимание?

Лучший ответ:
Небольшой джентльменский набор. Последние два в Вашем случае можно игнорировать.Не использовать при подключение роутер wifi;Перед каждым подключением сменить mac адрес устройства (использовать его только один раз);Использовать OpenVPN соединение совместно с Proxy;После завершения, чистить бразер (лучше использовать Firefox)Регистрировать VPS используя фиктивные данные (регистрация в биллинге только через Tor)Держать язык за зубами и так далее.
Поднять OpenVPN сервер и Proxy сервер можно на обычных VPS с min параметрами ($7/мес. за 2 VPS)

Худший ответ:
VPN  и настройка браузера.
VPN защищает от определения вашего реального адреса,  остается сбор информации через браузер - JS, плагины, кукисы, разрешение экрана, открытые соцсети и сервисы.
Но анонимность надо настраивать не "вообще", а для конкретного случая - думать что именно нужно скрыть и насколько.
Вопрос: Существуют хостеры с VPS и под Windows, и под Debian?

Лучший ответ:
Чем Вам не подходит Amazon? Надежный, нерусский

Худший ответ:
Амазон
Вопрос: Как вставить в border текст при клике на css?

Лучший ответ:
это не плейсхолдер, а label, просто он абсолютный, при фокусе на инпут дописаны стили, что он перемещается вверх.
По верстке, сначала input затем label.
По css input + label, input:focus + label
Селектор примерно такойselect:required:valid ~ label, 
select:optional ~ label, 
input[type="email"]:required:focus ~ label,
input[type="email"]:optional:focus ~ label, 
input[type="email"]:required:valid ~ label, 
input[type="text"]:required:focus ~ label, 
input[type="text"]:optional:focus ~ label, 
input[type="text"]:required:valid ~ label, 
input[type="text"]:optional ~ label

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

Лучший ответ:
Говорить с кем-то кроме ЛПР бессмысленно.

Худший ответ:
Маркетинговый отдел.
Вопрос: Какой ЯП выбрать для изучения, чтобы лучше понять основы программирования? С?

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

Худший ответ:
C слишком далек от веба, не считая C#, определитесь для начала со стеком и технологиями: PHP, Python, Ruby, C#, Java, Node.js - это сервер, Angular, Vue и прочие - фронтенд. Знатоки поправят меня.
Вопрос: Как сгруппировать записи в Postgres?

Лучший ответ:
Во-первых, вам не нужен union, используйте join. Во-вторых, группировка делается с помощью group by. Для получения массива сгруппированных значений используйте агрегатную функцию array_agg().select
  t1.name, array_agg(t2.skills)
from table1 as t1
inner join table2 as t2
  using (id)
group by t1.name;sqlfidle

Худший ответ:
используйте функцию array_agg, например:SELECT table1 .id, table1 .name, array_agg(table2.skills)
FROM table1 
LEFT JOIN table2 ON table2.id = table1.id
GROUP BY table1.id
Вопрос: Как сделать неафинное преобразование в Html5?

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

Худший ответ:
интересная штука
гляньте тут
www.creativebloq.com/3d/how-create-impressive-3d-g...
Вопрос: Кто может дать комментарии по поводу кода PHP ООП (Code review)?

Лучший ответ:
Что-то многовато таких вопросов за последние пару дней.  Часть замечаний к вашему коду есть в этом ответе. Повторюсь.
Вы же сами написали:класс для работы с многомерными пользовательскими массивами
но, тем не менее, этот класса делает все, что не лень: Работает с этими самыми массивами Соединяется с базой данных Отправляет запросы к базе данных Занимается обработкой данных
Не многовато ли для одного класса?
В итоге, мы получаем богообъект, который "умеет во всё".
Что у вас за бред написан в методе getInstance()? Зачем бросать исключение, в случае, если инстанс уже был создан.if (self::$_instance === null) {
    self::$_instance = new self($id);
} else {
    throw new Exception("Попытка повторного создания экземпляра Singleton класса");
}
return self::$_instance;
То есть, у вас теряется весь смысл (анти)паттерна синглотон. Получается, я не смогу сделать так:$instance1 = treeData::getInstance();
$instance2 = treeData::getInstance(); // Исключение!
Есть логика? Я думаю, что нет.
Почему вы храните данные для соединения с БД внутри метода? Не логично ли было бы передавать их в качестве аргументов к методам?Вы каждый раз повторяете строки с подготовкой запроса, биндингом параметров, отправкой запроса и тд. Не думали, что неплохо бы было написать какую-нибудь обертку и выполнять запросы как-нибудь так:$result = $wrapper->select("SELECT * FROM `tablename` WHERE `id` = :id", ['id' => 5]);
?
Абстрактные исключения не бросаем! Создаем свои исключения и наследуемся от них. В своем коде используем только их, дабы можно было легко обработать нужные exception'ы. Текст исключения неплохо бы было писать на английском.
Имена классов пишем с большой буквы! Скобки после методов и классов пишем на новой строке:function example() {
    // Не так
}

function example()
{
    // А вот так
}
Предлагаю придерживаться общепринятым стандартам оформления кода.
Старайтесь использовать синглтон в  таком виде по минимуму (Или вообще не использовать). Тем более, в данном случае, он вообще не нужен.

Худший ответ:
Внесу свои пять копеек. 
Во-первых, все выглядит достаточно дерьмового. А теперь к сути.
1. Хромает именование функций и их действие:
a. Если называешь методы максимально абстрактно, то они и должны выполнять абстрактные вещи, у тебя конкретные действия
b. mySerialize из той же оперы что и  mySuperUltraMegaMethodConcat2String
c. getFromDb - вообще нихрена не ясно, что делает функция, название метода должно отражать ее сущность. Этот метод можно переименовать в getById
2. Не вижу ооп, вижу сплошной статик, который равнозначен функциональщине. 
У тебя в сингтоне должно получиться что-то типа этогоclass Tree
{
private $inst;

__const() {
  return $inst === null ? new self : $inst; 
}

public function getById($id) {
   return TreeModel::find($id);
}

public function TreeSectionExist($id) {
   return !is_null($this->getById($id)) ? true : false;
}

$a = new Tree();
}
3. Не комментируйте очевидное//Запись в БД
        self::saveToDb();
Картинка с николасом кейджам.jpg
Вопрос: Частный дом. Gpon. Раздать соседям интернет?

Лучший ответ:
1)А вам какая разница? Все равно же будете прятаться.
2)Микротик поставьте или компьютер с программным шлюзом.
3)Конечно.
4)Можете конечно стать ИП, только чтобы вам продавать доступ к интернету, для начала самому надо будет купить доступ, А это недешево. Ну и лицензию оформить на вид деятельности.
5)Пользуйтесь и радуйтесь что интернет есть. Если дороговато выходит - раздавайте соседям без палева.
Но я бы потребовал с первого подключенного абонента плату, ну примерно 15к.Пока лицензию не получите чего вы можете требовать? А лицензия обойдется дороже чем ваши 35к.

Худший ответ:
Чтобы сделать всё легально вам надо будет регистрироваться как оператор связи,  общаться с фсб тд и тп.
дальше больше - всё зависит от того что вы там за интернет себе протянули, у меня например 50 мб/с, но провайдер точно такого же мнения как и вы поэтому не считает нужным давать более 5 мб/с на внешний трафик, внутренний хоть 100 мб/с.
если желание немного окупить приобретение за счёт соседей есть, то для начала лучше раздавать по запароленному вайфваю.
если кабель то тянуть вдоль забора - там не ходят и не копают, натянутая между крышами UTP это во первых палево, во вторых как вы правильно заметили молния случается.
Вопрос: Есть какое нибудь решение по бронированию мест?

Лучший ответ:
делаешь столбец "бронь" в базе с заказами \ услугами, где по дефолту 0. Если же там не 0, то это user_id на кого забронировано. Какие тут еще паттерны то нужны.

Худший ответ:
Пару раз юзал clientline.ru модуль зала
Вопрос: Как автоматизировать процессы с помощью PHANTOM JS?

Лучший ответ:
1. Да, может. Это полноценный браузер на базе webkit.
2. Любое headless ПО способное работать с DOM. CasperJs, Slimer, FireFox, Chrome.
3. Зависит от контекста задачи. Но на вскидку можно сразу предупредить, что PhantonJS базируется на старой версии движка которая может отработать JS некорректно. И в этом случае какой-нибудь FireFox или Chome последних версий в headless режиме будут предпочтительнее. Выясниться это в момент "о, блин, а фантом не умеет это js кушать".
4. Как готовый продукт нет, не существует. Как платфома - любой.

Худший ответ:
PhantomJS предназначен для эмуляции действий пользователя на веб странице не используя при этом браузер. Применяется для автоматизированного тестирования веб приложений. В отличии от некоторых других инструментов он позволяет работать с динамикой сайта которая реализована на  JS.  Думаю он может помочь, да. Но это не точно. Зависит от приложения.
Вопрос: Как успеть вывести сообщение на страницу перед тем как выполнится команда sleep в php?

Лучший ответ:
header нельзя отправлять после вывода контента.
для ридеректа используйте javascript или meta тег.

Худший ответ:
Как писал выше T_y_l_e_r header не может быть отправлен после body (body  передается когда доходит до echo ...)
Но чтобы получить то что тебе нужно можно в html<html>
<head>
    <meta http-equiv="refresh" content="10;url=http://ya.ru">
</head>
<body>
    <h1 >Файл на сервере не найден</h1>
</body>
</html>
Вопрос: Как верстать сайты большей ширины, чем твой экран?

Лучший ответ:
Вёрстка должна отталкиваться  от ширины в 1000px. И если вдруг есть макет в 1600px, то должен быть и макет под 1000px. Если нет, то дизайнер идиот.
А к вопросу как верстать - media queries, как и для любых адаптивных сайтов.

Худший ответ:
Верстай через bootstrap ну или подобным фраймворком
Вопрос: Есть более простой сниппет «повторять до успеха»?

Лучший ответ:
Попробуйте такой метод (нет возможности проверить). На вход поддается делегат, который необходимо выполнить.void UntilSuccess(Action action) {
  if (action == null)
    throw new ArgumentNullException();

  while (true) {
      try
      {
         action.Invoke();
         break;
      }
      catch { Thread.Sleep(300); }
  }
}

// Использовать так:
UntilSuccess(() => File.WriteAllText(@"C:\\serv1.txt", "text"));

Худший ответ:
а если в рекурсию?
типа private void writeText(){
  try
      {
         File.WriteAllText(@"C:\\serv1.txt", "text");
      }
      catch (Exception)
      {
         Thread.Sleep(300);
         writeText();
      }
}
И просто в коде вызвать  writeText();
Вопрос: Как округлить число с E-6?

Лучший ответ:
ну так правильно вернул - в сотых у него по нулям.
7.62939453125E-6 = 0.00000762939...

Худший ответ:
number_format вернул правильное значение.
7.62939453125E-6 это тоже самое что 0.00000762939453125, соответственно если отображать два знака после запятой будет 0.00
Вопрос: С каких Angular 4 Open Source проектов можно брать пример для повышения уровня кода?

Лучший ответ:
Сlarity, primeng вообщем загляните в ресурсы

Худший ответ:
https://github.com/akveo/blur-admin мб подойдет