Vikhrmodels/habr_qa_sbs huggingface dataset:
Вопрос: Как вывести строку из списка?

Лучший ответ:
В данной постановке список вообще не нужен
x = input()
print('Вы выбрали ' + x)

Худший ответ:
Ну так:
x = ["aaa" , "bbb", "ccc"]
string = input(':')
# возвращает индекс по елементу
i = x.index(string)
print(f'вы вибрали: {x[i]}')
del x[i]
print(x)
Ну довольно простой пример, здесь ещё можно зделать проверку на вхождение как вариант
Вопрос: Как создать функцию которая принимает число и диапазон?

Лучший ответ:
Просто условие со сравнением числа и границами диапазона. Программа на три строки.
Код - за деньги, на фрилансе.

Худший ответ:
всем спасибо сделал в итоге сам
#include 
using namespace std;
int main()
{
	setlocale(LC_ALL, "rus");
	int a;
	int X;
	int Y;
	cout << "Введите число ";
	cin >> a;
	cout <<"Введите нижнее значение диапазона => ";
	cin >> X;
	cout << "Введите верхее значение диапазона => ";
	cin >> Y;
	if (a>= X && a<=Y)
	{
		cout << "Число входит в диапазон ";
	}
	else cout << "Число не входит в диапазон ";
	}
Вопрос: Как записать файл в хранилище телефона?

Лучший ответ:
Чтобы не писать здесь, обо всех возможных причинах. Просто оставлю вам ссылку на подробный гайд по работе с файлами:
forum.startandroid.ru/viewtopic.php?f=26&t=860

Худший ответ:
Использовать Content Provider
Вопрос: Возможно ли сделать генератор ключей, основываясь на том, по какой логике были сделаны прошлые 4 ключа?

Лучший ответ:
Так вот возможно ли сделать генератор ключей под определённую программу, основываясь на том, как были сгенерированы прошлые 4 ключа
Конечно

по какой логике были сгенерированы прошлые 4 ключа
спросить у автора алгоритма

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

Лучший ответ:
git clone --bare
илиgit clone --mirror
гуглите и познавайте отличия

Худший ответ:
Возможно.
Вопрос: Модификация ответов в rest api woocommerce?

Лучший ответ:
в functions.php
add_filter( 'woocommerce_rest_prepare_product_object', 'filter_function_name', 10, 3 );
function filter_function_name( $response, $object, $request ){
    if( empty( $response->data ) )
        return $response;

    $inclde = [
        'id'        => $response->data['id'],
        'name'      => $response->data['name'],
        'images'    => $response->data['images'],
        'price'     => $response->data['price'],
        'meta_data' => $response->data['meta_data'],
        'categories'=> $response->data['categories']
    ];

    return $inclde;
}

WooCommerce имеет эти подготовительные фильтры для большинства своих ответов API. Обратите внимание, что их формат-woocommerce_rest_prepare_{$type}, где $type - это тип записи или имя таксономии (например, product_cat). В WooCommerce 2.7 некоторые из этих фильтров также имеют суффикс _object.

Можно сделать адаптивными rest запросы, с помощью третьего параметра ($request) в функции и производить манипуляции с ответом ($response).

Спасибо Alex за наводку! 

Худший ответ:
Как вариант, попробуйте rest_prepare_{$this->post_type}
Вопрос: Где должны выполнятся сложные операции в React / Redux?

Лучший ответ:
Для сайд-эффектов и вызовов других action принято использовать middleware(redux-thunk, redux-saga). Ничего подобного в редьюсерах быть не должно.
Редьюсеры должны оставаться чистыми функциями и все вычисления в них должны ограничиваться синхронным обновлением состояния.

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

Лучший ответ:
Не =-, а -=. =- просто присваивает значение со знаком минус, а -= это короткая формаa = a - 1 // тоже самое, что a -= 1
Также, в поле width содержится не число, а строка вида 10px, поэтому вы должны сначала преобразовать ее в число. Да и вы почему-то пытаетесь отнять не число, а строку.
Вот так правильнееpercent.style.width = (parseInt(percent.style.width) - 50) + 'px';

Худший ответ:
сначала надо получить значение ширины блока, а потом это значение уменьшить
https://codepen.io/Lareta/pen/LoNjZz
Вопрос: Какие технологии помогут сделать безопасный канал передачи данных?

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

Худший ответ:
Для этого используется TLS. Это спец-протокол, который решает все вопросы, которые вы хотите решить. Там есть возможность шифрования, взаимной аутентификации как клиента, так и сервера и всё такое. Минусы -- вычислительно сложно. Т. е. на слабых микроконтроллерах процесс установления TLS-сессии может занимать время, плюс расход батарей. Плюсы -- уже есть готовые либы под множество платформ/архитектур, которые можно использовать, чтобы не изобретать велосипеды и не писать своё.
Гарантия от replay attack достигается тем, что для передачи команды сторонам нужно аутентифицироваться, т. е. это всегда двусторонний обмен. Технически сначала стороны обмениваются сертификатами, проверяют их, затем на основании алгоритма Диффи-Хэллмана формируют симметричный ключ шифрования, который будет использоваться для шифрования потока данных. В общем случае, в каждой сессии этот ключ будет разным. Есть механизмы кэширования и сохранения стейта, для ускорения установления TLS-сессии (допустим, на случай если клиент недавно уже подключался) -- это нужно, чтобы увеличить скорость согласования TLS-соединения), но это всё опционально и отключабельно.
Внутрь TLS можно засунуть что угодно -- кастомный бинарный протокол на базе TCP/IP или REST API  на базе HTTP -- без разницы.
Вопрос: Как узнать какой вольтаж поддерживает ноутбук для ОЗУ?

Лучший ответ:
1.5 вольта - это стандартный вольтаж DDR3 памяти. 1.35 вольта - это стандарт памяти DDR3L.
Если вы вставите память 1.5 вольта в ноутбук где 1.35 вольт, она просто не заработает, а вот наоборот будет работать. Но желательно тогда в биосе снизить сам вольтаж до 1.35, или поднять частоты памяти не снижая вольтаж, если биос материнской платы позволяет это сделать.
Подробнее ответ на ваш вопрос вы можете прочитать здесь.

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

Лучший ответ:
Ещё раз, читайте и учите C#.

Худший ответ:
private void Com1 - это приватный(private) метод, который может быть вызван только внутри класса, void - значит что он ни чего не возвращает.
Что бы использовать var test = True в методах класса, вы должны его объявить в этом классе.
class primer {
 bool test;
 private void Com1() {
  test = true;
}
 private void Com2() {
  if (test) test = false;
 }
}

И да, проверять test на null, не нужно, он при создание равен true, только если вы сами в него null не записали, но это вроде только в Net Core можно. Могу ошибаться.
Вопрос: Где ошибочка в этой строке?

Лучший ответ:
В первом pow не та степень.Визуализация выражения

Худший ответ:
-0.3, 2) - как минимум тут, не в квадрате а корень, т.е. 1/2 или 0,5.
Вопрос: Возможно ли разрабатывать в .NET Core без Docker?

Лучший ответ:
Глупости! Докер не нужен для сборки проекта, всё прекрасно работает без него.
Ставите студию, создаете проект, нажимаете кнопочку собрать, на выходе получается готовая сборка которую можно запустить из консоли безо всяких докеров, всё просто)
Запускать так: dotnet YourBuild.dll

Худший ответ:
Не обязательно. 
Есть сборка проекта - выходными файлами которого является скомпилированная библиотека, ресурсы и т.д., 
А есть сборка контейнера, которая создает docker образ и туда помещает результат от сборки проекта. 
Это в простом варианте, на пальцах так сказать.
Но я бы рекомендовал поставить win10 и научиться с ним работать. Он не такой сложный как кажется, но он дает много преимуществ когда разрабывается микросервисная архитектура.
Вопрос: Во что конвертировать огромный, сотни ГБ, CSV-файл для максимально быстрого чтения по «ключу»?

Лучший ответ:
Во что мне конвертировать csv файл, чтобы максимально быстро получать доступ к строке по индексу?
В SQL-таблицу.
MySQL к вашим услугам. SQLite тоже подойдёт.

Худший ответ:
apache parquet

колоночный тип в бинарном формате, решение для экономичного хранения данных в частности csv таблицы.
Компрессия 1тб csv исходных порядка 80-85% = ~120гб в parquet
Скорость чтения ~ х34 раза быстрее чем raw csv файл
Благодаря колоночному типу возможно делать выборки без чтения полностью файла


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

Лучший ответ:
потому что переменные вне функции не видны внутри функции.
https://www.php.net/manual/ru/language.variables.s...

Худший ответ:
Добавьте в функцию
function write ($teg, $book, $value) {
    $global $colorist, $xml;
     ... 
}
И включите отображение ошибок на экран
Вопрос: Помощь с задачей JS?

Лучший ответ:
function logStudents (studentsArr) {
  studentsArr.forEach(function(student){   // вот тут функция должна принимать каждый элемент массива
    for(var key in student){  // и проходимся по этому каждому элементу, а не про studentsArr
      console.log(key + ': ' + student[key])
    }
  })
}

Худший ответ:
Создай прототип обьекта студент и опиши метод valueOf, если хочешь по красоте, ну либо как выше с проверкой objectOf
Вопрос: Как сделать preload страницы?

Лучший ответ:
Я взял себе вот это решение:
https://stackoverflow.com/a/50891389/4549490
Вроде работает.

Худший ответ:
я сделал view, затем сделал его прозрачным и не много затемнил по центру разместил preloader. как только приложение стартует я сразу показываю этот view. у webview есть метод onLoadEnd как только от отрабатывает я прячу preloader. Только помните что view  c preloader  должно обязательно иметь position:"absolute" и не как не в один момент показывать view а в другой прятать webview.
Вопрос: Как устроиться работать в 1С без образования?

Лучший ответ:
если охота в 1С - сертфиикат пригодится
но 1С тупиковый путь
неужели медицина настолько бесперспективна ?

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

Но все таки рекомендую отталкиваться от базового высшего, добавить к нему ИТ технологии. И получишься очень востребованным спецом. Биг.Дата, Аналитика, Разработка баз данных и прочее прочее

Какие шансы устроиться программистом 1С в Москве?
Вопрос: Достоверно известно, что некоторый API периодически отваливается по таймауту или с 5хх ошибкой, как решить?

Лучший ответ:
1) Кешировать на стороне приложения, что возможно. Тут все сильно зависит от того какое это API и характер работы с ним. В вопросе это не указано. 

2) При обращении к API учитывать таймаут или 500 ошибку. Повторять до успеха или признания поражения. Если на API много бекендов можно попробовать слать параллельные запросы в стиле промисов.

Худший ответ:
обработать ответ 500 ,подождать несколько секунд и попробовать снова, итак N попыток
Вопрос: Как сделать ограничение плавающему элементу?

Лучший ответ:
Если есть контент, который должен «плавать» внутри непосредственного родительского блока без сложной логики этого действия, то можно использовать position: sticky;. Но он поддерживается не всеми браузерами. 
Для условной автоматизации этого дела есть хороший плагин https://dollarshaveclub.github.io/stickybits — там, где нет sticky, он сделает с помощью fixed и наоборот.position: sticky; хорош тем, что он не добавляет никаких слушателей прокруток и т. п., что положительно сказывается на производительности страницы.
P. S. Но без JS не обойтись вовсе, если нужно добавить логику по типу «если плавающий элемент доходит до какого-то элемента внутри общего родительского блока, то сделать то-то, то-то».

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

Лучший ответ:
1. node modules не надо иметь в репозитории. только package.json
2. github это не хостинг. Есть Github pages, но он не воспринимает ничего кроме статики package.json

Худший ответ:
Тебе нудно арендовать VPS сервер.
Подключится к нему из командной строки по ssh
Установить node.js
Сделать git pull из нужного репозитория
а дальше все как обычно:nmp i
npm start
Если код в репозитории изменится, сново подключаешься к серверу, делаешь git pull и по новой команды npm
p.s.: Это самый простой вариант
Вопрос: Сколько нужно денег чтоб начать майнить в 2020?

Лучший ответ:
сейчас майнят в телеграме на лохах

Худший ответ:
Майнить? В 2020? Лол.
Эта пирамида рухнула еще два года назад.

Сколько нужно вложить чтоб получать около 500$ в месяц.
Пхахаха. Если бы это было возможно, то школьники бы уже так и делали, а не спрашивали на Тостере.
Вопрос: Могуть ли забанить в вк за баг?

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

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

Лучший ответ:
Не создавайте индексы до добавления данных.
Типичный дамп БД состоит из двух разделов:
1. структура БД
2. данные БД
В структуре БД создаются таблицы: их поля и индексы.
Вам нужно вырезать код этих индексов и добавить создание индексов в конец дампа.
Тогда скорость импорта дампа вырастет раз в 50.
Также на скорость работы влияет тип таблиц - myisam работает быстрее innodb.

Худший ответ:
670 мб не должны заливаться быстро =)
Вопрос: Как получить нужные строчки из БД через RedbeanPHP?

Лучший ответ:
Кроме методов findOne и findAll в этой дебильной библиотеке есть еще и другие
их можно найти в документации. 
https://redbeanphp.com/index.php?p=/finding

Худший ответ:
Спасибо, нашёл вариант что работает так как мне необходимо!$GetgaremUser = R::find( 'usersgarem', ' xoziaen LIKE ? ', [$id] );
Вопрос: Перегрузка функций с unsigned параметром и обычным?

Лучший ответ:
Стандартом определены правила вывода типа для числового литерала из самого литерала. Также в стандарте определен формат представления числового литерала.
 Согласно этим правилам и этому формату, 5 будет являться числовым литералом с типом int.
Если бы ты написал 5u, то тип бы уже был unsigned int. А если бы ты написал 5lu, то тип бы уже был unsigned long int.

Худший ответ:
В Си int - это тип по-умолчанию.
Вопрос: Бывало ли у вас, что скрипт на php подвисает на несколько минут просто так?

Лучший ответ:
Пока логов не будет - это все гадание на кофейной гуще. Обложите путь выполнения скрипта трэйсами, посмотрите в чем дело - быть может поймали лок в бд или внешний сервис долго отвечает на запрос. Плюс выглядит так, что while(true) можно поменять на запуск по крону - говорят php рожден, чтобы умирать

Худший ответ:
Решение: переделал скрипт на крон вариант, бесконечный цикл убрал.
Добавил проверку через flock$lock = fopen("/tmp/lock.txt", "a+");
if (!$lock || !flock($lock, LOCK_EX | LOCK_NB)) {
    exit("LOCK_DETECT. EXIT \n");
}
Вопрос: Как работают современные мессенджеры?

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

Что касается быстрой загрузки истории сообщений - то тут нужно сохранять сообщения таким образом, чтобы сообщения одного пользователя всегда были на одном и том же сервере (если используется шардинг). Тогда обычный SELECT из базы по user_id будет вполне себе быстро работать даже на огромной базе. Также таблицы можно еще партицировать, чтобы еще быстрее загружать последние сообщения в истории.

Что касается безопасности, если не использовать e2e шифрование, как вариант, можно использовать обычные RSA ключи. Например на сервере генерируем два ключа, открытый отправляем кленту, он шифрует им сообщение и передает сообщение на сервер. Вы на сервере его расшифровываете при помощи закрытого ключа. Для отправки сообщения клиенту, можно сделать тоже самое. Клиент также генерирует два RSA ключа и открытый ключ отправляет серверу. Когда  серверу нужно доставить сообщение клиенту, он шифрует сообщение открытым ключём, который ему высылал клиент и отправляет ему.

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

Хорошее дополнение по хранению сообщения и организации поиска от Ильи
Распределение нагрузки решается шардингом — получается много небольших БД вместо одной огромной. Скорее всего каждое сообщение разбивается по словам/частям слов и сохраняется в поисковый индекс типа слово—message_id и такой индекс строится для каждого пользователя и тоже шардируется. При поиске сначала получаем идентификаторы подходящих сообщений из поискового индекса, потом выгружаем сообщения из БД с сообщениями.

Дополнение от Stalker_RED 
только не "сообщения одного пользователя всегда были на одном и том же сервере" а сообщения из одного чата/канала/группы (включая чаты, в котором всего два участника). То-же самое касается построения индекса.

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

select по id самый быстрый, в любых БД, что именно Вам непонятно?
он же не в один чат компонует, приложуха запрашивает столько чатов сколько нужно
Вопрос: Писать форму регистрации самому?

Лучший ответ:
Зависит от проекта и ситуации. Где-то можно взять готовое, где-то надо делать ручками :-)

Худший ответ:
Бывают ли такие ситуации, когда лучше самому писать форму регистрации?
Да. Везде, где есть ваша ответственность за перс.данные и финансы клиента.
Например - собственный интернет-банкинг.
Вопрос: Почему не работают статические файлы в Django при DEGUB = False?

Лучший ответ:
Почему не работают статические файлы в Django при DEGUB = False?
Потому что в коде django в части, которая обслуживает статику, находится примерно такой код:
def serve(request, path, insecure=False, **kwargs):
    """
    Serve static files below a given point in the directory structure or
    from locations inferred from the staticfiles finders.
    """
    if not settings.DEBUG and not insecure:
        raise Http404
...
Если вы это сделали на продакшеновом сайте - то необходимо настроить статику на вашем веб-сервере. Потому что обслуживание статики - это задача вашего веб-сервера.
Если вам нужно именно в отладочном режиме при DEBUG=False - то запускайте сервер с флагом runserver --insecure

Худший ответ:
В документации чёрным по белому написано, что обработка статики средствами Django - это очень медленно, небезопасно и допустимо к использованию только с dev-сервером в процессе разработки. В рабочем окружении статику должен обслуживать web-сервер.
Вопрос: Как задавать места, в которых интерпретатор python осуществляет поиск?

Лучший ответ:
Помимо способа, указанного в соседнем ответе, есть еще способ сделать это из самой программы на питоне:
import sys

sys.path.append('some/custom/path/to/modules_and_packages_collection_folder')

Худший ответ:
https://andreyex.ru/yazyk-programmirovaniya-python...

	PYTHONPATH

Он имеет ту же роль PATH. Эта переменная указывает интерпретатору Python, где найти файлы модуля, импортированные в программу. Должен включать в себя каталог библиотеки исходного Python и каталоги, содержащие исходный код Python. PYTHONPATH иногда предварительно устанавливается установщиком Python.

set PYTHONPATH="путь"
Вопрос: Ошибка при написании Telegram Bot?

Лучший ответ:
@bot.message_handler(commands=['start'])
разве название команды не должно быть в квадратных скобках?

Худший ответ:
Если разобрать Traceback, то написано, что проблема в библиотеке. Попробуйте обновить pip и библиотеку.
Вопрос: Сколько будет стоить верстка крупного интернет-магазина?

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

Например, время frontend-end developer'а в стеке с Angular, уровня middle в среднем стоит 160к/160= 1к за час. 

Одна страница со среднем уровнем логики это 8 часов (с затратами на вёрстку, логику, отладку, рефакторинг, архитектуру).

Средний сайт магазин предпологаю 6-10 страниц. Итого 100к.

Хреновое тз + 20%.
Срочность ("хочу за месяц в продакшн") +50%.
Непроверенный/ненадежный заказчик или жопа чует беду = +25-50% и половина предоплаты с невозвратом в случае отказа либо любой иной причины.
Нет нормального бекенда с sdk (т.е. делать самому элементарный бэк) +100%.
Подключить то то, сё то - отдельное дополнение к договору и отдельная цена.

P.S. Вопрос был о чистой вёрстке? 10 стр непонятного качества 20-40к.

Худший ответ:
От 500 до 50000$ +/- 10000$


Новая версия будет работать на Vue.js

Вы хотите сделать вёрстку отдельно от vue? А Вы вообще уверены что Вам нужен vue?

P.s. какой вопрос такой ответ.
Вопрос: Как решить эту проблему с if/else?

Лучший ответ:
В localStorage хранятся только строки. Если вы делаете так  localStorage.setItem('token', false), то при localStorage.getItem('token') вы получаете не '', а результат приведения false к строке, т.е. 'false'.
Впрочем false !== '' - тоже истина, потому что !== сравнение без приведения типов.

Худший ответ:
Насколько я понял ваш код, вам нужно просто
if (getToken) {
 // ...
Вопрос: Как обычно хранят данные зарегистрированных пользователей?

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

Худший ответ:
Всего два типа объектов уровня:
Юзеры/Сервисы и Права (для них)
Сервис (это сервис-пользователь;  внутри системы) знает юзера (пользователя сервиса) только по id, если не разрешён явный доступ для этого сервиса к данным юзера через права сервиса.
Верхний уровень - управляет доступом к нижним.
The end.