Vikhrmodels/habr_qa_sbs huggingface dataset:
Вопрос: Если злоумышленник узнаёт мою сид фразу от Ethereum кошелька, то я не смогу её сменить?

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

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

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

Худший ответ:
Как я могу сменить SEED-ФРАЗУ И В КАКОЙ ПОСЛЕДОВАТЕЛЬНОСТИ?
Вопрос: Массовое сравнение сток, поиск пересечений, каким инструментом воспользоваться?

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

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

Худший ответ:
Коробочное решение - это библиотеки обработки текста Apache Lucene, Sphinx. Но их нужно программировать - следовательно вам надо искать разработчика. 

ElasticSearch/Solr (под капотом это тот-же Lucene) - вариант но вам надо будет его конфигурировать и тщательно подбирать настройки Analyzer чтоб не получать ложно-позитивных срабатываний. Возможно в дефолтном варианте он слишком умный и делает стемминг там где не надо.

Если самостоятельно программировать то мы имеем такую complexity  : 100 000 слов проверить в  150 текстах - это примерно 15 миллиардов тривиальных проверок. Типа поиска строки в строке. Хочется от этого уйти. Поэтому надо искать какие-то структуры данных работающие на exists(..). Например Фильтры Блума. При 150 тыщ элементов он будет достаточно компактен. Или сортирующие и хеширующие структуры (R&B Trees). Тогда вместо 15 млрд мы сведем к 100 либо к 150 тыс циклов по одному из измерений как будет выбрано.
Вопрос: Как распознать уровень системы безопасности сайта, который нужно спарсить?

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

Если делать защиту правильно, то нужно не давать возможности вычислить четкую границу дозволенного. Нельзя давать никакой, даже косвенной, обратной связи парсерам. У каждого ip и у каждого пользователя должен быть скрытый теневой рейтинг, в который ваш сайт прописывает штрафные баллы за любую мало-мальски подозрительную и нестандартную активность на сайте. Перечень критериев, по которым детектится подозрительность активности должна держаться в секрете. Текущий рейтинг подозрительности пользвателю (парсеру) не известен. Если рейтинг достигает какой-то пороговой величины, нужно с некоторой вероятностью блокировать пользователя или ip. Почему с некоторой вероятностью? Потому что нельзя нкаким образом давать вычислить парсеру границу дозволенного и подстроиться под нее.
Дело в том, что при такой схеме парсеры будут в любом случае заблокированы, возможно не на первом запросе после превышения порога подозрительности, а на втором, третьем, пятом... С каждым запросом вероятность растёт, но благодаря вроятностной блокировке нельзя (или очень трудно) анализировать цепочку действий, приводящих к бану.

Теперь в понимаете, поему правильно построенная система защиты от парсеров не может быть проанализирована по формальным признакам и воспроизводимым цепочкам действий?

Худший ответ:
И что бы два раза не вставать, может кто-нибудь подскажет пароль от ядерного чемоданчика любого из президентов, а? Ну давайте, ну скажите, ну что вам, жалко что-ли?!
Вопрос: Почему большой/объемный pull request это плохо (или хорошо)?

Лучший ответ:
было много ПР в промежуточную ветку, их ревьюила команда, к которой принадлежит разраб который сделал ПР;
далее эти все коммиты/изменения были объединены в один ПР и он стал похож на страницу с содержанием книги с десятками коммитов, в то же время к ревью подключились разрабы из других комманд и ревью затягивается еще на несколько дней;
Вам нужно решить, где чья ответственность. В большой команде не может каждый разработчик читать код каждого другого разработчика. Поэтому нужно просто делать адекватные коммиты/мелкие ПР и ревьюить их, а если они уже поревьюены - то не обращать на них внимания, т.к. это теперь не ваша ответственность.

Почему вы повторно ревьюите этот же код, ещё и теперь объединённый в один большой ПР? Какой смысл? У вас что-то не так с организацией ответственности.

Худший ответ:
Размер имеет значение, иногда!
Ваша задача иметь пул реквест совпадающий с вашей задачей. 
Если вы меняли ORM то это одно, а если добавляли розовую кнопку для входа то совсем другое. 
В моей работе было и то и другое. 2х месячная работа скидывалась в основную ветку, потому что было надо. 
И были мелочи потому что "вот все мы закончили этот юнит"

Придерживайтесь схемы когда любая операция в гите создает или исправляет какую то задачу
Вопрос: Какакой тип .NET приложения выбрать если нужна отказоустойчивость — обычное консольное, ASP.NET или Worker Service?

Лучший ответ:
Вам может подойти 2 варианта: WebAPI либо Worker Service.

WebAPI предоставит вам конечную точку(узел) на который вы можете делать HTTP запросы из браузера, через curl и др. Т.е. инициатором какого-то действия будет запрос из вне. Но так как у вас процесс должен работать сам, без участия человека - этот вариант не особо подойдёт, но можно добавить планировщик, например - Quartz, который будет раз в указанное время запускать нужный вам код. А по HTTP вы можете периодически забирать статистику работы вашего приложения.

Worker Service - работает сам, можно сделать работу по расписанию или по другим условиям. Пишете функцию - она будет вызываться сама. Думаю, вам скорее нужен этот вариант.

Про отказоустойчивость: вы можете погуглить механизм Health Check, можно настроить автоматическую проверку жизни вашего сервиса и в случае обнаружения плохого состояния - автоматически его перезапустить.

Худший ответ:
Нужно создать приложение под платформу .NET 5 
Тогда уж уже 6. .NET 5 скоро end of life настигнет.
Крайне желательно обеспечить отказоустойчивость всего этого дела, то есть даже если вдруг будет какой-то баг, то чтобы можно было легко закодить автоматический перезапуск.
Перезапуск решается не на уровне приложения, а на уровне выше - через systemd/docker/k8s
Они умеют автоматически отслеживать, что твой сервис упал, и перезапускать обратно.
Если сервис может сломаться не падая полностью - смотри на Health checks (https://docs.microsoft.com/en-us/aspnet/core/host-...)
 получать по HTTP 
Ну тут очевидно - asp net бери.
Worker Service - это про некоторую работу, которая выполняется в фоне постоянно (например слушатель очереди логичнее делать на нём)
Просто консольное приложение - будет как aspnet, только хуже (если говорить про HttpListener/TcpListener), Придётся самому изобретать AppHost чтобы отслеживать состояние сервиса.

Только не надо это всё на GET-запросах делать) Семантически корректнее будет использовать POST.
var builder = WebApplication.CreateBuilder(args);
builder.Services.AddHttpClient();
var app = builder.Build();

app.MapPost("/value", async ([FromBody] SensorReadings data, [FromServices] HttpClient httpClient) =>
{
    // Что-то делаем с полученными данными
    await httpClient.PostAsJsonAsync("https://example.com", data);
});

app.Run();

record SensorReadings(Guid SensorId, DateTimeOffset Timestamp, double Value);

Но в принципе, раз у тебя датчики - я бы посмотрел на сочетание mqtt и worker service
Вопрос: Как добавить Linux Ubuntu в Windows Boot Manager?

Лучший ответ:
Загрузчик не должен быть красивым.  Он должен быть 200% надежным. Это все что от него требуется.

Худший ответ:
grub-customizer нужен, в нём можно поменять порядок выбора. Если ничего не делать какое-то время, груб сам загрузит первое - ставь винду первой
Вопрос: Напомните название js-библиотеки — микро-аналог vue?

Лучший ответ:
Обратите Ваше внимание на Svelte.js
<a on:click={click}>test</a>
Habr:
https://habr.com/ru/post/498702/
https://habr.com/ru/hub/sveltejs/

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

Лучший ответ:
Связи между микросервисами - это граф.
Соответственно тебе нужна какая-нибудь библиотека для визуализации графов.
Посмотри на вот эту, например: https://github.com/panthernet/GraphX

Худший ответ:
Если бы вы пользовались нормальным кластерным софтом типа Istio, вам отлично подошел бы киали https://kiali.io/docs/features/topology/
А так смотрите в сторону графов.  Graphviz Пример viz-js.com
Вопрос: Для Mikrotik Hex S необходимо докупать sfp-модуль?

Лучший ответ:
Да, sfp продается отдельно
А провайдер сделает соответствующие настройки своей оптики под Ваш hex ? Я не думаю

Переведите их "роутер" в режим бридж, поднимите всё на микротике. Тогда их роутер будет выполнять функцию розетки просто

Худший ответ:
Нужно. И не простой, а ONU модуль. https://mikrotik.com/product/SFPONU

Но нужна настройка в соответствии с параметрами "головы" со стороны провайдера. Обычно они эти настройки неохотно говорят, только вручную "скатать" настройки с имеющегося оптического терминала и накатить их на ONU модуль.

Даже в таком случае шансы, что все заведётся - невелики, но попробовать можно, если не жалко ~100$ на сам модуль (hEX S дешевле стоит, если что).
Вопрос: Как ограничить количество запросов к серверу?

Лучший ответ:
Думаю стоит настроить ограничение на уровне веб-сервера.
Вот пример для nginx.
https://nginx.org/ru/docs/http/ngx_http_limit_req_...

Можно и с помощью кода, но это будет не так эффективно.
Вот для примера https://github.com/nikolaposa/rate-limit

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

Лучший ответ:
Очевидно, что ответ "да" (потому что как-то же это сейчас работает)

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

А собрать из кусков вроде linux + mono + красивый магазин игрушек - да пожалуйста, сколько угодно таких проектов, та же SteamOS

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

Худший ответ:
Очевидно, что ответ "да" (потому что как-то же это сейчас работает)

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

А собрать из кусков вроде linux + mono + красивый магазин игрушек - да пожалуйста, сколько угодно таких проектов, та же SteamOS

В сравнении с консолю playgate есть большая разница - операционки особой там нету, есть примитивная прокладка между железом (тоже довольно примитивным) и кодом игры, который собственно и выполняет фактически всю работу.
Вопрос: Разъясните задачку по Python?

Лучший ответ:
2 дня всей группой пытаетесь подставить две переменные в уравнение?
Берете первой число из набора А, потом первое число X, решаете уравнение. Второе число Х. Третье число Х. Когда закончились - берем следующее число А. Таблица - результат функции при подстановке переменных.

Худший ответ:
Можно вот так попробовать:
import math


def func(x, a):
    return a * math.cos(1 - x / a)


a = [1, 2, 3, 4, 5]
x = [1, 2, 3, 4, 5]

for i in a:
    for j in x:
        y = func(i, j)
        print(f'{y:.7f}', end='   ')
    print('\n')
Вопрос: Нужен ли мне сертификат от cisco если я собираюсь податься в бекенд?

Лучший ответ:
Не нужен, но для галочки сделайте, вдруг пойдете в админы)

Худший ответ:
В вузе предложили пройти бесплатно курсы от Cisco и получить сертификат,Вообще это полезная штука, даже если не получите сертификат, у cisco хорошие курсы, после них будете понимать как устроены пакеты, как работают пакеты, узнаете про протоколы маршрутизации. Ну и понастраиваете оборудование в пакет трейсере.
Вопрос: Как можно найти все компьютеры с слабыми HDD дисками в домене?

Лучший ответ:
PowerShell-скрипт с командлетом Get-PhysicalDisk вернет вам нужную информацию.
Можно обходить скриптом все компьютеры или добавить скрипт в GPO

Худший ответ:
Есть разные варианты 

Бесплатные - написать скрипт + еверест или еще какая программа которая соберёт все данные с ПК
Условно бесплатные - много программ которые могут тебе дать такие данные даже на триал варианте (А по голове не получит ни кто за это ?)
Платные - почти все антивирусы и тд энтерпрайз сегмента умеют такое
Вопрос: Как сделать чтобы объекты не игнорировали коллайдеры?

Лучший ответ:
Попробуйте двигать через твердое тело.
var rigidbody = GetComponent<Rigidbody>();
rigidbody.MovePosition(objPosition);

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

Лучший ответ:
Ваш вопрос относится к архитектуре приложения, а не к "как правильно использовать классы".

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

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

Худший ответ:
Курить принципы SOLID, GRASP, DI, и т.д. Паттерны, опять же. Во время сочинения кода проверять, соответствуют ли твои идеи этим принципам. Конечная цель - "сильная связность и слабая зацепленность", тогда твой код сможет быть простым и понятным.
Но всё в меру.
Вопрос: Есть ли библиотеки с помощью которых можно перевести строку с английского на русский?

Лучший ответ:
1. Свой словарь переводов
2. Своя нейронная сеть по переводу
3. ОК Гугл, переведи мне ...

Худший ответ:
Можно использовать сторонние API для перевода, например Google.

Так же, если поискать есть много бесплатных аналогов, но увы, чаще всего, их качество весьма плачевно.
Вопрос: Можно ли настроить сеть от одного абонента к другому посредством wi fi направленных антенн?

Лучший ответ:
Если прямая видимость - без проблем можно до 500 Мбит до 11 км вытянуть используя диапазон 5 ГГц и спецоборудование, например Микротик. Всё утыкается в бюджет
Вопрос другой - а зачем?
Что мешает на роутере правильно QoS настроить? Тогда ничего лагать не будет - роутер сам будет приоритеты трафика разруливать
На компе, что торренты качает - с самом торренте ограничение на 50 Мбит поставь - хватит выше крыши
По секрету скажу, FullHD трансляция - это около 5 Мбит
4K При частоте 24 – 30 кадров в секунду – порядка 35 – 45 Мб/с.
4K При частоте 40 – 60 кадров, битрейт составляет 58 – 65 Мб/с.
У меня на работе полсотни человек сидит на 100Мбитном канале. Если верить Zabbix - средняя нагрузка Интернет канала - 22 Мбит в рабочее время с редкими скачками

Худший ответ:
Увы, больше 50 мегабит в хорошую погоду не получите, а скорее всего и того меньше. Либо оборудование будет стоить ту же сотку с тремя нулями на одну сторону. 
А с самими антенами достаточно просто, направляете друг на друга, хоть лазерным фонариком, хоть через прицел или бинокль с сеткой. Но чем меньше кабель от антены, тем лучше, желательно не больше пары метров. так что лучше точки доступа купить всепогодные, выставить на улицу с кабелем и антеной, питать через poe.
И да, нужна прямая видимость, без листвы и деревьев.
Вопрос: Хочу сделать игру в стиле паркур на каком редакторе лучше?

Лучший ответ:
В каком больше разбираетесь на том и делайте.
Если вы новичок, то на Unity будет проще.

Худший ответ:
Движок можно использовать любой, по анимациям что в Unity, что в UE функционал практически совпадает, а вот для их создания, я бы посоветовал рассмотреть Каскадёр.
Вопрос: Как считать заранее неизвестную таблицу из базы данных в golang?

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

Попробуйте сначала выполнить запрос
SHOW COLUMNS FROM mytableдля получения имен полей и их типов.
Rows.Columns для получения имен полей и их порядка. Получим []interface{}.

Затем, зная имена полей, можно получать результаты при помощи SELECT col1, ... colN FROM mytable и при обработке rows.Next()получать сами данные, которые заполнять уже в массив структур.
Соответственно, сами структуры уже сериализовывать в нужный формат.

Худший ответ:
func sqlToJson(res *sql.Rows) ([]byte, error) {
	// создаем массив названий столбцов таблицы
	arrNamesColumns, _ := res.Columns()

	// получаем количество столбцов
	kolColumns := len(arrNamesColumns)

	// создаем отображения которое по ключу (названию столбца) будет хранить срез всех записей данного столбца
	resMap := make(map[string][]interface{}, kolColumns)

	// создаем срез который будет хранить все поля текущий строки таблицы в массиве байт
	tempLineByte := make([][]byte, kolColumns)

	// создаем срез который будет хранить ссылки на поля предыдущего среза
	// это нужно для метода Scan который принимает interface по ссылке таким образом записывая в него данные
	pTempLineByte := make([]interface{}, kolColumns)
	for i := 0; i < kolColumns; i++ {
		pTempLineByte[i] = &tempLineByte[i]
	}

	// создаем срез который будет хранить все поля текущий строки в соответствующим типе данных
	tempLine := make([]interface{}, kolColumns)

	// перебираем все строки тоблицы
	for res.Next() {
		// метод Scan записывает в срез tempLineByte текущую строку через срез pTempLineByte который хранит ссылки на поля tempLineByte
		err := res.Scan(pTempLineByte...)
		if err != nil {
			return nil, err
		}

		// перебираем все поля текущей строки
		for i := 0; i < kolColumns; i++ {
			// преобразовываем байтовое значение в значение соответствующего формата
			json.Unmarshal(tempLineByte[i], &tempLine[i])

			// если записалось значение nil то в поле была строка
			if tempLine[i] == nil {
				// добавляем значения в соответствующий ключу срез отображения resMap преобразуя его в строку
				resMap[arrNamesColumns[i]] = append(resMap[arrNamesColumns[i]], string(tempLineByte[i]))
			} else {
				// иначе добавлять в срез соответствующие значения tempLine
				resMap[arrNamesColumns[i]] = append(resMap[arrNamesColumns[i]], tempLine[i])
			}
		}
	}

	// преобразовываем отображения в json и возвращаем в массиве байт
	return json.Marshal(resMap)

	// p.s. чтобы получить привычный json нужно просто преобразовать этот массив байт в строку
	// также, может понадобится убрать из этой строки символы переноса \n которые могут быть в текстовых полях базы данных, так как с ними json считается неликвидным
}
Вопрос: Как определить коллизию квадратов?

Лучший ответ:
Алгоритмов тут за вас никто придумывать не будет. Этот ресурс не для этого.
Учитесь решать такие задачи начиная с более простых.
Двухмерный случай с квадратами можно упростить понизив размерность задачи.
Представьте, что у вас не квадраты, а отрезки и не на плоскости, а на оси.
Нужно сформулировать булево выражение, которое будет истинно только в случае наложения отрезков (хотя бы частичного).
Вам уже предлагали в комментариях попробовать представить квадраты не размерами, а координатами границ. Если у вас возникнут трудности и с вычислением координат правых нижних углов, то у меня для вас плохие новости...
Попробуйте решить задачу для отрезков на оси, а потом подумать как расширить её для квадратов на плоскости.
Если на этом этапе ещё не очевидно решение, то начинать следует с более простого. Хотя, казалось бы, куда уж проще.

Худший ответ:
Для разнообразия: расстояние между центрами квадратов меньше суммы радиусов вписанных окружностей.
Вопрос: Возможны ли технически блокировки VPN-протоколов?

Лучший ответ:
Еще как возможна! Да собственно уже и применяется :) 

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

Технически вся ситуация будет развиваться в следующую сторону:
- внедрение российских CA
- интернет только по сертификату
- белые списки на трансграничных узлах
- VPN с одной из сторон за границей только по разрешению известно откуда

Характерный пример - Туркменистан. Крошечная страна, все население - примерно как жители Питера и Красноярска, вместе взятых. Единственный государственный провайдер. Не так давно тут просто ахтунг какой-то был - то ли "бегунков" туда понаехало, то ли местные прорвались, но постоянно тут кто-то спрашивал, как обойти блокировки в Туркменистане. А никак. Туркменская СБ тупо банит все сайты, которые ей не понравились и плевали они на побочный ущерб. Есть какие-то решения, которые некоторое время работают, потом их накрывают.

Возможен и такой вариант, но он менее вероятен - все-таки Россия далеко не Туркменистан. Скорее всего "развитие" пойдет в сторону автоматизации, то есть списки, сертификаты и авто-бан всего неразрешенного.

Худший ответ:
Да, возможно.
Сложно будет блочить sstp и shadowsocks с обфускацией
с учетом что ВПН используется повсеместно, для связи серверов,филиалов,да тех же вышек сотовой сети...
скорее будут делать банить зарубежные  IP, как в туркменистане.
Решения - изобретать новые VPN протоколы))
Вопрос: Как перенаправить на другую страницу без обновления страницы?

Лучший ответ:
Сокеты + javascript

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

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

Худший ответ:
У меня всё по секциям/блокам раскидано. Так проще искать конкретное изображение.