pavki/hr_qa_sbs_best_bad huggingface dataset:
Вопрос: С чего начать настройку отказоустойчивого шлюза на CentOS 7?

Лучший ответ: чтобы шлюз был отказусточивым - должно быть два компьютера шлюза а не 1,
автопереключение с провайдера на провайдер это лиш частичная мера по отказоустойчивости.
миграция ип адресов между шлюзами - средствами keepalived
NAT - посредством iptables
проверка доступности интернета через провайдеров и переключение - небольшие баш скирпты в крон, или циклом в фон если раз в минуту слишком медленно.
Также для общего развития читайте LARTC https://www.opennet.ru/docs/RUS/LARTC/

Худший ответ: А есть какие то мануалы по реализации ?
Вопрос: Пока форма не заполнена отправка не возможна?

Лучший ответ: не селен в js
1. Удалите пробел:$('    .btn-stock')
2. При клике на кнопку с type="submit" идет отправка формы, надо отменить стандартное действие, что бы что-то произошло.$('.btn-stock').click( function(e){
e.preventDefault();
или же отправить форму ajax-ом и по успешному ответу сервера, что-то выводить

Худший ответ: нативный required нынче не модно?
Вопрос: Можно ли пробросить игровую виртуальную машину на тонкий клиент?

Лучший ответ: Всё уже придумано за нас.
Как работает у меня: raspberry pi 3b+ с установленным steam link. На игровом компе автозапуск steam и включенный wol. Всё работает как часы.

Худший ответ: На сервере виртуализации видяха есть? Или такие игрушки, что она не нужна?
Возможно проще нарастить длину кабеля монитора и usb, и просто подключить без всякой виртуализации?
Вопрос: Как найти сбойную планку памяти?

Лучший ответ: Похоже 1 планка на 1 канале.
В любом случае метод перебора никто не отменял.
Возьмите memtest, оставляйте 1 планку и тестируйте.

Худший ответ: Ставлю на PROC2 DIMM 6B :)
Вопрос: Где и как можно проверить сайт и получить рекомендации куда двигаться дальше?

Лучший ответ: Немудрено. Где кнопка "купить"? Длинные описания я бы спрятал в раскрывающиеся спойлеры, оставляя кусок текста видимым (но это не точно).
Вообще, джумла не шибко заточена под интернет-магазины, но у тебя, как я вижу, товаров немного. Да и вообще, на сайтах под управлением этой CMS возникает дохреллион дублей страниц, от которых приходится брать вилку и чистить-чистить-чистить. Отчеты яндекс.вебмастера и мануалы по htaccess и регуляркам в помощь.
Сделай в товарах кнопку "Купить", для начала. Не обязательно это должен быть именно модуль покупки с непосредственно оплатой - для начала подойдет модуль обратной связи.
Прелоадер - это, конечно, красиво, но я бы или делал как у него https://gaserge.ru или не делал вообще(
Страница "контакты" - "Access denied". Нехорошо.
Немного seo:
1) в Title и h1 стоит указывать топовые запросы, по которым собираешься продвигаться. Спамить ими нельзя, всё должно быть удобочитаемо. Сейчас на главной у тебя title "Главная", замени на "Детские кровати Сладкий Сон в Барнауле", в h1 вместо "Уважаемые посетители!!!" пропиши "Поможем выбрать и купить детскую кровать". Кстати, h1 на главной у тебя 2 раза выводится, поковыряй шаблон, чтобы H1 был только 1 раз (пофиг на спецификации html5) и соблюдалась иерархия. Та же рекомендация для страниц товаров. Статистику ключевиков можешь взять из wordstat. И ещё, не используй теги H1-H6 для наведения внешней красоты и придания лишь размера шрифту, они нужны для обозначения логической структуры текста, для заголовков. Красоту и размеры возложи на css ;
2) главная дублируется, доступна по www.sleepbaby.su и www.sleepbaby.su/index.php. Ты уже вароужон мануалами по редиректам и htaccess, пили редирект с index.php-версии на нормальную;
3) погугли "правильный" robots.txt для твоей версии джумлы. Слепо не копируй, постарайся разобраться, мб составишь свой даже.
4) Уникальность текста в товаре "кроватка" и на главной должна быть не ниже 90%. Сейчас у тебя 25% и 61% соответственно. Пиши сам (если есть скилл и грамотен) или заказывай у копирайтеров (если нет скилла и времени), перед публикацией тексты проверяй на content-watch на уникальность например, и на advego.ru/text/seo на частоту. Она должна быть не выше 3,5%.
5) Убери внешние ссылки (на другие сайты) на своём ресурсе в nofollow - так ты не будешь отдавать вес. Это касается всех внешних ссылок, ведущих за пределы твоего сайта, соцсети в том числе.
6) После исправления вышеперечисленного начинай потихоньку наращивать ссылочную массу - вручную оставляй ссылки на свой сайт на других сайтах, крайне желательно, чтобы они были смежной тематики. К ссылкам обязательно краткое описание, не тупо копированное, а уникальное (но тут нет жёстких требований к проценту). Сразу много ссылок не заводи, 10 в месяц хватит, и заводи их на болие лимение "чистых", незаспамленных ресурсах, чтобы не схлопотать Минусинск. О ссылочной массе лучше погугли отдельно. И заклинаю, услышишь где-то о прогонах по каталогам - беги из этого места.

Худший ответ: Вы, кажись, текст лайтовый поставили..
Вопрос: Как html-верстальщику пополнить свое портфолио?

Лучший ответ: Гугл на тему "шаблоны psd для верстки" обрадует вас большим количеством материала.

Худший ответ: tamplate monsters
а вообще берешь любой понравившийся сайт и верстаешь такой же только сам
Вопрос: Сделать напоминание о событии?

Лучший ответ: так же, как и за 1 день, только дней указать больше

Худший ответ: Как простейший вариант - https://codepen.io/KorniloFF/pen/NoRxJo?editors=1011
Вопрос: Как правильно сделать многопоточность?

Лучший ответ: Для этой задачи вообще многопоточность не нужна, достаточно асинхронно делать сетевые запросы.
В этом тебе может помочь мультикурл
php.net/manual/ru/function.curl-multi-init.php
Так же другие http-клиенты имеют асинхроные решения, например guzzle
docs.guzzlephp.org/en/stable/faq.html#can-guzzle-s...
Да даже простым fopen/fread это сделать можно.
Суть там везде одна - отправляешь 100500 запросов и далее в цикле проверяешь, пришел ли ответ или нет (и полностью ли пришел или частично). Если пришел - обрабатываешь, если не пришел или пришел не полностью - уходишь на следующую итерацию.

Худший ответ: Может Node JS? Насколько я понимаю любая многопоточность в php это эмуляция. 
Она и в ноде не совсем настоящая, но все же лучше..
Вопрос: Этой платой можно будет программировать МК?

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

Худший ответ: В нее встроен МК, это черный квадратный чип, вот его можно, так что нужна только эта плата и USB-кабель, но никакой другой МК не подойдет вместо него, и если даже купите МК той же модели, но новый, и перепаяете, то он будет "чистый" и тоже не получится, сперва придется его "прошить" на "полноценном" программаторе.
Вопрос: Где инициализировать состояние React компонента?

Лучший ответ: В первом у вас есть доступ к `props` и `context` (аргументам конструктора).
Второй, пока нестандартизированный «сахар» к первому, но без `props` и `context`.

Худший ответ: Второй вариант не будет работать без babel-plugin-transform-class-properties.
Вопрос: Как отловить нажатие двух клавиш WinApi?

Лучший ответ: код в проверке выполняется при нажатии совершенно любой клавиши, а не по "A" и "W". Как быть?
Просто прочитайте описание WM_KEYDOWN. wParam -- это не битовая маска, это код клавиши, не надо писать if(keyid & 0x41), надо писать if(keyid == 0x41).

Худший ответ: Там же два события: WM_KEYDOWN и WM_KEYUP.
Вам нужно хранить два флага: is_A_pressed, is_B_pressed.void handleKeyDown(keyid)
{
if(keyid & 0x41) // A 
{
  is_A_pressed = true;
}

if(keyid & 0x57) // W
{
 is_W_pressed = true;
}

if (is_A_pressed && is_W_pressed) {
   // обе клавиши нажаты
}
}
такой же код в обработчике WM_KEYUP, только там сбрасываем флаги.
Вопрос: Почему свойство transition не работает на flex?

Лучший ответ: Потому что некоторые (и их много) свойства принимают только дискретные значения

Худший ответ: justify-content не анимируется через transition. Вот список доступных для transition свойств https://developer.mozilla.org/en-US/docs/Web/CSS/C...
Вопрос: Книга которая наставляет на правильный подход к программированию?

Лучший ответ: Стив Макконнелл, «Совершенный код».

Худший ответ: В дополнение к Макконнелу и Мартину - Дейв Томас и Энди Хант, Pragmatic Programmer (и др. в серии Pragmatic)
Вопрос: Можно ли подключить к АТС еще одну АТС?

Лучший ответ: Стоило лишь заменить материнскую плату TDA на TDE и никаких бы костылей придумывать не пришлось. Раздавали бы VoIP с Panasonic'а.

Худший ответ: Правильно: Теперь asterisk является основной АТС. Панасоник использовать как простой FXS шлюз.
Все входящие. Все голосовые меня. Всё на asterisk.
Соединять лучше по потоку E1 (правда это зависит от количества народу на Панасонике)
Вопрос: Линейная штриховка эффект в векторе как сделать?

Лучший ответ: Ну, в inkscape можно сделать  так - https://inkscape.paint-net.ru/?id=38

Худший ответ: https://martinacrepulja.myportfolio.com/about попробуйте на почту написать и спросить, но я думаю что такой такой эффект достигнут кистью (sunray brushes etc.)
Вопрос: Влияет ли дефис в доменном имени на посещаемость сайта?

Лучший ответ: Вы правда думаете, что если на сайте действительно интересный контент, то кого-то остановит то, что надо набрать "-"? А если сайт УГ, то хоть из одной буквы домен сделайте - туда не вернется никто. К тому же это один раз. В дальнейшем умный браузер будет подсказывать по первым символам при наборе.
Не заморачивайтесь по таким пустякам ))

Худший ответ: разве что 2 домена зарегить и на один сайт привязать
на всякий случай.
версия с дефисом и версия без дефиса.
а ответ на ваш вопрос - НЕ ВЛИЯЕТ.
Вопрос: Как определиться с зарплатой?

Лучший ответ: Умиляют меня такие вакансии)) специалист который им соответсвует стоит 3к$ минимум (по меркам Киева). На самом же деле ищется затычка во все дыры, согласный работать за еду, и не понимающий, что опыта тут он не особо получит.

Худший ответ: 250$ серьёзно? Вы собираетесь жить чуть меньше чем 7 тыс. гривен в Днепре? Да снятье нормальной квартиры стоит 4000-5000, тем более что такой стек технологий они получат минимум за 15-17 тыс. гривен.
Мой совет просите зарплату 11-13 тыс. гривен, минимум 10, но и не просите много т.к у вас опыта мало и послать могут.
Вопрос: Какую 1с выбрать УНФ или УТ?

Лучший ответ: С таким количеством информации вам подходят обе.

Худший ответ: Опишите максимально подробно, что вам нужно от программы.
Вопрос: Работа с формами в Delphi?

Лучший ответ: Все просто, Тык

Худший ответ: Запустите Delphi, создайте новое приложение и запустите его (F9). Всё!
Вопрос: Как можно сократить данное выражение в JS?

Лучший ответ: Инверсией const hasSalePrice = !(isSingleReady && product.sale_price == 0);
Вторую строку можно сократить так{ReactHtmlParser(hasSalePrice ? product.sale_price : product.regular_price)}
можно конечно даже так{ReactHtmlParser(product[hasSalePrice ? 'sale_price' : 'regular_price'])}
но это фу.

Худший ответ: Сокращал так, не работаетconst hasSalePrice = isSingleReady && product.sale_price
Так должно работатьconst hasSalePrice = !isSingleReady || product.sale_price
Вопрос: Выбор ПО для хранения и визуализации данных?

Лучший ответ: Зачем изобретать велосипед, когда есть программка от 10-страйк , отечественные разработчики и саппорт соответственно.
Импортит список сотрудников и компов из AD.
Собирает инфу  по железу и софту
Мониторит изменения по ним
отчеты разные есть на любой вкус
 веб-морда тоже есть и еще много чего
Платная, но цена не задрана. Уж если в компании несколько тысяч ПК, то сколько стоят железо и софт? Сравнимая сумма тратится на бумагу в туалетах за месяц  :)  Неужели для нужд админа денег нет?

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

Лучший ответ: Сделал, разработал - красавец. Трудовая победа хотя бы над собой -ценно само по себе.
Теперь информация к размышлению:
 - промышленные БП рассчитаны только на 70 градусов, других я не встречал - вот -40..+85. Нельзя знать обо всем.
 - в блоке питания применяется уникальное решение стабилизации тока. Попробуйте перевести статью на английский и отправьте в NEMA-вский журнал в раздел appliance. Если возьмут - с большой долей вероятности вы правы.
Попробуйте умерить восторги и для себя ответить на вопросы:
- кто ваш заказчик?
- почему он обратился к вам?
- почему он был готов ждать полгода?
- какие ему выгоды от оформления патента (кстати, какой из 3 видов патентов оформляется?)?
- собирается ли он вам заплатить?
- сколько он может заплатить?

Худший ответ: Если работали в свое удовольствие - рассчитайте цену вопроса по методу Павел Мелехов + цена изготовления прототипа (нескольких прототипов) с 110-градусными электролитами и испытаний в "нормальной" камере тепла-холода, и согласуйте с заказчиком.
Только после этого продолжайте деятельность.
Вы делаете изделие почти под климатические требования к военной авиационной электронике -60 +85. А эти изделия проходили приемо-сдаточные испытания при максимальной и минимальной температуре, и периодические - несколько часов (суток) работы при максимуме и минимуме температуры + термоциклы. Соленый туман и прочая экзотика - не ваш случай.
Пока прототип не прошел нормальных климатическич испытаний - с заказчика не за что брать деньги.
P.S. Блоки питания, хоть военные, хоть телевизионные, проверяли во всем рабочем диапазоне входных напряжений (минимум, максимум, номинал) при всем диапазоне нагрузок с замером напряжения и пульсаций. Телевизионные - при комнатной температуре, военные - еще и на климатике. Из камеры тепла-холода шел пук проводов к проверочному стенду.
Вопрос: Можно ли мне забить на зоопарк JS-фреймворков?

Лучший ответ: По роду деятельности мне приходится заниматься поддержкой внутренних проектов и созданием сайтов под ключ (коммерческие и инфосайты). 
Проблема в другом.
У вас есть зоопарк внутри компании.
Вопрос в том:
1. Кто создает этот зоопарк.
2. Что мешает принять внутрикорпоративный стандарт длинной лет на 5.
А вовсе не в том, что вообще существует множество фреймворков в мире.
То есть ваша корпорация сама стала себе злым буратиной.
Если вы единственный разработчик:
1. Зачем вы создали этот зоопарк?
2. Почему вы не остановились на одном из фреймворков?
Если вы не единственный:
1. Поговорите уже с коллегами. Они вас поймут.

Худший ответ: Если у вас есть квалификация написать устойчивое оттестированное приложение на чистом JS, то фреймворки не нужны
У большинства людей не получится отточить и фронт, и бек
Потому используют фреймворки, как каркас, чтоб не напортачить
Если все же хотите совместить в себе разработчика фронта и бека - смотрите на тулзы, которые позволят писать код одновременно для обеих частей
aka ClojureScript
Вопрос: Как перейти с VS Code на PhpStorm?

Лучший ответ: Было такое, когда начинал пользоваться PHPStorm.
Постепенно всё настроил, ко всему привык.
Из самого главного, что мог бы посоветовать:
1. Поставить плагин Material Theme UI
2. Отключить навигационные хлебные крошки и всякие не нужные toolbar'ыскрин3. Выбрать для себя цветовую схему.
(я использую Gloom Contrast, немного измененную под себя. Брал на гите из репозитория)
4. Настроить шрифтскрин
По желанию, также можно поставить плагин CodeGlance (добавляет навигацию как в SublimeText)скрин

Худший ответ: Зачем? У PHPStorm преимуществ как-то не осталось. Медленный, громоздкий, тупой, надо все ручками объяснять. Как попробовал VS Code, на PHPStorm так и не вернулся.
Вопрос: Правда, что в поисковых системах в рунете сайт на Битрикс продвигается лучше, чем на другом CMS?

Лучший ответ: Бред
P.S. А сайт они Вам будут делать, или их партнеры?

Худший ответ: Сеошники, которые делают сайты исключительно на битриксе, говорят, что битрикс лучше всех подходит для сео?
Хм, shut up and take my money!
Вопрос: Есть ли возможность отзыва лицензии «на пользователя» на windows server 2012r2?

Лучший ответ: В учетной записи пользователя очищаем заполненные атрибуты msTS...:В консолои диспетчера лицензирования формируем отчет:Более этому пользователю лицензия не назначена.

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

Лучший ответ: tar czf filename.tar.gz folder
Затем скачать архив.

Худший ответ: Установите FileZilla Server и настройте доступ по FTP.
Вопрос: Как НЕ дублировать select в HTML миллион раз?

Лучший ответ: Можно сделать новим способом HTML5 datalist<input list="workers" name="worker[234]">
<input list="workers" name="worker[456]">
<input list="workers" name="worker[333]">
<input list="workers" name="worker[667]">
<datalist id="workers">
 <option value="Текст1">
 <option value="Текст2">
</datalist>
Вот для него полифил datalist-polyfill или polyfills/datalist

Худший ответ: Я такое делал, сперва делаем селекты только с одним значением (которое установлено) и скрытый селект, при клике по любому селекту option копируем в этот, устанавливаем значение selected и открытие селекта
Вопрос: Почему в header'е не работает Serial.print();?

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

Худший ответ: Добавьте в начало скетча строку:#include <HardwareSerial.h>
Этот инклюд должен быть выше инклюда "protocol.h".
Вопрос: Как перенести windows 10 с hdd на sdd?

Лучший ответ: Бери - бесплатно для покупателей почти любых дисков:
(бесплатно в том смысле, что либо ссылки на эти же программы, либо сами программы, иногда брендированные, идут в комплекте с большим количеством дисков, да и сами разработчики в общем-то не сильно прячут и запрещают использование)
dl.paragon-software.com/free/rk14_free_ru.exe
www.seagate.com/files/www-content/support-content/...
Акронис для WD downloads.wdc.com/acronis/ATI2016WD_build33.zip
dl.paragon-software.com/free/PM14_XP_ea_x32.exe
pm14free_eng
pm14free_x64_eng
Aomei - https://www.partitionwizard.com/download/10.3/pw10...

Худший ответ: не факт. для ХРю это работало вполне, достаточно было форматировать в NTFS виндовым форматером, и не забыть отметить раздел загрузочным. но у винды начиная с 7 есть скрытый раздел загрузчика. а если UEFI биос - тогда два раздела..
лучший вариан - Acronis TI. сами производители SSD, не редко прилагают диск с частично урезанной версией этой утилиты, для переноса со старого HDD.
есть еще Acronic DD, в теории тоже можно использовать, но риски резко возрастают - может глукануть. а главное - надо очень хорошо понимать что делаешь (но тогда бы вы не задавали такой вопрс)
Acronis TI делает бекап образа на внешний носитель (в идеале третий). это значит что оригинал можно для начала просто отключить, и выполнить столько попыток восстановления на новый носитель (SSD) сколько потребуется для успеха. и только после этого очистить старый носитель для нового назначения.
Вопрос: Разработка сайта с использованием git. Как работать правильно?

Лучший ответ: Чтобы решить проблемы, которые у вас существуют, нужно сделать 3 вещи, но планомерно и плавно.
1. Обучите программистов такой вещи, как git. Подождите с недельку. Затем просто прогоните их по циклу - откати эти изменения. Верните изменения. Ну раз 5, с дедлайном вчера. Все, кто не будет пользоваться git, будут мучаться часами и днями. Напомните им, как легко это делается с помощью git. Повторите испытание через некоторое время. Поставьте ультиматум: git или идите искать новую работу. Кстати, у каждого человека должен быть свой отдельный аккаунт.
2. Держите репозитарий для проекта целиком. Сделайте отдельные папки для исходников верстки, для собранной верстки и самого сайта. Верстальщики работают со своими папками. Собирают верстку и коммятят собранную верстку в отдельную папку. Программисты через историю коммитов смогут отследить изменения и внести их назад в разработанные компоненты.
3. Реализуйте автоматизированное развертывание проекта и запретите редактирование файлов через FTP/минуя git.
Ну а в целом ваша проблема - низкая квалификация кадров. Решается просмотром ютуба и обучением разработчиков. Если кто-то не хочет учиться, немного снижается ставка, а деньги отдаются тем, кто учится. Даже 500 рублей будут отличным мотиватором.

Худший ответ: У меня в компании в Битриксом не работаем, но имеем множество разных проектов на самописе и паре фреймов. Воркфлоу у всех приведет в одиный вид:
1. Девеловер делает форк репы компании и там кодит че хочет.
2. Когда закончил колупать делает пулл реквест в гиту компании.
3. Один из старших программистов пробегается по комитам и проверяет нет ли какой-то явной ахинеи.
4. Админ мерджает реквест и собирает проект через Gulp/Jenkins и через него-же льет изменения через rsync на staging сервер.
5. После прохождения тестов админ пушает через Jenkins/Gulp на продакшн сервер.
В прицнипе довольно универсальный ворклоу. Все конфиги храним в .env файлах. В Gulp есть всегда таск watch который компилит все в реальном времени и так ускоряет работу.
Вопрос: Как настроить Windows 10 для нормальной работы на SSD дискe?

Лучший ответ: SSD тут ни при чём, у вас постоянно запускается и завершается какой-то процесс. Выяснив, какой - выясните, что делать.

Худший ответ: Как настроить Windows 10 для нормальной работы на SSD дискe?Никак.Все версии windows начиная с win7  не требуют никакой настройки для SSD. Просто включаете и пользуетесь.Заменил жесткий диск SSD-шкой и появился какой-то глюк, я не знаю..Тут не в настройках дело.
Проблема либо с диском (смотрите SMART), либо перенесли некорректно.
Вопрос: Как разгруппировать компоненты в Figma?

Лучший ответ: Если речь о дочернем компоненте, то вот так:

Худший ответ: А не знаете,как родительский разгруппировать?
Вопрос: Как узнать диапазон IP в локалке?

Лучший ответ: tcpdump в "неразборчивом" режиме может показать что к чему
если ничего нет - возможно tcp уровня в сети нет и подключение pppoe

Худший ответ: pppoe-discovery пробуй, или виндовый аналог.
Вопрос: Как поправить верстку под мобильные устройства?

Лучший ответ: @media (max-width: 767px) {
    .твоя_форма {text-align: left;}
}

Худший ответ: CSS@media (max-width: 666px) {
// меняете выравнивание
}
Всмысле, как реализовать? Так же как по центру, только по левому краю)) Смотря чем делалось выравнивание
Вопрос: Как оборудование «понимает» программу?

Лучший ответ: Для этого ваша программа на компьютере должна осуществлять связь с микроконтроллером (МК).
Допустим, через виртуальный COM-порт по USB отправляете строку "LED 1 ON \n" в случае, когда вы ткнули в графический интерфейс.
Из USB, допустим через переходник преобразуем в UART и это идет на МК.
Т.е. будет цепь PC -> USBtoUART -> МК
МК же должен будет читать UART(придется ему это запрограммировать) и как только прилетит данная строка изменить состояние ноги(это тоже надо запрограммировать на МК), включив светодиод.
Можете глянуть теже мини-проекты по ардуино от амперки, что бы примерно понять, как это программируется внутри, как к МК подключают диоды, кнопки и т.п.
wiki.amperka.ruВот, кстати почти Ваш вопрос

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