Vikhrmodels/habr_qa_sbs huggingface dataset:
Вопрос: Как получают отрицательные значения напряжения?

Лучший ответ:
"Нуль" - это вопрос выбора точки отсчета. Например у вас есть 2 батарейки по 3 вольта, которые соединены последовательно. 
Если вы выбрали "нулем" отрицательный полюс, то у вас будет +6 вольт.
Если вы выбрали "нулем" среднюю точку (в которой соединяются батарейки), то у вас будет +3 вольта и -3 вольта (двухполярный источник питания)
Если вы выбрали нулем положительный полюс, то у вас будет -6 вольт. 
Последнее встречается редко, разве что в каких-то очень специфичных схемах. А вот двухполярный источник с "нулем" в средней точке - вполне.

Худший ответ:
напряжение - это разница потенциалов, соответственно, если разница потенциаов в точках а и b  a - b = 4v , то логично ,что b - a = -4v . Попросту поменять плюс с минусом, если коротко.
Вопрос: Почему не работает связка коммутатор — медаконвертер?

Лучший ответ:
Gigalink GL-MC-UTPF SC1F-18SM-1310 - стамегабитный (Режим работы оптического порта, Мбит/с - 100).
Mikrotik S-53LC20D - гигабитный (Data Rate - 1.25G).

Они не подружатся. Никогда.

Худший ответ:
Микротик не работает с sfp модулями 100 мбитными. От слова вообще. 
Инфа с форума микрота. Вам нужны оба модуля гигабитные.
Вопрос: Прислали не ту оперативную память, менять?

Лучший ответ:
Если не хочется связываться с обменом, то и не обязательно. Разницу увидите только в синтетических тестах. Как уже написали, здесь главный прирост общего быстродействия обеспечит объём.
Не по теме вопроса, но по теме апгрейда - если в ноутбуке этом ещё нет ssd, то весьма рекомендую поставить!

Худший ответ:
Может ещё быть такое, что в ноутбучном BIOS жёстко зашита частота 1333, и какую ни ставь - будет такая. На ноутбуках очень любят ограничивать железо, дабы хоть как-то компенсировать проблемы с плохой системой охлаждения.
Вопрос: Как при создании модели указать что поле not null?

Лучший ответ:
[Required()]
public string SubtitleE { get; set; } ;
И прочитайте про аннотирование данных и валидацию

Худший ответ:
Через FluentAPI. 
В классе DbContext в методе OnModelCreating. 
modelBuilder.Entity<{ModelName}>().Property(e => e. SubtitleE).IsRequired();

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

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

Худший ответ:
С такой паранойей - только заменить чип памяти, а старый разбить
Вопрос: Почему не обновляется бд на heroku?

Лучший ответ:
А почему вы ни документацию не читаете, ни поиском не пользуетесь? Чуть ли не 9 из 10 вопросов по тегу об этом. Каждую неделю кто-нибудь спрашивает. Год за годом!

Худший ответ:
На Heroku используется временная файловая система, не сохраняющая изменения, которые вносятся в файлы во время работы приложения. Используйте клиент-серверную СУБД вместо SQLite, например, PostgreSQL, если хотите разместить приложение на Heroku.
Вопрос: Записали на хакатон. Какой язык выбрать?

Лучший ответ:
1) На хакатон нужна команда. Ищите более опытную. Попробуйте примкнуть  к более опытной. 
2) Не бойтесь, Хакатоны расширяют кругозор, вы всегда сможете познакомиться там с людьми, которые так или иначе повлияют на вас. 
3) Ну и раз, вас туда отправляют без каких либо знаний, то забейте и получайте удовольствие. как минимум покормят там бесплатно, повеселитесь.

Худший ответ:
Не нужно относится к Хакатону как к олимпиаде по программированию.

Хакатон в первую очередь нужен что бы себя показать, и на других посмотреть. Плюс поесть за счет дяди. Как правило на хакатон собирается разномастная компания.

Условно наш первых хакатон 6 лет назад состоял из Верстальщик, C# программист, JS программист, и Питухонист.

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

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

Лучший ответ:
Поищите книги Лео Броуди.

Худший ответ:
Рускоязычных книг, как и английских немного и изданы они зачастую лет 30-ть назад и ориентированы на стандарты 83-года, хотя действующий принятый стандарт от 94-года, но для понимания языка это не так важно.
На twirpx.org
На форуме рускоязычных пользователей Форт языка
В этом вопросе ещё некоторые ссылки на материалы п...

Броуди Начальный курс на сайте программы nncron.ru...
Вопрос: Можно ли считать процессоры от AMD столь же универсальными, что и Intel?

Лучший ответ:
помню с давних пор, что в ряде задач порой сталкивалась с указанием, что ее выполнение возможно только на IntelЭто были фейки. Или просто ерунда. Не было таких задач в числе сколько-нибудь популярных. В принципе, можно сделать такое ограничение кому-то назло: определить процессор, если AMD то больше ничего не делать. Но в этом примерно столько же смысла, как в антироссийских санкциях. Т.е. нет разумных причин, по которым программа бы не работала на AMD. Да, расширенные наборы команд порой отличаются,
https://ru.wikipedia.org/wiki/Расширения_архитекту...
 но они отличаются и на intel'ах разных поколений. Видели что-нибудь подобное: "если ваш intel выпущен 5 лет назад, то эта программа на нём не будет работать"? Вот и я не видел.
Да, некоторые задачи требуют при компиляции отдельно оптимизировать под intel и отдельно под AMD. Да, разработчики могут полениться и не делать так. Тогда на AMD производительность может быть хуже или на intel производительность может быть хуже, но работать всё равно будет.
Я пользуюсь процессорами AMD с 1997 года и за это время мне не попадалось ни одной программы, которая отказалась работать из-за AMD.

сталкивались ли вы с ограничениями систем на RyzenНет. Будучи системным администратором, несколько лет назад собрал для офиса сервер на базе Ryzen5 3600, на нём крутятся две виртуальных машины и 40 пользователей работают через RDP в 1С с утра до вечера. Это даже не серверный процессор, но он прекрасно вытягивает такую нагрузку, прёт как ледокол. До него был сервер на базе intel i7 - жалкое подобие, пришлось поставить тот сервер в другое место, где пользователей поменьше.

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

Лучший ответ:
По списку городов, очевидно же

Худший ответ:
Из полученного взять индекс, по которому получить город, используя базу данных почтовых индексов или API .
Вопрос: Насколько критично, что Я.Вебмастер ругается на /?baobab_event_id=... и /?yhid=?

Лучший ответ:
Так ухид это Яндекс рекламы
Баобаб наверно тоже оттуда то трафик льёте
На главной пропишите каноникал просто

Худший ответ:
закрыла в роботс 
Clean-param: yhid /
Clean-param: baobab_event_id /
Вопрос: Как в цикле реализовать проверку условия?

Лучший ответ:
var booleans = List.of(true, false, true, false);

        var result = booleans.stream()
                .reduce((a, b) -> (a & b))
                .orElse(false);
Догадаетесь как получить из main.instance.itemsConfig.getConfigurationSection(String.valueOf(newPath) + ".requirements.blocks").getKeys(false) лист booleans ?

Худший ответ:
Добрый день
Чтобы не писать кучу if... else или switch ... case, можно попробовать использовать паттерн Chain Of Responsibility
https://refactoring.guru/ru/design-patterns/chain-...
Во-первых, код получится более лаконичным, а во-вторых, вы сможете реализовать то, что нужно. 
Условно говоря, если код не проходит на проверку через опеределенный фильтр, то условие не выполняется, а если выполняется, то запрос проходит по цепочке дальше.
Вопрос: Чем отличается пользователь с динамическим ip от пользователя с другим ip?

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

А вообще, надёжных способов нет. Продвинутый пользователь, который может сменить и ip и почистить куки, сможет при желании и tor browser, и whonix и так далее.

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

Худший ответ:
У меня цель блокировать пользователей, которые нарушили правила сайта.
1) Заблокировать на 100% можно только зарегистрированного пользователя. Это конечно не дает гарантии от повторной регистрации, но сильно отбивает желание куролесить, если после каждого чиха придется заводить новый акк.
2) Если регистрации нет и пользование ресурсом открыто для любого, то нужно определиться:
а) Либо вы боретесь с "хацкерами", знающими что такое инкогнито, впн, прокси, тор и вот это все, и тогда все это мышиная возня, не имеющая никакого эффекта. Вводите обязательную регистрацию или смиритесь.
б) Либо вы знаете что в основном это домохозяйки и дедушки с примерным пониманием где находятся какие кнопки на клавиатуре, и тогда достаточно бана по айпи и куке.
Вопрос: Лучше делать перезапись в столбец или оставлять вычислением?

Лучший ответ:
Вы можете создать вычислимое поле (generated column), как хранимое, так и виртуальное.

Худший ответ:
Тут стоит исходить из того, что операции create/update происходят единожды и с одной конкретной строкой, в отличие от того же чтения. Гипотетический пример: у нас есть N записей, для их создания нам N раз придется складывать M столбцов. Допустим, что таблица у нас неотсортированная и без индексов. Тогда для поиска одного элемента нам придется в среднем N / 2 раз сложить M столбцов, что уже даже при единичных операциях поиска убьет весь наш "выигрыш" от отказа вычислять эти столбцы при создании/обновлении. Выбор очевиден
Вопрос: Как сделать такой же шрифт, как на картинке?

Лучший ответ:
Zalgo Text это

Худший ответ:
Как привязать столбцы к символам не помню,  кажется в TextMeshPRO есть API с доступом к метрикам текста.

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

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

Лучший ответ:
a = ['file1.txt', 'file10.txt', 'file2.txt']
print(sorted(a, key=lambda x: int(x[4:-4])))
Пояснение по коду. sorted() для строк - сортирует их по алфавиту. Т.е., как оно сортирует АБ АВ БА, так само и для цифр в строке, сначала то что начинается на 1, потом то что на 2 и тд.

Так что для правильной сортировки, подаваемое число-строку нужно из формата строки переводить в число. А там как мы знаем стандартный вид строк, то просто пользуемся срезом [4:-4]

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

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

names = ['file1.txt',
'file100.txt',
'file2.txt']

new_list = []

for name in names:
	number = int(name.replace('file', '').replace('.txt', ''))
	new_list.append((name, number))

sorted_files = [element[0] for element in sorted(new_list, key=lambda x: x[1])]

print(sorted_files) # ['file1.txt', 'file2.txt', 'file100.txt']

Если нужны будут пояснения к коду - пишите
Вопрос: Ошибка «unexpected end of file» в PHP. В чем причина?

Лучший ответ:
Ну ведь прямо по отступам видно, что у вас не хватает как минимум трёх закрывающих фигурных скобок.
А на самом деле - половины файла: https://github.com/danog/MadelineProto/blob/931cb7...

Худший ответ:
Синтаксическая ошибка. Чтобы избежать повторения подобного, пользуйтесь IDE. Нужно закрыть фигурной скобкой последний блок else, последний метод и потом класс. И только после третьей фигурной скобки ?>
Вопрос: Есть ли возможность просмотреть ошибки js в браузере на андроиде?

Лучший ответ:
Вам нужно загуглить что-то вроде `mobile console js`, там есть разные варианты. 

Я обычно просто втыкаю на время тестов прям инлайном в HTML, чтобы никаких дополнительных пакетов не ставить. 
Там внутри всё работает как вы того ожидаете. 

<script src="https://unpkg.com/vconsole@latest/dist/vconsole.min.js"></script>
<script>new window.VConsole();</script>

Худший ответ:
https://www.youtube.com/watch?v=71qnSzSjCyY

Вкратце - эмулятор или подключение мобилы по проводу.
Вопрос: Как подсчитать письма с помощью Selenium/Java?

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

1. Так как почта скорее всего построена на фреймворке (react/vue/angular), то она строит элементы динамически, следовательно твоим 1 шагом должно быть то, что ты в драйвере должен выставить некоторый wait/until. То есть ты должен подождать, пока прогрузится страница 
// Ждём, пока не будет элемента с name = q
WebElement foo = new WebDriverWait(driver, Duration.ofSeconds(3))
          .until(driver -> driver.findElement(By.name("q")));
2. Так как ты подождал загрузку в первом пункте, то тебе можно отказаться от xpath`ов и пользоваться нормальными селекторами (https://www.selenium.dev/documentation/webdriver/l...). Собственно, можно и с ними, но в почте множество повторяющихся элементов с одинаковыми классами => брать их через xpath - очень больно, так как у них у всех xpath будет разный, а => выстроить динамику в цикле будет трудно
3. Через эти селекторы ты уже сможешь получать всю информацию на странице, которую можно обходить в цикле/сортировать/фильтровать и прочее (там уже и stream api джависткий можно юзать и прочее, и прочее)

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

1. Так как почта скорее всего построена на фреймворке (react/vue/angular), то она строит элементы динамически, следовательно твоим 1 шагом должно быть то, что ты в драйвере должен выставить некоторый wait/until. То есть ты должен подождать, пока прогрузится страница 
// Ждём, пока не будет элемента с name = q
WebElement foo = new WebDriverWait(driver, Duration.ofSeconds(3))
          .until(driver -> driver.findElement(By.name("q")));
2. Так как ты подождал загрузку в первом пункте, то тебе можно отказаться от xpath`ов и пользоваться нормальными селекторами (https://www.selenium.dev/documentation/webdriver/l...). Собственно, можно и с ними, но в почте множество повторяющихся элементов с одинаковыми классами => брать их через xpath - очень больно, так как у них у всех xpath будет разный, а => выстроить динамику в цикле будет трудно
3. Через эти селекторы ты уже сможешь получать всю информацию на странице, которую можно обходить в цикле/сортировать/фильтровать и прочее (там уже и stream api джависткий можно юзать и прочее, и прочее)
Вопрос: Как в HTML сначала получить текст из тэга input, а потом перенаправить используя Flask?

Лучший ответ:
Достаточно прочитать раздел quickstart документации, чтобы узнать, что нужно присвоить инпутам имена, обернуть их тегом form, а в обработчике формы извлечь параметры из объекта request.

Худший ответ:
Сначала нужно обернёть input's в тег form
А для input's задать атрибут name и вместо h1/h2 лучше указывать 
Вот код html:
<form action="/do_dashboard" method="post">
   <label for="">Введите свой айди:</label>
   <input name="user_id" type="text" size="40"><br>
   <label>Введите айди гильдии:</label>
   <input name="server_id" type="text" size="40">
</form>
Код Python файла:

from flask import request # requests - для принятие данных(вроде бы)

@app.route("/do_dashboard", methods=['get', 'post']) # Методы для принятия даных. Get - обычное получение, а Post - Передача данных.
def dodash():
    if request.method == "POST":
        user_id = request.form['user_id'] # Выбераем из формы user_id
        server_id = request.form['server_id'] # Быбераем из формы server_id
        return redirect(f"https://wbot.serega15032011.repl.co/dashboard/{user_id}/{server_id}")
    else:
        return "Get запрост"
Вопрос: В каких случаях стоит использовать Next.js?

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

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

Что дает из коробки Next - (вопросы задаются при начальной аналитике проекта)

Typescript - если нужна типизация?
React router - роутинг?
Css modules - скоуп стилей?
Express - для SSR?
Helmet - SEO?
Sharp **-** Нужна генерация webp?

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

Если мы говорим о "голом" реакте - каждый проект как новый, когда приходишь на проект в поддержку уже существующему, глаза вытекают каждый раз от "новой архитектуры". Именно поэтому горячо люблю Angular, нет постоянного угнетения новыми подходами к разработке софта.
Вопрос: Какой выбрать backend framework с rest api, Если фронт React или Angular?

Лучший ответ:
Любой. Что там на бэкенде фронту совершенно не важно. REST API же можно сделать на любом хоть сколько-нибудь не эзотерическом фреймворке.
Открывайте рейтинг фреймворков и/или Хэдхантер и выбирайте. При таких расплывчатых требованиях за вас этого никто не сделает.

Худший ответ:
Ну можно например:
C# + ASP .NET Core
Java + Spring
Kotlin + ktor
go + go-swagger
Nodejs + Nest (неплохой вариант, кстати - можно будет тайпскриптовый код на фронте и бэке переиспользовать)
Python + flask
Вопрос: Как работает телеграм бот скачивания видео с ютуба?

Лучший ответ:
Скачивание видео с ютуба - обычная операция. Её реализует, например, проект youtube-dl (который фактически уже загнулся) и его форк yt-dlp (живее всех живых). Они могут работать как отдельный скрипт, так и как модуль к python.

А так как ботов часто пишут именно на python, то это ещё и достаточно просто реализовать. Получив ссылку, бот вызывает функцию модуля yt_dlp, затем скачанное видео отправляет запросившему.

Бот также может помнить, какие видео у него уже есть, и отправлять их сразу по file_id. Если у бота большая аудитория, то популярные видео он может отправлять довольно быстро, если их уже хоть кто-то запрашивал.

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

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

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

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

Лучший ответ:
Не asp, а asp net core.
В целом - почему нет? Для маленьких апишек в 6й версии даже новый синтаксис появился: ASP NET Core minimal api

Худший ответ:
Если умеете в шарп, то ASP.NET webapi вполне ок.
Если есть желание поиграться, то можно на go посмотреть, например. Язык компилируемый, собирается в статический бинарь.
Решения на Node.js или Python (django) имхо не стоит рассматривать - и там и там будет виртуалка/интерпретатор, то есть принципиальной разницы с шарпом не будет, так что можно брать знакомый стек.
Вопрос: Почему в Debian 500Gb HDD доступно всего 435Gb?

Лучший ответ:
Раз килобайты на 1000/1024 байта вы учли, то на всякий случай начните с проверки наличия удалённых файлов: lsof | grep deleted.

Затем посмотрите tune2fs -l – это параметры файловой системы. 
В Линуксе на ext* выделяется 5% на резервирование в каждом разделе под нужды root'а. Никто, кроме него туда писать не может. Отображается в строке Reserved block count.

Изменить можно командой tune2fs -m №, где № – новое кол-во процентов (2, 3, и т.п.), но лучше понимать для чего вы это делаете. 

Ну и обычно наиболее заметный оверхед возникает из-за таблиц inode'ов. Он зависит от их количества. По умолчанию на каждые 128 МБ используется 2 МБ айнод (8192 x 256 байт каждая), т.е. примерно 1.5-1.6%, что похоже на указанные вами цифры.

Худший ответ:
Во-первых, как уже сказали, Debian показывает размер в гибибайтах, а диск у вас в гигабайтах. 500 гигабайт = 465 гибибайт.

Место расходуется на inode — по умолчанию их создаётся довольно много. Можете воспользоваться профилем (опция -T у mkfs.ext4) huge или largefile.

Кроме того, значительное количество места резервируется под иноды при ресайзе ФС. Эту опцию можно отключить и получить еще больше свободного места: -O '^resize_inode'
Вопрос: Сайт в локальном домене и Apache/NGINX?

Лучший ответ:
Конфигурацию в студию. Сейчас все говорит о том, что в конфе не обозначено какой сайт грузить по дефолту. Если бы DNS не работал он бы не открывал даже стартовую. А раз дефолтная отркывается значит не работает редирект на созданый вами, а значит скорее всего конфа. Так что в студию.

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

Лучший ответ:
в попу циклы, echo и cat.
одной командой sed -r 's/(.*)/\1\1/' < ./file1.txt > ./output.txt  все заменить можно

$ cat file1.txt
1
2
3
4
5
$ sed -r 's/(.*)/\1\1/' < ./file1.txt 
11
22
33
44
55

Худший ответ:
в попу циклы, echo и cat.
одной командой sed -r 's/(.*)/\1\1/' < ./file1.txt > ./output.txt  все заменить можно

$ cat file1.txt
1
2
3
4
5
$ sed -r 's/(.*)/\1\1/' < ./file1.txt 
11
22
33
44
55