Vikhrmodels/habr_qa_sbs huggingface dataset:
Вопрос: Сколько ролей и фич можно установить на winServ по максимуму?

Лучший ответ:
Можно установить все и сразу. Здравый смысл подсказывает, что в управлении оптимально - один хост, одна роль. Реальность говорит - ищи компромиссы. Практика - держи ДК отдельно от всего.

Худший ответ:
Одна роль, точка (см. ps). Возможно + связанные с ней роли и фичи. Больше не стоит. Виртуализация и/или контейнеры. Кластеры/репликация, живая миграция, резервирование. Это то, что надо использовать. Ато мультихомед dc, dns, dhcp, wins + терминальник с 1с и клиент-банком (которые за собой какой-нибудь интербейс притянет) + iis + какой-нибудь керио с парой сетевух, заодно и почтовик керио с джаббером, фтп .. и ещё чего-нибудь странного и экзотического, что тянет за собой черт знает что. В итоге систему не перезагрузить, какая-то хрень с мастер браузером твориться, а если еще кто-то джамбо фреймы на одной из сетевух включит - то удачи искать источники разных проблем, видели, больше не надо. А если сервер ляжет? Удачи всё сразу восстанавливать.
ps... С другой стороны если вы из-за этого ничего не потеряете - можете экономить таким адом. Тут играет насколько для вас ценна доступность и в некоторой мере целостность. Ничего страшного, если этот сервер пару дней в месяц полежит? Разумеется не факт, что по расписанию.
Вопрос: Отвратительный лог ошибок в nuxt?

Лучший ответ:
Ошибка не содержит никакой полезной информации.
В целом эта проблема имеется во всем js. Это отвратительный язык. Но пока нет ничего лучше. Как напишите - дайте ссылку я первый спрыгну.

Худший ответ:
Вам нужно настроить source-maps, почитайте как это сделать в вашей среде. 
Для webpack можно тут, например, почитать https://survivejs.com/webpack/building/source-maps/
Source-map как раз и позволяет получать адекватные stack-trace'ы и вообще крайне полезная вещь для отладки
Вопрос: "Малый" апгрейд компьютера, что обновить?

Лучший ответ:
Все зависит от задач. В качестве офисного  он еще вполне пойдет.
Для того чтобы он работал адекватно нужно - 
1)Провести осмотр блока питания и системной платы на предмет вздувшихся конденсаторов и стабильной работы
2)Выкинуть планки памяти с обоих слотов в мусорное ведро, вместо них поставить планки по 4Гб
3)Купить SSD диск размером не менее 120Гб и поставить систему на него, штатный HDD проверить (посмотреть SMART) и если он исправен, то оставить вторым диском.
4)Переустановить систему x64.
Если планируется запускать какие-то задачи тяжелее офисных -  тогда менять все полностью.

Худший ответ:
Причину глюков и синего экрана определи и исправь. Ну озу чуток добавь. 
Остальное норм все.
Вопрос: Можно ли скрыть исходный код apk файла в cordova?

Лучший ответ:
Обфусцируйте

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

Лучший ответ:
Я использовал разные варианты. PPTP/IPSec использует TCP для транспорта, L2TP - UDP. Значит L2TP будет более производительным в плане скорости (особенно на симках), но менее надежным относительно потерь информации. OpenVPN и SSTP есть далеко не во всех устройствах.
Для вашего случая я бы использовал L2TP, но если данные внутри будут передаваться без подтверждения доставки и скорость действительно не важна, можно перейти на TCP.
И ещё момент. Раз у вас идёт передача перс-данных, я бы рекомендовал убедиться, что в вашем случае не требуется сертифицированные криптоустройства ака vipnet/континент

Худший ответ:
Ipip и ipsec
Вопрос: Правильно ли реализовал структуру БД?

Лучший ответ:
id в book_author не нужен. Сделайте нормальный композитный ключ из book_id и author_id, всем будет хорошо (в том числе СУБД).

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

Лучший ответ:
Я понимаю, что зная PHP хочется решить эту задачи с его помощью. Но вот смысла в этом ровно ноль, обычная лень. Строковые данные можно спокойно обрабатывать вообще через sed, это будет на порядки быстрее. А PHP сделать всего лишь интерфейсом.

Худший ответ:
очень большая тема.
В общем 
1. поставь bitrix vm - там 95% уже сделано
увеличь время  с 300 до 1500 в nginx и в принципе этого хватит.
Вопрос: Вывод СPT, которые относятся к определенной категории в таксономии?

Лучший ответ:
Через wp_query c параметрами таксономий

Худший ответ:
$mypost = array(
    'post_type' => 'my_post-type',
    'tax_query' => array(
        'relation' => 'OR',
      array(
        'taxonomy' => 'my_taxonomy',
        'field' => 'slug',
        'terms' => 'Ярлык таксаномии'
      )
    ),
  );
Вопрос: Как обойтись без гугл сервисов на смартфоне?

Лучший ответ:
microG, или кастомная прошивка типа cyanogenmod, или подмена приложений, или ещё ряд действий

Худший ответ:
Ну сами apk можно брать отсюда www.apkmirror.com
Вопрос: Как лучше грузить скрипты на странице?

Лучший ответ:
Может и не прав, но для валидации https://developers.google.com/speed/pagespeed/insights/
Перед </body> делаю так:<!--Динамическая подгрузка стилей и скриптов для валидатора-->
   <script>
    var script = document.createElement('script');
    var link = document.createElement('link');
    /*Подключаем стили*/
    document.getElementsByTagName('head')[0].appendChild(link);
    link.setAttribute('rel','stylesheet');
    link.setAttribute('type','text/css');
    link.setAttribute('href','css/style.css');
    /*Подключаем скрипт*/
    document.getElementsByTagName('head')[0].appendChild(script);
    script.type = 'text/javascript';
    script.src= 'js/script.js';
    </script>
Файл script.js содержит подключенияrequire('script1.js')
require('script2.js')
require('script3.js')
...
require('scriptN.js')

Худший ответ:
Вот тут довольно интересный метод загрузки скриптов https://github.com/agragregra/optimizedhtml-start-...
Вопрос: Как конвертировать с windows-1251 в utf-8?

Лучший ответ:
Попробуйте вот так
установка: npm install iconv-lite
iconv = require('iconv-lite');
result = iconv.encode (iconv.decode (new Buffer (body, 'binary'), 'win1251'), 'utf8'));
Сам еще не проверял, не до этого было.

Худший ответ:
Вот тут подсказывают такое решение:body = new Buffer(body, 'binary');
conv = new iconv.Iconv('windows-1251', 'utf8');
body = conv.convert(body).toString();
Вопрос: Апгрейд компа для студента-программиста?

Лучший ответ:
Память купить и SSD. Думаю на 512 (там система и все остальное)

Худший ответ:
Я тогда добавлю еще две планки Оперативная память Hynix [H5TQ2G83CFR PBC] 4 ГБ к уже стоящим, одобряете?
И еще поставлю 500 ГБ SSD-накопитель Samsung 860 EVO [MZ-76E500BW], так пойдет?
Вопрос: Почему Windows 10 не показывает содержимое диска D?

Лучший ответ:
500 мегабайт - это похоже на зарезервированную десяткой область, которой кто-то назначил букву (обычно у этого раздела буквы нет).
А в "Управлении дисками" что про него пишет?

Худший ответ:
снести к чертям через прогу AOMEI или Акронис
Вопрос: Есть ли разница в продвижении ВЧ на вторичках и главной?

Лучший ответ:
Если /ru в вашем случае это не русскоязычкая версия главной страницы, то целесообразно. Если же это просто русскоязычная версия главной страницы, то смысла в этом нет.

Худший ответ:
В вашем случае /ru, это скорее всего и есть главная страница. А не обогнать других конкурентов по другим причинам.
Вопрос: Необходимо сделать английскую версию сайта на wordpress без установки второй админки, можно ли такое сделать?

Лучший ответ:
Что за седьмая версия WP? 
текущая актуальная 4.7.2
Для мультязычности сейчас сильно в большинстве своем пользуют WPML
Однако мне больше нравится qTranslate ХПопробовал сделать директорию 'eng' в корне и заинклудить папку с файлами из темы ,но в таком случае нет доступа к функциям вордпресс.
Может кто знает , как решить проблему с доступам к этим функциям ?
Это странное решение, но подгрузить среду WP можно такrequire_once( $_SERVER['DOCUMENT_ROOT'] . '/wp-load.php' );

Худший ответ:
+1 к ответу WP Panda, однако добавлю, что еще стоит внимания плагин Polylang, в редких (действительно редких, но все же) случаях, можно использовать WordPress Multisite.Необходимо перевести контент сайта и шаблоны , поэтому решение с плагином не подходит.
Как раз наоборот. Поддержку переводов контента обеспечит плагин, а шаблоны переводятся с помощью gettext.
Вопрос: Как включить запиcь ошибок PHP в error.log в текущей папке автоматически на Apache?

Лучший ответ:
Нашел решение.
Поскольку стоит suPHP, то можно задать настройки в локальном ini файле в каждой директории, либо в общей для некоторых. Но локальный файл не php.ini должен называться, а .user.ini (это дефолтное значение обнаружено в результате вывода функции phpinfo). В нем прописал так: error_log = error_log

Худший ответ:
в настройках Apache, в директиве VirtualHost указать путь к ErrorLog.
Что-то вроде:<VirtualHost 192.168.11.12>
DocumentRoot "/home/webs/mywebsite/html/"
ServerName mywebsite.com
ErrorLog /home/webs/mywebsite/logs/error.log
</VirtualHost>
Вопрос: Есть ли готовые Linux-сборки для TOR-ноды?

Лучший ответ:
Сборка убунту без гуя называется убунту сервер и берется с официального сайта. 
Ставится например с флешки с помощью монитора/телевизора в "псевдо" графическом режиме(next next next finish)
Тор нода ставится в пару команд
Никаких выпиливаний гуя руками и допиливания напильником не нужно.
В условиях нормальной(быстрой и нелагучей) флешки-установщика, нормально работающего процессора и hdd на машине всё это делается за 15-30 минут.

Худший ответ:
Выход ноды с внешним IP попадает под уголовную ответственность в  usa и Doichland оно тебе надо?
Вопрос: Если удалить письмо из почты, то у получателя оно останется?

Лучший ответ:
Конечно останутся. Конечно если речь идёт не о своём почтовом сервере или если вы не собираетесь удалять, взломав сервера Гугла.

Худший ответ:
Вот оно мышление то, вместо того чтоб с GMail отправить на Yandex, а потом удалить на GMail и проверить на Yandex, человек написал вопрос =)
Вопрос: Как удалить следы программы на iOS?

Лучший ответ:
нет никаких данных, которые программа оставляет после себя. Есть новый механизм DeviceCheck от Apple, который позволяет разработчикам приложений получить информацию от системы, было ли ранее установлено приложение на этом девайсе. Можете подробно почитать, если интересно: https://developer.apple.com/documentation/devicecheck
PS: Особо удивляют разные советы что то чистить, мало того, что чистить нечего, но и никакое приложение ничего не может очистить в iOS кроме собственных данных этого приложения, уже почти 10 лет как все приложения работают исключительно и только в собственных sandbox (песочницах) и не имеют доступа не к диску не к системе (кроме официального API)

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

Лучший ответ:
https://codepen.io/topicstarter/pen/QzbrKY  вроде похоже

Худший ответ:
Я бы так заделал.
С любой CMS можно связать через создание списка меню, к примеруsnippet
Вопрос: Как подключить vue.js к yii2?

Лучший ответ:
во view/ где нибудь 
$this->registerJsFile(' js file path ', ['depends' => 'app\assets\AppAsset']);

Худший ответ:
Спасибо всем, проблема решилась,  оказывается ошибка была банальная - не нужна точка с запятой в конце title: 'Hello, I am Vue!'
Вопрос: Как поменять тип поля с integer в datetime с автоматической конвертацией значений?

Лучший ответ:
Как вариант:
1. Добавить рядом новое поле
2. UPDATE'ом перенести значение в нужном формате
3. Снести старое поле
4. Переименовать новое поле к старому

Худший ответ:
mysql не умеет конвертировать значения при смене типа на несовместимый.
Поэтому необходимо добавить новое поле, обновить всю таблицу, удалить старое поле и переименовать новое в старое.
Для конвертации из числового unixtime в datetime есть подходящая функция FROM_UNIXTIME, поэтому обновление таблицы будет таким:update tablename set new_datefield = FROM_UNIXTIME(old_int_unixtime);
Вопрос: Какое отличие метода run из Thread от того же метода из Runnable?

Лучший ответ:
Я вас сейчас скажу страшное: Thread и есть Runnable. Так что разницы никакой.

Худший ответ:
Runnable- интерфейс задачи с методом run().Thread- исполнитель задачи в новом потоке.
Сам Threadтак же реализует интерфейс Runnableи запускает свою собственную задачу, определенную в его методе run(), в новом потоке, по-умолчанию его задачей является запустить переданную ему другую задачу, например через конструктор new Thread(Runnable).
Самостоятельно метод run() у объекта Thread никогда не вызывается, так как суть объекта Thread, это создать новый поток, а затем jvm сама начнет выполнение задачи вызовом метода run() уже в новом потоке.
Вопрос: Какое есть ПО для ведения журнала кроссировки?

Лучший ответ:
ms excel/lo calc :)
Возможно у "больших" типа РТК есть специализированные программы, но я таких не видел никогда :)

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

Лучший ответ:
Потому что ошибка.
9 - 3 = 6
101 = 5

Худший ответ:
потому что 10-1=1, а не 0.
Вопрос: Один мощный сервер или два средних?

Лучший ответ:
Если у вас уже есть ПО, то нужно смотреть относительно него. Сможете ли вы разделить ПО безболезненным способом на 2 части.
Если бы речь шла о разработке с нуля - два отдельных сервера было бы целесообразным.
А просто обойтись репликацией БД - плохая идея.
UPD
Я бы начал с профилирования - с определения узкого места. 
Где именно тормозит, из-за чего? Использование ли это процессора и/или оперативной памяти, нагрузка на сеть, или же проблемы производительности с СУБД.

Худший ответ:
1 мощьный без вариантов
Вопрос: Возможно ли обойтись без jQyery?

Лучший ответ:
> jQ есть преимущества которых "не нарисуешь" обычным js? 
Для начала надо понять что jQuery написан на JS. После этого вы поймете абсурдность этого предложения.
Для всего остального вопроса: youmightnotneedjquery.com

Худший ответ:
Да. Если есть знания, то вы с легкостью все можете написать сами и без jQuery и плагинов к нему.
Но вот на большом проекте jQuery позволяет быстро начать и тем кто за вами будет дописывать или исправлять ошибки, быстро войти в суть проекта.
И, к примеру jquery-2.1.4.min.js всего 84 кб
Вопрос: Не отображаются фоновые иконки на псевдоэлементах?

Лучший ответ:
Задайте `display: block` псевдоэлементу и будет счастье

Худший ответ:
Вам же прямым текстом говорят - 404, файл не найден. То есть, проблема в путях. В инструментах разработчика посмотрите, какой полный URL получился у этих картинок, и соотнесите его с тем, который должен быть. Потом подкорректируйте в CSS путь.
ЗЫ: Относительный путь (../ и тд) будет считаться от места, где находится итоговый CSS-файл c вашими стилями. Если это главный файл стилей темы, то он будет в корне папки темы, и с помощью ../ вы выходите из папки темы вообще. Возможно дело в этом.
Вопрос: Как сделать 2 одинаковых блока?

Лучший ответ:
Вот<div class='flex'>
<div class='right_intro'>1</div>
<div class='left_intro'>2</div>
  </div>
.flex {
  align-items: stretch;
  display: -webkit-flex; 
  display: flex; }
.right_intro {
  width: 54%;
  font-family: 'Montserrat', sans-serif;
  font-size: 16px;
  font-weight: 400;
  color: white;
  padding-top: 40px;
  padding-left: 15px;
  position: relative;
  background: blue;
}
.left_intro {
  width: 45%;
  background: red;
}

Худший ответ:
Попробуйте так. Кроссбраузерно..intro-wrap {
  display:table;
}
.right_intro {
  width: 54%;
  font-family: 'Montserrat', sans-serif;
  font-size: 16px;
  font-weight: 400;
  color: white;
  padding-top: 40px;
  padding-left: 15px;
  position: relative;
}

.left_intro {
  width: 45%;
}

.right_intro,
.left_intro {
  display:table-cell;
}
Вопрос: В какой ОС средства сетевого взаимодействия были заложены раньше?

Лучший ответ:
нужно выбрать только из предложенных вариантовUnix.

Худший ответ:
1. Что есть "средства сетевого взаимодействия"?
2. MS-DOS выпускался заметно раньше Windows, первые версии Windows - это просто надстройка над DOS
3. Существовали еще OS/2 и Novell Netware - тоже вполне себе неплохие ОС
Вопрос: Настройка OpenNIC на роутере mikrotik?

Лучший ответ:
Насколько я понимаю вопрос, достаточно отключить получение DNS по DHCP от провайдера и установить сервера OpenNIC в /ip dns

Худший ответ:
Актуальное решение на сегодня.
С версии 6.47 добавили в DNS функцию split-dns, поэтому новый конфиг выглядит так:
/ip dns static add comment="OpenNIC - dns relay" forward-to=185.121.177.177,51.15.98.97,2a01:4f8:1c0c:80c9::1 regexp=".*(\\.bbs|\\.chan|\\.cyb|\\.dyn|\\.geek|\\.gopher|\\.indy|\\.libre|\\.neo|\\.null|\\.o)\$" type=FWD
/ip dns static add comment="OpenNIC - dns relay" forward-to=185.121.177.177,51.15.98.97,2a01:4f8:1c0c:80c9::1 regexp=".*(\\.oss|\\.oz|\\.parody|\\.pirate|\\.opennic.glue|\\.dns\\.opennic\\.glue)\$" type=FWD
/ip dns static add comment="OpenNIC - dns relay" forward-to=185.121.177.177,51.15.98.97,2a01:4f8:1c0c:80c9::1 regexp=".*(\\.bazar|\\.coin|\\.emc|\\.lib|\\.fur1|\\.bit|\\.ku|\\.te|\\.ti|\\.uu)\$" type=FWD
где 185.121.177.177,
51.15.98.97,
2a01:4f8:1c0c:80c9::1
адреса серверов OpenNIC.

Старое решение
Делал так:
/ip firewall layer7-protocol add comment="OpenNIC - dns relay" name=OpenNIC regexp="^.+(.bbs|.chan|.cyb|.dyn|.geek|.gopher|.indy|.libre|.neo|.null|.o|.oss|.oz|.parody|.pirate|.opennic.glue|.dns.opennic.glue).*\$"
/ip firewall nat add action=dst-nat chain=dstnat comment="OpenNIC - dns relay" connection-mark=OpenNIC-forward to-addresses=185.121.177.177
/ip firewall nat add action=masquerade chain=srcnat comment="OpenNIC - dns relay" connection-mark=OpenNIC-forward
/ip firewall mangle add action=mark-connection chain=prerouting comment="OpenNIC - dns relay" dst-address=192.168.254.1 dst-port=53 layer7-protocol=OpenNIC new-connection-mark=OpenNIC-forward passthrough=yes protocol=tcp
/ip firewall mangle add action=mark-connection chain=prerouting comment="OpenNIC - dns relay" dst-address=192.168.254.1 dst-port=53 layer7-protocol=OpenNIC new-connection-mark=OpenNIC-forward passthrough=yes protocol=udp

192.168.254.1 - адрес своего роутера, который указан в качестве DNS на клиенте.
185.121.177.177 - адрес резолвера ( https://wiki.opennic.org/doku.php#anycast_tier_2_d... )

P.S.
Возможно RegExp написан неправильно, ибо делал методом тыка.
Вопрос: Как сделать изображения по центру?

Лучший ответ:
Сделайте ваш контейнер флексбоксом и отцентруйте элементы.yuzo_wraps {
    display: flex;
    justify-content: center;
}
Будет вот так:

Худший ответ:
Там на элементах инлайново вписан float: left, поэтому и не центрируются.
Вы скорее всего сломаете плагин (зачем он там вообще, кстати?) но решается просто - на элементы делаетеfloat: none;
display: inline-block;
А на обёрткуtext-align: center
Вопрос: Upwork — в какое время больше всего заказов?

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

Худший ответ:
Больше всего заказов приблизительно в 12 часов по США, однако, заметь что в штатах, как и в РФ, несколько часовых поясов, поэтому стоит учитывать наступления этого полудня по всей территории США.
Вопрос: Редирект сайта на внутренний web-сервер?

Лучший ответ:
Сам спросил, сам отвечу. Создать в dns на сервере AD новую зону с именем например company.ru и в ней создать А-запись и указать IP web сервера в локалке.

Худший ответ:
Купить домен, прописать А-запись домена на ваш белый ip, на роутере пробросить порт
Чтобы юзеры из локалки по домену обращались - настроить hairpin nat
Вопрос: Как сделать чтобы фигура не вылазила за рамку при трансформациях?

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

Худший ответ:
Делайте не Render трансормацию, а Layout
Вопрос: Есть ли сервис по переводу в транслит с добавление вместо пробелов нижнего подчёркивания?

Лучший ответ:
Проще рекурсивно переименовать через код.

Худший ответ:
это рекомендованные сервисы для транслитерации чпу по яндекс и гугл, яндексГугль
Думаю для файлов тоже подойдут, но я бы писал свой костыль, ибо завтра сдохнут сторонние сервисы и останетесь на бобах.
Если у вас УЖЕ есть куча файлов под переименование - реально проще написать тулзу за 15 минут чем искать какое-то готовое решение. Поиск-замена имхо не прокатит, некоторые русские символы транслитерируются не в 1 символ вроде.
Вопрос: Как установить маску для поля телефона на шаблон Wordpress?

Лучший ответ:
Воспользуйтесь плагином jQuery migrate

Худший ответ:
вот по пробуйте этот https://igorescobar.github.io/jQuery-Mask-Plugin/
Вопрос: Как лучше сделать ссылку для скачивания на php?

Лучший ответ:
Ссылка для скачивания без PHP:<a href="file.zip">скачать</a>
Ссылка для скачивания c PHP:<?php echo '<a href="file.zip">скачать</a>' ?>
Задайте вопрос по человечески.

Худший ответ:
Ставите http заголовок
Content-Disposition: attachment; filename=MyFileName.ext
И радуетесь. Счетчик можете внутри этого php файла, просто пусть получает из БД кол-во скачиваний, прибавляет единицу и сохраняет обратно в БД. И потом в другом месте, вы сможете из БД вывести, сколько раз скачивали файл.
Вопрос: Как предотвратить добавление элемента при обновлении страницы?

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

Худший ответ:
Рефрешнуть страницу в том месте, где закончили обработку запроса после отправки. Просто саму на себя средиректить. Как-то так:header("Location: ".$_SERVER['REQUEST_URI']);
Вопрос: Как подключить svg sprite на wordpress?

Лучший ответ:
ПУТИ К ФАЙЛАМ. 
Проверяйте, какие пути ваш препроцессор генерит. И потом сравнивайте с теми, которые получаются в итоге относительно папки темы.

Худший ответ:
Как подключить svg sprite на wordpress?
так же как и не на wordpress, никакой разницыВ верстке все отлично.
ну и славненькоНе могу перенести на вордпресс
в чем сложность? Подскажите пожалуйста.
что именно?
Вопрос: Как переопределить стили виджета?

Лучший ответ:
Можно в кофиге компонент переопределить, делается это так:'assetManager' => [
        'bundles' => [
            'some\namespace\SomeAsset' => [
                'sourcePath' => '@web/myassets/folder',   // redeclare default folder
                'css' => [
                    'my_widget_style.css',
                    'other_style.css',
                ],
                'js' => [
                ],
                'depends' => [
                ],
            ],
        ],
    ],

Худший ответ:
Доброе утро.
Всё просто.
Создаёте директорию assets в директории виджета, складываете туда файлы css и создаёте свой WidgetAssets (наследуемый от AssetBundle) где и прописываете файлы ресурсов.
Структура следующая:
Содержимое файла SwitchThemesAsset.phpclass SwitchThemesAsset extends AssetBundle
{
	public $css = [
       'css/switchthemes.css'
	];

	public function init()
	{
		$this->sourcePath = __DIR__.'/assets';
		parent::init();
	}
}
Название виджета, как Вы догадываетесь, должно быть Вашим)))
Вопрос: Как сгенерировать список свободных логинов, предлагаемых пользователю при регистрации?

Лучший ответ:
собственно в чем вопрос? 
Данные которые должны учитываться - фамилия, имя, дата рождения и введенный пользователем логин (он считается уже занятым) 
на стороне php - генерируете массив возможных вариантов на основе этих данных, потом проверяете что из этого массива есть в базе с помощью запроса в стилеSELECT * FROM users WHERE login IN ('login1', 'login2', 'login3')

Худший ответ:
Точного алгоритма, скорее всего, нет;  добавляй к логину, например, г.р. и предлагай пользователю (можно, добавить дефис, туда еще ).