Vikhrmodels/habr_qa_sbs huggingface dataset:
Вопрос: Мультиязычность в Yii2: как реализовать правила URL?

Лучший ответ:
Я использую сдедующий подход:
1) В базе данных информация о страницах (или товарах, или других сущностях) хранится в двух таблицах: например, page и page_content. Первая таблица - это данные, которые не требуют перевода (например id, дата создания, дата обновления, слаг итд.). Вторая таблица - это текстовые данные, которые будут мультиязычными (meta_title, meta_description, meta_keywords, content). Во второй таблице (с контентом), должно быть поле для связи с первой таблицой (напр. поле page_id), а также поле для указания кода языка. Получается, что для одной записи в первой таблице существует несколько записей во второй таблице, каждая из которых - на разных языках.
2) В моделях нужно прописать связь один к одному для этих таблиц, в которых связующими будут поля по ID и по полю языка (параметр берётся из настроек приложения Yii::$app->language):public function getPageContent()
{
    return $this->hasOne(PageContent::className(), ['page_id' => 'id'])->andWhere(['page_content.language_code' => Yii::$app->language]);
}
Теперь при выборке данных из первой таблицы, будут подтягиваться тексты из второй таблицы, на текущем языке приложения.
3) Для управления текущим языком приложения и удобного переключения с одного языка на другой (параметр языка хранится в ссылке), существует замечательный компонент Yii2 Locale URLs

Худший ответ:
Думаю, для второго можно сделать так же.
Читайте с пункта "Прозрачная работа с языковыми адресами" (ctrl+f).
www.elisdn.ru/blog/39/yii-based-multilanguage-site...
Вопрос: Почему слово &quot;карма&quot; вызывает ненависть со стороны Хабрасообщества?

Лучший ответ:
Потому что карма — это оценка толпы. А толпа подчиняется правилу 95%. Карма нас заставляет говорить и писать так, что бы понравится 95%, а не оставшимся 5%. То есть мы знаем, что ведем себя и ровняемся на 95%. И это нас бесит.

В реальной жизни мы сами рассчитываем свою карму. То есть самооценку. И рассчитывается она из мнений авторитетных (для тебя людей). На мнение идиотов никто не обращает внимания.

Например, 10 девушек считают тебя красивым и хотят тебя, а 100 педиков считают тебя страшным. Какое тебе дело до мнения педиков? Ты счастлив.

С точки зрения Хабра, у тебя будет -90 кармы. С точки зрения реального мира, у тебя будет карма 10.

Вот это различие и бесит.

Худший ответ:
Карма и наказания за её минусовой размер довольно странные понятия на Хабрахабре. Нет, я не говорю, что несправедливо наказание в виде запрета на написание постов, а несправедливы другие ограничения — типа запрета на использование тегов. Давече, лишился права использовать теги по причине того, что написал комментарий, относящийся к политике (впрочем, какие ещё писать в новостях о Викиликс (http://habrahabr.ru/blogs/mass_media/113062/)?), за что на каждый минус комментарию получил минус в карму. В следующем комментарии после вопроса пояснил свою позицию, получил примерно столько плюсов за комментарии, но уже всё — комментируй с тайм-лимитом и лимитом на теги, так как вся карма слита в минуса.

Получается, что карма показывает отношение сообщества к самому человеку, а рейтинг локальное признание петросянства/резонного комментария/интересной новости (или, в случае минусового рейтинга, отсутствие таковых). А упоминание кармы может вызвать мысли, что человек кармадрочер, которому нужна карма, чтобы повыпендриваться и все дела.
Вопрос: Если моноблок до 30тыс с подвижной камерой?

Лучший ответ:
А почему те модели с камерой не использовать + докупить камеру 720p? насколько я знаю, хорошие встроенные только Apple ставит. А насчет поворотной, я даже не видел конструкций чтобы оно было в комплекте. А вот отдельно можно докупить и все. За 1000 рублей можно даже с 1080p. В скайпе будет идеальная картинка.

Худший ответ:
Ну уж если брать вариант монитор + неттоп, то сразу же брать монитор с нормальной и поворотной камерой, чтобы не покупать отдельно вэб-камеру, на ум приходят два варианта:
 — продающийся — market.yandex.ru/model.xml?modelid=6455427&hid=91052
 — и снятый с производства — market.yandex.ru/model.xml?modelid=3803565&hid=91052
у обоих мониторов очень даже нормальный камеры в 2 МПкс (неплохо видно даже вечером без света)

покупаем неттоп — например такой — www.regard.ru/catalog/tovar108973.htm или вот такой с дивидюком — www.regard.ru/catalog/tovar112232.htm 
докупаем провод покороче — www.regard.ru/catalog/tovar17222.htm (короче не нашел)
ну и клава+мышь до кучи — www.regard.ru/catalog/tovar13589.htm

итого получаем 27 дюймов за 23460 р.
Описалово неттопа и куда ныкать провод смотри тут  (последняя фотка)
Вопрос: Где найти фрилансера для работ над livestreet проектом?

Лучший ответ:
Не самый популярный движок, тем более на западе никто о нем не знает и надеяться на одекс и прочие глупо.
Вы элементарно не указали цену? Почему?
Смысл наниматься на задачу где нет цены и есть тз.
Что за svn новички его не знают, юзайте git.
Наймите просто php программиста и все, не ищете специалиста по livestreet, этот движок к сожалению не получил большой распространенности и специалистов по нему почти нет.

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

Лучший ответ:
Диплом призера государственной олимпиады дал мне бюджетное место в ВУЗе. Диплом победителя внутривузовской олимпиады — повышенную стипендию (200%).

С психологической точки зрения олимпиады дали мне такие вещи как:
1. Веру в том, что нерешаемых задач нет. Надо просто еще чуть-чуть подумать.
2. Принцип «сначала делаем то, что знаем, потом — то, что не знаем». Очень помогает.
3. Чувство того, что всегда есть кто-то впереди тебя и стремление его догнать и перегнать.

С точки зрения полезности олимпиадных знаний — почти ничего. Нет, ну конечно, кое-какие познания в области дискретной математики, теории вероятности и т.д. остались, но в целом олимпиадное программирование и промышленное программирование не связаны никак. Это как фигурное катание и хоккей — и там и там вроде бы есть коньки и лёд, но вот методы их использования и конечные цели очень отличаются.

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

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

Худший ответ:
посмотрите библиотеки для экселя
Вопрос: Как автоматизировать GIT?

Лучший ответ:
На моей памяти, тут вроде не было, более извращённого желания в сторону GIT-а :)

Худший ответ:
надо гит пересобрать с одной библиотечкой - libastral.so
но её мейнтейнеры уже два столетия как запили, и не обновляют её.
в общем, затрахаешься собирать. лучше пиши руками git add . && git commit -m "update" && git push
Вопрос: Почему появляется белый фон?

Лучший ответ:
На боди вешать min-width. И для первой обёртки вешать оверфлоу хидден.

Худший ответ:
изи * {margin:0px; padding:0px}
Вопрос: Почему плохо делать рассылку одним письмом, забив всех адресатов в BCC?

Лучший ответ:
Я вижу одну основную проблему: если всех писать в bcc то кто будет в поле «кому»? Человеку придет письмо, которое отправлено неизвестно куда. 

Писать адреса в обычную копию плохо тем что так можно слить адреса своих партнеров конкурентам. 

Поэтому люди и пользуются скриптами рассылок: чтобы получателям приходило персонализированное письмо, и другие получатели не могли извлечь из него адреса подписчиков.

Худший ответ:
Приватность конечно-же. Вася Иванов не очень обрадуется увидев себя в рассылке на 100500 пользователей о продлении курса виагры.
Вопрос: Что за непонятная ошибка в mysql ?

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

Худший ответ:
1. Запятая лишняя " text, ) "
2.foreach ($cn as &$val) {
     $sabjects_save = "$val text, "; // 
}
в  $sabjects_save будет только последнее значение массива 
3. Выведите значение переменной  $sabjects_save, будет понятнее
4. sabject -> subject
Вопрос: Куда обращаться для продления домена?

Лучший ответ:
Судя по
 $  whois clxdomains.ru
domain:        CLXDOMAINS.RU
nserver:       ns1.reg.ru.
nserver:       ns2.reg.ru.
Можно попробовать обратиться к reg.ru

Худший ответ:
Домен: CLXDOMAINS.RU 
Сервер DNS: ns1.reg.ru.
Сервер DNS: ns2.reg.ru.
Статус: зарегистрирован, делегирован, не проверен 
Администратор домена: Частное лицо "Private Person" 
Регистратор: REGRU-REG-RIPN 
Связь с администратором: http://www.reg.ru/whois/admin_contact?dname=CLXDOMAINS.RU
Дата регистрации: 2006.06.02 
Дата окончания регистрации: 2013.06.02 
Дата освобождения: 2013.07.03 
Источник: TCI 


Регистратор: REGRU-REG-RIPN 
Обращайтесь на www.reg.ru/
Вопрос: Чем руководствуется Google Maps составляя карты России?

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

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

Лучший ответ:
через запятую jQuery(document).ready(function(){
    jQuery('.scrollbar-inner, .scrollbar-outer, .new-bar').scrollbar();
});

Худший ответ:
Через пробел (если это один элемент) или через запятую (если разные).
Учите CSS селекторы
Вопрос: Можно ли запретить сотруднику публиковать текущее место работы?

Лучший ответ:
Что значит «нечестная конкуретная борьба»? То, что ему предложат з/п выше чем у вас?
Нужно не запрещать, а предлагать лучшие условия.

Худший ответ:
Следующий шаг — запретить в конторе хедхантер, хантим и тому подобное?)))) А то тут недавно по ляму в месяц обещали. Я чуть не уволился, благо кадровики на выходных не работають…

Я к тому, что конкуренты ваши могут дать объяву, что при переходе от вашей фирмы и предъявлении, скажем, 2НДФЛ, они обеспечат в два раза выше доход. И объява эта будет плескаться по всему интернету. 

Можно, конечно, работать в бункере и там же держать весь персонал, но это как-то… не то.

И еще, помните: незаменимых людей нет. Если у вас есть — надо рефакторить структуру :)
Вопрос: Стоит ли в моем случае покупать Macbook?

Лучший ответ:
А про'ха - ретинка?
Ценник у них верно почти одинаковый.
Я советую брать PRO. Сам взял air13"  early 2014, ну и сразу же:
1. Экран.. Ну просто экран... Картинка.... Вообщем привык за пол года с горем пополам, но только уже ради этого был готов бежать продавать брать про.
2. Объем оперативки. 8гб вроде как предел.
3. Отличие от про - вес на 300гр больше у про, толщина вроде на 13мм, и временем работы 13+ часов (реальных)
Вообщем ретины совсем не хватает( ужасно. И не важно смотреть фильмы, кодить, фотошопить, веб дизайн (эт вообще ужс)
Оперативка. Берите макс. сколько возможно. У меня 4гб, дикая не хватка даже просто в режиме "idle" так сказать. Safari (3-5) владок, дропбокс, ну и фоновые основные процессы - уже свободных Mb колеблиться в районе 200-500.
Виртуалка - сразу минусуем 1гб самый минимум, если win8 или более приятное функционирование 2-3гб. Ну а несколько - соответственно умножаем.
Конечно проблем не возникает и на 4гб, как на win окно вылазиет закройте приложение память убежала) Но на работу в целом отражается.
p.s. виртуализация parallels просто божественна :3 по сравнению с vmware, VMbox, etc
Далее SSD, тут уже вопрос более индивидуальный. Если у вас iPhone, iPad и фотографируете не раз в месяц. В моем случае в 128 гб на фотки, бэкап ушло сразу 40-60гб. Ну минимум программ немного музыки +15гб, xcode - ~6гб,  виртуалка + 20гб. + мусор от загрузок, питон скриптов, всякого софта и тд +10-15гб
Собственно подсчитать легко что свожу концы с концами на 20 свободных)
По поводу хранение файлов. Зачем флешки и тд? Time capsule
Ну и конечно хоть и i5 но в "мобильном" варианте ничего удивительного не стоит ожидать.
Я всеми руками За Pro версию, и Вам советую.

Худший ответ:
Не обязательно сразу покупать macbook.
Тем более они сейчас даже очень слабые от 7000 грн
Но с другой стороны-если на программиста то девелопить лучше на Mac OS.
Лично я советую купить обычный ноут от 5 000грн и поставить в него ssd на 120ГБ и установить Ubuntu и Windows на него,если и HDD для хранения файлов нужен то купишь optibay и поставишь на место dvd-rom'а.
Вопрос: Как структурировать js код в проекте?

Лучший ответ:
Нельзя же в js написать что-то типа require "чего-то там".
Можно !
requirejs.org

Худший ответ:
Есть require.js, есть commonjs, есть es6-модули (это новый стандарт, а сейчас можно babel'ом компилировать и полифилы использовать), есть модули typescript, есть coffescript-модули. Отдельные фреймворки (например, angular) имеют свои системы модулей.
Лично я использую requirejs на работе. Довольно удобная штука для тех, кто не может использовать es6. Осваивается минут за 10-15, в инете полно инфы.
Вопрос: Сколько пользователей может одновременно работать в Ubuntu/WinServ2012 с рабочим столом?

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

Худший ответ:
WinServ 2012 еcли не покупали лицензии то лимит 2 сеанса(используются для администрирования)
Но ведь это ограничение программное и решается покупкой лицензий CAL или хакинг dll
Вопрос: Автоматизация на рынке облигаций и капиталов

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

Худший ответ:
гугли High-frequency trading
https://numer.ai/learn
Вопрос: Как сделать отображение Linux screen сессии на web-сайте?

Лучший ответ:
Запускать команды с выводом в файл и периодически его считывать и показывать пользователю?

Худший ответ:
делаем скриншот scrot, по крону.
Вопрос: Текущий уровень реализации — это как?

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

Худший ответ:
Андрей, добрый день. Данный термин носит общий характер, и говорит лишь о том, что, например, в проекте длительностью 12 месяцев на 1-2-3 месяц намечен важный (milestones) релиз и в процессе обсуждения этого самого релиза уместно употребить "текущий уровень реализации", т.е. сейчас это всё так ущербно, потому что мы только в начале пути и у нас есть ещё планы развивать эту функциональность.
Вопрос: Как полностью запретить просмотр видео на компьютере с ОС Windows?

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

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

Лучший ответ:
Дело в том, что за время вращения колеса мыши, событие mousewheel срабатывает много раз. Соотвественно и обработчик события срабатывает столько же раз.
Чтобы этого избежать, нужно применить debounce обработчика, то есть сделать так, чтобы он выполнился один раз через n миллисекунд после его последнего вызова. Если с момента последнего вызова не прошло n миллисекунд, а обработчик был вызван еще раз, его выполнение откладывается еще на n миллисекунд.
В данном случае, обработчик выполнится через 100 миллисекунд после того, как перестанут поступать события скролла (100 - это просто пример, реальное значение нужно подбирать исходя из ситуации):$(document).ready(function () {
    var owl = $(".sldr").owlCarousel().data('owlCarousel');

    $(window).on('mousewheel', debounce(function (event) {
        var direction = event.originalEvent.deltaY < 0 ? 'next' : 'prev';
        owl[direction]();
    }, 100));   
});Код функции debouncefunction debounce(func, wait, immediate) {
    var timeout, args, context, timestamp, result;

    var later = function () {
        var last = new Date().getTime() - timestamp;

        if (last < wait && last >= 0) {
            timeout = setTimeout(later, wait - last);
        } else {
            timeout = null;
            if (!immediate) {
                result = func.apply(context, args);
                if (!timeout) context = args = null;
            }
        }
    };

    return function () {
        context = this;
        args = arguments;
        timestamp = new Date().getTime();
        var callNow = immediate && !timeout;
        if (!timeout) timeout = setTimeout(later, wait);
        if (callNow) {
            result = func.apply(context, args);
            context = args = null;
        }

        return result;
    };
}Реализацию функции debounce я беззастенчиво позаимствовал из библиотеки underscore.Интерактивный пример

Худший ответ:
Реализовал таким образом.$(document).ready(function() {
   
    var speed = 1500    

    var owl = $(".sldr").owlCarousel({
        slideSpeed : speed
    }).data('owlCarousel');

    var f = true;
    function s(){
        f = false;
        function d() {
            f = true;
        }
        setTimeout(d, speed);
    }s();

    $(window).on('mousewheel', function(event) {        
        if(event.deltaY < 0 && f == true){
            owl.next();           
            s();
        }
        if(event.deltaY > 0 && f == true){
            owl.prev();            
            s();
        }
    });    
});
Вопрос: Как связан Devocot и Postfix?

Лучший ответ:
Postfix - MTA, Mail Transfer Agent, почтовый сервер SMTP.
Dovecot - почтовый сервер POP3 и IMAP
Phpmailer - класс для отправки почты через SMTP

Худший ответ:
Грубо говоря:
postfix - принимает почту от пользователей и доставляет её либо до другого сервера либо в локальную папку в одном из поддерживаемых форматов (или даже в БД)
dovecot - по запросу пользователя выдаёт ему почту, сохранённую в локальном хранилище.
phpmailer - фактически клиент, позволяющий отправлять почту
Вопрос: Возможно ли сделать объектно-ориентированное API через DLL (GCC, C++)?

Лучший ответ:
Можно. Для этого нужно написать обычную функцию типа:

extern "C" IPlugin * getPluginInterface()
{
    return new Plugin();
}


Если код для винды нужно еще добавить __declspec (dllexport) после extern «C».
И все. Теперь можно загрузить библиотеку динамически и спросить адрес функции по имени с помощью dlsym( для Linux ), для винды не помню.

Худший ответ:
Да точно также и делается всё. Делаем абстрактный класс, делаем фабрику этих самых классов, а она уже как хочет их создает и из любых либ.
Вопрос: Тернарный оператор ведёт себя странно в Си. В чём в проблема?

Лучший ответ:
вы при инициализации используете ++i,
в итоге  a[0] не инициализирован и состоит из мусора,
так еще и в конце выходите за границы массива

Худший ответ:
Выходите за границы массивов, т.к. условия стоят в хедере цикла. На последней итерации происходит обращение к 10й ячейке (у вас только 0..9 элементов), а только потом идёт проверка условия и выход из цикла.
Вопрос: Интеграция 1С и магазина на Wordpress Woocommerce?

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

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

Лучший ответ:
$ sudo cat /dev/zero > /dev/sda1
;-)
Не нужны в Linux какие-то особые команды ... если вы хорошо понимаете что вы хотите сделать.

Худший ответ:
shred. 
ну и на ssd не пытайтесь - бестолку.
Вопрос: Помощь по HTML5

Лучший ответ:
пустят ли тебя туда?

А причём тут HTML5?

Худший ответ:
я думаю, нужно подойти более семантично к вопросу, т.е. выделить через тэг, придающий выразительность (или как там в спецификации сказано): strong, i, em.
Вопрос: Когда нужно использовать точку в селекторе jQuery?

Лучший ответ:
p - тег. read - класс.
Без точки — тег. Точка — класс. Есть еще # – id.

Худший ответ:
p - тег. read - класс.
Без точки — тег. Точка — класс. Есть еще # – id.
Вопрос: Android парсинг HTML?

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

    public String GetTemper(String urlsite) // фукция загрузки температуры
    {
        String matchtemper = "";
        try
        {
                // загрузка страницы
            URL url = new URL(urlsite);
            URLConnection conn = url.openConnection();
            InputStreamReader rd = new InputStreamReader(conn.getInputStream());
            StringBuilder allpage = new StringBuilder();
            int n = 0;
            char[] buffer = new char[40000];
            while (n >= 0)
            {
                n = rd.read(buffer, 0, buffer.length);
                if (n > 0)
                {
                    allpage.append(buffer, 0, n);                    
                }
            }
            // работаем с регулярками
            final Pattern pattern = Pattern.compile
            ("<span style=\"color:#[a-zA-Z0-9]+\">[^-+0]+([-+0-9]+)[^<]+</span>[^(а-яА-ЯёЁa-zA-Z0-9)]+([а-яА-ЯёЁa-zA-Z ]+)");
            Matcher matcher = pattern.matcher(allpage.toString());
            if (matcher.find())
            {    
                matchtemper = matcher.group(1);            
            }        
            return matchtemper;
        }
        catch (Exception e)
        {
            
        }
        return matchtemper; 
    };


Худший ответ:
Самый гуманный Jsoup . Просто и быстро. Только вот у меня на Android 4.4 почему то тормозит нереально (в то время как на 2.2 тот же код летает). В общем проверяйте на виртуальных машинах.
Вопрос: Каковы ваши впечатления о книгах Мартина Фаулера?

Лучший ответ:
Норм.
p.s. Каков вопрос таков и ответ.

Худший ответ:
Не хватает экшена.
Вопрос: Как работать с Bitbucket в Linux?

Лучший ответ:
Если хочется что-то гуишного то смотри тут:
https://suse.me/apps/sourcetree?platform=59&license=All

Худший ответ:
Вот с этим https://bitbucket.org/ ?
Ну в доках же английским по белому сказано, что оно умеет git и mercurial
https://www.atlassian.com/git/?utm_source=bitbucke...
И вперед!
Вопрос: Автоматическое обновление программ?

Лучший ответ:
Можно попробовать SUMo
www.kcsoftwares.com/index.php?sumo

Худший ответ:
Почитайте обзор различных программ для мониторинга
www.soft.vladskv.ru/need_programs/obnovlenie.htm