Vikhrmodels/habr_qa_sbs huggingface dataset:
Вопрос: Стоит ли производить склейку и минификацию css на большом проекте?

Лучший ответ:
Выскажу свою мнение. Пусть меня поправят более опытные в этом деле, если я сильно ошибаюсь. 
Не понимаю чего так все на этой склейке помешались. Если склеенный файл получается действительно большой, то почему бы не подгружать специфические для страницы стили и скрипты только когда пользователь зайдет на эту страницу? Общие для всех страниц сайта стили подгружать всегда, а стили для главной и страницы с новостями только тогда, когда на них перейдет пользователь. Пусть получается несколько соединений, но в итоге вес css же меньше, а значит страница грузится быстрее. Может пользователь даже никогда и не зайдет на какую-нибудь страницу "Контакты", например. Зачем ему тянуть за собой лишнее стили?

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

Лучший ответ:
Это аналоги аннотаций (которые есть уже в PHP через библиотеки типа Doctrine Annotations) 


и которые в свою очередь аналоги Java Annotations


 Тк в  PHP это реализовывалось отдельным парсингом определенно оформленных комментариев — стало по сути отдельным языком и получило популярность в Symfony и др инструментах — решили внедрить как в Java нативно на уровне языка.

Аннотации/атрибуты нужны для того, чтобы можно было писать логику в аспектно-ориентированном стиле, подробнее. 
То есть некоторая логика, которая выполняется несколько отдельно (декорирует и/или меняет поведение или ещё как-то иначе улучшает программу). 
Это очень выразительный, удобный способ для использования, хотя иногда и сложный для того, чтобы разобраться в кишках работы того или иного инструмента. Более подробно: Wiki: Аннотация (Java)

Худший ответ:
это никак не изменит язык, а просто поможет писать правильно, при условии, что приложения типа phpShorm этого стандарта будут придерживаться. А комментарии как были, так и останутся.
Вопрос: Процессор для программирования, стоит ли брать ryzen 5 3600 вместо ryzen 5 3400g?

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

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

Лучший ответ:
window.onfocus и window.onblur, если я верно понял задачу. Первое событие выполнится, когда юзер перейдет на вкладку, второе - когда уйдет с нее

Худший ответ:
https://developer.mozilla.org/en-US/docs/Web/API/D...
работает и для вкладок, и для "сохраненных на home экран" pwa-аппов, чтобы данные подгружались когда юзер открывает апп опять
Вопрос: Необходимо ли выносить docker окружение в отдельный репозиторий?

Лучший ответ:
Правильно - хранить код в одном репозитории.
На проде не требуется даже иметь гит или что там у вас в качестве системы контроля версий.
Нужно настраивать CI/CD так, чтобы в контейнер на прод выкатывались только нужные файлы и каталоги, ничего лишнего.
Очень удобно, когда в девелоперском окружении код работает без докера, но сопутствующие вещи вроде БД и прочих сервисов удобно держать в контейнерах и на девелоперской машине. Так проще развёртывать среду разработки и быстрее вводить сотрудников в процесс. Технически нет особых проблем, чтобы настроить удалённую отладку прямо внутри контейнера. так можно приблизить девелоперское окружение к продовой конфигурации.

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

Храните всё, что нужно для CI/CD в том же репозитории где код. Там же у вас лежат тесты (не нужные в продакте), вспомогательные скрипты, артефакты тулинга и прочее.
Поищите, в гитхабе есть много так называемых "КукиКаттеров". Это инструмент, для шаблонизации проектов на разных стеках. Как правило в созданной по такому шаблону заготовке проекта уже есть всё не обходимое для CI/CD.

Худший ответ:
Dockerfile очень зависит от путей, хранить в другом репозитории неудобно.
Вопрос: Как уменьшить нагрузку кода?

Лучший ответ:
либо nested sets структура(проще всего) либо триггер срабатывающий на изменение кол-ва рефералов и вызывающий обновление у записей-родителей

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

Лучший ответ:
При первом взгляде неплохо, но есть несколько ошибок:На кнопках с выпадающими списками нет иконок, которые указывают о наличии выпадалок внутриВыпадающий список на маленьких экранах не вмещаетсяНа мобилке навигация не листается и выглядит не очень красивоВставлять видео вот так в лоб через video тэг - плохая практикаВидео лучше грузить после полной загрузки всех картинок, стилей, скриптовПри ресайзе слайдер сходит с уа в эпилептическом приступе (используйте Slick или Owl)Почему такая старая версия jQuery?
Странно что в исходниках расширение файлов SASS, но расставлены точка с запятой и скобки
Также, если верстаете с БЭМ придерживайтесь всех правил, а именно избегайте вложенности и названий тегов .merits__ring-list div:nth-child(1)
Также рекомендую изучить циклы в SASS, чтобы не перечислять вручную дочерние элементы

Худший ответ:
Нашел один баг:
Если на мобилке (320х568) открыть меню->продукция - не все пункты доступны
В целом все выглядит хорошо
Картинки сертификатов, думаю, лучше пережать в jpg и уменьшить - слишком тяжелые
Мне кажется, что есть лишние стили для гамбургера, да и вообще стили/скрипты хорошо бы минифицировать
Вопрос: Как защититься от спама asterisk?

Лучший ответ:
Защититься от такого спама — а заодно и от bruteforce-атак — поможет Fail2Ban.

Худший ответ:
logger set level NOTICE off 

команда которая выключила (но не исправила проблему)
Вопрос: Какой процессор вставить в старую материнку ноутбука?

Лучший ответ:
1. Читаем характеристики матери по поддерживаемым сокетам и поколениям процессоров
2. Ищем значение TDP старого проца
3. Выбираем новый проц исходя из п.1 и стараясь, в идеале, с таким же TDP у нового, либо не сильно превышая его

Худший ответ:
По идее должен пойти i7-2820QM
Вопрос: Как создать параллакс эффект?

Лучший ответ:
Что-то я не увидел каких-то чрезвычайных сложностей. Самое сложное тут это откалибровать darg&drop, все. Остальное простые транзиции, ничего сложного. Не надо смотреть на вау-эффект разинув рот, смотри на то, что происходит с блоками. Обыкновенное изменение состояния добавлением классов.

Худший ответ:
Здесь понадобится и то, и другое. Очень сложный пример, полностью соглашусь.
Тут наверное сделать без vue/react/angular будет достаточно больно.
Хотя данный эффект не оригинален - просмотрите, возможно что-то подобное реализовано и есть какая-то библиотека. Есть сайт unheap, посмотрите там.
Вопрос: Почему выводится только первый подходящий элемент массива?

Лучший ответ:
в return

Худший ответ:
Ошибка в том что return прерывает выполнение цикла так как завершает выполнение функции.
https://www.php.net/return
Вопрос: Как в Spring MVC отображать изображения?

Лучший ответ:
Приветствую!
Могут быть различные причину этому... Я тоже иногда сталкиваюсь с этим при работе с Spring Boot.
1) Используйте Rebuild Project. Не знаю почему, но при простом перезапуске приложения статичные файлы могут не загрузиться. Соответственно, в консоли браузера во вкладке "сеть" - 404 ошибка.
2) Проверьте включены ли ваши ресурсы в состав приложения. Может изображения физически отсутствуют
3) Проверьте путь к вашим ресурсам. Например, у меня в Spring Boot вся статика хранится в 
/resources/static/css
/resources/static/js
/resources/static/images и т.д.
Говоря проще, гляньте в настройки вашего проекта и на его структуру....

Худший ответ:
Была такая же проблема. Хотел просто в шаблоне index.html вывести картинку. 
Поместил её в папку /resources/static/images - и указал путь"images/имя_моего_файла" в index.html. 
Сработало, спасибо за подсказку!)
Вопрос: С чего начать изучение SEO 2021?

Лучший ответ:
Рекомендации поисковиков от Яндекс и Google.

Худший ответ:
С того что и в 2010 
Книжку хотя бы одну прочитать
Вопрос: Что такое :? в модуле re в языке python?

Лучший ответ:
Вопросительный знак в регулярных выражениях означает, что предшествующий ему символ может присутствовать или отсутствовать в строке. В этом случае : может либо встречаться в строке, либо нет. 
Допустим такая регулярка: \d+:?\d+
Найдет обе эти строки:
123:123
123123

Худший ответ:
:? - такой комбинации нет
А вот знак вопроса - это просто квантификатор {0,1}

следовательно :? - двоеточие может быть или не быть
Вопрос: Появляется такое чувство что ничего не умею и зря трачу время?

Лучший ответ:
Или есть такие люди как я?Синдром самозванца есть даже у экстра-профессионалов с мировой известностью.Как вы боритесь с синдромом самобичевания.
Это основная причина, по которой я начал отвечать на Тостере и Stackoverflow.

Худший ответ:
1. Reset-CSS подключаете?
2. Формат макета - HTML5?
3. Загрузка стилей для оперы: тут
4. Для Safari: тут
PS: Если я делаю что-то медленно (по моей личной оценке) - я смотрю как делают другие (лучшие практики) и автоматизирую часть процесса с помощью подручного ЯП.
Вопрос: Как считаете большую роль играет старая версия языка в обучении?

Лучший ответ:
Во-первых, немало книг по алгоритмам вообще псевдокодом написаны. Во-вторых, Python 2.7 от 3.8 не очень-то и отличается.

Худший ответ:
Если для алгоритмов - то можно и на старой версии поучиться. Главное понимать как они построены, а нужные инструменты подберете уже в 3 версии. Разница между 2 и 3 чувствуется в больших проектах, при использовании различных библиотек, а тут самый простой код. Так что все нормально
Вопрос: Как считать онлайн на сайте?

Лучший ответ:
socket.io уже давно не актуален и не дает ничего кроме оверхеда.
Используйте чистый https://www.npmjs.com/package/ws
получить число всех активных соединений wss.clients.length
https://www.npmjs.com/package/ws#server-broadcast
Чтобы отсеять дубли нескольких открытых вкладок браузера используйте сессионные куки с рандомным идентификатором ( куки можно извлечь из request в этом примере https://www.npmjs.com/package/ws#client-authentication ). 
Как получите идентификатор присвойте его клиенту ws.awesomeRandomId = <идентификатор>. 
awesomeRandomId - произвольное имя, какое вам удобно. 
Далее в https://www.npmjs.com/package/ws#server-broadcast у каждого client появится awesomeRandomId, по которому можно отсеять дубли.

Худший ответ:
let online = 0,
ipsConnected = {}; //список подключенных ip

io.on('connection', async (socket) => {
    let address;

    if (socket.handshake.headers['x-forwarded-for'] !== undefined) {
      address = socket.handshake.headers['x-forwarded-for'];
    } else {
      address = socket.handshake.headers["x-real-ip"];
    }

    if (!ipsConnected.hasOwnProperty(address)) {
        ipsConnected[address] = 1;
        online++;
    } else {
        ipsConnected[address] += 1;
    }

    socket.on('disconnect', () => {
        ipsConnected[address] -= 1;

        if (ipsConnected[address] <= 0) {
            delete ipsConnected[address];
            online--;
        }
  });
});
Вопрос: Как исправить ошибку HTTP 500?

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

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

Лучший ответ:
Представь себе, ты раскрыл анатомический атлас и думаешь: что бы себе удалить? Но понять что к чему сложно, и ты приходишь с вопросом к нам.
Значит так: режь что угодно, кроме головы, так мы хоть вместе посмеёмся напоследок!

Худший ответ:
Значит берешь livecd, запускаешь акроникс сносишь все нафиг.
После этого ставишь чистый линукс, и ставишь все по порядку, предварительно создай себе виртуальный сервак. И на нем все учись ставить без ошибок, а потом просто делай все на реальной машине.
Вопрос: Бесплатное обучение? Что вы об этом думаете?

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

Худший ответ:
Во! Теперь я знаю, где прошлые вендоры набирали "специалистов". Читайте контракт, а главное - Что за компания? :)
Вопрос: Можно ли использовать адаптер беспроводной мыши по другому (передавать фото с устройства на ноутбук например )?

Лучший ответ:
Если это обычный адаптер на 2.4 GHz - то с определенными плясками, уровня "я гуру цифровой электроники и написания своих драйверов"
Если это обычный bluetooth -он может делать все, что может делать bluetooth - передавать файлы, звук, создавать сетевое устройство и так далее. Уровень сложности - уверенный пользователь.

Bluetooth несут на себе логотип:

Худший ответ:
Если это bluetooth, то да. Если это просто беспроводной адаптер для usb-мыши, то нет.
Вопрос: Как решить проблему с запуском сборки проекта gulp?

Лучший ответ:
1. Удалить package-lock.json
2. Удалить node_modules (подчистую, проверяй права и что все ключевые зависимости есть в package.json)
3. Запустить установку npm install (должен быть package.json)
4. Радоваться жизни

PS: Ну и да, сверить версии совместимости модулей.

PPS: Еще может помочь флаг --legacy-per-deeps или установка через yarn.

Худший ответ:
У меня была такая ошибка. Заработало, когда удалил gulp-responsive (благо он не нужен был на в верстке) и тыкнул npm install. У коллеги все работало изначально, поэтому тут скорее проблема совместимости-версионности.
Вопрос: Как выбрать роутер поддерживающий VPN?

Лучший ответ:
основная цель - изучение принципов работы и настройкиВиртуалки - наше всё. Есть куча софтовых роутеров: pfSense/OPNSense, Mikrotik CHR, openwrt и пр. Так же есть проект eve-ng или gns3 как раз для сетевых эксперементов.

Худший ответ:
Любой поддерживающий openWRT или DD-WRT. 
Для целей обучения и экспериментов можно на авито рублей за 500-1000 найти.
Вопрос: Как можно зарабатывать с помощью разработки?

Лучший ответ:
Хотите работать на себя, быть независимым, не работать на фрилансе и на дядю и хорошо зарабатывать, но не знаете что для этого надо? 

У меня есть для вас ответ!
Для этого надо научится делать бизнес. Именно пойти и учиться. так же как и всему остальному. Клиенты, рынок, маркетинг, доход-расход, риски, планирование, вот это вот все. К разработке это не имеет отношения, и тостер не тот ресурс где этому научат.
Это все скучно, муторно и не хочется тратить свою жизнь на это? Добро пожаловать в офис/фриланс где другие дяди уже потратили свои годы за тебя, тянут всю эту скучную тягомотину сами и оставляют тебе только интересные задачки на программирование. 

Можно еще попытаться выиграть в лотерею - либо покупая билеты спортлото, либо делая какой-то свой сервис/приложения наобум и пытаясь их кому-то продать. В целом шансы плюс минус одинаковые.

Худший ответ:
Делать свои проекты в одиночку, да так, чтобы этим зарабатывать? Похоже на утопию. Если конечно у тебя нет идеи на миллион (и пары миллионов в кармане). А если хочешь работать на себя, то кроме фриланса советовать и нечего
Вопрос: Почему последнее время в Разработке такие маленькие зарплаты?

Лучший ответ:
Лол, а что вы хотели-то?

Вместо людей, пришедших в IT по призванию и добившихся успеха многолетним тяжким трудом, подкреплённым истинным фанатизмом и любовью к своему труду (это я про себя, да), в сферу ломанулось стадо откровенно глупеньких и недалёких вайтишников, которые насосались пропаганды от курсоводов про "триста тыщ на удалёнки на пехепе нинапригаясь", причём оглянитесь - этих балбесиков даже не переубедить, они свято верят, что в IT деньги раздают просто так и что веб - это лежать под пальмами с Макпуком и пить коктейли, которые подносят мулатки. По факту же вместо Мальдив - хрущёвка, вместо Макпука - убогий Хлаоми, а вместо мулаток и коктейлей - мамка с чаем из пакетика.

И да:
условно говоря юниор средняя около 30-40к
15-20k. Рублей. В мегаполисе. В галере с полной загрузкой.

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

Лучший ответ:
Смотрим куда вы подключались - определяем VPN сервер, идем и смотрим логи либо VPN сервера, либо провайдера который предоставляет доступ в сеть VPN серверу - и далее по цепочке. 
Долго, дорого, но если сильно надо то можно.

Обычно проще - собрались вы пойти на на некий ресурс а днс запрос у вас ушел через основного провайдера, потому что вы не завернули туда соответствующий трафик и ваш провайдер знает куда вы собрались, и даже ответ на DNS запрос может подменить.

Есть еще куча всяких простейших вещей например построили вы целую цепочку VPN, и запустили браузер, а там страничка ваша в соцсети открыта, и в вашем аккаунте в соцсети отражается адрес с которого вы зашли.

И самое главное - искусству розыска уже тысячи лет. И методы не поменялись  - с людьми надо работать если хочешь что-то найти. А техника это просто удобный инструмент.

Худший ответ:
Если VPN соединение разорвать хоть на секунду то ваш реальный айпи утечет будет утечька
Вопрос: Как ускорить сайт?

Лучший ответ:
С чего бы ему быть быстрым? Вы ещё больше свистелок туда добавтье.

Худший ответ:
сделать скрипты несторонними
Вопрос: Что такое Веб-приложение?

Лучший ответ:
Любое приложение опубликованное в веб.
Вот например toster.ru

Худший ответ:
gmail
kayak
keep.google
slack
PS: хотя как правильно заметили - каждый понимает данный термин по-своему
Вопрос: Каким VPN вы пользуетесь для работы api.telegram.org?

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

Худший ответ:
Я Windscribe пользуюсь. 10 гигов бесплатно и есть консольный клиент под Linux, последнее для меня стало решающим фактором.
Вопрос: Как калькулировать и дать ответ?

Лучший ответ:
Весь ваш код можно сжать до 12 строк с нормальными отступами, и при этом он будет работать, у вас же 35 нерабочих. Учите основы Python, без них вы ичего не сделаете

Худший ответ:
Что-то непонятное
import telebot  


token= ""

bot = telebot.TeleBot(token)
const = 9


def multiply(num):
    return num * const


@bot.message_handler(func=lambda m: True)
def catch_all(message):
    if message.text.isdigit():
        bot.send_message(message.chat.id, multiply(int(message.text)))


if __name__ == "__main__":
    try:
        bot.polling(none_stop=True)  
    except Exception as Error:       
        print(Error)
Вопрос: Нужен сайт на трех языках. Какой выбрать инструментарий?

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

Худший ответ:
С автоматическим переводом - ничего.

Тут в телеввизоре пишут, что лет через пять программисты станут не нужны.
Насчет программистов не знаю, а переводчики точно будут нужны.
Вопрос: Проблемы в начале пути изучения языка программирования?

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

Худший ответ:
Не парьтесь. Спросить не плохо. На то вы и программист. 
Ну разве что вы Кармак, тогда ой
Вопрос: Как автоматически открывать сайт через Тоr?

Лучший ответ:
понял, что проще на питоне будет организовать такоечушь. проще на языке который знаешь. кроме того C# гораздо роднее винде. а в линуксе возможно питон выиграет. но это все только при условии что язык освоили, и задачу поняли
разные личности, а не вкладкитут пляшем от профиля. для разных личностей свои профили. тор основан на фаерфоксе, там командная строка будет такая "C:\Program Files\Mozilla Firefox\firefox.exe" -no-remote -profile <путь к папке профиля (любой, где хотим там и размещаем)>

ps путь к фоксу заменяем на путь к тор-браузеру

Худший ответ:
Скачать драйвер Tor и через selenium делай то что ты хочешь.
https://stackoverflow.com/questions/22978074/using...
Писать можно на любом языке, в python есть своя библиотека для работы с selenium, на счёт с# точно не знаю.
Вопрос: Какой сигнал лучше для управления твердотельным реле: 4-20мА, 0-10 в или шим сигнал 0-1?

Лучший ответ:
Так как котел штука сильно инерционная, ему достаточно "ШИМ на очень низкой частоте" - как в утюге или обогревателе.

Короче, выбор способа управления зависит от алгоритма регулирования, а алгоритм зависит от полной постановки задачи. 

Разве что 4-20ма смотрится  ерундой, потому что реле, это про вкл-выкл, а не про пропорцию.

Худший ответ:
А в чем проблема взять е даташит производителя и посмотреть его параметры?
Вопрос: AMD и SSD дружат?

Лучший ответ:
SSD тут ни при чем

Худший ответ:
Одну отключите в свойствах.
Вопрос: Как отправить правильно запрос по адресу?

Лучший ответ:
У меня есть адрес по которому надо отправить запрос
Я не знаю как это сделать Как получить данные знаю А как отправить запрос нет
Чтобы получить данные, нужно отправить запрос. Соответственно, если Вы знаете как получить данные - Вы знаете как отправить запрос. нужен пример кода помогите! $content = file_get_contents('http://www.example.com/');
https://www.php.net/manual/ru/function.file-get-co...

Худший ответ:
Для создания любых запросов к сайтам используйте CURL
Вопрос: Что лучше: Wine или ПО на его основе?

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

Худший ответ:
То, на чем программа заработает. В wine это все очень индивидуально.
Вопрос: Может ли сгореть это устройство?

Лучший ответ:
Это устройство может не только обжечь, а натурально убить, если нарушится изоляция - потому что в импульсных блоках питания на GND уже есть 110 вольт  из розетки через Y-конденсатор.

В медтехнике применяют специальные источники питания с двойной изоляцией.

Так что если вы хотите поиграться, пользуйтесь Power Bank

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

Если же ты идешь к 'баб мане из пятого подъезда', 'на рынок к знакомой знахарке который торгует десятилетие уже там' и прочее то никто никого наказывать не будет, а значит производитель и продавец не будут сильно стараться при проверке документов, производстве и тестировании.

Собственно алиэкспресс это тот же самый базар, максимум чем рискует продавец - это рейтингом и аккаунтом, что в большинстве случаев имеет значительно меньше ценности чем ваше подгоревшее лицо, ты даже морду набить ему скорее всего не сможешь, так как далеко.

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

p.s. usb выдает очень маленькие токи, площадь нагревателя большая, даже если сломается pid регулятор, не думаю что эта штука сможет нагреться достаточно сильно и быстро чтобы ты не успел ее снять. Но будь внимателен к блоку питания, если его закоротит, он может подать на нагреватель все 220в, а вот это уже плохо.