Vikhrmodels/habr_qa_sbs huggingface dataset:
Вопрос: Как понять, что пользователь забыл переключить язык (ошибся раскладкой)?

Лучший ответ:
Для поиска использую сфинкс, тупо если в другой раскладке, что то найдено, а в текущей нет, то выдаю результаты для другой раскладки.
До миллиона записей сфинкс выдает результаты быстрее чем 1 милисекунда.

Худший ответ:
Самый простой способ — в случае отсутствия результатов поиска, делать повторную выборку прогнав вводимую строку через функцию ассоциаций раскладки типа str_replace(['q', 'w', 'e', ....], ['й', 'ц', у'', ...], $queryString)
Хотя анализ сочетаний правильнее, так что лучше комбинировать.
Вопрос: бук под ubuntu 1 кг?

Лучший ответ:
lenovo thinkpad x1 или x220/x230, от 1,34 кг

Худший ответ:
Samsung 300U1A можно посмотреть (Core i3 2357M 1300 Mhz/11.6"/1366x768/2048Mb/1,24кг)
Вопрос: Настоящие кросс-доменные cookie. Как?

Лучший ответ:
можно использовать файлы p3p.xml и policy.xml для задания «политики приватности». И отправляя соответствующий P3P заголовок вместе с куками. Пример — top.mail.ru/w3c/p3p.xml, top.mail.ru/w3c/policy.xml
Но не факт, что это будет работать во всех браузерах.

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

Лучший ответ:
нужно написать функцию, копирование строки, в новую строку с выделением памяти 
Это POSIX функция strdup().char *strdup (const char *s)
Можете глянуть как она работает.
Что-то такое:char* strdup( const char *s ) {
   char *p = malloc( strlen( s ) + 1 );
   if( p ) strcpy( p, s );
   return p;
}

Худший ответ:
Если вы используете iostreams, работайте с std::string. Если преподаватель мешает C и С++ прямо перед лицом студентов, передайте ему, что он - странный.
Вопрос: Что означает данный код?

Лучший ответ:
Конструкция <?= config::get('title') ?>
равна конструкции <? echo config::get('title') ?>

Худший ответ:
А лучше изучить документацию по echo
Вопрос: Как стать менеджером в ИТ?

Лучший ответ:
да, достаточно быть племянником или девушкой посимпатичнее

Худший ответ:
В первую очередь нужен опыт работы.
Так как на мой взгляд управлять IT отделом, без знаний в области, которой собираетесь управлять, это утопия.
Как пример. Вам руководство компании, поставило задачу, а как вы ее будите решать, если знания есть только теоретические, а практического опыта ноль. Нюансов достаточно есть в любой области.
Вопрос: Как удобно организовать свой рабочий процесс на PHP, используя Sublime3?

Лучший ответ:
Я использую phpshotm. Там все это из коробки решено. Поробуйте - не пожалеете. Там месяц пробный период.

Худший ответ:
PHPStorm. С Sublime особо ничего не получится
Вопрос: Полезно или вредно использовать тернарный оператор в Java Script?

Лучший ответ:
Ну максимум он сокращает код

Худший ответ:
Ну максимум он сокращает код
Вопрос: В какую сторону смотреть при создании новой игры под iOS?

Лучший ответ:
На самом деле правил всего ничего - 24 :) Но если следовать хоть бы половине - успех точно будет.
https://www.youtube.com/watch?v=Yy0k7Bpz1UE

Худший ответ:
Если вы решили делать игру, то в первую очередь упор на арт - так вашу игру увидят,  в вторую очередь это геймплей - так вашу игру запомнят.
Вопрос: Пингуется ли сервер vk.com/vkontakte.ru с серверов hetzner'a?

Лучший ответ:
Проверила, с двух тамошних инстансов не пингуется. К чему бы это?

Худший ответ:
А у меня вот какая штука

$ dig vk.com 213.133.98.98
говорит что записей A вообще нет, но отвечает быстро. т.е. не timeout и не fail, другие dns hetzner'а аналогично

$ dig vk.com @8.8.8.8.8
работает нормально, выдает правильные адреса.
Вопрос: Как работает cashback?

Лучший ответ:
На примере онлайн магазинов. Есть партнёрские агрегаторы, которые платят за приведённого клиента или за совершённые им покупки, какой-то процент. Скажем 10% с продажи. То же самое под акции и купоны. За каждую покупку по твоей ссылке (реферальной) или твоему купону, тебе идут проценты.
Далее. Ты создаёшь сайт аля купонатор/групон или аналог яндекс.маркета. Перенаправляя своих посетителей на сайты рекламодателей, через партнёрский агрегатор. Они там совершают покупки, ты за это получаешь какой-то процент. Из этого процента, ты отдаёшь часть денег назад твоему посетителю. Это и есть кешбэк. В офлайне он точно такой же, за покупки по твоей банковской карте или скидочной карте, ты получаешь процент от продажи. С этих денег ты часть возвращаешь клиенту, который совершил эту покупку.

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

Лучший ответ:
Их много — вечные ссылки, биржи ссылок, оплаченные посты, партнерские программы… Выбирать надо в зависимости от ТИЦ\PR, популярности и тематики блога.

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

Лучший ответ:
Первый вариант:
Illustrator Preferences > General > Constrain Angle > Изменить на ненулевое значение.
Эта настройка автоматически поворачивает абсолютно все созданные фигуры на определенный угол.
Если задача извести человека до психушки, задать 0,1 градуса и он сойдет с ума пытаясь понять, почему ни один прямоугольник не прилепляется к гайдам всей гранью, а только одной точкой, и все фигуры рисуются "чуть-чуть криво". И заметно это будет совсем не сразу.
Если надо всего лишь проверить на знание настроек - задать 1-2 градуса. Заметно будет сразу, а настройка настолько редко используемая (фактически никогда), что знают о ней мало кто.
Второй вариант: 
В готовом дизайне найти место, где на черном фоне расположено что-то белое, белый текст на черном фоне или логотип. Затем открыть следующую панель настроек: 
Illustrator Menu > Window > Attributes
Выделить белый элемент и поставить в этой панель Overprint Fill. Иллюстратор ругнется, но надо нажать ему Proceed, можно дополнительно поставить галку "не предупреждать". Потом убрать выделение со всех элементов, для гарантии шорткатом Ctrl-Shift-A и снять галку оверпринта в панели, что бы она не мозолила глаза иконкой предупреждения, а саму панель закрыть. 
Макет сохранить и закрыть.
Дать человеку открыть этот файл и попросить экспортировать картинку в любой растровый формат, jpeg или png например. А потом допытываться у него, почему белый текст "внезапно" пропал без всяких следов, при чем в иллюстраторе он будет отлично виден, а пропадать будет только при экспорте.

Худший ответ:
Я предлагаю прогнать человека по стандартным задачам:
- Спросите его что такое билатерал?  И для чего он нужен.
- Сделайте неправильную вырезку полупрозрачного изображения на белом фоне (белая градиентная оконтовка) и попросите исправить это дело (сделать без оконтовки).
- Попросите раскрасить цветами какую-нибудь гравюру.
- Спросите, как легко можно определить некачественную ретушь
Вопрос: Как быстро, а главное правильно получить инвайт на dribbble?

Лучший ответ:
Попробуйте draft.im если работа хорошая то пригласят.

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

Лучший ответ:
Можно
Если напрямую, то надо использовать тип "указатель на функцию член" вида Ret (Class::*)(Args...) [const]. Сам указатель получать &Class::Fun, а вызывать операторами .* или ->*
Или использовать std::function (boost::function), std::bind (boost::bind) или std::mem_fun, std::mem_fn для более унифицированного подхода:struct some
{
	some() : value(0) {}

	int inc() { return ++value; }
	int dec() { return --value; }
	int get() const { return value; }

	int value;
};

int main()
{
	some s;

	int (some::*inc_f)() = &some::inc; // inc_f - указатель на функцию
	std::cout << "(s.*inc_f)() = " << (s.*inc_f)() << std::endl; // оператор .* - оператор вызова по указателю на функцию
	int (some::*val_ptr) = &some::value; // val_ptr - указатель на член
	s.*val_ptr = 10;
	std::cout << "s.*val_ptr = " << s.*val_ptr << std::endl;

	int (some::*const_f)() const = &some::get; // const-функция
	std::cout << "s.*const_f() = " << (s.*const_f)() << std::endl;

	using namespace std::placeholders;
	std::function<int (some&)> mem_f;
	
	mem_f = std::bind(&some::inc, _1); // биндим на функцию-член, _1 - placeholder для объекта
	std::cout << "mem_f(s) = " << mem_f(s) << std::endl; // s.inc();
	mem_f = std::mem_fn(&some::dec); // другой способ через mem_fn
	std::cout << "mem_f(s) = " << mem_f(s) << std::endl; // s.dec();

	std::function<int()> mem_f_ = std::bind(&some::inc, &s); // биндим на функцию член и сразу указываем объект, получаем функцию без аргументов
	std::cout << "mem_f_() = " << mem_f_() << std::endl; /// s.inc();

	std::function<int(some const &)> const_fn = std::mem_fn(&some::get); // some const &
	std::cout << "const_fn(s) = " << const_fn(s) << std::endl;

    return 0;
}

Худший ответ:
Можно cpp.sh/9crs#include <iostream>
#include <functional>

class Form {

};

class Form1 : public Form {
public:
	void click() const {
		std::cout << "Form1::click" << std::endl;
	}
};

typedef std::function<void(const Form1*)> ClickEvent;

class Button {
public:
	ClickEvent onClick;
	Form1 *owner;

	Button(Form1 *owner) {
		this->owner = owner;
	}
	void click() {
		if (onClick != NULL) onClick(owner);
	}
};

int main()
{
	Form1 *a = new Form1();
	Button btn(a);

	btn.onClick = std::mem_fn(&Form1::click);

	btn.click();
}
Надо разобраться, как сделать универсально, чтобы ClickEvent работало с любым классом, в не только как тут Form1
Вопрос: Обязательно-ли полностью соблюдать гайды в дизайне мобильных приложений iOS?

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

Худший ответ:
Вы можете сделать все что угодно, но главное придерживаться рекомендуемых размеров шрифта (не меньше 11pt) , области нажатия кнопок  и размеры Navigation Bar и Tab Bar.
Вопрос: Как убедить программистов реализовать свой продукт (создать новый стартап) в свободное время?

Лучший ответ:
Сергей: Привет! Ты же программист? ВордПресс или другие движки знаешь?
Предлогаю стать моим помощником по проекту. В проекте будет команда разработчиков.
Проект интересный, но без бюджета, за работу платить не буду.
В дальнейшем буду привлекать инвесторов с которыми уже имею положительные отношения.
При финансировании если мне понравится твоя заинтересованность в проекте, будем проект продолжать развивать в месте уже на бюджетной основе.
Если проект не заинтересовал тебя, удались пожалуйста из списка контактов.
Если интересно, давай продолжим общение, есть ТЗ, наработка.
Сергей: ?
Григорий: Привет! Ты же человек? Кушать и одеватся нужно?
Предлагаю бесплатно поработать на меня.
В проекте будет толпа таких же как и ты.
Проект интересный, но зп платить не буду.
В дальнейшем буду привлекать инвесторов, и если ты не сдохнешь от голода и холода за это время, возможно у тебя появится копеешная зп.
Ты согласен?
Программисты такие же люди, как и все. И у них есть ежемесячные обязательные платежи, как и у всех. Так же им надо кушать, одеваться, как и всем. Вот Вы бы согласились работать за 50% шанс получения зп? Вот представьте, приходите за зарплатой, а бухгалтер кидает монетку, и говорит: "Извини, решка, в этом месяце ты без зп". Если вы верите, что проект успешный, то возьмите кредит, в конце концов. Но работать за туманные возможности, это уж извиняйте, никто на такое не согласится.

Худший ответ:
Что может заинтересовать программистов:
 - Должность. Например: Вася, ты будешь полгода пахать внеурочно, потом станешь директором компании "Коробочный продукт"
 - Зарплата. Например: Вася, ты будешь полгода пахать внеурочно, потом будешь получать в 3 раза больше, чем сейчас
 - Знания. Например: Вася, ты будешь полгода пахать внеурочно, сможешь освоить %технологию_а%, %технологию_б% и %технологию_в%
Что не заинтересует программистов:
 - Неизвестность. Например: Вася, ты будешь полгода пахать внеурочно, но не факт, что это будет тебе интересно, не факт, что ты за это что-то получишь и не факт, что ты не помрешь с голода.
Вопрос: Как быть с синусами и косинусами?

Лучший ответ:
Как им легко всё объяснить? 
Нанять в проект нормального преподавателя.

Худший ответ:
Самый лучший способ запомнить формулу - это понять ее. Вот если вы объясните доступно почему сумма квадратов синуса и косинуса всегда равна 1 - то запомнить формулу будет проще.
Вообще не понял причем тут треугольник, если вам надо просто косинус выразить через синус и наоборот....
Вопрос: Как определить AdBlock?

Лучший ответ:
Создаём файлик ads.js
Подключаем его к странице.
В самом файле объявляем какую-то переменную типа var IsAdBlock = false;
в каком-нибудь другом js файле на странице проверяем на наличие этой переменной.
P.S Адблок заблокирует файл именно с назаванием ads.js или advert.js и.т.д

Худший ответ:
Добавьте на страницу контейнер с контентом, который будет обрезать AdBlock. После того как страница вся загрузится, проверьте этот контейнер. Его может попросту не быть, или он может быть пустым. То есть AdBlock его изменит, так как посчитает его рекламой.
Как то на одном проекте у ПМ-а не отображалась картинка как раз из-за AdBlock'a. А резал он ее потому что у нее название было advertisment.png.
Вопрос: Какие существуют сайты с портфолио дизайнеров?

Лучший ответ:
brainstorage.me ? ;-)
Ну и behance.net

Худший ответ:
dribble.com
behance.net
brainstorage.me
и многие другие
Вопрос: [РЕШЕНО] Ошибка авторизации на Samba сервере Debian

Лучший ответ:
smbpasswd -a username

После этого система попросит ввести пароль. Вводите новый пароль и все заработает.

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

Лучший ответ:
Мне тоже стала интересна разница между extended шрифтами и обычными. Для примера я взял шрифт PT Serif Cyrillic и PT Serif Cyrillic Extended, который использую в некоторых своих проектах и открыл их в FontCreator, чтобы увидеть разницу в наборе символов.
В обычном оказалось 329 символов, в extended 464. Основная разница между ними - это дополнительные буквы сербского, казахского, украинского и других языков. В остальном они идентичны, за исключением наличия знака гривны в extended версии.
Обычная версия шрифта подойдет для большинства сайтов российского сегмента. Подключать extended версию имеет смысл только если сайт мультиязычен, то есть кроме русского и английского языка используются другие. 
Данная информация справедлива для шрифта PT Serif, в других шрифтах набор символов может отличаться, хотя я и не думаю, что кардинально.
Скриншоты набора символов:PT Serif CyrillicPT Serif Cyrillic Extended

Худший ответ:
если кроме обычного текста ничего не нужно будет писать, то хватит и без extended, а если нужно будет всякие кружочки выводить (например в списках), разные символы, то лучше extended выбрать
Вопрос: Работа с MyISAM таблицей с кол-вом записей от 10'000'000?

Лучший ответ:
(опциональный шаг:
MyISAM — На свалку.
Базу — в InnoDB.
)
Про fulltext Забудьте — он вам столько геморроя доставит, не вылечитесь.

В качестве поискового индекса используйте мегабыстрый опенсорсный зрелый sphinx.

Худший ответ:
> индексы по полям, как я понимаю, особо не помогут

Это с чего это вдруг?
Вопрос: А как называются MySQL-адаптеры для БД?

Лучший ответ:
Можно сделать mysql view и таким образом наделать вьюшек, которые будут повторять структуру БД CMS.

Худший ответ:
Зачем адаптер?
Обычное управление правами не поможет?

CREATE USER 'readonly'@'localhost' IDENTIFIED BY 'superpass';
GRANT SELECT ON db.* TO 'readonly'@'localhost';
Вопрос: Google заблокировал сам себя?

Лучший ответ:
Блокируется какой-то из гаджетов, установленных на вашей странице в гугле. 
Например, у меня это «Этот день в истории»
img828.imageshack.us/img828/1138/unnamedik.jpg

Худший ответ:
«содержит элемнты с сайта sterno.ru»? Хм, у вас, похоже, или троян, или в hosts файле что-то не то, или может на проксе что-то
Вопрос: Как перенести Windows 8.1 на SSD диск (разметка GPT)?

Лучший ответ:
Я тоже мучался с переходом на ssd, как оказалось нужно было юзать acronis true image: переносит все, в одну операцию с загрузкой с uefi. На выходе абсолютно готовая система без доп настройки.

Худший ответ:
сначала урезать партишны до размера SSD (средствами самой винды)
потом флешка, убунту, dd побайтно
должно сработать
Вопрос: Телевизор с тюнером DVB-S2 — тоже самое что ТВ и ресивер?

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

Худший ответ:
Лучше ресивер отдельно. Не факт что будет возможность на встроенном ресивере сделать, например, кард-шаринг.
Да и, отдельный девайс всегда лучше.
Вопрос: Какой ваш любимый PHP Framework?

Лучший ответ:
И да начнется срач
1. Symfony2
2. Silex, Yii1, Slim, FatFree, CakePHP, Zend1 (если мы про проекты а не потыкать)
3. Если волнует качество кода, то лучше не придумать. Все по best-practice, огромное сообщество разработчиков. двигатель мира PHP.
4. Для простых проектов может быть черезчур избыточным и сложным. Необходимо понимание того что делаешь.
5. Нормально, с кешерами, грамотной архитектурой, правильно настроенным сервером... Пожалуй это самый малозначительный параметр для выбора фреймворков. Все упирается в архитектуру вашего приложения и базу.
6. Не веду такой статистики. Большая часть проектов - API сервисы либо внутренние сервисы компаний. Да и считаю это пустым.
7. Нет.
Если вы решили таким образом выбрать фреймворк на основе которого хотите сделать проект... то вы выбрали очень плохую методику.

Худший ответ:
Ради срача скажу, что нужно уже задумываться о переходе на язык Go для разработки сайтов.
Фреймворки: martini.codegangsta.io www.gorillatoolkit.org revel.github.io beego.me
Если всё же PHP, то либо Symfony, либо Yii.
Вопрос: Уведомления об обновлении БД, как реализовать?

Лучший ответ:
Ну как вариант использовать триггеры в БД, которые после срабатывания инициируют запрос из БД в вашу программу по какому-то интерфейсу. Но это, имхо, плохая практика. Я хз как там в mysql, но однажды пришлось поддерживать "энтерпрайз решение", в котором большая часть бизнес-логики и даже часть транспортного уровня приложения было засунуто в БД (Oracle). Ну то есть приклад дергал хранимку в БД, хранимка дергала по http (!) внешнюю систему, а потом полученный ответ передавала так же по http обратно в приложение(!!). Поддерживать и трабл-шутить это все было ппц как сложно.

Худший ответ:
Хм... Навешиваем кучу триггеров на изменение которые будут менять одно значение в табличке  0/1  дальше на крон вешаем паникера который скриптом опрашивает состояние. С Postgres можно журнал опросить что там поменялось.
Вопрос: ОПСОСы. Стоит ли бороться, или лучше заплатить?

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

Худший ответ:
В лучшем случае Вы не заплатите эти 1400, но времени на это уйдёт уйма. 26.01.11 была передача «Среда обитания» по ОРТ, там частично затрагивались подобные вопросы и как действовать в подобных ситуациях.
Вопрос: Как спарсить определенную ячейку HTML-таблицы и несколько последующих?

Лучший ответ:
Зачем парсить рег. выражениями HTML?
stackoverflow.com/a/1732454/964478
Есть же например XPath.

Худший ответ:
По совету 'AlexP11223' и погуглив, накидал такой код.
Чувствую, что он далеко не идеален, но все работает.
Замечания принимаются.)libxml_use_internal_errors(true);
$dom = new DomDocument;
$dom->loadHTMLFile("http://calendar.zoznam.sk/sunset-pl.php?city=3080866");
$xpath = new DomXPath($dom);

$today = $xpath->query("//td[@class='today']");
$nodes1 = $xpath->query("//td[@class='today']/following::td[1]");
$nodes2 = $xpath->query("//td[@class='today']/following::td[2]");
$nodes3 = $xpath->query("//td[@class='today']/following::td[3]");
$nodes4 = $xpath->query("//td[@class='today']/following::td[4]");

header("Content-type: text/plain");

foreach ($today as $i => $node) {
    echo $node->nodeValue, "\n";
}
foreach ($nodes1 as $i => $node1) {
    echo $node1->nodeValue, "\n";
}
foreach ($nodes2 as $i => $node2) {
    echo $node2->nodeValue, "\n";
}
foreach ($nodes3 as $i => $node3) {
    echo $node3->nodeValue, "\n";
}
foreach ($nodes4 as $i => $node4) {
    echo $node4->nodeValue, "\n";
}
 + Если с evaluate, то будет примерно так:$today = $xpath->evaluate('string(//td[@class="today"])');
$first = $xpath->evaluate('string(//td[@class="today"]/following::td[1])');
$second = $xpath->evaluate('string(//td[@class="today"]/following::td[2])');
$third = $xpath->evaluate('string(//td[@class="today"]/following::td[3])');
$fourth = $xpath->evaluate('string(//td[@class="today"]/following::td[4])');
	
echo 	$today."<br>",
		$first."<br>",
		$second."<br>",
		$third."<br>",
		$fourth;
Вопрос: Чем лучше всего посекторно скопировать HDD?

Лучший ответ:
ddresсue

Худший ответ:
Acronis ti, Norton Ghost,  do, clonzilla только зачем посекторно клонит я не понимаю