Vikhrmodels/habr_qa_sbs huggingface dataset:
Вопрос: Система лайков Python?

Лучший ответ:
База данных наше будущее!

Худший ответ:
Можно так например. Таблица для хранения лайков в разрезе поста и пользователя:
CREATE TABLE IF NOT EXISTS post_likes (
id integer primary key,
post_id integer, -- id поста
user_id integer, -- id пользователя
likes integer
);

Лайки можно записывать в одно поле "likes". 1 - лайк, 0 - ничего, -1 - дизлайк.
Соответственно чтобы собрать итоги, можно использовать такой запрос:
select sum(likes) total_score, -- общий счет
sum(case likes when 1 then 1 end) sum_likes, -- кол-во лайков
sum(case likes when -1 then 1 end) sum_dislikes -- кол-во дизлайков
from post_likes where post_id = нужный_id_поста
Вопрос: Как определить размер объекта на фото при помощи python?

Лучший ответ:
Смотри в сторону OpenCV. Какой конкретно метод - зависит от искомого объекта: один ли он в кадре, насколько он контрастен по отношению к фону, насколько много на нём контрастных деталей, и т.д.
Есть template matching для случаев, когда видимый размер и ориентация известны. Работает для нескольких объектов.
Есть feature matching, для случаев, когда объект только один и имеет контрастные, узнаваемые элементы, но может быть разного размера и ориентации. 
Есть каскады Хаара (или тут) для поиска множества объектов известной ориентации, но с варьируемым размером.
Есть backprojection, если объектов несколько, но они имеют характерный, узнаваемый набор цветов.
Копай, разбирайся, выбирай.

Если же вопрос в том, чтобы определить масштаб снимка, то тут самый простой способ - использовать шахматный шаблон с заранее известным размером ячейки и числом строк/столбцов. Тогда можно будет оценить расстояние между углами шаблона в пикселах, и сопоставить его с размером объекта в том же кадре. Заодно можно будет попробовать исправить перспективные искажения (попробовать переделать снимок в "вид строго сверху").

Худший ответ:
В криминалистике обычно для определения размеров объекта на фото, с ним рядом кладут что-то имеющее известный размер. Коробок спичек. Линейку. Или монету. В таком случае наверное можно сопоставить размеры.

В географии в углу карты обычно рисуют маленькую линейку масштаба. По ней тоже можно что-то определить.

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

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

Лучший ответ:
Олиферы прочитаны?

Если нет, то тогда вот такая вот история:
- ты берешь кило картошки и высыпаешь его в пакет, на котором пишешь "кило картошки"
- потом упаковываешь это в другой пакет, на котором пишешь "квартира 29"
- потом упаковываешь это в другой пакет, на котором пишешь "3-я ул. Строителей, дом 12"
- потом упаковываешь это в другой пакет, на котором пишешь "В доставку" и зовешь курьера.

Курьер приезжает в доставку и снимает свой пакет.
Доставка видит адрес, довозит пакет до дома, передает его консьержу и снимает свой пакет
Консьерж зовет коридорного, который подымает пакет к двери квартиры и снимает свой пакет, потом звонит в дверь
Адресат открывает дверь и видит пакет с надписью "кило картошки".

Разве картошка по пути следования в что-то "преобразовывалась"?

Худший ответ:
Если смотреть только на Ethernet, то он представляет плоскую сеть, где все узлы равноправны и могут обмениваться трафиком друг с другом на прямую без всякой маршрутизации. Ethernet ничего не знает о других сетях. Для него есть только одна сеть.
Поэтому для взаимодействия между разными сетями нужен более высокоуровневый протокол, который позволяет отличить адреса "своей" сети, от "чужих" адресов (обеспечивает маршрутизацию между сетями). Это IP. Датаграммы IP вкладываются в поле данных Ethernet.
Над IP есть TCP и UDP. TCP гарантирует доставку пакетов, UDP - не гарантирует. Общее между ними то, что оба протокола позволяют идентифицировать конечные приложения на хосте получателя и отправителя по номерам портов. Сам по себе IP не позволяет этого делать, для него конечной точкой является хост в сети, средств идентификации приложений внутри хоста в IP нет. TCP и UDP пакеты вкладываются в поле данных IP пакета.
Ну и далее поверх TCP и UDP куча прикладных протоколов, которые решают какие-то специфические задачи. Эти прикладные протоколы точно так же вкладываются в поле данных протоколов TCP или UDP.

И нет никакой конвертации и преобразования, просто пакет вышележащего протокола является данными для пакета нижележащего протокола (инкапсуляция). Про инкапсуляцию смотри аналогию CityCat4 о картошке.
Вопрос: Как добавить mysql на сервер?

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

У таймвеб точно есть тарифы с готовым битрикс окуружением. По моему они обойдутся даже дешевле, чем голая виртуалка.

А еще есть 
1С-Битрикс: Веб-окружение» - Linux (BitrixEnv) 
https://dev.1c-bitrix.ru/learning/course/index.php...

Скрип позволит  установить и настроить большую часть того что надо для Битрикса.
И хоть какие-то скрипты по управлению ВМ даст

З.Ы. А разве Битрикс не умеет работать с PostGress?

Худший ответ:
при вашем уровне знаний ставьте битрикс вм
или центос 8 и скриптом так же в 1 клик ставьте битиркс вм.
Если вы не знаете как поставить mysql
поверьте это будет лучший вариант
Так же есть еще несколько вариантов
https://aapanel.su  -  ставится в 1 клик
https://vestacp.com - Ставится в 1 клик
https://brainycp.com/ -  так же  1 клик
Все по бесплатное последнее проприетарное но все-равно бесплатное.
Но желательно все это ставить на чистый сервер.
Вопрос: Можно ли много раз использовать оператор break?

Лучший ответ:
Не знаю, плохо это или нет, но можно сделать так
else:
namesList = ['A', 'B', 'C']
        if message == '':
            print('Введите имя персонажа, за которого вы хотите играть!')
            break
        elif message not in namesList:
            print('Такой персонаж отсутствует!')
            break

Худший ответ:
Может это как то применить можно:

message = input("Чего хотите? \n")
d = {
	'A': 'Такой персонаж отсутствует!',
	'B': 'Такой персонаж отсутствует!',
	'C': 'Такой персонаж отсутствует!',
	'': 'Введите имя персонажа, за которого вы хотите играть!',
}
error = d.get(message, '')
print(error)
input()
Вопрос: Кто сделать чтобы бот дискорд рандомно выбирал двух человек из голосового канала?

Лучший ответ:
Первый результат в гугле https://stackoverflow.com/questions/65703852/take-...

Тоже самое сделать для канала.

Худший ответ:
Первый результат в гугле https://stackoverflow.com/questions/65703852/take-...

Тоже самое сделать для канала.
Вопрос: Можно ли питать компьютерные комплектующие от разных источников питания?

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

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

Лучший ответ:
Этот - никак. Как минимум нужно избавиться от захардкоденого домена и вынести его в конфиг. Дальше возможны варианты:
1. Wiremock - создает локальный сервер и отвечает на запросы к нему. То есть, "прикидывается" внешним сервисом для вашей программы.
2. Юнит-тесты. Но для них нужно изолировать обращения к внешнему сервису и "закрыть" их интерфейсом, вместо которого будет подставляться тестовая реализация внешнего сервиса.

Худший ответ:
Мокапить запросы на внешние ресурсы
Вопрос: Плоттер HP DJ T520 после настройки печати по сети (ввод IP-адреса), зависает и моргает экран. По USB работает. Что делать?

Лучший ответ:
Сталкивались. Причём именно с T520.

Оказалось, проблема в прошивке (точнее, в самой флешке с прошивкой). Образ текущей прошивки сняли без проблем (кстати, рабочая прошивка и её копия - на флешке две копии прошивки, -  частично не совпадают), найти типа рабочую прошивку в Инете - тоже без проблем... Но найти комбинацию прошивки и новой флешки, которая бы заработала нормально, нам не удалось (впрочем, врать не буду - не сильно упирались, перепробовали с десяток имевшихся под рукой флешек и угомонились), а стоимость ремонта у фирмачей оказалась неоправданно дорогая (да ещё и "везите к нам, будем смотреть"). Сейчас уже где-то с год работает подключенным к аппаратному сетевому принт-серверу (трёхпортовый старенький D-Link) по USB - по цене решения не сравнить.

Худший ответ:
У НР это вечная проблема. Сетевая карта тупит. У меня 4 разных НР с одинаковой ошибкой.
Вопрос: Как посортировать теги?

Лучший ответ:
Я не парился насчёт промежуточных результатов в ячейках, которые всё равно будут удалены (E3, E4, E5):
=IF(B2=B3,CONCAT(E3,", ",A2),A2)


Худший ответ:
Вот пример, как можно такого добиться stackoverflow.

Делается в несколько шагов, обязательно руками. Конечно, нужно учитывать, что в русифицированном экселе синтаксис формул абсолютно другой. Формула в ячейке Е2 будет примерно такой "=ЕСЛИ(B2<>B1;A2;E1 & "," & A2)" и позволит в сортированных данных построчно дойти до полной конкатенации всех вариантов через запятую.

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

В python + pandas эта задача решается элементарно через группировку, как и в любой разновидности sql. Стоит рассмотреть такой вариант.
Вопрос: Как обезопасить сайт от конкурентов?

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

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

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

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

Общие:
Вас будут закидывать фишинговыми письмами мол «у  вас проблема с сайтом», «срок действия домена протухает», и т.п. И цель будет одна: заставить вас скачать и запустить злой файлик либо ввести логин и пароль на фишинговом сайте. Будьте готовы к ним.

Конкурент не будет пытаться вам навредить, для этого нужно потратиться на реальных злоумышленников и это уголовка, но те что решатся найму злоумышленников которые начнут со сканирования уязвимостей вашего сайта, затем начнут фишиговую атаку либо социальную инженерию (начнут звонить и представляться хостером или вашим админом, или еще кем) опять же с целью выманить логин и пароль либо с целью уговорить вас что пришлют сейчас письмо и оно не злое.
Обязательно вести копию всей базы где-то в другом месте. Чтобы если вас вломают, можно было начать с чистого листа.
Вопрос: Какие программы можно написать на C#?

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

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

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

Скорость выполнения программ у .net сравнима с java, поэтому можете сравнить visual studio (написано похоже на си и c#) и к примеру eclipse (полностью на java), на последний я одно время слышал жалобы, типа кушает память, кушает проц как не в себя (я то как раз считаю eclipse лучшим проектом для подражания).

Я к тому что рано или поздно придется критичные и важные вещи оптимизировать и уходить от managed кода в быстрый c/c++/компилируемый в нативный бинарник код
Вопрос: Что будет если hdd просто положить в корпус?

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

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

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

нужно ли стараться по максимуму работать именно через указатели
Нет

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

Лучший ответ:
На математика.

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

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

Худший ответ:
В винде обычно отображается 2 варианта размера файлов "фактически" и "на диске"
первый - непосредственно размер файлов
второй - размер занятых кластеров
10% вполне разница между ними, не помню точно в каком отображает windir и другие
Вопрос: Какой монитор выбрать, если материнка DVI-D и HDMI?

Лучший ответ:
Мониторов на все случаи не бывает
Бери хороший IPS с HDMI

Худший ответ:
Например: 
https://www.dns-shop.ru/product/9950f77472afed20/2...
https://www.dns-shop.ru/product/6fcf64f0a44c3332/2...
https://www.dns-shop.ru/product/e95f5129c33a2ff1/2...
https://www.dns-shop.ru/product/e4e742b6929a3333/2...
https://www.dns-shop.ru/product/e6af9b4ba44c3332/2...

В целом, выбор зависит от задач и предпочтений - если хочется в игры играть много, то VA 144Гц 24", если игры не критичны - то IPS 75Гц 27". Порты - дело десятое, главное - матрица и её качество. Перед покупкой лучше почитать обзоры, сравнения и тестирование конкретных мониторов.
Вопрос: Хотят оформить на работу через ИП,стоит ли?

Лучший ответ:
Довольно частое явление для легальной минимизации налогов.

В крупных компаниях-оутсорсах это вообще регулярное явление.

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

Работа по контракту, подразумевает с одной стороны более гибкий подход к работе, включая отпуск не по трудовому соглашению а по контракту, больничный не по ТКРФ а по договору (и это не всегда плохо). С другой стороны нужно внимательнее читать контракт и понимать что если что, отстоять свои права будет гораздо сложнее, поэтому обратите внимание на размер компании и отзывы про нее.

Худший ответ:
Не очень понятно в чем вопрос
Устраивают вас налоги или нет надо спрашивать у вас а не у нас
Вопрос: Как сделать проверку на закрытие кода?

Лучший ответ:
Вообщем, мне нужен код
Он тебе не нужен! Но давай сначала.
Юзер нажимает старт и в это время информация о нем должна попасть в базу данных юзеров. А когда тебе надо остановить сервер ты берешь эту базу и всем по очереди начинаешь писать что ты закрыся. Это ответ на твой вопрос.
Но это так не делается. Никому не интересно, что твой бот сейчас не работает и согласись если у тебя нет конкретной задачи и ты просто тренируешься то и тысячь посещений в минуту у твоего бота тоже не будет. А вот к тому моменту когда твой бот будет настолько крут ты и сам сможешь ответить на твой вопрос. Поэтому не забивай голову ненужной информацией, а лучше подучи питон и набивай своего бота полезным функционалом. 
Вот к примеру в питоне есть такая штука как list,  и с его помощью можно делать крутые вещи. К примеру возьмем твоего бота:
это твой код
@bot.message_handler(commands=["start"])
def welcome(message):
  #Сделаем клавиатуру
  markup = types.ReplyKeyboardMarkup(resize_keyboard=True)
  item1 = types.KeyboardButton("Как дела?")
  item2 = types.KeyboardButton("Я знаю что ты вор!")
  item3 = types.KeyboardButton("Есть хочешь?")
  item4 = types.KeyboardButton("А спать хочешь?")
  item5 = types.KeyboardButton("Что-то секретное...")
  markup.add(item1, item2, item5)
  
  bot.send_message(message.chat.id, "Привет, {0.first_name}!\nЯ - <b>{1.first_name}</b>. Напиши мне что-то, может познакомимся, да?".format(message.from_user, bot.get_me()),
    parse_mode='html', reply_markup=markup)
 А это тоже самое только с использованием list:
start_page_buttons=["Как дела?","Я знаю что ты вор!","Есть хочешь?","А спать хочешь?", "Что-то секретное..."]

def start_buttons_create():
    keyboard = types.ReplyKeyboardMarkup(resize_keyboard=True)
    for _ in start_page_buttons:
        keyboard.add(_)
    return keyboard


  
  bot.send_message(message.chat.id, "Привет, {0.first_name}!\nЯ - <b>{1.first_name}</b>. Напиши мне что-то, может познакомимся, да?".format(message.from_user, bot.get_me()),
    parse_mode='html', reply_markup=start_buttons_create())
И самое главное это то, что ту функцию которую я написал, ты можешь перенести в отдельный файл и в результате у тебя не будет оооооочень длинный код. А будет несколько файлов, каждый из которых отвечает за свой функционал

Худший ответ:
CLOSED = True

if CLOSED:
	print('Сервис закрылся на тех.роботы. Бот <b>временно</b> не доступен.')
else:
	print('Бот работает')

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

Лучший ответ:
Раздели змейку на отдельные сегменты и экспонируй их в svg. У svg есть аттрибут vector-effect, который в сочетании с preserveAspectRatio="none" позволит сделать сегменты кривой более адаптивными. Кривая будет всячески деформироваться, а толщина обводки и пунктирные точки будут фиксированного размера без искажений. Остается только посчитать размеры svg, но это сделать не сложно. Ну и на меньших разрешениях добавить медиа-запросы и пересчитать количество колонок, размеры, позицию svg.
snippet

Худший ответ:
Если этого хочет клиент - забить на адаптивность, забить на всё и тупо сверстать как есть, абсолютно фиксированную портянку. 

На мобилах будут зумить как 10 лет назад)
Вопрос: Какие существуют средства для работы с документами Word.docs (.doc) через c++?

Лучший ответ:
Например можно использовать для этого сам Word, если вас это устраивает. Все продукты MS Office являются COM/ActiveX объектами. Это можно использовать в своей программе на каком угодно языке, умеющем в COM/ActiveX. С++ это умеет. Из коробки это умеют еще и JacaScript и VBScript, так что может вам и плюсы не нужны.

Худший ответ:
Вообще если вам не очень важна производительность, то конвертируйте doc в docx через какую нибудь программу, а дальше уже в docx меняйте текст. Можете поискать средства для работы через типа таких, но помните, что даже у ms word нет полной совместимости между разными версиями. 
офтоп: нможете попробовать использовать c#, там попроще с вордом работать
Вопрос: VS Code не работают пользовательские сниппеты вместе с встроенными emmet снипетами?

Лучший ответ:
Можно закрыть всплывающее окно сниппетов (esc), затем сразу открыть ctrl + space, и сниппеты должны отобразиться. В версии 1.75.1 вроде должны пофиксить такое поведение.
Ссылка на решение проблемы: https://github.com/microsoft/vscode/issues/173244#...

Худший ответ:
Не работает из-за обновления VSCODE до последней версии 1.75.0. Установил 1.74.3 и все сниппеты работают как прежде.
Вопрос: Стоит ли представлять на собеседовании написанные тобой игры в консольном варианте?

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

Худший ответ:
В собеседовании на кого? 
На программиста - можно. Если спросят.
Вопрос: Фриланс: какие специальности не оккупировали «индусы»?

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

Нормальные опытные люди вообще не конкурируют с индусами.

Худший ответ:
Верно пишут про национальный вектор - все, что исключительно российское, заморским индусам неподвластно.
Только здесь палка о двух концах: денежным заморским заказчикам вы тоже никогда не будете нужны, так и застрянете в этом узком коридоре.
Вопрос: Фриланс верстка под Vue/React?

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

Худший ответ:
Берите json сервер и делайте структуру как удобно, потом скинете бекендеру
Вопрос: Какие преимущества предоставляет nftables по сравнению с iptables?

Лучший ответ:
Новый синтаксис изучать необязательно, оно совместимо с синтаксисом iptables.
Основная фишка в том, что правила выполняются во встроенном в ядро Linux интерпретаторе байткода eBPF, на низком уровне и быстро.

Главная проблема не настроить случайно оба фаирвола (и netfilter и nft).
Проверь, что к чему можно sudo iptables-legacy -S и sudo iptables-nft -S соответственно.
Если очень хочется, то можно заменить симлинк (если речь про Debian) и продолжить использовать netfilter вместо nft.

Худший ответ:
Или это очередная конструкция типа ufw, shorewall и тд для тех, кто не осилил классическую утилиту?
ufw и прочие - это всё равно iptables, это надстройки над ним. А nftables внутри ядра другой. И уже есть версия команды iptables, которая работает с nftables внутри ядра (чтобы синтаксис не учить новый). Ну т.е. разработчики в ядре переписали функционал, без обратной совместимости со старым, отсюда и новое название. Обратную совместимость позже сделали на уровне команды iptables для юзера
Вопрос: Возможно ли присвоить локальной папке произвольный сетевой путь?

Лучший ответ:
Для решения проблем с доступом к данным через медленные каналы можно использовать:
1. Branchcache (в server или serverless режиме)
2. DFS\DSF-R

Худший ответ:
В случае пропадания инета - будем иметь разные версии файлов...
Может тогда уж поднять облачное хранилище? Тот же nextcloud можно очень быстро завести... он и отсинхронит Вам обе папки