Vikhrmodels/habr_qa_sbs huggingface dataset:
Вопрос: Блоговедение или программирование?

Лучший ответ:
Денис Каракчиев Могу ошибаться, поэтому выскажу всего лишь свое мнение, которое может быть ошибочным.
Итак, блог и программирование они хоть и разные вещи, как Самолет и одеяло, но они взаимосвязаны.
Связь в том, что программист программируя "мыслит", он не просто с небес\потолка или еще откуда берет код, он его "думает и переживает". Когда Вы пишите мысли о той или иной технологии Вы лучше и глубже начинаете понимать то что Вы описываете! Поэтому и говорят "Учитель учится больше, потому что ученик задаст такие вопросы, до которых учитель ни разу бы и не додумался".
Блог вести надо, по след. причинами:
1. Помогаете другим
2. Получаете критику "Да ктож так пишет-то? Надо ...." и через аргументированную критику учитесь тому, что в книгах едва ли пишут!
3. Пиаритесь. Кто-то решив свою задачу, может порекомендовать Вас своему руководству в качестве нового сотрудника "А давайте-ка попробуем его в нашу компанию позвать?"
4. Это Ваш собственный справочник. Написанный тем человеком, который лучше всех Вас понимает! И тем языком и речевыми оборотами, которые Вы лучше понимаете. При этом следует учесть "Вы сейчас" != "Вы вчера".
Программирование это процесс мышления, очень часто приходится принимать различные решения . Примеры: "А что если если я объект std::string передам в виде... ?" или "Насколько Важно здесь поставить ... ?" и др. Все это может быть основано на Вашем же опыте изложенном в блоге! Отсюда п.5.
5. Блог это Ваш описанный опыт.

Худший ответ:
Заработок на блоге != пассивный доход. Ну или пассивный если вас устроит пару сотен рублей в месяц.
Для продвижения блога вам придется разобраться в тонкостях СЕО, продающих текстов. Работать над ТИЦ, повышением выдачи в поисковике и охвате аудитории. И если вы желаете получать нормальные деньги, то и работать придется нормально. 
Для того чтобы ничего не делая начать зарабатывать, необходимо сначала нормально заработать и пустить деньги в оборот. Только тогда возможен пассивный доход.
Вопрос: Что-то расходует трафик?

Лучший ответ:
Task Manager — вкладка Perfomance — кнопка Resourse Manger — вкладка Network ;)

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

Лучший ответ:
Лучше книг пока еще ничего не придумано.
В том плане, что если серьезно заниматься ЯП, то нужно хорошо знать теоретическую часть, которой в видео-уроках обычно бывает мало (если вообще бывает). Обычно все упирается в рассмотрение каких-то фич IDE и прочих лишних моментов.
IMHO

Худший ответ:
Читать так или иначе все равно что-то придется, так как в видео не всегда есть достаточное количество информации, да и качество часто хромает. А вообще, если вам так проще, учите на здоровье, главное о практике не забывайте.
Вопрос: Поднять NAS для домашнего пользования с бюджетом до 10 000

Лучший ответ:
У меня два NAS, один самосбор в маленьком корпусе на FreeNAS, второй — готовый Buffalo Linkstation Live. Честно говоря, самосбор мне нравится больше, тремя вещами:
 — Большая производительность по гигабитной сети.
 — Большая функциональность из коробки(есть NFS, rsync, поддержка ZFS, нет из коробки клиента Bittorrent, но см. следующий пункт)
 — Возможность расширения функциональности(хоть это и не совсем просто, надо хоть чуть-чуть в никсах разбираться).

Короче, на вкус и цвет, я бюджетным готовым NAS недоволен, хотя допускаю, что у меня не очень удачная модель(не я выбирал, досталась мне считайте случайно).

Худший ответ:
Благодарю за ответы.

2тб, 2 диска (в данный момент лежат два таких: www.citilink.ru/catalog/parts/hdd/hdd_in/692114/, искал куда приспособить), сугубо для домашнего пользования (ибо разросся ;). 10 000 рублей это не включая диски, разумеется, но чем меньше лучше, ибо деньги всегда есть куда потратить.
Вопрос: Размытость в форме конуса по краям монитора iMac — WTF?

Лучший ответ:
Болезнь аймаков
обсуждалось много раз и на русских и на забугорных бордах
вариант 1 — Влага. Например из-за увлажнителей воздуха, или если ваш аймак стоит в подвале дома =)
вариант 2 — пыль или, как говорят, копоть — разбирать и чистить, либо если еще есть гарантия — нести в гарантию. этот косяк яблоками признан

Худший ответ:
У Вас судя по всему пыль/копоть на самом стекле защитном с внутренней стороны. Это проще, снять стекло и протереть микрофиброй. А бывает часто такая копоть внутри матрицы самой, в слоях появляется. Тогда на включеном белом фоне будут видны затемнения. Это уже сложнее, надо разбирать матрицу. Это болезнь аймаков, матрица негерметична и пыль попадает внутрь. Чтоб уменьшить этот процесс, надо переодически разбирать аймак и чистить радиаторы и кулер от пыли.
Вопрос: Как сделать глобальный Enum в Python 2.7?

Лучший ответ:
как таковые родные перечисления появились только в 3,4, но есть бэкпорт https://pypi.python.org/pypi/enum34 вплоть до 2,4
Но вполне возможно вам хватит и атрибутов класса?class A(object):
    B = 0
print A.B  # 0

Худший ответ:
Посмотрите эту библиотеку: https://pypi.python.org/pypi?name=Rels&version=0.2...
Вопрос: Существует ли менеджер [личных] проектов с похожей канвой?

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

Худший ответ:
Я использую teamer.ru + gitlab на сервере.
В тимере вижу задачи и проекты, в гитлабе что сделано, какие ветки (задачи) делаются в данный момент.
Вопрос: Google GSON: как изменить порядок сериализации полей при наследовании?

Лучший ответ:
1. Если ваше приложение зависит от порядка сериализации, то вы делаете ошибку.
2. В Java reflection порядок полей не гарантирован. А значит, и любые инструменты, её использующие, его также не гарантируют без дополнительных телодвижений.
3. Если вам всё же нужен этот костыль, то придётся написать собственный сериализатор.
4. Если GSON не критичен, то можете использовать Jackson вместо него. Там порядок сериализации можно указать с помощью аннотаций.

Худший ответ:
Можете объяснить критичность порядка сериализованных полей?
Вопрос: Какой метод обращения к БД использовать в Yii2 лучше?

Лучший ответ:
Если это одиночные объекты - смело можете использовать ActiveRecord. Краткость кода и удобство написания и поддержки кода перевешивает небольшой оверхед в создании объектов (который, на практике, никакой роли играть не будет).
А вообще, разницы между использованием "строителя запроса" и между использованием AR почти что нет, разве что использовать DAO - небольшой надстройке над PDO, которая доступна через Yii::$app->db (то есть, стандартный компонент соединения к базе данных).
Но если объектов десятки и сотни - я использую, обычно, asArray()->all();, чтобы получать результат из таблицы в виде массивов. Это покрывает 95% необходимого кода для работы с базами данных (ну, как мне кажется). Если нужен более низкоуровневый интерфейс - всегда можно определить метод в объекте AR, который возвратит необходимые данные, и внутри него произойдет необходимый запрос.
Кстати, посоветую включить кеширование схем таблиц - очень помогает в ускорении работы AR в будущем.

Худший ответ:
На мой взгляд надо использовать тот что позволяет получить необходимый результат. Если оба его дают, тот что более читабельный. Если Вас интересует производительность, тогда не стоит использовать фреймворки и пишите запросы чистым php.
На самом же деле ActiveQuery$data = Posts::find()->all();
расширяет Query$data= (new Query())
так что второй должен быть менее ресурсозатратным, но все зависит от того, как Вы составите запрос.
Я использую ActiveQuery, там где это возможно (99% случаев)
К тому же если вас напрягает$row->idCategoryes->category;
Создайте в моделе метод getCategory и будет во вьюхе у Вас:$row->category;
Вопрос: Что сделать со старым wifi-роутером?

Лучший ответ:
Подарить, нуждающимся хабровчанам:)

Худший ответ:
У меня было две точки, одна чтобы около дома ловило, другая дома.
Вообще если интернет получается по vpn можно перевесить нагрузку на старый роутер, а с нового просто wi fi раздавать.
Вопрос: Чем закэшировать MS SQL

Лучший ответ:
Я советую найти специалиста по MS SQL и разобраться, во что именно вы уперлись. На 80% уверен, что проблема решается на текущем железе либо с легким апгрейдом. Обычно возможности оптимизации базы и приложения очень большие, для первой попытки.

Худший ответ:
Что-то мне подсказывает, что без правки кода Вы не обойдетесь, хотя я могу и ошибаться =)
Вопрос: Как организовать Core data без tableview?

Лучший ответ:
Понимаете в чем дело, CoreData Framework предназначен для хранения и управления графом объектов. Именно по этому везде используют UITableView. Он без заморочек позволяет отобразить иерархическую структуру, был бы стандартный контролл для рисования графов, юзали бы его. Ну так вот, Core Data не предназначен для хранения переменных - это как на самолете по сельской дороге кататься. Настоятельно рекомендую почитать хотя бы первые две главы https://developer.apple.com/library/mac/documentat...  Для сохранения каких-то переменных лучше всего использовать NSUserDefault или же NSKeyedArchiver
На всякий случай, если Вы все же захотите что-то записать в CoreData , то смотрите на главы Creating and Deleting Managed Objects и Fetching Managed Objects. Ну и перед тем как писать "переменную", ее нужно будет представить в виде объекта...

Худший ответ:
Понимаете в чем дело, CoreData Framework предназначен для хранения и управления графом объектов. Именно по этому везде используют UITableView. Он без заморочек позволяет отобразить иерархическую структуру, был бы стандартный контролл для рисования графов, юзали бы его. Ну так вот, Core Data не предназначен для хранения переменных - это как на самолете по сельской дороге кататься. Настоятельно рекомендую почитать хотя бы первые две главы https://developer.apple.com/library/mac/documentat...  Для сохранения каких-то переменных лучше всего использовать NSUserDefault или же NSKeyedArchiver
На всякий случай, если Вы все же захотите что-то записать в CoreData , то смотрите на главы Creating and Deleting Managed Objects и Fetching Managed Objects. Ну и перед тем как писать "переменную", ее нужно будет представить в виде объекта...
Вопрос: Как изменить сочетание клавиш для смены раскладки на Win+Пробел, под window 7?

Лучший ответ:
Punto Switcher умеет:


Худший ответ:
Punto Switcher умеет:
Вопрос: UTF-8 vs UTF-8 без BOM — что когда использовать?

Лучший ответ:
Различий никаких нет, кроме наличия/отсутствия маркера. Кодировка одна и та же - utf-8. По стандарту unicode маркер должен быть.
Удалять маркер BOM при сохранении нужно только для PHP, который почему-то не умеет корректно обрабатывать нормальные unicode файлы.

Худший ответ:
Добавлю. что разница для "не php" файлов есть. Например, .js файлы, как правило, браузеры отдают без указания charset в заголовках. Если BOM метка есть в файле, то он читается как UTF, в противном случае каждый браузер читает как хочет. У меня лиса открыла JS без BOM как latin1, а хром - cp1251
Вопрос: Apache + MySQL на Windows в production — как убедить людей что это плохо

Лучший ответ:
Эта связка не для web-разработчиков, это связка домашнего сервера «под столом» вчерашнего школьника, пробующего свои силы.
В мире web-разработки большинство библиотек, модулей пишут под unix, и лишь иногда (или по принуждению) портируют версии под винду. Это приводит к тому, что под винду не всё можно найти, да и багов обычно больше.

Худший ответ:
1. Все очень зависит от того, как этот сервер «приготовлен» — настроен, вылизан, отлажен. Я видел и ставил не один десяток win серверов, как под tomcat'ами, под apache/*sql/php, под iis/asp.net, iis/php, и под Active Directory с разной ентерпрайзной фигней вроде MS SQL или Exchange. и ничего, стоят в продакшене годами, недавно у знакомого переводили два десятка 2003 (да, первые два сервера из той партиии живут в продакшене с 2004го года, как часы) серверов на свежий 2012R2 после месяца тестов.
2. Если Вы винду готовить не умеете — это не означает что она кривая и с багами — этого добра хватает и под юниксами, даром чтоли раз в неделю приходится накатывать апдейты на сервера и сервисы в независимости от win/linux.
3. Я бы на Вашем месте попытался понять, почему данное решение живёт именно на этой платформе — может потому что разработчики не гарантируют его работы на LAMP'е, может у него в зависимостях компоненты, живущие в .Net'е и дергающиеся из под PHP скриптом, живущим в глубине структуры каталогов.
4. Может Вы просто идётё на поводу общего мнения «винда кривой хлам»
Вопрос: Полнотекстовый поиск

Лучший ответ:
А вы не смотрели в сторону Sphinx или, например Zend Lucene. Это первое, что пришло в голову. Хотя, честно говоря, не уверен, насколько они подходят для конкретной задачи.

Худший ответ:
Возможно панацея — company.yandex.ru/technologies/server/
Sphinx — не умеет нидексировать файлы.
Вопрос: Самые странные вопросы на собеседовании, которые вам задавали?

Лучший ответ:
Давно я собеседование не проходил, но Баш запечатлел последнее. :)

<fishbone> Что для вас значит получение данной работы?
<fishbone> меня подобные вопросы в ступор вгоняют :)
<dotNETcheg> fishbone, а ты пиши. возможность прекратить жить за счет сбора и утилизации стеклотары!


Уже даже не помню, что я тогда ответил.

Худший ответ:
— «Почему вы хотите работать у нас, а не у наших конкурентов?»
 — «Готовы ли вы отказаться от привычной жизни?»
Вопрос: Скрипт под OpenWRT для перезапуска процесса (например php5-fastcgi), если он дохнет?

Лучший ответ:
поставьте пакет monitпримеры настроек

Худший ответ:
добавить в крон что то вида:curl localhost || restart  \ reboot
Вопрос: Из-за чего возникает ошибка The EntityManager is closed?

Лучший ответ:
EntityManager закрывается сам при любой ошибке связанной с ORM, например если запрос к БД некорректный, это большая проблема в проектах где используется демонизация PHP процессов. Если ваше приложение базируется на PSR-15 и PHP-DI, вы можете поддерживать EntityManager всегда открытым используя следующее промежуточное ПО:
https://github.com/autorusltd/doctrine-persistent-...
В любом случае, даже если это не ваш стек, вы можете, как минимум, понять, как его переоткрывать. Но самое важное, контролируйте ошибки в вашем приложении, не усложняйте его, постарайтесь писать так, чтобы работа с БД происходила только в endpoint-ах (репозиториях, которые вызываются в endpoint-ах), а не была размазана по проекту...

Худший ответ:
А какой результат выполнения$this->em->isOpen();до добавления новой сущности? Если false - то произошла ошибка где-то до этого.
Обрабатываются ли события prePersist, postPersist? Ошибка может быть там, особенно если в них еще раз вызывается flush.
Вопрос: Какими минимальными характеристиками должен обладать ноутбук для работы  с OpenServer и PHP?

Лучший ответ:
Да в принципе любой сойдет. Выбирайте тот, который вам понравился. Приоритет отдавать ноутам с гибридными винчестерами (или с SSD), оперативки 4+ (8 гигов точно хватит), процессор - сильнее core i5 смысла брать не вижу. По частотам особо разницы нету. Приоритет отдавать процессору с большим размером кэша. Обойтись можно и встроенным видео.
Словом... любой ноут который потянет virtual box с убунтой, ибо через какое-то время возможно у вас придет осознание что win для web разработки это как-то не серьезно (если конечно вы не .NET-чик)

Худший ответ:
Любой нетбук! ASUS X200Ma ~12к
Смотрите на клавиатуру в первую очередь! (слева: Ctrl, Esc - по углам должны быть, справа - клавиши курсора и Enter - должны быть удобными и крупными)
Вопрос: Вопрос о тегах MP3 файлов

Лучший ответ:
Исходя из описания тега ID3v2 тут, в ID3v2 в частности можно записать:

Content type – Аналог пункта «жанр» в ID3 v1
Content group description – Эту категорию можно описать как «поджанр»

Но остается под вопросом, будут ли корректно считываться эти данные из тега плеером.

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

Лучший ответ:
Вам нужны якоря.<a href="#anchorName">Переход</a>
<a name="anchorName"></a> <!-- точка куда будет осуществлен переход -->
Вот так в общем:<div class="content">
  Загаловок <sup><a href="#a1">[1]</a></sup>
  Загаловок <sup><a href="#a2">[2]</a></sup>
  Загаловок <sup><a href="#a3">[3]</a></sup>
    <div class="note_box">
      <sup><a name="a1"></a><strong>[1]</storng></sup> Загаловок - это....
      <sup><a name="a2"></a><strong>[2]</storng></sup> Загаловок - это....
      <sup><a name="a3"></a><strong>[3]</storng></sup> Загаловок - это....
    </div>
</div>

Худший ответ:
С помощью jQuery вещаем обработчик клика на элементы .content > sup, далее выдергиваем оттуда контент, далее в .note_box ищем тег strong с контентом элемента по которому кликнули, и если элемент найден, то делаем плавную прокрутку к этому элементу. Писал на коленке, нужно проверить работоспособность кодаjQuery('body').on('click','.content > sup',function(){
var marker=jQuery(this).text();
var element=jQuery('.note_box strong:contains("'+marker+'")');
    
if (element.length != 0) {
jQuery('html, body').animate({scrollTop:element.offset().top }, 500);
 }
});
Вопрос: Крышка на ПК должна быть открыта или закрыта для лучшего охлаждения?

Лучший ответ:
Закрыта однозначно!
Кулеры обеспечивают ЗАДАННЫЙ циркулирующий поток воздуха, при открытой же - они циркулируют тепло вокруг системника хаотичным образом.

Худший ответ:
движение воздуха на скорости всегда обеспечит лучший съем температуры чем самотёк
Вопрос: Выучить C++ за 21 день?

Лучший ответ:
Вы скорее всего на рекламный баннер ифобизнесменов натолкнулись только они способны на подобный абсурд, у С++ один из самых высоких порогов вхождения lurkmore.to/%D0%AF%D0%B7%D1%8B%D0%BA%D0%B8_%D0%BF%...
Это обзор опроса какой ЯП сложнее https://docs.google.com/spreadsheet/pub?key=0Ap_ow...

Худший ответ:
Да, можно. Берете любой справочник Страуструпа или Шилдта. Если звезды сойдутся, то выучите до уровня джуниор-багофиксера. Ясно, что для мидла это мало. Да, не нужно пытаться гуглить логическое объяснение зачем в с++ 5 приведений типов).
Вопрос: Как ограничить своё время работы за ПК?

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

Худший ответ:
Надо писать todo- лист. Дневной план.  Пока не выполнишь задачи, ничем другим не занимаешся. Лучше на бумаге. и положить рядом, чтобы глаза мозолило. 
А как только все сделал, то уже устаешь и хочется отдыха, если работал без перерывов на страдание ерундой.
Если дома никого не разбудишь, то можно использовать старинные будильники. 1 или если все запущено, то 2. 
и поставить их в разных концах комнаты подальше от компа. Хочешь выключить -  встань из-за компа.. 
Начинать работу с их заводки. Ну и конечно, чтобы их сквозь стены не очень было сильно слышно:)
Вопрос: Что возвращается в хэдере в случае отсутствия клиентского адреса в базах GeoIP?

Лучший ответ:
Ничего не будет содержаться в ответе. Т.к. $geoip_country_code вернет false, то nginx просто не передаст заголовок, в котором нет значения.

Вот тут человек из-за этого голову чуть не сломал: serverfault.com/questions/463971/httpgeoipmodule-geoip-country-code-is-blank :)

Худший ответ:
осмелюсь предположить что
1. Unknown
2. 0
3. Undef
Вопрос: Как пишется программа под определенную систему?

Лучший ответ:
У вас эффект Даннинга-Крюгера

Худший ответ:
Ставим кросс-компилятор и вперед. Тестировать правда тяжеловато. Это если платформа нативная. А если это сценарий (js, php,python,...), ему почти пофиг, где работать.
Вопрос: Как настроить маршрутизацию между двумя локальными сетями?

Лучший ответ:
Если вы не хотите "попасть" на "конкретную" сумму денег, в которую встанет восстановление ПО MRI и рабочих станций врача после того, как в них набьются вирусы, пересмотрите схему сети так, чтобы радиологическая сеть была отделена от остальной сети брандмауэром, а лучше - вообще никак не была связана с ней и интернетом.
P.S. ВСЕМ ЖЕЛАЮЩИМ ВСЕ ЖЕ ДАТЬ АВТОРУ ОТВЕТ НА ЕГО ВОПРОС!
Зная специфику ПО, встроенного в большинство медтехники, я могу сказать, что практически ни один встроенный медицинский компьютер не имеет ни активного брандмауэра, ни антивируса, ни возможности "просто так" переставить систему. 
Учтите, что своими действиями автор рискует вывести из строя очень дорогое оборудование, лишив тем самым диагностики многих пациентов.

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

Лучший ответ:
Canyon CNR-NB10: «черепашка-ниндзя» 

Худший ответ:
Взгляните на рюкзаки Samsonite типа вот этого. Насколько я помню, они идут с защитой.
У меня у самого Samsonite, правда совсем другая модель. Очень доволен — надежный и удобный.
Вопрос: Стоит ли покупать Google Nexus 7?

Лучший ответ:
Стоит. Но исключительо 32GB+3G.

Худший ответ:
Выйдут версии с 32Гб флэш-памяти и с 3G. Если нужен мобильный инет — можно подождать. Но неизвестны сроки приезда в Россию (если это важно).
Вопрос: Какая утилита используется для цветной консоли в Debian у Hetzner?

Лучший ответ:
Где оно у них прописано - уже не помню, но тоже понравилось когда впервые увидел - теперь ездит за мной в bashrc :) :# echo $PS1
\[\033[01;31m\]\u\[\033[01;33m\]@\[\033[01;36m\]\h \[\033[01;33m\]\w \[\033[01;35m\]\$ \[\033[00m\]

Худший ответ:
Так же рекомендую посмотреть на zsh + ohmyzsh в базе много плагинов с очень удобными цветовыми и информационными решениями.
Вопрос: Как снять блокировку всплывающих окон в Google Chrome?

Лучший ответ:
Блокировка алерта применяется только к текущей вкладке. Откройте новую - получите алерты обратно.

Худший ответ:
Сдается мне вот так
www.picshare.ru/view/3207122/
Вопрос: Как сохранять сущность ViewController при переходе назад через Navigation Controller?

Лучший ответ:
Одновременно. При переходе назад текущая удаляется, при переходе вперед создается новая.
Варианты:
1) Создать контейнер (например таббар контроллер) и сделать папки с плеером двумя табами
2) Добавить контроллеру с папками сильный указатель на плеер, и при необходимости перейти в него, пушить его, а не создавать новый.

Худший ответ:
Если плеер должен быть только один, можно создать сиглтон и управлять им откуда угодно
Вопрос: Mysql + php, как организовать мониторинг доступности веб-сервера в разрезе по времени?

Лучший ответ:
В продакшене используем Amazon route 53 health check, он проверяет раз в секунду. Можно настроить просто на 200й ответ, можно указать конкретный контент который дожен отдаваться с сервера (условно можно сделать скрипт который коннектиться к базе и отвечает ОК если все хорошо)
Если стоит задача проверять именно локально - любой самопальный скрипт проверки

Худший ответ:
1. Zabbix
2. Самопальный скрипт пинга Интернета. Есть пинг - записали. Нет пинга - записали. Сервер умер - ничго не записали. Всё собрать в табличку и радоваться.
Вопрос: FOSUserBundle. Хранение ролей в БД?

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

Худший ответ:
я кратко расписал решение вот тут stackoverflow.com/a/11916488/1517230
кроме того, нужно переопределить методы работы с ролями в enity User в FOSUserBundle — чтобы работать с ними как с обычными коллекциями
Вопрос: Как открыть доступ к сайту с www?

Лучший ответ:
Регистратор не важен, если DNS меняли на записи хостера.
На примере своего домена напишу, что нужно сделать в панели управления доменом, редакторе DNS.site.ru.	3600	A (адрес Internet v4)	5.45.124.164
www.site.ru.	3600	A (адрес Internet v4)	5.45.124.164
Фактически, вам нужно создать поддомен www и отправить на тот же IP, что и основной домен.

Худший ответ:
Всё очень просто. У регистратора домена, на его NS сервере или на тех NS серверах куда вы перенесли сделайте запись CNAME (редирект) или запись «A». В чем разница прочтите в гугле.
Например вот так :