Vikhrmodels/habr_qa_sbs huggingface dataset:
Вопрос: Как удалить пробелы из значения цены после получения данных от парсера Python 3.8?

Лучший ответ:
Ты не тот пробел убираешь. Скопируй пробел с консоли, когда у тебя выводится цена в консоли Python. И в replace подставь его. Пробелы бывают разные.

Худший ответ:
Написать регекс, который матчит все нечисловые символы и удалить их
Вопрос: Что такое vue.js, насколько он мейнстримен и насколько эффективен?

Лучший ответ:
Что этоVue (произносится /vjuː/, примерно как view) — это...для чего его разработали? Чтобы не думать над DOM, а думать над структурой данных и их изменением.Сложилось впечетление, что это некое хипстерское неэффективное поделие. Это ведь не так?  нет, работает вполне эффективно и быстроЕго ведь используют в каких-нибудь крупных проектах?https://github.com/vuejs/awesome-vue#appswebsites Кстати, aliexpress на нем работает. Ну и евроньюс.Насколько он упрощает разработку?
По сравнению с purejs и jquery - очень сильно, по сравнению с другими (react/angular) меньше преимущество, но (ИМХО) оно все равно естьНасколько быстро он работает? 
Оверхед малозаметенРазработчики предлагают использовать его в паре с Node.JS, но что насчет более мейнстримного в веб-разработке PHP? 
Я использую в связке с laravel, например для создания взаимосвязанных элементов форм. Вполне удобно, но очень хочется все сделать spa (потому как очень удобно все делать в одном месте). А тут уже получается требование server side рендеринга для поисковых ботов, что невозможно без nodejs.Стоит ли им пользоваться, если да, то в каких типовых задачах можно раскрыть как можно больше его потенциала? 
Стоит. Любая задача, где отображаемые данные зависят от ввода пользователя. Даже корзина интернет магазина с кнопками изменения количества и удаления - даже если каждая из них шлет данные на сервер по ajax. Формы из нескольких этапов, всякие калькуляторы и прочее и прочее.

Худший ответ:
Это jquery нужна была чтобы кросс-браузерно работать с dom. Vue же - полноценный фреимворк. Нужен для четкой структуры и архитектуры приложения. Решает базовые задачи, такие как синхронизация интерфейса с данными, рутинг. Вносит модульность, что дает легкое повторное использование и инкапсуляцию данных, стилей, разметки. 
Нода нужна для vue как среда разработки и для ssr, но это фронтендеры запарятся. На чем делать бекенд api вообще все равно т.к это отдельное приложение. Ssr на php так же нельзя сделать, как и yii2 запустить на js.
Vue существует с 2014 года, стремительно набирает популярность. Гитлаб и алиэкспрес на нем работают.
Подходит для любых задач, где есть аякс и нужно динамически менять интерфейс. Начиная с корзины, фильтров и до любых spa.
Есть сравнение с react и angular, но это чисто для фронтендеров.  
https://www.youtube.com/watch?v=FFZfmIQ9I44
https://www.youtube.com/watch?v=kuHSJNxNFQw
Ну и для первого приложения vue лучше всего подходит, тут даже думать нечего.
Вопрос: Как через SSH заархивировать содержимое VPS для последующего восстановления?

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

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

# dump -0auL root -f - /dev/vda2 | bzip2 | ssh user@servera.net -p 22 dd of=vda2.dump

Параметры, которые нужно менять:

    -L root - метка бэкапа
    /dev/vda2 - имя устройства, с которого снимается бэкап
    user@servera.net - пользователь и имя сервера, куда передается бэкап
    vda2.dump - имя файла, куда будет записан бэкап (по умолчанию он будет в домашнем каталоге пользователя)

На сервере servera.net должен уже существовать юзер user - именно его пароль будет запрошен.

Можно через dd, как выше, но в таком случае будут передаваться все блоки в том числе и пустые и размер файла бэкапа будет равен размеру диска (до сжатия)

Худший ответ:
Зачем делать полный дамп??
На мой взгляд, проще скопировать актуальные данные и необходимые конфиги.
Зачем таскать еще и файлы операционной системы?
Большинство арендодателей VPS по умолчанию заливают "золотой образ", который они допилили для скорейшего разворота и выкинули все лишнее, что на VPS не понадобится.
(Разумеется, оставляют еще возможность полной ручной установки системы)
Но если вы согласны на "Золтой образ", а это отнюдь не ущербное решение, то о5 же. Нужны только данные и несколько конфигов.
Вопрос: Как распространять ПО методом 1 USB-флешка = 1 программа?

Лучший ответ:
Хэш(хэш(S/N флешки)+хеш(UUID раздела на флешке)) или что-нибудь в этом роде. Конкретный алгоритм хеша - по выбору разработчика. Можно еще контрольную сумму от исполняемого файла добавить. Или вычесть. Или умножить... и т.п. Плюс парочка ложных хэшей, вычисляемых по другим формулам для запутывания взломщиков.

Скопировать можно, но каждый экземпляр программы запускается лишь при наличии конкретной флешки. Не только при копировании файлов, но и при клонировании раздела с флешки не пройдёт проверку и не запустится.
Как любое применение принципа security through obscurity, будет хреновой защитой от хорошего специалиста. Но услуги хакеров стоят дорого, а рядовые сисадмины не хотят (и обычно не умеют) ковыряться в отладчике. Так что на практике такая "защита из г-на и палок" имеет шанс на успех, если цена лицензионного ПО будет не слишком высокой.

Худший ответ:
Любое стандартное использование флеш-диска тут не годится, если программу можно запустить с диска, то её можно и прочитать. Если нельзя прочитать, то нельзя и запустить.
Разве что сделать микрокомпьютер, на котором будет работать сервер приложения, а с диска только запускать внешний интерфейс, обменивающийся с сервером по USB.
Вопрос: Поступить в университет или пойти на работу после школы?

Лучший ответ:
В университет, без вариантов.
Всё равно потом придётся идти, так что бросайте свои инфантильные отмазки в духе "ой, мне надо это, ой, да я зняю лючше" и вперёд, грызть гранит науки.Лично я за работу после школы, так как быстрее вольюсь в IT-сферу, 
Угу, а мы тут с распростёртыми объятиями ждём недоучек, которые даже в шараге не смогли выучиться и на честном слове говорят о своей компетенции.
Дальше не читал, советую прислушаться.

Худший ответ:
Мне кажется твои родители уже знают, куда тебя отправят)
Вопрос: Насколько популярная в России и странах СНГ оплата покупок через webmoney?

Лучший ответ:
Вебмани мёртв давно, как и Киви. Обе конторки та ещё мерзота.

Худший ответ:
0,0%

хотя.. есть темы с телеграм и закладками, может, там популярно
Вопрос: Как разрешить пхп?

Лучший ответ:
Вообще, в РФ PHP запрещен на законодательном уровне.
Но можно обмануть закон, если у вас nginx, то исправьте строку:location ~* \.php$ {
На:location ~* \.(php|html)$ {
Если Apache, то извиняйте, тут мои полномочия все, бессильны.

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

Лучший ответ:
Токен состоит из трех частей разделенных точкой. Каждая часть кодируется немного модифицированным base64.
Первые две раскодируются вообще без ключа. В конце подпись, кодированная ключом. В вашем примере это 
your-256-bit-secret (попробуйте там справа, где синенькое напечатать другой ключ и смотрите как меняется токен).

<?php
$key = 'your-256-bit-secret'; // ваш ключ
$jwtToken = 'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c';
$jwtArr = array_combine(['header', 'payload', 'signature'], explode('.', $jwtToken));

var_export($jwtArr); /* -> разделяем по точкам
array (
  'header' => 'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9',
  'payload' => 'eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ',
  'signature' => 'SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c',
) */

echo PHP_EOL . base64_decode($jwtArr['header']) . PHP_EOL; // декодированный заголовок
// -> {"alg":"HS256","typ":"JWT"}
echo base64_decode($jwtArr['payload']) . PHP_EOL; // декодированная нагрузка
// -> {"sub":"1234567890","name":"John Doe","iat":1516239022}

$calculatedHash = hash_hmac( // сами считаем хеш
	'sha256',
	$jwtArr['header'] . '.' . $jwtArr['payload'],
	$key,
	true);

echo base64_encode($calculatedHash) . PHP_EOL;
// -> SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV/adQssw5c=

echo $jwtArr['signature'] . PHP_EOL;
// -> SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c
// Похоже? Там слегка модифицированный base64

Третья часть - подпись. Если взять первые две части и получить sha265-хеш с использованием вашего ключа, то он должен совпасть с первой частью. Это подтвердит, что первые две части никто не изменял.

Хоть бы вики почитал, в самом деле :)

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

При выдаче токена сервер генерирует заголовок и полезную нагрузку, записывает их в JSON и кодирует в модифицированный BASE64. Получается две строки. Эти строки объединяются через точку и от полученной общей строки вычисляется подпись. Конкретный алгоритм вычисления указан в заголовке. Далее подпись через точку присоединяется к строке и получается полный токен.

При получении запроса с токеном сервер разделяет токен на части, распаковывает заголовок и находит алгоритм подписи. Затем он вычисляет контрольную подпись от первых двух частей токена и сравнивает её с полученной в токене. Если они совпадают, то токен признаётся правильным.

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

Лучший ответ:
Эм. У x86, бати нынешних десктопов, эти сравнения делаются за одну инструкцию CMP, а потом парсилкой регистра флагов тпа JEQ, JZ, JLE, выбирается, куда прыгать. Так что одинаково оно будет на деле.

Но! Современные компиляторы и процессоры гораздо более умны, чем вы хотите. Поэтому, если вы собираетесь написать что-то быстрое, придерживайтесь определенных рекомендаций типа "располагайте данные в памяти линейно (так предиктор кэша выборки работает лучше)" и "избегайте ветвлений (так меньше будет срывов конвейера)". Это лучше гаданий "во что откомпилируется мой код". 

Подлинно горячие места компилируют на C++/C/Rust с контролем полученного ассемблерного кода, но до этого, как правило, вылизывают алгоритм, потому что O(log n) и O(n^3) - две большие разницы.

Худший ответ:
Юнити тут причем?

Если вас так волнует перфоманс ТАКОГО уровня - то вам надо смотреть как это дело развернется в ассемблер. Потому что все намного сложнее чем 1 или 2 операции сравнения.
Кстати в упор не пойму где их две... В первом варианте тоже одна операция сравнения.
Вопрос: Проблема с токеном, из-за которого я не могу делать ботов для телеграмма, как решит проблему?

Лучший ответ:
забей

ну или код сюда

Худший ответ:
Лучше переменную token сохрани в основном коде
Вопрос: В каких книгах можно узнать о разработке высоконагруженный систем на C++?

Лучший ответ:
хайлоад – это набор техник/технологий/подходов, не особо зависящих от конкретного языка.
а не конкретно "пилим вот так на плюсах".

Худший ответ:
Смотрите кальмара, там много всего в исходных кодах. А так выше вам ответили
Вопрос: Как установить драйвера pdo для postgresql на php7.2 Centos 7?

Лучший ответ:
Репозиторий рабочий бы добавить, для начала. Потом и пакеты ставить нужные.
rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-relea...
yum install php72w-pgsql

Худший ответ:
https://www.postgresql.org/download/ кто мог догадаться...
Вопрос: Каким образом лучше создать администратора в Spring Boot проекте?

Лучший ответ:
Приветствую, коллега!
Да, Spring посложнее, чем Django. Но раз тебе удобно писать именно на нем, то конечно же стоит писать backend на нем.
И да, если уж делать проект по-хорошему, то тебе нужен Spring Security. Тебе нужно создать роль ADMIN.
Так как проект простой, то можешь использовать In-Memory Auth.
Так как ты пишешь REST, то скорее всего тебе нужно будет реализовать jwt auth.
Чтобы по умолчанию при старте приложения создать пользователя, можешь имплементировать интерфейс CommandLineRunner и в методе run() создать юзеров и сохранить в БД.

P.S. БД необязательно.

Худший ответ:
мне не нужно никаких пользователей, мне нужен только админ сайта
Ошибаешься. У тебя будет как раз два пользователя - admin и guest.
С разными правами.
Вопрос: Не работает мышь и клавиатура при установке виндовс?

Лучший ответ:
Если вы ставите Win7 на современный компьютер, то вам придется интегрировать XHCI драйвера в установочный образ, ибо в чипсетах Intel начиная с 1хх нет EHCI вообще. Либо ставьте Windows 10

Худший ответ:
У Вас 100% проблема в настройках БИОСа

Попробуйте найти в настройках БИОС такие настройки, как у меня (могут называться по-другому, но связаны с USB) и перевести в состояние включены (Enabled)


www.probios.ru/options/usb - прочитайте
Вопрос: Python Requests — Как авторизоваться на сайте?

Лучший ответ:
Много чего вынужден был прочитать, но ничего не работало как нужно.
В итоге вручную пришлось понять что, как и зачем передает и ждет получить cp.mchost.ru.
На это ушло полдня, но результатом остался доволен. Пользовался инструментарием Google Chrome.

Тут я думаю проблем нет, он не любит запросы не от браузера, юзаю любой первый попавшийся в интернете хедер.
headers = {'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 '
                         '(KHTML, like Gecko) Chrome/87.0.4280.141 Safari/537.36'} 

Дальше открываем сессию, делаем обычный GET запрос по ссылке для логина.
Это нужно для того, чтобы сайт вернул MCHOSTID, который возвращается в виде cookie и что примечательно в строке браузера, но он не обязательный (проверил).
session = requests.Session()
session.get(url, headers=headers)
session.headers.update(headers) # обновим хедеры в сессии

Дальше хитрое. Как оказалось, логин и пароль сайт принимает в виде закодированной строки через BASE64, в которой через двоеточие перечислен логин и пароль.
Auth = base64.b64encode('LOGIN:PASSWORD'.encode('utf-8')).decode('utf-8')

Далее берем MCHOSTID, а также обновляем строку с авторизацией
cookie = session.cookies.get('MCHOSTID', domain='.mchost.ru')
session.headers.update({'Authorization': 'Basic ' + Auth})

Ну и наконец запрос POST, в который мы передаем MCHOSTID в виде строки (именно так ее передает Chrome).
post_request = session.post(url, {'Cookie': 'MCHOSTID=' + cookie})

Худший ответ:
https://gadjimuradov.ru/post/python-requests-avtor...

Сталкивался с такой же проблемой, только при парсинге API, подучите немного литературы по этому поводу, не помешает)
Вам бы в целом с методами POST, GET ознакомиться
Вопрос: Создание и развертывание сервера виртуальных машин?

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

Гипером можно поставить ESXi - на одинокий хост бесплатно (зарегиться на vmware и получить бесплатно ключ).

Для бэкапа берется полка Synology/QNAP, набивается дисками. Бесплатное решение конечно придется поискать, мы используем Nakivo Backup & Replication, оно платное и не особо дешевое, но все вопросы бэкапа закрывает полностью.

Мне видится (не считая лицензий на винду в виртуалках - это Ваше дело) наибольший расход - это полка и винты для нее, а также лицензии на бэкап (если берете платный)

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

Для виртуализации и бекапов достаточно Proxmox.
Вопрос: Долго грузиться восьмёрка. Что придумать?

Лучший ответ:
Попробуйте прогнать еще и adwcleaner с malwarebytes.com - помогает

Худший ответ:
Загрузитесь с диска восстановления и прогоните DISM и SFC, потом добейте оставшийся вирусняк через DrWeb LiveCD
Вопрос: Реализация игры «Морской бой» на серверной части?

Лучший ответ:
I’d
Row 
Column
UserId
State
Gameid 
И никакого джисона

Худший ответ:
Я бы попробовал обойтись такой структурой:
Номер партии | время (если надо) | ход | id
123455            |  12:35:56                |   b5 | 
И просто каждый раз делал селект по номеру партии и каждый раз определял ее исход. Проблемы с производительностью (если будут) можно решить кешированием.
Вопрос: Где начинающему разработчику подглядеть примеры неговнокода?

Лучший ответ:
Практика. Нужен опыт решения конкретных задач средствами языка.
Фреймворки, паттерны и прочая архитектура не может изучаться на пустом месте, все это нужно цеплять на опыт.
Говнокод, который решает задачу, лучше, чем красивая архитектурка, списанная с учебника.
Когда понимаешь, как можно решать - можешь оценить качество решений. Без этого понимания будешь смотреть, как баран, и изобретать карго-культы.

Худший ответ:
В общем забудьте о концепции MVC, как классов и почитайте про ADR она больше подходит под реалии веб-приложений. 
А потом рекомендую PSR стандарты полистать особенно на предмет middleware и pipeline
Вопрос: Как посадить Vue.js на WordPress?

Лучший ответ:
WordPress выступает в качестве бэкэнда и общается с Vue по API. Более опытный товарищ говорит, что это работает, но извращение чистой воды + API у WP черт ногу сломит. На GitHub'е вроде где-то была готовая сборка под WP+Vue.

Худший ответ:
Эти SPA приложения в основном предполагают что это приложение вот так и разрабатывается, на js+vue, а с бэкендом общается по API.
Сами подумайте, это же статическое приложение, собираемое webpack-ом. PHP туда ничего не генерит.
Вот тут человек интересовался, может вынесете что то.
Вопрос: Как посадить готовую верстку на wordpress?

Лучший ответ:
Вопрос скорее должен звучать, так: "Как создать тему для WordPress из верстки?"
Тут все зависит от бюджета проекта и ваших целей...

Хотите продавать тему в дальнейшем на themeforest или бюджет проекта позволяет или же по желанию клиента (согласно ТЗ), то подключайте фреймворк. Например, redux
https://ru.wordpress.org/plugins/redux-framework/

Если хотите сделать все стандартно согласно кодексу ВП, то читайте про Theme Customization API
https://codex.wordpress.org/Theme_Customization_API

Ну а если нужно быстро и дешево, то плагины ACF Pro, Carbon Fields и т.д. помогут в этом

Ну а основы разработки темы изучите тут:
https://codex.wordpress.org/Theme_Development

Худший ответ:
Взяли-бы верстку, и сделали шаблон...
Вопрос: Открыть профиль пользователя телеграм, зная его ID?

Лучший ответ:
Если речь о боте, то в боте можно вывести ссылку на пользователя(и соответственно открыть его профиль) следующим образом:
1. <a href="tg://user?id=123456789">inline mention of a user</a>' с parse_mode = html
2. [inline mention of a user](tg://user?id=123456789) с parse_mode = MarkdownV2

Плюс есть условия при которых это возможно осуществить:
Если пользователь общался с ботом, отправлял колбэк запрос через клавиатуру бота или является членом группы(чата) в которой вы хотите это сделать

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

Лучший ответ:
Можно пройтись по массиву и объединить символ ударения с предыдущим символом.$arrayLetters = preg_split('//u', "оди́н", NULL, PREG_SPLIT_NO_EMPTY);
$arrayLettersResult = [];
$stressSym = "́";

foreach ($arrayLetters as $i => $letter) {
    if ($letter == $stressSym) continue;
    if (!empty($arrayLetters[$i + 1]) && $arrayLetters[$i + 1] == $stressSym) {
        $arrayLettersResult[] = $letter . $stressSym;
    } else {
        $arrayLettersResult[] = $letter;
    }
}

var_dump($arrayLettersResult);

/*
array(4) {
  [0]=>
  string(2) "о"
  [1]=>
  string(2) "д"
  [2]=>
  string(4) "и́"
  [3]=>
  string(2) "н"
}
*/

Худший ответ:
Можно пройтись по массиву и объединить символ ударения с предыдущим символом.$arrayLetters = preg_split('//u', "оди́н", NULL, PREG_SPLIT_NO_EMPTY);
$arrayLettersResult = [];
$stressSym = "́";

foreach ($arrayLetters as $i => $letter) {
    if ($letter == $stressSym) continue;
    if (!empty($arrayLetters[$i + 1]) && $arrayLetters[$i + 1] == $stressSym) {
        $arrayLettersResult[] = $letter . $stressSym;
    } else {
        $arrayLettersResult[] = $letter;
    }
}

var_dump($arrayLettersResult);

/*
array(4) {
  [0]=>
  string(2) "о"
  [1]=>
  string(2) "д"
  [2]=>
  string(4) "и́"
  [3]=>
  string(2) "н"
}
*/
Вопрос: Какие есть книги для изучения JS?

Лучший ответ:
You Don't Know JS - уже есть издание 2019 года.
Выразительный JavaScript. - последнее издание тоже 2019 года.
Мне еще нравятся книги Николаса Заказа.

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

Худший ответ:
Крисс Минник - JS для чайников
Вопрос: У Rusakova нормальные курсы?

Лучший ответ:
По javascript есть прекрасный сайт javascript.ru и прекрасный учебник от Флэнагана. 
Никакие курсы не заменят чтения учебника.
Никакие курсы не требуются после правильного прочтения учебника.

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

Лучший ответ:
if f.lower() in ('y', 'yes', 'да'):
    print(f'This year is {v}')
elif f.lower() in ('n', 'no', 'нет'):
    print(f'This year is {m}')
else:
    print('your answer is uncorrect')
Ты бы хоть базовый синтаксис выучил, а то так далеко не уйдешь.

Худший ответ:
...
if f.lower() in ['y', 'yes', 'да']:
   print('This year is ', v)
...
Вопрос: Какой транзистор выбрать для замыкания пинов ПК?

Лучший ответ:
Лучше не транзистор, а оптопара PC817.

Со стороны ардуины она будет как светодиод, со стороны ПК - как кнопка.

Худший ответ:
любой(там мизерный ток) npn структуры,
1) с ардуины (логическая 1 откроет тр-р ) через токоограничительный резистор на базу. 
2) с Power ON на коллектор тр-ра.
3) масса = она и в Африке масса ))) на эмитер  тр-ра и на массу ардуины.
Вопрос: Доказательства опасности программного RAID?

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

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

Зато такие вещи как вендорлок у аппаратных рейдов - создают невероятно большую. головную боль и генерируют лишние траты денег (зачастую очень большие)

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