Vikhrmodels/habr_qa_sbs huggingface dataset:
Вопрос: Как правильно спроектировать «космический корабль»?

Лучший ответ:
Используй систему статов. Например у тебя есть классenum StatType {
   speed;
   power;
   mobility;
}

class StatManager {
    // Выставляет начальное значение стата
    void setStateBase(StatType type, float value);
   // Добавляет новый модификатор для стата
    void addStatModf(StatType type, StatModf modf);
    // Удаляет модификатор стата
    void removeStatModf(StatType type, StatModf modf);
    
    // Возвращает значение стата со всеми повешенными на него StatModf 
    Float getStateValue(StatType type);
}

enum StatModfType {
   set;
   add;
   mult;
}

class StatModf {
   var StatModfType type; // как именно модификатор влияет
   var Float value;  // значение с которым он влияет
}
При выполнении getStateValue перебирай все модификаторы для этого стата на базовое значение.
Рекомендую применять модификаторы в порядке их типа (StatModfType) вначале set потом mult, потом add а не в порядке добавления. Тут самый простой вариант предложен, подумай и переработай под свои нужны.

Худший ответ:
Вам нужно ознакомиться с компонентным подходом к архитектуре:
habrahabr.ru/company/wargaming/blog/245321
https://www.youtube.com/watch?v=1zLqgQ_-F84
Вопрос: Непонятный глюк в Chrome

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

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

Лучший ответ:
Гугл говорит что нужно сначала выполнить:php artisan key:generate
Потом в файле .env прописать в APP_KEY полученный ключ и здесь в config/app.php должно стоять:'cipher' => 'AES-256-CBC'

Худший ответ:
попробуй выполнитьphp artisan key:generate
Вопрос: Как реализовать кросспостинг из сообщества Vkontakte в Facebook?

Лучший ответ:
Агрегатор - hootsuite.com
Доступны плагины и приложения для большинства соц. сетей. 
Вроде для сообществ VK плагин платный.
С Facebook работает нативно.

Худший ответ:
Благодарю. Жаль новых площадок нет по этому вопросу.
Вопрос: Какой библиотекой пользуетесь для реализации бокового меню?

Лучший ответ:
Использую css-framework: materializecss.com

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

Лучший ответ:
Самый популярный в России yii в ближайший год им и останется,  на западе laravel, лично я перешел  на него.

Худший ответ:
А как же всеми любый corporate Symfony 2 ?
Вопрос: Какая будет производительность БД при объеме 100 Гб?

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

Худший ответ:
прочитайте
https://www.ibm.com/developerworks/ru/library/os-s...
Мускуль 5.7, конечно, получше, но общая идея все равно такая же на сегодня
Вопрос: Как прикрутить яндекс почту к домену, если они просят прописать свои dns, но у меня там dns digitalocean?

Лучший ответ:
Никуда не девать. Отдельные записи настройте.

Худший ответ:
Никуда не девать. Отдельные записи настройте.
Вопрос: Какую CMS выбрать для публикации по времени?

Лучший ответ:
Это же элементарно в виде плагина добавляется в любую CMS

Худший ответ:
в joomla такое из коробки работает. 
а еще лучше MODx
Вопрос: Как лучше хранить аватарки: base64 или файлы?

Лучший ответ:
Храните в файлах. Места занимает меньше чем base64 и после первой загрузки будут кешироваться браузером. А base64 нужно будет постоянно из базы тянуть

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

Лучший ответ:
… несмотря на то, что они сущности совсем разные, у них есть общие свойства… Так же у них есть индивидуальные свойства...

Паттерн этот называется ООП :) А именно — использование абстрактных классов и наследование. Советую почитать хорошую старую литературу типа Гради Буча.

к каждому свойству принадлежат ряд методов для работы с ними. Например ряд методов для работы с изображением, ряд методов для работы с текстом. и пр.

А вот тут архитектурная ошибка вкрадывается. Классы то Ваши принадлежат предметной области и следовательно, методы классов должны реализовывать бизнес-логику предметной области. Вы же не начинаете хранить в данных класса «статья» файловый дескриптор, таймаут или хендлер какой-то. Конечно, смешивать данные, относящиеся к технологическим особенностям системы и данные предметной области плохо. Но почему-то Вам пришло в голову смешать там логику предметной области и совершенно служебные методы по обработке картинок или текстов. Для этого нужно сделать отдельные классы, и тогда служебные классы будут выполнять методы над классами предметной области и будет Вам концептуальное счастье.

возникла мысль написать архитектуру сущностей, как набор примитивных классов-параметров

Можно конечно изобретать нечто высокоуровневое на основе ООП, но это только если эта архитектура упростит Вашу программу, повысит переиспользование кода, упростит поддержку кода или улучшит другие характеристики.

Худший ответ:
Либо наследование от абстрактных классов (c++), от интерфейсов (java, C#), или duck typing в скриптовых языках (python, groovy, etc). 

А вообще, есть принципы SOLID (http://en.wikipedia.org/wiki/Solid_%28object-oriented_design%29), в котором буква I означает ISP — interface segregation principle (http://en.wikipedia.org/wiki/Interface_segregation_principle). Это оно самое и есть.
Вопрос: Как реализовать height: calc(100% — 40px) в резиновом блоке?

Лучший ответ:
Вы там наворотили чегото). Что вы хотите сделать конкретно?
Если всегда нужно отнимать 40px, почему 
margin: -40px 0 0 0;
не катит?
Пример описывал тут если с анимацией.
toster.ru/answer?answer_id=272884#answers_list

Худший ответ:
Никак, вот Вам сухой остаток, без всех Ваших нагромождений, которые не имеют к вопросу отношения:
jsbin.com/siretudu/1/edit
Как можно рассчитать значение 100% и присвоить блоку value, если оно определяется самим блоком value. Говоря простым языком - получается замкнутый круг.
Для этого, как Вам уже написали, существует padding и margin. Вот один из вариантов:
jsbin.com/xikokuru/1/edit
Вопрос: GTD/PM для маленькой компании

Лучший ответ:
www.redmine.org/ Из бесплатных самая лучшая :)

Худший ответ:
www.mantisbt.org/ Из бесплатных это она из лучших
Вопрос: Существует ли практика передачи выполненного на половину проекта?

Лучший ответ:
У вас частный случай известной проблемы, которая называется «не могу оценить требуемые сроки».
Чтобы вы могли планировать сроки и укладываться в них, нужно несколько условий:
 — задачу целиком нужно разбить на подзадачи, которые вы уже делали и знаете, какая сколько времени займёт,
 — в процессе выполнения итерации требования не должны меняться, в том числе по инициативе заказчика.

Это всё приходит с опытом. Я могу сказать, что ваша ситуация с затягиванием сроков вовсе не является уникальной. Многие разработчики и команды ошибаются с планированием сроков. Это не есть хорошо и правильно, но таковы факты. Не падайте духом. Поймите, что это не ваша вина, и не давайте заказчику «давить на гниль» и подкидывать вам дополнительную работу бесплатно. Он не телефон в магазине покупал, он заказывал разработку, а в разработке всегда есть вилка трудозатрат. Если он этого не понимал — значит он не профессионал. Если при этом он обвиняет в срыве сроков единственно вас и требует: «ты мне обещал Y за X рублей вот и выдай Y кровь из носу» — можете его послать.

Вообще ответ на ваш вопрос «как поступить» зависит от того, как вы договаривались — либо о каком-то объёме работ либо о конечном продукте. Но с учётом того, что у вас на проект уже «не стоит» — не важно как вы договаривались, вариантов немного:
 — Объясняете заказчику, что ошиблись при оценке трудозатрат и продолжать на прежних условиях не можете. Сдаёте как есть, деньги не возвращаете.
 — Объясняете заказчику, что ошиблись при оценке трудозатрат и в максимально сжатые сроки доводите проект до какого-то логического завершения. Все требования о дополнительных бесплатных работах игнорируете. Сдаёте, забираете остаток денег, забываете.

Первый вариант для вас выгоднее, потому что во втором случае есть риск не получить вторую половину оплаты, а также потому что сдача проекта — это не конец, а начало, т.к. каждому проекту требуется поддержка.

Худший ответ:
Или рассказать заказчику о saas магазинах и открыть глаза, на то, что его проект даже полностью готовый не сможет составить им конкуренцию?
Почему? (действительно интересно)
Вопрос: Правильно ли составлена функция php, mysql?

Лучший ответ:
Не совсем понял что вы хотите выяснить, просто запустите код. Так что просто пару советов:
1) global $link; - старайтесь не использовать глобальные состояния. Коль уж пишите процедурный код - пусть он будет по настоящему процедурным:function show_banner($kolvo, $link) {
2) старайтесь не делать вывод в функции которая у вас берет данные из базы - пусть она возвращает только данные (либо ничего в случае ошибки) а за вывод пусть отвечает другая функция.$banners = get_banners($count, $link);
show_banners($banners);

Худший ответ:
Используйте PDO. 
Вот Вам на заметку. Думаю разберётесь сами что с этим делать.//-------------------------- Класс работы с базой ----------------------------//
class DBPDO {
   // Используем статическую переменную для сохранения значений внутри класса
	static private $database = NULL;
	
	// Конструктор выполняет соединение с БД возращает объект БД или false
	private function __construct(){
		try {
   		// Сразу задаём кодировку соединения
			self::$database = new PDO('mysql:host=localhost; dbname=basename', 'user', 'password', array(PDO::MYSQL_ATTR_INIT_COMMAND => 'SET NAMES \'UTF8\''));
   		// Устанавливаем уровень показа ошибок базы
   		self::$database->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
		} catch (PDOException $e){
			$error = $e->getMessage();
     		writelog('sql_error', date("y.m.d H:m:s")."\t".$error);
   		return false;
		}
	}
	
	// Статическая функция синглтон для получения объекта ДБ
	static public function dbconnect() {
		if (self::$database == NULL) { new DBPDO(); }
		return self::$database;
	}
	
	// Функция выполнения запроса 
   static public function sql_query($query) {
   	try {
         $return = self::dbconnect()->query($query)->fetchAll(PDO::FETCH_ASSOC);
         if ($return === false) return false;
         if ((!isset($return[1]))&&(isset($return[0]))) $return = $return[0];
      } 
      catch (PDOException $e) { 
         $error = $e->getMessage();
     		writelog('sql_error', date("y.m.d H:m:s")."\t".$error);
   		return false;
      }

   	return $return;
   }	

   // Запрос без выборки
	static public function exec($query) {
      try { 
         return self::dbconnect()->exec($query);
      } 
      catch (PDOException $e) { 
         $error = $e->getMessage();
     		writelog('sql_error', date("y.m.d H:m:s")."\t".$error);
   		return false;
      }
	}
	
   // Экранирование спецсимволов
	static public function quote($str) {
      return self::dbconnect()->quote($str);
	}

	// Получение id последней изменённой строки
	static public function lastInsertId() {
      return self::dbconnect()->lastInsertId();
	}
}
//----------------------------------------------------------------------------//
Вопрос: Какой разъем питания выбрать?

Лучший ответ:
SMA
0) ток до 2A (http://www.ittcannon.com/uploadedFiles/Product_PDFs/RF50-SMAPrecision.pdf)
1) маленький (диам. 5 мм)
2) с накидной гайкой — скорее порвется кабель, чем выскочит разъем
3) если источник тока — «мама», а приемник — «папа», то коротнуть нельзя
4) 500 стыковок без ухудшения параметров (по спецификации), реально — больше
5) по 3$ в розницу за пару, оптом — дешевле в разы.

Худший ответ:
В аккумылятор и в устройство поставить
 
, соединять этим
Вопрос: Когда видимость метода стоит установить private, а когда — protected?

Лучший ответ:
Если явно не надо делать protected (например метод переопределив который, вы позволите пользователю модифицировать поведение) — делайте private. На «всякий случай» делать protected — это по крайней мере странно, это все равно, что на всякий случай делать все public. Вообще, если вы пишете библиотеку, то так-же как вы определяете, что будет публичным интерфейсом (public) а что имплементацией (private), введите еще одну сущность — интерфейс для наследников. С таким делением (интерфейс для всех/интерфейс для наследников/детали имплементации) все должно стать более или менее понятно.

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

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

Худший ответ:
$xml=simplexml_load_file("example.xml");
//Обратите внимание на вложенность с помощью
//echo '<pre>';  print_r($xml);  echo '</pre>';
echo ('<select>');
foreach($xml as $item){
echo '<option value="'.$item['name'].'">'.$item['value'].'</option>';
}
echo ('</select>');
Вопрос: Как заставить задеплоится maven-модуль?

Лучший ответ:
Возможно, Вы перепутали deploy c install. На моем опыте, установка в локальный репозиторий производится именно посредством install, а deploy, это уже выгрузка на сервер после сборки или в удаленный репозиторий. На что оно и ругается, мол, у Вас для этого никаких "реквизитов" не указано.

Худший ответ:
Возможно, Вы перепутали deploy c install. На моем опыте, установка в локальный репозиторий производится именно посредством install, а deploy, это уже выгрузка на сервер после сборки или в удаленный репозиторий. На что оно и ругается, мол, у Вас для этого никаких "реквизитов" не указано.
Вопрос: Хранить и считать время круга

Лучший ответ:
Хранить в int
Вычислять как 1:44.912=1000*60*1+1000*44+912 и соответственно наоборот.
Разница и среднее и прочее — высчитывается очень просто.

Худший ответ:
dev.mysql.com/doc/refman/5.0/en/fractional-seconds.html а если так?
Вопрос: Какие выбрать курсы или книги по веб-дизайну и юзабилити?

Лучший ответ:
По юзабилити — «Не заставляйте меня думать» Стива Круга. Довольно увлекательно.

Худший ответ:
На тот случай, если вопрос еще актуален! Если вы хотите научиться рисовать профессиональные, гармоничные сайты, которые будут завораживать – то рекомендую бесплатные видео-уроки по созданию дизайна сайта с нуля от Алексея Захаренко. Сам проходил по ним и очень доволен. http://webdesign2.ru/main.html
Вопрос: Есть ли ответственность за портативное ПО на предприятии?

Лучший ответ:
За использование не лицензионного ПО нагнут полюбому.
Разве что можно попытаться съехать на юзера, мол я знать не знал, а он злобный Джек Воробей притащил с собой ломаный софт и юзает его на моей невинной лицензионной винде.
P.S. Если предприятие настолько бедное, что не может позволить себе корпоративную винду и пару платных софтин надо бежать с него без оглядки. IMHO

Худший ответ:
подними виртуальную машину, все диски в ней зашифруй, поставь зверский пароль и ставь на нее че хочешь, в случае чего "забудешь" пароль от виртуалки и все.
Вопрос: Существует ли облачный почтовый клиент?

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

Худший ответ:
протокол доступа IMAP и любая почтовая программа его поддерживающая на Win 7 или Android
Вопрос: Вывод содержимого элемента xml в командной строке?

Лучший ответ:
А у вас там xmlns, поэтому xmlstarlet «не видит» тег внутри. Поэтому только так:
$ xmlstarlet sel -t -v "//*[name()='productKey']" document.xml

Худший ответ:
А почему бы не использовать xsltproc + xslt файлик?
Вопрос: Можно ли написать скрипт, удаляющий программу, а потом устанавливающий ее?

Лучший ответ:
https://www.google.com/search?q=удалить+программу+...
www.outsidethebox.ms/17408

Худший ответ:
"Удаление программы" и "установка программы" при использовании инсталлятора - не более чем запуск определённого процесса (собственно инсталлятора, напр. msiexec) с определёнными параметрами (напр. /i - установить, /x - удалить). Регулярно выполнять какую-либо команду с параметрами можно через Планировщик Windows, powershell для этого не обязателен. Конкретный ответ тут будет зависеть от того, какой конкретно используется инсталлятор.
Вопрос: Какие туториалы можно почитать о создании социального сервиса?

Лучший ответ:
нет такого. каждый сам из своих нужд ruhighload.com вот тут почитай. 
напиши в скайп вопросы

Худший ответ:
Работает просто: sitecoder.blogspot.ru/p/blog-page_23.html
Роли, манипуляторы и хранилище...
Вопрос: Насколько важны навигационные цепочки в продвижении сайта?

Лучший ответ:
Зависит от сложности и глубины структуры сайта.
Чем выше глубина, тем большую важность приобретает навигация.
Для простых блогов/cms цепочки типа  Главная->Статья вообще не нужны.
Если появляется один уровень категорий, то с каждой конечной страницы нужны ссылки в ее категорию и на главную, неплохо (но необязательно) если это будет выглядеть как цепочка.
Если количество уровней категорий больше одного (т.е. главная>категория>категория>страница), то цепочка обязательна.

Худший ответ:
Важны + это удобно (что тоже очень важно).
Делайте с цепочкой и используйте микроразметку при верстке.
Вопрос: Почему популярные хостинги ставят по умолчанию режим PHP CGI/FastCGI?

Лучший ответ:
PHP в режиме fastcgi дает некоторые плюсы:
- suexec -- запуск потока от имени владельца файлов, разграничение доступа;
- возможность контролировать количество процессов обработчиков, их время жизни, время простоя;
- возможность создать свой php.ini для каждого клиента;
- возможность обслуживать несколько версий php одним веб-сервером;
- утечка памяти в php процессе никак не сказывается на веб-сервере;
- возможность собрать apache в режиме MPM worker/event, а значит экономить память на каждое соединение.

Худший ответ:
1. Больше влезет обычных php-mod 
2. Некомпетенция ( прийдется допиливать убогие админки для работы с этим модом)
3. пхп флаги не работают в FastCGI из .htaccess а следвательно нужно еще допиливать разрешения на  кастомизацию php.ini, опять же кривые руки и всем нехочется, или ставить патч.
4. Дорогой хостинг может предоставить любые представления php из разумных разумеется. Все зависит от админа и не более.
5. Некоторые кренделябры всеже на FastCGI чуть чуть работают по другому а служба тех поддержки не особо горит желанием что то делать в направление увеличения звонков с вопросами.
Вопрос: Как получить почтовый ящик в зоне *.edu?

Лучший ответ:
на ебее баражат
ну и плати ру

время жизни    - как у китайских батареек с рынка

Худший ответ:
Видел вот тут https://buy-accs.ru/
Вопрос: Каким способом можно добиться работы Wi-Fi на расстоянии 20-и км?

Лучший ответ:
А что если ночью 20км 1000BASE-LH под землю закопать? Можно перебежками по 5 км =)

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

Лучший ответ:
Интересно, что именно считается "голым гипервизором"?
У меня вот стоит Win8.1 вместе с Hyper-V. Вот насколько это голо?
И да, при запуски ноутбука, запускается виртуалка. Я только кликаю на RDP и вуаля - я в VM.

Худший ответ:
Можно почитать про проброс устройств из виртуальной машины.  Обычно пробрасывают видеокарты и USB-устройства. Есть истории успеха, но это делалось на десктопах с использованием дискретной графики (обычно ATI). Про ноуты ничего такого нет.
Есть определенные требования к оборудованию для того, чтобы это сделать.
Вопрос: PHP — Как «правильно» хранить огромный статичный массив класса?

Лучший ответ:
Храните в статичном файле php-массив и include-ом его добавляйте какой-нибудь переменной. Это будет самый быстрый вариант, т.к. нет никаких преобразований.

Худший ответ:
Файл с массивом данных (data.php):<?php
return [
    // Data here...
];
Инклудим:$mydata = require('data.php');
Вопрос: Можно ли решить с помощью нейронной сети?

Лучший ответ:
это называется Data Mining, думаю это поможет в поиске вариантов в гугле.

Худший ответ:
Используйте Томита-парсер Яндекса. Он для этого хорошо может подойти. Только придется, конечно, написать правила.
Вопрос: Как покрасить эти 4 логотипа в Illustrator что бы они имели одинаковую тональность и гармоничность цветов как в цвете так и в чб?

Лучший ответ:
Вот этот плагин:
store.artlebedev.ru/books/design/theory/iskusstvo-...
Устанавливать в голову. Иначе никак.

Худший ответ:
раз! дватри
Вопрос: Как удалить Skype из таскбара в Windows 7 (SP1)

Лучший ответ:
Специально только что попробовал:
1. Скачал с сайта последний скайп.
2. Настройки -> Дополнительно -> Снять галочку с «Не убирать Skype с панели задач, когда я в сети». Сохранить.
3. Нажимаем на «свернуть» — скайп в таскбаре. Нажимаем на «закрыть» — только в трее.

Худший ответ:
Software вариант пробовали? К примеру PS Tray Factory v3.0
Вопрос: Какой путь выбрать?

Лучший ответ:
Фрилансить на C# - себя не любить. Имхо.

Худший ответ:
больше всего денег в mobile и java
Вопрос: Какую форму регистрации выбрать для моего сайта?

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

Худший ответ:
Более конверсионно и регистрация и авторизация, так что делайте и то и то
Вопрос: Две кнопки контролируют питание ардины + используются как цифровые входы, есть ли опасность?

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

Худший ответ:
Переделал на оптопары. Я прав в том, что эта схема лишается всех вышеупомянутых недостатков?