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

Лучший ответ:
powershell[math]::sqrt(25)
если вам жизненно принципиально запустить именно в cmd тоpowershell.exe "[math]::sqrt(25)"
Все математические методы, доступные в PоSh можно получить так [math].GetMethods() | Select -Property Name -Unique

Худший ответ:
Напрямую в консоли - вряд ли. Можно вызвать в консоли стороннее приложение, которое вернет нужный вам результат.
Вопрос: MySQL — как мне достать из БД из столбца определенное количество символов, но без тегов?

Лучший ответ:
Неправильный ответ: Доставайте больше и обрезайте
Правильный ответ: При сохранении  создавайте в бд дополнительное свойство с уже почищенным текстом нужной длинны.

Худший ответ:
Проще всего запросить из базы с запасом, почистить и обрезать уже в скрипте.
Вопрос: Почему при деструктуризации объекта в левом выражении используется const?

Лучший ответ:
const можно заменить на var или let - используется то, что лучше подходит для данной ситуации. А так, да, без ключевого слова переменную объявить нельзя.

Худший ответ:
let obj = { foo: 1, bar: 2 };
let { foo: one, bar: two } = obj;
console.log(one, two);var obj = { foo: 1, bar: 2 };
var { foo: one, bar: two } = obj;
console.log(one, two);
Всё прекрасно работает, как и должно
Вопрос: Можно ли через CSS поменять цвет содержимого картинки типа svg?

Лучший ответ:
Если просто залить контур:.logo {fill: #ff0000;}

 <path class="logo">

Худший ответ:
через тэг img
так не поменять цвет
открой какую-нибудь svg картинку в текстовом редакторе. и вставь этот код на страницу. а в css тегу path меняй уже свойство fill
Вопрос: Как реализовать кроссдоменный ajax методом post?

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

Худший ответ:
А лучше используй курлы.
например вот так:function post($url, $data) {
    $ch = curl_init($url);
    curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    $response = curl_exec($ch);
    curl_close($ch);
    return $response;
}
$data = [
"json_string" = '{"key":"value"}';
];

post("my-second.domen/api.php", $data);
А на другой стороне уже обрабатывай как обычный $_POST["json_string"].
Вопрос: От веб-программиста к data scientist'у. Оптимальный вектор?

Лучший ответ:
Конечно 2. Нужно делать только то, что непосредственно приближает вас к конкретной цели. Это и будет прямая между двумя точками, т.е ваш искомый вектор.

Худший ответ:
0. Спрашивать стоит у тех кто прошел путь
1. Никто не мешает (вроде) ходить на лекции в вузах без поступления
2. Просто переучивать математику, которую забыл ИМО не стоит
3. Практика с самого начала
В тегах к вопросу есть ответы, какие книги нужно будет учить ,когда действительно потребуется подтянуть математику
Вопрос: Куда вы вставляете временный текст вместо Google Переводчика?

Лучший ответ:
В пустую вкладку Notepad++, начиная с какой-то версии он научился автосохраняться и при перезапуске восстанавливать несохранённый текст

Худший ответ:
1 программы для работы с буфером обмена
2 записные книжки или дневники
3 записки
1 я пользуюсь программой CLCL
2 PuntoSwitcher (но эта функция в нём мне не нужна)
3 Записки %windir%\system32\StikyNot.exe
Вопрос: Хочу писать на java приложения для Android, с чего начать?

Лучший ответ:
Русский быстрый старт по основам вы найдете в курсе Start Android
startandroid.ru/ru/uroki.html
https://www.youtube.com/playlist?list=PLyfVjOYzuju...
Следом, довольно интересный материал есть у ребят из Devcolibri
https://www.youtube.com/playlist?list=PLIU76b8Cjem...
А если с английским не проблема, пройдите курс старого доброго Адама Портера :)
https://www.coursera.org/learn/android-programming (там 2 части)

Худший ответ:
Начните с этого javarush.ru. Отличный ресурс, который позволит быстро начать изучение Java с огромным колличеством практики. Не сочтите за рекламу, но этот ресурс в своё время очень мне помог,  когда два года назад я задался точно таким же вопросом
Вопрос: PHP Как перекодировать имена файлов с кириллицей при извлечении из zip архива?

Лучший ответ:
Частично удалось получить 1й результат вот таким извращением:$name = iconv('UTF-8', 'cp1252//IGNORE', $zip->getNameIndex($i));
$name = iconv('cp1252', 'cp850//IGNORE', $name);
$name = iconv('cp866','UTF-8//IGNORE',$name);
но получается вот такая вот байда: Докменаци к огам Асаки Плеан/Ак деекации.pdf
Хотя должно быть: Документация к торгам Арсаки Плеханы/Акт дефектации.pdf
P.S. Методом научного тыка подобрал кодировки.$name = iconv('UTF-8', 'cp437//IGNORE', $zip->getNameIndex($i));
        $name = iconv('cp437', 'cp865//IGNORE', $name);
        $name = iconv('cp866','UTF-8//IGNORE',$name);
Может кому пригодиться.

Худший ответ:
Не понятно, зачем UTF-8 вначале в CP437 конвертировать, а затем из CP437 в CP865.

Вот здесь есть решение: https://ru.stackoverflow.com/questions/606882

$name = $zip->getNameIndex($i, \ZipArchive::FL_ENC_RAW);
$name = iconv('cp866','UTF-8//IGNORE',$name);
Вопрос: Насколько быстро новый домен становится доступным?

Лучший ответ:
Ну скажу за Godaddy - максимум час.

Худший ответ:
На бегете, я вчера регил домен с площадкой - 2 часа заняло появление заглушки на сайте по купленному доменному имени.
Вопрос: Не запускается phpstorm.exe, как диагностировать проблему?

Лучший ответ:
1) Правый клик по "Компьютер", далее "Управление":
2) Также можно попробовать запустить с командной строки: перейдите в каталог phpstorm - "C:\Program Files\JetBrains\PhpStorm 2018.2\bin\", путь может отличатся. Далее нажмите в папке shift + правый клик мыши  и выберите "открыть окно команд" и введите "phpstorm.exe". Возможно ошибка выведется в консоль(или как оно называется в windows, забыл) ). 
3) Также попробуйте отключить на время антивирус. 
4) Можно попробовать установить последнею версию java.

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

Лучший ответ:
https://alternativeto.net/
Выбираете софт, которому хотите найти альтернативу, выбираете платформу, лицензию. Получаете список отсортированный по тому, сколько людей считают эту программу наиболее хорошей заменой.

Худший ответ:
Мне кажется надо исходить из непосредственно возникающих задач, а искать место для поиска софта который вам в данный момент не нужен странно
и потом в убунте есть "Центр приложений", вполне себе источник информации о софте
Вопрос: Правильный ли, подход к проектированию приложения в symfony 3?

Лучший ответ:
services:
    app.product_repository:
        class: AppBundle\Repository\ProductRepository
        factory: ['@doctrine.orm.default_entity_manager', getRepository]
        arguments:
            - AppBundle\Entity\Product
// $this->container->get('app.product_repository')->getClassName();
Уберите методы save и delete. Не нужно тащить старые привычки на новую систему.
Symfony и Doctrine используют DataMapper, а не ActiveRecord
Хэндлер - это entity_manager 
В контексте AppBundle вам не нужны интерфейсы и прочая абстракция - это реально излишне, за исключением моментов, кода вы работаете или с доменными моделями, которые лежат в папке vendor или наоборот - вы сами vendor и AppBundle должен зависеть от ваших интерфейсов.
Предполагаю, что 90% ваших вопросов связанных с архитектурой вы найдёте в ответах   Сергей Протько 
При работе с Symfony 80% времени должно уходить исключительно на конфигурацию приложения. Почитайте "Лучшие практики" и если у вас возникают вопросы, "а как это сюда воткнуть" - поверьте, google вас не подведёт, всё на много проще, чем кажется.
"Будет ли правильно на каждое действие (создать/редактировать/удалить) делать свой хендлер" - нет конечно же. Зачем вам плодить на каждое действие по классу, только для того, чтобы вызвать в нём буквально пару строк.
Относительно статей... Посвежее бы, правда. Сходите на github и посмотрите на самые популярные бандлы.

Худший ответ:
Не правильный. Читайте Эрика Эванса. Читайте про unit of work. Читайте про "save your repositories from save".
Вопрос: Как сделать такой блок плагином ACF?

Лучший ответ:
Такая возможность есть только в ACF PRO: Repeater Field

Худший ответ:
В качестве бюджетного решения предложу некий какашко-код - например, если этот блок нужен на странице типа лендинга, то обычно тут не нужно безумное количество таких блоков, все упирается в цифру от 3 до 9, проверено столетними наблюдениями - поэтому вот какашко-код:
1. Определяемся с максимально возможным количеством, край 9 блоков - ок, понадобиться всего 36 полей. Т.е. создаем 4 поля и далее копируем, не забывая делать разные названия полей (те, которые на английском)).
2. Далее сортируем их по порядку.
3. По вкусу можно разделить на табы, это все есть в бесплатной версии ACF, т.е. будет 9 табов.
4. В шаблоне для предотвращения вывода пустых блоков используем широко известное условие if
5. Заполняем и радуемся.
Не забываем про максимальный лимит - 54 поля на группу. Обходится созданием еще одной-двух-трех=... групп)))
По сути для лендинга такие блоки меняются редко, отверстай их в шаблоне и забудь)))
Другое дело. если это дело надо менять часто - тогда имеет смысл задуматься о создании кастомных типов записей (в гугл!), там будет все в удобных окошечках
Мини-подсказка-лайф-хак:
Можно обойтись двумя полями на каждый такой блок0)) Как? Вот так:
1 поле - картинка
2+3+4 поле - это ОДНО текстовое поле, где разрешено сохранение html- тегов - тогда красный цвет и размер шрифта делаем банальными стилями css - p:nth-child(1) и т.д.
Вопрос: Как работать с сырыми сокетами из Js?

Лучший ответ:
Используйте
https://pypi.org/project/websockets/

Худший ответ:
socket это не websocket, и никак с ним не связан.
socket это настолько сырой сокет сервер что на нём можно написать что угодно, но из коробки с ним нечего делать, если вы не знаете что это такое.
Вопрос: Мини калькулятор расчета стоимости от количества?

Лучший ответ:
У вас много ошибок в коде:переменные a, b, c строковые почему-то, таким образом вы сравниваете строки с числомкосяки с условными переходамипропущенные фигурные скобкилишний else
Помимо этого и того, о чем сказали другие отписавшиеся, ваш код еще и написан в лоб, никакой элегантности и оптимизации.
Причесал по-быстрому тут https://jsfiddle.net/hyxt3ba2/1/. Хотя там еще работать и работать.

Худший ответ:
a, b, c у вас - это символы, в ифах вы сравниваете символы. Сделайте эти переменные числами, и парсите числа.
Вопрос: Питон не проверяет несколько if?

Лучший ответ:
У вас 'a' равно 'x'

Худший ответ:
Попробуйте так:def test(): #эта функция выполняется по нажатию
    a = int(ent.get())
    x = int(ent1.get())
    if a == 2:
        print("GG")
    if x == 3:
        print("TT")
Так как вы переменным 'a' и 'x' даете число одного поля , а у вас есть 2 поля под название ent и ent1
Вопрос: Как правильно внеднять зависимости в контроллер symfony3?

Лучший ответ:
Достаточно посмотреть реализацию класса Controller и все станет очевидно. Ссылка на экземпляр контейнера попадает в контроллер через метод setContainer, которым пользуется DI. Поэтому вы вполне оправданно получаете ошибку.
Отвечая на ваш вопрос: не внедряйте зависимости в контроллер. Дергайте их в action по мере необходимости, а лучше - выкидывайте всю бизнес логику в менеджеры, репозитории, провайдеры, билдеры, etc и используйте action только для рендеринга ответа.

Худший ответ:
Я пользуюсь JMSDiExtraBundle. Восхитительная штуковина.
Вопрос: Как максимально сохранить емкость батареи ноутбука?

Лучший ответ:
Батарея - расходник
Просто купите новую
Если батарея стала проседать за 12 мес - обратитесь в сервис-центр

Худший ответ:
Реже пользоваться, стараться всегда держать подключённым шнур питания, и никогда не разряжать до полного нуля. Циклов перезарядки у обычных ноутубков по тех. паспорту немного, 100-200 наверное не больше, в руководстве пользования часто пишут сколько
Вопрос: Как в Smarty tpl вставить php код?

Лучший ответ:
лучше использовать {if strpos($smarty.server.REQUEST_URI,"часть нужного адреса /home/ например ") !== false}
контент
{/if}

Худший ответ:
как массив.
Читаем доку. Нагуглил за 15 сек. www.smarty.net/docsv2/ru/language.variables.smarty.tpl
Вопрос: Каким образом реализовать всплывающее окно при наведении на картинку в данном случае?

Лучший ответ:
это можно сделать вообще без js
https://jsfiddle.net/sesuvLpa/1/

Худший ответ:
codepen.io/Geyan/pen/EgjkYj?editors=110  вот пример
Вопрос: Что за РучнаяНастройка_УСН?

Лучший ответ:
1) Синтаксис помощник предназначен для получения справки по свойствам используемой версии платформы "1С:Предприятие". Так было со времен 7.7 (а может и раньше). Это не китайская "Книга перемен", что бы отвечать на произвольные вопросы.
2) Очевидно, что РучнаяНастройка_УСН - это какая-то фишка по работе с налоговым учетом, которая была в вашей версии Бухгалтерии 2, но которой больше нет в Бухгалтерии 3. Что бы понять что это за реквизит и для чего он нужен, нужно провести "археологические раскопки". Для этого откройте старую бухгалтерскую конфигурацию и выполните глобальный поиск по данной строке (в свойствах поиска ставьте все галочки).

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

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

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

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

Худший ответ:
Мне в свое время помогло одна интересная книга. Кевин Янк PHP и MySQL от новичка к профессионалу.
Вопрос: Насколько хорошо я сдал тест?

Лучший ответ:
Паршиво

Худший ответ:
Вы 1639 из 23,5 тысяч, хорошо это или плохо - решать только вам.
Нам не судить, тем более не зная вашей ставки. Для 50$/час - точно плохо, для 10-15$ сойдет!
Вопрос: Объясните плиз, что тут eval(base64_decode())?

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

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

Лучший ответ:
linux ate my ram!/
1686мб доступно. См. available в выводе free.
И память kvm виртуалки с хоста мониторить невозможно. Хост ожидаемо видит, что гость использует всю память.

Худший ответ:
Разберу вывод free -m
у вас свободно 97 мегабайт
используется под буфера и кеши файловой системы 1768 мегабайт (из них 1589 мегабайт может быть выделенно новым или текущим процессам если они запросят память у ОС)
Итого доступно для пользования 1686 мегабайт
Вопрос: Как по-быстрому освежить память?

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

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

Лучший ответ:
Косяков много. Начиная с того, что код не выполнится, т.к. функция start() не определена там, где её вызывают.
Время выполнения можно определить разными способами, но все они похожи по принципу: засекается текущее время перед выполнением, выполняется функция, засекается текущее время после выполнения. Разница между засеченными моментами можно считать примерно равным времени выполнения функции.
Несколько раз – несколько раз засекать-выполнять-засекать-вычетать.Способы засечь время: создать новый объект Date, как вы и делаете. Можно писать короче: var now = new Date().getTime();использовать объект Performance и его метод performance.now(), как посоветовал Антон Спирин использовать методы объекта console:   console.time() и console.timeEnd()console.time('myFunc1'); // начало отсчёта
myFunction1( arg1, arg2); // измеряемая функция или кусок кода, for(...i < 100000...)
console.timeEnd('myFunc1'); // выведет в консоль время выполнения:
// myFunc1: 118ms

Худший ответ:
Как однократно вычислить время выполнения функции:var t0 = performance.now();
doSomething();
var t1 = performance.now();
console.log("Call to doSomething took " + (t1 - t0) + " milliseconds.");
Как это сделать многократно:var t0, t1;
var results = [];

for (var i = 0; i < nTimes; i++) {
  t0 = performance.now();
  doSomething();
  t1 = performance.now();
  results.push(t1 - t0);
}

// если надо вывести результат
results.forEach(function(result, i) {
  console.log('Call to doSomething #' + (i + 1) + ' took ' + result + ' milliseconds.');
});
где doSomething - функция,nTimes - количество итераций
Вопрос: Как убрать мусор который summernote генерирует?

Лучший ответ:
А TinyMCE чем не угодил?

Худший ответ:
summernote очень хороший вусивуг, никакого мусора он не делает (у меня по крайней мере не было проблем). Зато у него отлично работает плагин для загрузка файлов и симпатичный режим кода codemirror с возможностью выбрать темку. TiniMCE конечно тоже очень крут, но уж больно жирный имхо. 
Инициализация:$('.summernote').summernote({
    lang:"ru-RU",
    height: 300
});
Читать код:$(".summernote").code();
Вопрос: Почему MySQL не сразу фиксирует результат UPDATE?

Лучший ответ:
Может есть какая-то функция закрытия запроса и процесс будет висеть пока MySQL не закончит?А какая разница, запаралеллится другой процесс PHP, пока тот будет висеть занимая пул, откроет новое соединение и сделает то же самое. Вы же не думаете, что PHP обрабатывает всех клиентов в 1 поток/скрипт? Пишите лог запросов, которые выполняются и будем разбираться, от чего именно такой порядок запросов, а а не какой-то другой.
А вообще, в MySQL есть транзакции и блокировки, которые как раз защищают от таких случаев, когда кто-то что-то куда-то не успел, или не записал или... Попробуйте использовать их. Главное, не забудьте, что все операции записи/обновления должны проходить в одной транзакции, тогда подобных проблем не возникнет с вероятностью близкой к абсолюту.

Худший ответ:
Скорее всего 2 скрипта одновременно запрашивают предыдущий номер, что вполне может быть, соответственно один делает +1 и другой +1 и новый номер выходит одинаковый. Как вариант надо поставить на столбец с позицией индекс типа UNIQUE если это возможно и в этом случае 2 записи с одинаковой позицией не смогут существовать.
Сложно сказать что у вас наверняка, но есть ощущение что копать надо в сторону JS либо проблем в области обмена данными PHP-JS но уж никак не MySQL
На крайняк замерьте время update что б не думалось...
Считывание номера предыдущего файла и обновление у нового (или его добавление) можно обернуть в транзакцию тогда второй запущенный экземпляр скрипта не сможет вмешаться.
Вопрос: Можно ли в Microsoft Word сделать блок с черной рамочкой, и дабы потом можно было в нём писать?

Лучший ответ:
Вы серьезно не знаете?
Чуть ли не с первой версии ворда можно
1. Фигуры - текст в рамке
2. Таблица - с текстом внутри

Худший ответ:
Таблица 1х1.
Вопрос: JsonResponse symfony как использовать кириллицу?

Лучший ответ:
По-моему там только одну константу можно передать в setEncodingOptions$response = new JsonResponse(['message' => 'Привет!']);
$response->setEncodingOptions(JSON_UNESCAPED_UNICODE);

return $response;

Худший ответ:
Я при этом сценарии, когда есть слеши, руссике буквы и теги
return new JsonResponse($data);

если не конвертить в UTF-8 получал
Malformed UTF-8 characters, possibly incorrectly encoded

Так что хоть как пришлось вот так вызывать
return new JsonResponse(mb_convert_encoding($data, 'UTF-8', 'UTF-8'));
Вопрос: Как работать с media queries в React?

Лучший ответ:
С Реактом ведь точно так же работают css и media-queries

Худший ответ:
Вот. когда то, натыкался но не пользовался.  https://github.com/ReactTraining/react-media
Вопрос: Как добавить Контрагенту контактные данные через api создания заказа в 1С?

Лучший ответ:
Короче если вдруг кому понадобится...
В документации написано что надо передавать массив "Контакт". Короче ни фига не так. Должен быть массив с массивами под названием "Контакты". С букой Ы... Документация классная у 1С. Спасибо парням из 1С. Лайк.
Правильный кусок Контрагента в создании заказа:"Контрагенты" => [
    "Контрагент" => [
        "Ид" => null,
        "Наименование" => "Тестеров Т.Т.",
        "Роль" => "Покупатель",
        "Адрес" => [
            "Представление" => "Тест"
        ],
        "Контакты" => [
            [
                "Тип" => "Телефон мобильный",
                "Значение" => "(095) 737-92-57"
            ]
        ]
    ]
]

Худший ответ:
Самый очевидный путь - задать вопрос службе поддержки, которым вы именно за ответы на такие вопросы и платите. Вероятность того, что вы оперативно найдете в интернете человека, который знает нюансы SoapClient в УНФ, который согласится вас бесплатно консультировать, стремится к нулю.
Вопрос: Как распланировать мониторинг инфраструктуры Zabbix или Nagios?

Лучший ответ:
Имхо сейчас заббикс на голову выше нагиос.
по поводу чеклиста внедрения:
1. Читать доки 
2. Установить.
3. Настроить то что "горит" или часто требует внимания
4. Разобраться с оповещениями  (рулит оповещение в телеграмм https://github.com/ableev/Zabbix-in-Telegram )
5. Разобраться с lld  (https://habrahabr.ru/company/zabbix/blog/193460/ )
6. Надыбать шаблонов (идеально с lld) под нужные системы, оборудование  (share.zabbix.com и github.com)
7. Настроить прием snmp trap (если есть)
8. Понять что делать со свалившимся счастьем и куда ехать дальше (highload.guide/blog/support-highloaded-projects.html )
9. Интегрировать с grafana (https://github.com/alexanderzobnin/grafana-zabbix ) 
10. Повесить огромный телик на видном месте и залипать на красоту...(ну или выводить на него триггеры и карту сети + серверов :)  )
11. Изучить API и либы к нему на знакомом языке
12. Написать свою систему мониторинга с преферансом и поэтессами (www.slideshare.net/profyclub_ru/i-git-in-sky )

Худший ответ:
ставь смело забикс, дефолтных шаблонов для начала с головой хватит, после того как накопятся данные, смотри что нужно, что не нужно. из базового что я добавил для себя
мониторинг необходимых служб и их рестарт в случае падения(mysql, 1c)
уведомления на почту
мониторинг сетевого трафика с серверов
и это далеко не предел возмоэностей