Vikhrmodels/habr_qa_sbs huggingface dataset:
Вопрос: Документальные ролики про планеты

Лучший ответ:
Попробуйте написать автору ролика на YouTube — он наверняка знает, где он его взял.

Худший ответ:
О! Кстати, и правда — это «ВВС — Всё о космосе», вот пример:
filmix.net/dokumentalenye/25904-bbc-vse-o-kosmose-bbc-the-complete-cosmos-2000.html

Отлично, спасибо!
Вопрос: Почему шрифты на мобильных устройствах больше?

Лучший ответ:
Единицы измерения rem пробовали?
learn.javascript.ru: Единицы измерения
Сегодняшняя статья с хабра: Руководство по HTML/CSS/JavaScript

Худший ответ:
У вас head присутствует мета тег с вьюпортом?<meta name="viewport" content="width=device-width, initial-scale=1">
Если нет, тогда понятно почему не срабатывает.
Браузер телефона по умолчанию старается придать странице первозданный вид, как-будто смотрим страницу на декстопе и ставит width=980px, к примеру. Это называется Область просмотра, размер браузера другими словами. Посему медиа запрос срабатывает для данной ширины.
Есть еще Площадь изображения, это фактический размер экрана устройства. Обозначается как device-width.
Метатег, написанный выше, говорит браузеру, чтобы при прорисовке учитывалась площадь изображения (device-width).
Вопрос: Где и как хранить файлы mysql

Лучший ответ:
Откройте для себя symlink и храните где хотите. Зачем диски создавать?

Худший ответ:
Можно mysql просто сказать, что база в другом каталоге datadir = /home/mysql
Вопрос: Как делать разметку страницы, position или float?

Лучший ответ:
Попытаюсь объяснить своими словами.Поток набор элементов соотносящихся между собой как соседи имеющие общее начало координат, при этом элементы дети наследуют поток. Где каждый блок имеет свое последовательно зарезервированное пространство.
Резервирование пространства под блок тоже имеет свою логику и задается в display.
Смотим пример: JSFiddlefloat не отделяет блок от потока, смещает в край и минимизирует резервированное пространство для блока и применяет размеры. "Дети" остаются в старом потоке (Float child имеет ширину и начало координат от прародителя). Float удобен для набора блоков в стаки - так как край берется с учетом резервированных пространств, и флоат блоки не перекрываются. aside - можно(но не всегда) делать через ;relative блок не отделяется от родительского потока, а только корректирует свою координату и применяет размеры, пространство выделенное для блока остается. "Дети" получают новый внутренний поток. Используй для корректировки позиции блока. Создавай новые потоки для детей, без изменений для самого блока;absolute используется чтобы явно создать в родительском потоке, новый поток равный родительскому - с началом координат родительского. Пространство в родительском потоке не выделяется. "Дети" получают новый внутренний поток. В основном используется для всяких "дополняшек" привязаных к блоку. aside в большинстве случаев делаются им.;fixed используется чтобы создать независимый поток который позиционируется относительно окна. Fixed удобно делать header видимый всегда при прокрутке страницы.;
Все остальное это - Static.Подобьем итогheader, footer - static или fixed (в редких случаях absolute);content - принято оставлять statiс. Пусть контент лежит в основном потоке;aside - absolute или на крайняк float;Всякие изыски modal, action (типа хрестика на закрытие модального) - absolute;
P.S. Но как всегда есть исключения и нужно думать своей головой. Или если мозг не настроен думать пользоваться шаблонами.
P.P.S. Ксати есть flex - штука очень хорошая для тех кто думает своей головой. Ибо енто мутант со тремя головами и двенадцатью глазищами... ;)

Худший ответ:
Для построения сеток есть замечательное свойство flex, на которое скоро все перейдут. А пока оно браузерами поддерживается не полностью, используйте float.
Вопрос: Фриланс без odesk и других бирж?

Лучший ответ:
ИМХО oDesk отличная стартовая площадка. Не стоит пытаться перепрыгнуть несколько ступенек сразу, когда вы найдете хорошего заказчика а он увидит, что с вами стоит иметь дело, то новые проекты от него скорее всего будете получать напрямую.

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

Лучший ответ:
Project Settings - Inspections - Spelling
Кстати говоря в настройках есть отличный поиск.

Худший ответ:
А ты пиши грамотно)
Вопрос: Выполняется if(9>10), Почему?

Лучший ответ:
if (9 > 10) {
	console.log('OMFG!')
}

if ('9' > '10') {
	console.log('it\'s OK')
}
Используйте parseInt()var b = parseInt(document.getElementById('b').value);
https://jsfiddle.net/25cfc9se/2/

Худший ответ:
Читайте про типы данных, и посмотрите - в каком типе у вас возвращает значение document.getElementById('b').value.
Подсказка - не в том, в котором нужно сравнивать числовые значения.
Вопрос: Почему hash_password() каждый раз генерирует разное значение?

Лучший ответ:
hash_password создан для хеширования, для сравнения введенных данных есть другой метод. Учите мат. часть.

Худший ответ:
php.net/manual/ru/function.password-hash.php
php.net/manual/ru/function.password-verify.php
php.net/manual/ru/function.crypt.php 
При проверке будет использована та же соль.
Вопрос: Безопасно ли это?

Лучший ответ:
Зачем велосипедить, когда есть https://godoc.org/golang.org/x/crypto/bcrypt ? Сложность настраивается в параметрах.

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

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

Худший ответ:
Делай работу безинициативно :)  и бери предоплату.
Вопрос: Как принимать письма на php?

Лучший ответ:
Ну, в PHP начиная с какой-то версии, можно создавать сокеты и слушать входящие соединения, потому вполне можно написать собственный почтовый сервер, принимающий письма и позволяющий проверять) Другое дело - а оно надо?)

Худший ответ:
А не проще ли VPS заюзать и поднять свой почтовый сервер? 
Ящики можно в базе хранить и создавать соответственно из php 
Сами письма можно так же хранить в базе, и по крону запускать php скрипт и делать нужную выборку хоть по регэкспу.
Postfix + dbmail справятся с этим.
Вопрос: Как раздать в squid определенному пользователю определенный ip адрес?

Лучший ответ:
Как-то все нелогично выходит. Для того, чтобы провести авторизацию по сети, уже должен быть ip-адрес! А тут сразу бах (авторизавались) и его поменяли! Какой-то интересный паттерн использования получается...
Подозреваю, что задача, которую пытаются таким способом решить и которая нам неизвестна, решается гораздо проще и без таких вот выкрутасов...
Например через настройку на коммутаторах опции 801.1x ( можно с (free)radius шлюхами и блекджеком). Это когда система при подключении к ethernet- или wifi-сети просит пользователя авторизоваться, после этого предоставляет ему нужный доступ в сеть (и возможно настройки).
Почитать подробности можно например тут - tldp.org/HOWTO/html_single/8021X-HOWTO

Худший ответ:
причем тут squid.. это скорее вопрос по устройству сети.. RADIUS вам в помощь
Вопрос: Фриланс в России без подписок?

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

Худший ответ:
По-моему, это хорошо - реально отсеивается куча народу. Ни одного заказа с fl.ru не получил - там на любой проект набегает порядка сотен исполнителей, готовые на всё за 100-1000 руб. А с frilansim уже некоторое время кормлюсь. Да и неужто цены у площадок настолько заоблачные, что невыгодно на них проекты брать?
Вопрос: Как сделать такие живые стрелочки вверх и вниз?

Лучший ответ:
У вас на обеих картинках стрелочки вверх))
По факту можно использовать два класса. Для одного задаете одну картинку - стрелка вверх, для другого вниз.
По клику меняете классы.
jsfiddle.net/5XqyW/1   или   jsfiddle.net/4C5ND

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

Лучший ответ:
На Java, раз лаунчер для джавовской игрушки.

Приложение на c# будет всегда требовать mono/.NET

Для с++ — Qt или wxWidgets, но без либы трехметровой (в случае виджетов, в Qt размер может быть другой) не запустится.

Худший ответ:
Консольное приложение на с++
Вопрос: Почему после установки linux mint cinnamon 16 не получается нормально настроить часы?

Лучший ответ:
Аналогичная проблема. 
Нашел решение,но нужно тестить,сейчас буду сам пробвать,отпишусь тут.
Ok, so for the 24 hour clock, open up dconf-editor, go to org.cinnamon.desktop.interface and change the entry for "clock format" from "12h" to "24h". To change the date format, go to org.cinnamon.calendar and edit the formatting there
К сожалению не помогло,стояло по дефолту 24h.
Попереключал туда-сюда,ребут,не помогло.
помогло вот что- 
Правой кнопкой по часам,настройка и там галочку на Задано пользователем.

Худший ответ:
compizomania.blogspot.com/2013/11/linuxmint-16-pet... Читаем пункт №4
Вопрос: Как правильно организовать процесс веб-разработки?

Лучший ответ:
Чтобы справляться с проблемами при переходе на новую версию БД, в некоторых ORM есть т.н. «миграции».

Худший ответ:
В простом случае: заводите папочку migrations, создаете файл 0000.sql, сливаете в него структуру базы данных. При изменениях структуры создаете файлик 0001.sql, куда записываете alter и create table. Комитете файлик вместе с тем кодом, который умеет работать с измененной базой.

Как только при чекауте у вас появляется новый файлик xxxx.sql, выполняете его. Можете вручную, можете хук для системы контроля версий написать.
Вопрос: Нормально ли делать всю страницу сайта в position absolute?

Лучший ответ:
CSS - это магия грамотного расположения и внешнего вида элементов на странице , а не банальное указание координат для них. Каждую способность этой магии нужно использовать в определенных ситуациях, а не пихать всюду одно и то же.
Да, построение контента с помощью position:absolute кажется проще - "поставил два числа и элемент там, где нужно, ыыыы...", но именно то, что кажется гораздо сложнее в итоге может быть самым элементарным и удобным решением вашей задачи.Чем же он хуже relative?
А тем, что блоки, лежащие после него игнорят его целиком и полностью. И  не один нормальный макет на одном абсолютном позиционировании построить не удастся.Да и вообще, глупо сравнивать relative и absolute - это сооовершенно разные вещи. <-- Тык
------------------------------------------Relative - сдвигает блок из его первоначальной позиции на заданную величину в заданное направление, НО, не знаю, можно ли так сказать, лишь визуально - блоки, идущие после "видят" его на старой позиции, но учитывают его размеры.Absolute - отделяет элемент от остального мира, устанавливает ему заданные координаты, отсчет которых начинается с верхнего левого угла ближайшего родителя с position:relative|absolute|fixed.
------------------------------------------
-Конечно кто то скажет что можно использовать float left, и float right,
А это тут причем?Приходится делать частые@media screen and (max-width), которых намного больше чем пришлось бы делать для div-a с абсолютными ззначениями. 
А без абсолютных еще меньше :\Итог
-----------------------------------------
Я не в коем случае не заявляю, что absolute - это зло.. Использовать его нужно, но только там, где он востребован. Но вы же все равно будете его всюду совать, да? :)

Худший ответ:
это как кубик-рубика собирать переклеиванием наклеек.
Вопрос: В чем разница импорта библиотек (import *)?

Лучший ответ:
Мне очень понравилось разъяснение, которое давалось в курсе на CodeAcademy, если мне память не изменяет.  Там было так.
Вы сидите в комнате и что-то делаете, а коробки (модули) с инструментами (функциями) находятся в другой комнате. Также у вас есть помощник (интерпретатор), который приносит вам коробки и инструменты из другой комнаты. Вы можете попросить его 3-мя способами.
1. import box
Принеси мне коробку box, я сам буду брать из нее нужные инструменты
2. from box import tool
Принеси мне tool из коробки box, я буду им пользоваться, не залезая в коробку
3. from box import *
Принеси мне коробку box и достань из нее все инструменты
Вообще, в больших проектах лучше использовать 1 (или 2) и стараться избегать 3.

Худший ответ:
Если вы уверены, что в проекте подобный импорт (import *) будет использоваться только один раз, то ничего страшного я не вижу. Другое дело, что чаще всего это предположение верно для проектов малого размера. 
Рассмотрим случай множественного импорта с использованием фразы (import *)
from xml.dom.minidom import *
from mymodule import *
Если в модуле mymodule есть функция parse (она же есть и в xml.dom.minidom), то получится конфликт имен.  При большом количестве конфликтующих import-выражений бывает затруднительно понять, из какого модуля в результате эффективно импортирована функция (т.е. чье определение 'победило').
Ну и можно обратиться к PEP-8:
Wildcard imports (from  import *) should be avoided, as they make it unclear which names are present in the namespace, confusing both readers and many automated tools.
Вопрос: Пакеты, имеющие неудовлетворённые зависимости: Невозможно исправить ошибки, у вас отложены (held) битые пакеты. Как исправить?

Лучший ответ:
Это означает что в подключенных репозиториях нет пакетов, которые указаны в зависимостях к пакету libboost-all-dev.
Соответственно надо или подключить репозитории, где данные пакеты есть, либо откуда-то еще их приносить руками  и ставить по очереди.

Худший ответ:
man apt-get выдаст вам исчерпывающий ответ apt-get -f install без доп. параметров.apt-get install boost-defaults
а такapt-get -f install libboost-all-devникогда не делай!
Вопрос: Как заряжать планшет Samsung не родным и очень длинным кабелем?

Лучший ответ:
Вы кое-что не знаете о законе Ома (который в школе проходят). Потери напряжения на этих десяти метрах становятся катострофическими. Вы можете.
1. Поднять напряжение, например, до 24 вольт, а около планшета понизить его до 5 при помощи step-down (это важно!) регулятора.
2. Поставить около планшета обычную розетку.

Худший ответ:
У данного планшета вроде как и должна быть зарядка на 2А. Лично могу сказать покупал зарядку в 2.1А - заряжала телефон оч медлено планшет (Wexler 7id), как 0.6А зарядка, попробовал оригинальную зарядку от Huawei D2 на 2А , планшет заряжается быстро. Покупал зарядку в магазине на 2А - сгорела и заряжала медлено. Так что если на заряднике указана 1-2А эт не значит что там действительно 1-2А много подделок нынче. Собственно может быть и проблема в другом, в том что кабель который составляет большую часть (с которым вы пояли с двух концов) имеет очень маленкую пропускную способность тока . Вот кабель на 5 метров (максимальный ток 5А) https://www.compax.ru/2-12-1-3.html . Вот кабель на 10 метров а в других наблюдается тенденция не более 350-500 mA www.compax.ru/2-12-1-22.html , мб и ваш кабель тот что по середине имеет максимум 350мА
Вопрос: Посоветуйте пожалуйста нормального забугорного регистратора доменов

Лучший ответ:
Torrents.ru переехал на internetbs.net и стал rutracker.org.

Худший ответ:
Я уже лет 7 использую Mydomain.com — в данный момент они продают .me за 9.99$, это немного дороже чем на приведенных выше сайтах, но проблем никогда не имел — оплачиваю через VBTшную MasterCard Standard.
Вопрос: Как реализовать разделение на домены на одном IP?

Лучший ответ:
гуглить по Apache Virtual Host

Худший ответ:
Разберитесь в nginx.
Там конфиги в разы проще, статику он вроде как отдает лучше, php-fpm работает нормально, что еще для жизни нужно?)
nkt.me/configure-vps-on-ubuntu-12-04/ - писал заметку, как сконфигурировать ubuntu на vps-ке, там есть раздел про первичную настройку nginx.
Плюс на nginx.org по почти каждому модулю есть русская документация.
Вопрос: Как разрешить локальному юзеру подключаться по RDP к Win 2003 Server?

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

Худший ответ:
Андрей, спасибо, завтра попробую сделать.
Артем, я понимал что сервер уже не в домене и подключался именно локальными учетками :)
Вопрос: GPS tracker + сервис?

Лучший ответ:
Ваше пожелание иметь сутки или двое без подзарядки — существенно ограничивает выбор. 

Если говорить о непрерывной записи, то таких скорее всего и нет. Обычно, подобные устройства живут в таком режиме от 4-х до 8-ми часов.
Пример: GL200 — прожил 4 часа, GT13 — порядка 8-ми часов. Режим отправки на тестах мы всегда выставляли минимально возможный. Трек получается весьма подробный.

Если в режиме периодического пробуждения, то тут все заисит от интервала. Есть модели, у которых заявленное производителем время работы — до 2-х лет (!) от одного комплекта батарей. Например GPS Маркер или Авфтофон Маяк. Но сами должны понимать — в этом случае нормального трека не будет.

И кстати, из всех упомянутых только GT13 с натяжкой вписывается в ваш бюджет. Да есть, конечно модели вроде TK-102 стоимостью ощутимо ниже $100, но их качество оставляет желать лучшего, мягко говоря.

Можно еще рассмотреть не трекеры, а логгеры — фактически тот же трекер, но без телефонного модуля. Они только записывают трек, который потом скидывается на компьютер при подключении шнурком. Трек, соответственно, можно залить на любой сервис хранения треков. Но, к сожалению, не могу сказать по продолжительности работы — не пользовался данным типом устройств. Но логично предположить, что должен жить дольше. Да и стоит дешевле.

Отдельный пласт — софтовые трекеры. Если уже есть самртфон — можно установить на него, а если нет — то, за сопоставимые с вашими требованиями деньги, можно купить простенькое устройство на Andriod. Будет вам полноценный трекер. 
Например, RealTimeTracker для Andriod продержался 14 часов при 10-секундном интервале отправки координат на сервер. Через GPRS, конечно же. А в режиме отправки каждые 5 минут — я просто не замечаю расхода батареи трекером.
Если для офлайн-записи, то подойдет Live GPS Tracker. Может записывать трек полностью без интернет сколь угодно долгое время. При появлении связи — скинуть на сервер. По времени живет столько же, сколько RealTimeTracker. Есть дополнительные плюшки в виде путевых точек и фотографий.

И да — конечно же, все трекеры обычно имеют очередь из неотправленных координат при пропадании связи. Размер очереди обычно такой, чтобы хватало примерно на сутки без отправки данных.

Худший ответ:
Я вот такую штуку жду leikr.com
Вопрос: Как организовать autoload js?

Лучший ответ:
requirejs? Если я вас правильно понял.

Худший ответ:
А зачем собственно autoload всех файлов, если каждый модуль в отдельном файле? Смысл вообще разбивать на модули, если грузится все равно всё?)
Берете любую модульную систему — require.js/browserify/YModules по вкусу, пишите модули в данной парадигме и у каждого модуля прописываете ровно те зависимости, которые ему нужны. 
Т.н. «паттерн модуль» — это, мягко скажем, полумера и кроме data-hiding (заметьте, это даже не инкапсуляция) ничего, собственно, не дает.
Вопрос: Десятимерный массив из строки (JS)

Лучший ответ:
Just proof of concept:

<?php

$str = "ЭНИ-601[2к[10Вт;20Вт];4к[10Вт;20Вт;30Вт];8к[70Вт;80Вт]];";

$str = preg_replace("#([а-яА-Я\d\-]+)#u","\"\$1\"",$str);
$str = str_replace(array("[","]"),array(":{","}"),$str);
$str = preg_replace("#\{([^{};]+?(;[^}]+?)*?)\}#u","[\$1]",$str);
$str = str_replace(";",",",$str);
$str = '{'.substr($str,0,-1).'}';

print_r(json_decode($str,true));
echo PHP_EOL;



Array
(
    [ЭНИ-601] => Array
        (
            [2к] => Array
                (
                    [0] => 10Вт
                    [1] => 20Вт
                )

            [4к] => Array
                (
                    [0] => 10Вт
                    [1] => 20Вт
                    [2] => 30Вт
                )

            [8к] => Array
                (
                    [0] => 70Вт
                    [1] => 80Вт
                )

        )
)


Худший ответ:
Первое что на ум приходит — рекурсия по уровням вложенности. Вход — "[", выход — "]", итерация цикла после ";"
Вопрос: Как вы освоили шаблоны проектирования?

Лучший ответ:
Вот вам 12 маленьких задач на 12 паттернов:github.com/zfcampus/zendcon-design-patterns
1. Открываете папку с паттерном.
2. Читаете README.md с описание задачи.
3. Открываете exercise.php и пытаетесь решить задачу, применив соответствующий паттерн.
4. При необходимости вспоминаете теорию: github.com/domnikl/DesignPatternsPHP
5. Сверяетесь с решением в solution.php.

Худший ответ:
На моём веку "тютелька в тютельку" не вписался не один из шаблонов.
Просто понять что они из себя представляют, но не стремиться им следовать досконально, иначе такой говнокод будет, что жуть. Хотя, может я их и не освоил за свои пять лет........
Вопрос: Как занести в БД названия всех файлов из папки?

Лучший ответ:
жеванный крот!
долго объяснять, лучше станцую:$directory = 'images/';

$files = glob($directory . '*');
$sql = '';
foreach ($files as $file) {
	if(is_dir($file)) {
		continue;
	}
	$sql .= '("' . $file . '", 3),';
}

$sql = 'INSERT INTO `people`(`name`, `deptId`) VALUES ' . substr($sql, 0, -1);
echo $sql;надеюсь смысл понятен.

Худший ответ:
Проверьте, что именно вы сканируете. У вас действительно такой путь? 
$directory = 'images/';
Можете использовать document_root или realpath и __FILE__.
Вопрос: Интересный случай с сервером терминалов?

Лучший ответ:
Ваш случай.
Решение от Microsoft.

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

Лучший ответ:
Ммм. Вопрос: а нафига вам низкоуровневая работа-то? Более чем высокоуровневого CRUD уровня файла достаточно.
Берёте любой *nix. Всё есть файл, следовательно задача решена. Открываете /dev/sd? на чтение-запись обычными файловыми операциями. fseek'ом перемещаетесь, пишете-читаете кусками по 2кб. Остальное взаимодействие с накопителем оставляете ядру.
Чего-нибудь только придумать с сисадмином, чтобы разрешить операции без запуска всего приложения от рута.
Вопрос номер следующий: у вас и ваших коллег действительно достаточно опыта проектирования и эксплуатации СУБД и файловый систем для реализации всего пласта журналирования, обеспечения восстановления после аварий и консистентности данных?

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

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

Худший ответ:
Это нарушение принципа разделения интерфейса.
Насколько оно существенно в вашем конкретном случае можете решить только вы, но в целом то, что вам приходится ломать SOLID, говорит об ошибках дизайна.