Vikhrmodels/habr_qa_sbs huggingface dataset:
Вопрос: Нужно ли из ноутбука снимать батарею?

Лучший ответ:
Для батареи лучше, но это банально неудобно.
Идеальные условия для хранения литиевых батарей - заряд в районе 40-60% и температура немного выше ноля градусов.
При сильном нагреве литиевые аккумуляторы быстро деградируют. А ноутбук при работе сильно нагревается.
Так же они бояться сильного заряда - но в этом плане все нормально, контроллер заряда за этим следит.

Худший ответ:
Конечно не стоит.  Если вашему ноуту лет 20 от роду, тогда лучше снимать.
Вопрос: Иду на Global Gam Jam Vancouver, стоит писать отчет на хабр?

Лучший ответ:
Если идете просто поесть :D, то не нужно, а если будет что-то интересное, то можно.

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

Лучший ответ:
Можно попробовать background-size:cover;

Худший ответ:
Или background-size: contain;
Вопрос: DealExtreme просит фотографии паспорта и кредитки!!!?

Лучший ответ:
Значит Ваша последняя финансовая деятельность и поведение на сайте сильно отличалась от предыдущей и попала под алгоритм фроуд робота. Вот он и попросил Вас подтвердить личность — отсылайте и не парьтесь. 
А в будущем лучше платите не кредиткой, а через Paypal. 

Запрос скана паспорта и документа об оплате жилья — стандартная мировая практика и происходит практически во всех иностранных интернет магазинах в случае оплаты пластиковой карточкой — цель, подтвердить личность и шипинг адрес. Ничего страшного в этом нет.

В карточке замазываете цифры в середине и дополнительную цифру. Паспорт можете послать загран или обычный. Квитанцию за квартиру просто скан. 

Вообще никогда не понимал излишней паранои по поводу сканов документов, особенно когда дело касается гигантских проверенных магазинов. Ну что китайцам делать со сканом Вашего паспорта? Максимум фетешить им дома — так Вы об этом не узнаете.
А в России если надо будет — все паспортные данные есть в базах с савелы или митька. Да и в интернете можно скачать, если знать где. А уж сделать по данным скан — пол часа в фотошопе.

Карточку конечно лучше не светить всеми цифрами — середину лучше замазать. Кстати помните — магазин и так все Ваши цифры уже знает — Вы сами ему для оплаты их дали. Им надо только сверить, что Вы лично их взяли не за 2 доллара на вебманю у кардеров, а со своей физической карточки.

Худший ответ:
Если быть внимательнее и почитать, они просят 5 или 4 первых и 4 последних цифры карты, без никаких кодов. Это совсем не страшно, после того как вы ввели им все данные кредитной карты до этого.
Вопрос: Почему сайт пингуется, но не открывается?

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

Худший ответ:
Вам сейчас надо в идеале нанять сисадмина на фрилансе который один раз настроит найдёт по логам причину падения, устранит её и объяснит что и почему случилось что бы в будущем смогли сами поднять
Вопрос: Какова эффективность сортировки и фильтрафии по JOIN полям в MySQL / MariaDB?

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

Худший ответ:
Предельный случай - второй запрос и индекс по pubslished & user_id & time - будет быстрее из-за отсутствия необходимости как фильтрации, так и сортировки данных.
Если что-то сложнее и, например, range ограничения - то первый запрос будет в конечном итоге быстрее. Ведь вам всё равно тянуть эти записи придётся, но уже отдельным запросом, потом джойнить на приложении.
И поскольку вопрос о типах джойнов выдаёт ваш невысокий уровень в SQL - не заморачивайтесь, вам эта спичечная разница ни к чему.
Вопрос: Подскажите эффективный алгоритм

Лучший ответ:
При таких порядках величин, я бы посоветовал генетические алгоритмы.

Уточните, кстати, как примерно соотносится среднее расстояние между двумя ближайшими точками (из множества 10^6) с величиной R. Без этого трудно понять, насколько плотно «заселено» Ваше пространство.

Худший ответ:
У меня ощущение, что это очень похоже на задачу о минимальном/наименьшем покрытии. Там для множества нужно найти минимальную систему из n подмножеств (по сути множество индексов) покрывающую всё множество. В этом случае общее множество это как раз все ваши точки, круг это подмножество, а искомые индексы как раз точки, являющиеся центрами кругов. Методов решения такой задачи довольно много насколько могу судить.
Вопрос: Какие не технические книги оказали большое воздействие на вас?

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

Худший ответ:
eax.me/books-issue-1 и далее по ссылкам
Вопрос: Использование $$ в PHP?

Лучший ответ:
Да причем тут битрикс, это классический способ использования именованных переменных$array = ['title'=>'TITLE','slug'=>'URL','contet'=>'CONTENT.....'];

foreach ($array as $key => $value) {
	$$key = $value;
}

echo $title; // TITLE
echo $slug; // URL
echo $contet; // CONTENT.....

Худший ответ:
Классический пример таких штукclass Foo {
  public $deepest = 10;
  
  public function __toString()
  {
    return 'deep';
  }
}
$deeper = 'deepest';
$deep = 'deeper';
$b = new Foo();
echo $b->$$$b;
Вопрос: Как сделать несколько миниатюр к посту?

Лучший ответ:
Нашел этот плагин. 
Называется Attach Post Images.
http://cyriltata.blogspot.ru/2014/03/wordpress-plugin-attach-post-images.html
Кстати, выводить доп фотки можно так:
<?php
$images = twp_get_post_images(get_the_ID());
foreach ($images as $im) {
$thumb_url = wp_get_attachment_image_src($im->id, 'thumbnail-size', true);
?>
<a href="<?php echo $thumb_url[0]; ?>" class="fancybox" rel="group">
<img src="<?php echo $thumb_url[0]; ?>">
</a>
<?php
}
?>

Худший ответ:
Меня тоже мучает этот вопрос, подскажите нам
Вопрос: Посоветуйте движок магазина для следующих требований

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

Худший ответ:
Платный — X-Cart.
Есть все, кроме этого:

> При необходимости, автоматическая публикация указанных товаров на eBay и Amazon

В принципе, можно делать экспорт продуктов в CSV и загонять куда нужно. Либо, подмодифить фид Google Base.
Вопрос: Книги для общего развития как программист/стартапер?

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

Худший ответ:
Логика, программирование, принятие решений? Тогда дискретная математика, что-то по Си, а потом искуственный интеллект и экспертные системы.
Вопрос: Wi-Fi роутер в пределах 2к рублей

Лучший ответ:
TP-LINK TL-WR1043ND
market.yandex.ru/model.xml?modelid=6120422&hid=723087
Стоит у меня и у пары друзей (провайдеры разные, подключения PPPoE и L2TP). У меня работает на стандартной прошивке без сбоев вот уже год. Коннект не теряет, на WAN порте держит честные 100 Мбит (PPPoE). Полноценный WiFi-N, и как бонус 4 LAN по 1 Гигабиту. DD-WRT поддерживается.

Худший ответ:
Вот вам целый каталог:
www.eldorado.ru/cat/1831494/
Вопрос: Хорошая литература по С#?

Лучший ответ:
Э. Троелсон - Язык программирования C# и платформа .NET
Отличная книга. Позволит разобраться с языком на высоком уровне, а также при необходимости почитаете о передовых .net технологиях.
Ни в коем случае не советую открывать Шилдта. Книга может показаться приятной и понятной, но по факту может принести больше вреда чем пользы.

Худший ответ:
Результат опроса укр. программистов
Вопрос: Правильно ли сразу начинать изучение C++?

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

Худший ответ:
Если вы решили все равно изучать C++, то изучение C эквивалентно тому, чтобы хорошенько изучить педаль сцепления и только потом изучать вождение автомобиля.
С++ - мультипарадигменный язык. На нем можно писать 1) на C 2) на C с классами (без наследования и полиморфизма) 3) объектно-ориентированно (полиморфизм, наследование) 4) обобщенно (шаблоны).
Да и не все книги, которые издаются по C++ достойны прочтения. Вот эта - достойна www.ozon.ru/context/detail/id/6089823 
Читайте книги, где сразу учат С++ подходу
Книги, где сначала  С, потом С++ нужны для хорошо знающих С, им будет скучно читать основы с небольшим вкраплением С++ подхода.
Вопрос: Вирус на сайте, как удалить его из файлов?

Лучший ответ:
Метод, конечно, боевой. Но можно попробовать :)
Упаковать все php файлы в zip архив средствами хостинга. Скачать zip архив. Распаковать. 
Найти утилиту, которая ищет текст из папок с текстовыми файлами. Либо попробовать реализовать через NOTEPAD ++ Поиск во всех открытых файлах. Точно не знаю, может NOTEPAD ++ имеет консольный или GUI интерфейс для поиска текста в файлах из папки. Пробуйте. Найдете решение при помощи NOTEPAD ++ напишите его здесь.
UPD: я был прав. Умеет NOTEPAD ++ искать в файлах 
www.youtube.com/watch?v=X6qc3wIZK_0

Худший ответ:
Задайте лучше себе вопрос "А нет ли там где-нибудь на сайте чего-то еще, чего я не нашел?" А потом "Если есть - что делать?".
Вопрос: Хабрапоэзия: Стихи и песни посвященные IT-тематике

Лучший ответ:
Поэтов не знаю, но вот сайт hacksongs.ru/ может пригодится

Худший ответ:
Вот еще forum.ixbt.com/topic.cgi?id=26:40369 стихи о программировании
Вопрос: Как по-вашему выглядит идеальная система для отображения отчётов?

Лучший ответ:
2-4 красивых аналитических графика, 2 интересных цифры, а ниже таблица с сырыми данными :)
Что-то похожее на status.github.com/graphs/past_day

Худший ответ:
Немного по реализации:

Наблюдал как-то как нужны были сложные отчёты в приложении. А ещё нужно было чтобы юзеры в приложении сами себе делали отчёты. При этом база была сложная, не всё можно было сделать SQL. (т.к. использовался Rails/ActiveRecord).

В общем то напрашивалась мысль что функциональность приложения просто переусложнена и делать его просто не нужно.
Но его почему-то делали (фактически делали универсальную систему отчётов на все случаи жизни).

Пришли к выводу что конструктор Excel pivot table — это хороший пример общего решения отчётов.
Так же было подмечено что в сводная таблица, в общем случае это — три функции.
Первая возвращает строки, вторая столбцы. Третья берёт аргументом строку и столбец и возвращает значение.
По пути был реализован новый функциональный язык программирования чтобы реализовывать эти функции.

А чтобы генерировать код на этом языке, был сделал wizard (state machine) спроизвольным количеством шагов. Вот его код был уже не универсальным а относился к конкретно нашей структуре БД. При этом движек его был универсальным.

Всё это делали долго… В общем то более менее работало.
Но потом неожидано выяснилось что юзеры только говорят что они хотят делать любые произвольные отчёты, а на самом деле они ничего не хотят. Хотят чтобы просто работало. Наверное хотят несколько встроенных отчётов, и сами не знают каких.
Вопрос: Нужен ли HTML для изучения JavaScript и PHP?

Лучший ответ:
Имеются поверхностные знания HTML ( как сверстать страничку фреймами).
Забудь все что знаешь.

Худший ответ:
Я сам сейчас в 10 классе, сам учу PHP/JS. И да, я изучаю еще HTML/CSS, как минимум для практики.
Вопрос: Есть приложение Sip server на android?

Лучший ответ:
Сип сервер и драйвер канала - очень разные вещи. Куча людей хочет, вместо того, чтобы переплачивать за шлюз, подцепить андройд фон за $100. Но, насколько я знаю, драйвер канала SIP->GSM для андройда ещё не существует. Без этого, даже если скомпилить Asterisk и воткнуть через root доступ в андройд телефон - он не станет шлюзом.

Худший ответ:
Sip server это Asterisk 
habrahabr.ru/post/239419
Вопрос: Высоконагруженный сокет-сервер?

Лучший ответ:
1. Забудьте про треды и тем более процессы, 5-10к тредов не выдержит никакая ось.
2. Соответственно только неблокирующий ввод-вывод. Один поток занимается только i/o и сбрасывает полученные данные другим потокам… Вы бы сказали всё же какая у вас задача, а то это пальцем в небо.
3. Нормально реализовать неблокирующий и/о с первого раза сложно, со второго тоже… Там внутрях каждой оси много «трюков», которые нет-нет да заблокируют ваш поток. Очень советую использовать libevent или что-то вроде того. 
4. Если уж собираете статистику и всё такое, не изобретайте велосипед и возьмите хотя бы SQLite. Иначе опять же соберете кучу граблей и косяков с конкурентностью, взаимными блокировками потоков, крахом базы при падении сервера, рейсами и прочими прелестями многопоточки. SQLite можно встроить прямо в вашу прогу, для внешнего наблюдателя её как бы и не будет.

Худший ответ:
А вы точно сделаете все лучше команды, которая сделала erlang?
Советую на него посмотреть он как раз разрабатывался под ваши запросы + там много плюшек, которые вам пригодятся в ходе обновления и эксплуатации системы.
Вопрос: Подкиньте идею как реализовать шифр цезаря на JS?

Лучший ответ:
 Создаём строку, содержащую алфавит пишем функцию, создающую алфавит сдвинутый на n символовпишем функцию, которая будет искать индекс каждого символа исходной строки в исходном алфавите и для зашифрованной строки брать индексы из сдвинутого алфавита
codepen.io/ptrvch/pen/VvvPdo

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

Лучший ответ:
В total commander есть опция поиска Find files NOT containing the text

Худший ответ:
findstr.exe /s /m /v /c:"defined( '_JEXEC' )" *.php(COMPUTER\user) C:\Users\user\
>findstr /?
Поиск строк в файлах.
FINDSTR [/B] [/E] [/L] [/R] [/S] [/I] [/X] [/V] [/N] [/M] [/O] [/P] [/F:файл]
        [/C:строка] [/G:файл] [/D:список_папок] [/A:цвета] [/OFF[LINE]]
        строки [[диск:][путь]имя_файла[ ...]]
  /B              Искать образец только в началах строк.
  /E              Искать образец только в конце строк.
  /L              Поиск строк дословно.
  /R              Поиск строк как регулярных выражений.
  /S              Поиск файлов в текущей папке и всех ее подпапках.
  /I              Определяет, что поиск будет вестись без учета регистра.
  /X              Печатает строки, которые совпадают точно.
  /V              Печатает строки, не содержащие совпадений с искомыми.
  /N              Печатает номер строки, в которой найдено совпадение.
  /M              Печатает только имя файла, в котором найдено совпадение.
  /O              Печатает найденные строки через пустую строку.
  /P              Пропускает строки, содержащие непечатаемые символы.
  /OFF[LINE]      Не пропускает файлы с установленным атрибутом "Автономный".
  /A:цвета        Две шестнадцатеричные цифры - атрибуты цвета. См. "COLOR /?"
  /F:файл         Читает список файлов из заданного файла (/ для консоли).
  /C:строка       Использует заданную строку как искомую фразу поиска.
  /G:файл         Получение строк из заданного файла (/ для консоли).
  /D:список_папок Поиск в списке папок (разделяются точкой с запятой).
  строка          Искомый текст.
  [диск:][путь]имя_файла
                  Задает имя файла или файлов.
Использовать пробелы для разделения нескольких искомых строк, если аргумент не
имеет префикса /C. Например, 'FINDSTR "Привет мир" a.b' ищет "Привет" или
"мир" в файле a.b, а команда 'FINDSTR /C:"Привет мир" a.b' ищет строку
"Привет мир" в  файле a.b.
Краткая сводка по синтаксису регулярных выражений:
  .               Любой символ.
  *               Повтор: ноль или более вхождений предыдущего символа или
                  класса
  ^               Позиция в строке: начало строки
  $               Позиция в строке: конец строки
  [класс]         Класс символов: любой единичный символ из множества
  [^класс]        Обратный класс символов: любой единичный символ из дополнения
  [x-y]           Диапазон: любые символы из указанного диапазона
  \x              Служебный символ: символьное обозначение служебного символа x
  \           Позиция в слове: в конце слова
За полной информацией о регулярных выражениях FINDSTR обратитесь к доступной
интерактивной документации.
Вопрос: Golang. Вызвать функцию из другого файла

Лучший ответ:
Если файлы лежат в одной директории и оба в package main, то никаких проблемы быть не должно, даже если именуете с маленькой буквы.
Подозрвеаю что проблема в способе запуска программы. Для go run такое не прокатит, он умеет цеплять только одиночные файлы. Нужно скомпилить директорию и должно быть все в порядке.

Худший ответ:
Сделайте имя функции с большой буквы (MyPrint()) и она станет видима в др. файлах пакета main
Вопрос: Среда разработки для html-верстальщика?

Лучший ответ:
1. SublimeText — вроде, умеет все, что описано
2. Не встречал

Худший ответ:
Altova XML Spy, вот где валидность, не даст расслабиться)
Вопрос: С чего начать для программирования на андроид?

Лучший ответ:
Андроид — с чего начать?
Хочу устроиться Android разработчиком. С чего начать, куда двигаться?
Клиент для сайта на Android. С чего начать изучение?
Разработка под андроид — с чего начать?
Программирование под Android — с чего начать путь изучения?
С чего начать изучение программирования под Android?
Java for Android — с чего начать?
Разработка под Android, с чего начать, не имея базовых знаний?
С чего начать программировать под Android?
С чего начать создание приложения для Android?
Разработка игр под Android — с чего начать?
Разработка под android для веб-программиста — с чего начать?
Как учить Java и Android?
А как бы вы изучали программирование под Android?
Как создать мобильное приложение Android для интернет сайта?
На сколько глубокие знания в Java необходимы для начала осваивания Android API и последующей разработки?
Хочу сделать приложение на Android, какие языки нужно учить?
Что нужно знать до изучения Java android?
Какие базовые знания нужны для изучения разработки под Android?
Достаточно ли Android-разработчику стандартной документации?
С чего начинать изучать Java?
С чего начать писать на android (eclipse) ?

Худший ответ:
Примерно отсюда
Вопрос: JavaScript и дробная часть. Поможете?

Лучший ответ:
var a = 98783.999999999;
a = Math.floor(a);
Просто отбросить дробную часть:function Calc5() {
  var discount=+document.getElementById('srok5').value.split('__')[0]
  var sfive=+document.getElementById('srok5').value.split('__')[1] 
  var mfive=+document.getElementById('mesto5').value
  document.getElementById('summ5').value=Math.floor((1-discount/100)*sfive*mfive*8)+' руб.' 
  document.getElementById('dis5').value=discount+'%'	
  document.getElementById('stend').value=mfive+' шт.'
}
Округлить сумму до 10 руб.
98784.99999999999 => 98780
98785.99999999999 => 98790function Calc5() {
  var discount=+document.getElementById('srok5').value.split('__')[0]
  var sfive=+document.getElementById('srok5').value.split('__')[1] 
  var mfive=+document.getElementById('mesto5').value
  document.getElementById('summ5').value=Math.round(((1-discount/100)*sfive*mfive*8)/10)*10+' руб.' 
  document.getElementById('dis5').value=discount+'%'	
  document.getElementById('stend').value=mfive+' шт.'
}

Худший ответ:
Есть еще одна конструкция в JS, которая может пригодиться при работе с числами: toFixed()
Вопрос: Как организовать структуру грфической библиотеки на C для микроконтроллера?

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

Худший ответ:
1. функции рисования кнопок, меню, радиобатонов, выпадающих списков и прочих сущностей где?
2. устройства ввода, указатели, курсоры где?
3. обработка событий от устройств ввода/эмуляции есть?
Вопрос: Как исправить проблему при компилировании DevelNext?

Лучший ответ:
Отвечаю как автор проекта, для этого надо собрать jphp из исходников (скачать исходники тут https://github.com/jphp-compiler/jphp), через git переключится на ветку stage-0.7.2 и выполнить команду gradlew install.
А уже после этого собирать develnext.

Худший ответ:
Судя по всему это далеко не полный текст (то есть, простите, картинка) ошибки. Судя по этому хвосту чего-то не хватает.
Вопрос: Чем плох Bugzilla по сравнению с другими таск-трекерами?

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

Худший ответ:
Раньше работал я почти со всеми вышеперечисленными системами. Увидел Gemeni — что-то мне она нравиться все больше и больше!
Вопрос: Почему программа зацикливается (легкая)?

Лучший ответ:
for (int i = 1; i <= (n - 1); i++)
S += f(a + h*i);
вы забыли обнулить S.
UPD. Вставляйте код как код, а не как текст - не разводите бардак!!!!!!

Худший ответ:
while (abs(IntegPrev - integ) > 0,000000001);
Запятая вместо точки справа от знака "больше". Нужно написатьwhile (abs(IntegPrev - integ) > 0.000000001);
Вопрос: Алгоритм пагинации?

Лучший ответ:
И что именно Вам кажется некрасивым? Вариант рабочий? Работает без ошибок? Вам наверно больше нет работы кроме как «делать красиво» из стандартного алгоритма пагинации. Если Вам уж очень сильно хочется сделать «красиво» можете заменить один из ифов (который просчитывает страницы) на php.net/manual/en/function.range.php, и фор на implode + array_map. Кода будет меньше, но поверьте, то что у Вас есть сейчас — стандартный код, так пишут почти все, и так проще будет Вам и другим менять его в будуйщем.

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

Лучший ответ:
Если вам это необходимо для отладки, то лучше запустить django-shell командой python manage.py shell из каталога проекта и выполнять любые запросы в ней. Никакой лишний вывод вас беспокоить не будет и "die()" не понадобится.
Чтобы получить список всех атрибутов класса можно использовать встроенную функцию dir(). Чтобы получить значения атрибутов объекта, используйте встроенную функцию vars().from django.contrib.auth.models import User
user = User.objects.first()
vars(user){'_password': None,
 '_state': <django.db.models.base.ModelState at 0x7871fd0>,
 'date_joined': datetime.datetime(2013, 12, 12, 6, 6, 58, tzinfo=<UTC>),
 'email': 'user@domain.com',
 'first_name': 'Сергей',
 'id': 1,
 'is_active': True,
 'is_staff': True,
 'is_superuser': True,
 'last_login': datetime.datetime(2016, 3, 31, 8, 1, 59, 780493, tzinfo=<UTC>),
 'last_name': 'Горностаев',
 'password': '<secret>',
 'username': 'gornostaev'}

Худший ответ:
попробуйте 
print $result
sys.exit(0)
Вопрос: Авто продвижение seopult или seowizard, разница есть?

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

Худший ответ:
Я визардом пользовался 2 месяца, а это маленький срок, чтобы судить о результатах. По интерфейсу были трудности, справился.
Вопрос: Организация Wifi HotSpot для гостей?

Лучший ответ:
У microtik для этого дела куча хороших девайсов.

Худший ответ:
Кому интересно, вот ещё нашёл пару решений:
dmitrykhn.homedns.org
easyhotspot.inov.asia