Vikhrmodels/habr_qa_sbs huggingface dataset:
Вопрос: [РЕШЕНО] Что значит «Error 0x80070005: Access is denied» при запуске Hyper-V в Windows 10 Pro?

Лучший ответ:
Решение с SF https://serverfault.com/a/890416/305435This is known to be caused by disabling Windows `Control flow guard (CFG)`.
To turn this back on:
 - Search for and open `Windows Defender Security Center` on the start menu.
 - Go into `App & browser control`
 - Scroll to the bottom and click on `Exploit protection settings`
 - Ensure that `Control flow guard (CFG)` is set to `On by default`

Худший ответ:
Пользователь входит в группу "Администраторы Hyper-V"?
Вопрос: Никого ли случаем не дурит Апворк? — может я не верно понял?

Лучший ответ:
Есть 2 версии документов.
Старая - где везде Upwork
и 
новая - где клиент.
У вас половина документов старая, а половина новая.

Худший ответ:
скоро в новых документах везде будет фигурировать клиент
Вопрос: Технологии для браузерного чата?

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

Худший ответ:
Возьмите django-channels, у них в доках даже пример реализации чата есть, если мне память не изменяет.
Вопрос: Зачем в React так записывают в state?

Лучший ответ:
Во-первых  в setState в корень предыдущее состояние передавать не нужно, так под капотом к нему так и так подмешается предыдущее состояние, в не зависимости от того, что вы туда передадите. Примерно так:state = { ...prevState, ...newState };
Во-вторых не правильно передавать в setState this.state, так как setState выполняется асинхронно и ваше текущее состояние может успеть измениться. Если надо обновить состояние на основе предыдущего, в setState по-хорошему надо передавать функцию, в которую первым аргументом при вызове придет ваше состояние:this.setState(prevState => ({
  some_data: {
    ...prevState.some_data,
    ...input,
  },
});

Худший ответ:
создается shallow-copy объекта, то есть оператором "..." (spread operator) копируются свойства объекта, это сделано для того чтобы не терять данные при обновлении одного свойства
допустим у тебя был объект состояния такой структурыlet state = {
  x:1,
  y:2,
  z:3
}
ты хочешь изменить поле y, для этого тебе нужно скопировать все поля и переназначить ystate = { ...state, y:25};
другой вопрос зачем копировать, если можно мутировать (MobX), это фишка называется иммутабельность (Redux), чтобы понять изменилось ли состояние быстрее проверить изменилась ли ссылка на объект, чем делать полный diff, в angular next такая штука в детекторе включается через ChangeDetectionStrategy.OnPush
Вопрос: Почему не поддерживает try-with-resources?

Лучший ответ:

Вот тут стоит посмотреть.

Худший ответ:
Возьмите за привычку искать ответы на возникающие вопросы в официальной документацииany object that implements java.lang.AutoCloseable, which includes all objects which implement java.io.Closeable, can be used as a resource.
Ваш класс Microphone помечен таким интрефейсом? Не видно импортов на скрине и не понятно, что за класс и из какой либы.
Вопрос: Хочу разобраться в коде данного скрипта. Как выдернуть элемент из массива в данном примере?

Лучший ответ:
Почему $file as $elПотому, что по очереди перебирают все значения из file, так уж этот foreach работает.почему тут первая строка заключена в квадратные скобки, а вторая нетПотому, что записывают данные в ассоциативный массив, где CharCode будет ключом, а Value значением.

Худший ответ:
Вот и вот
Вопрос: Как сверстать замыленую плашку на фоне — картинке?

Лучший ответ:
то что ты искал

Худший ответ:
Почитайте тут
Вопрос: Как завершить процесс в python?

Лучший ответ:
Решил проблему с помощью библиотеки psutilimport psutil

parent_pid = 30437   # my example
parent = psutil.Process(parent_pid)
for child in parent.children(recursive=True):  # or parent.children() for recursive=False
    child.kill()
parent.kill()

Худший ответ:
Вероятно ffmpeg запускает подпроцессы. Убивайте всю группу:pro = subprocess.Popen(cmd, stdout=subprocess.PIPE, shell=True, preexec_fn=os.setsid) 
os.killpg(os.getpgid(pro.pid), signal.SIGTERM)
Вопрос: Какую ширину и высоту использовать при создании макетов для адаптивного сайта?

Лучший ответ:
Ответов на данную тему много, но мне пока не удалось собрать все в единый алгоритм и порядок...
Есть один тайный способ, который гуру UX бережно хранят уже много лет. И простой и сложный одновременно, подходящий для любых сайтов. Только избранный может познать всю мощь идеи, которая в него заложена... Называется он "контент-фёрст дезигн". В переводе со англо-славянского "смотри на контент и делай так, чтобы его было удобно потреблять на любых устройствах". Нет конкретных разрешений, под которые что-то нужно подгонять. Напротив - стоит стремиться делать так, чтобы везде было хорошо. Получится два состояния страницы - хорошо, получится десять - ну значит десять.

Худший ответ:
фантазировать можно долго и много, но по факту для реальных бизнес-проектов делают 2 разрешения: декстоп под 1280px неретиновых экранов и усредненный телефонный размер типа 375px
никто не будет оплачивать вам десятки разных макетов, к тому же с резиной возникают проблемы у пользователя: если сайт постоянно меняется при изменении размеров окна браузера, то пользователи не могут найти то, что искали там, где они это видели раньше
Вопрос: Возможно ли устроиться на работу девелоперу-иностранцу в России?

Лучший ответ:
По тк вас трудоустраивать, простите, геморрой. Однако, вы можете подписать договор с вами как с ч/л, договор на оказание услуг. При этом, обязательства по уплате налогов, кроме НДФЛ, ложатся на вас. Если вам есть чем заинтересовать работодателя - всё решаемо. Удачи вам!

Худший ответ:
На 3 месяца вряд ли. Человека берёшь - только он адаптируется познакомится, в проект въедет, как раз 3 месяца пройдут - увольняться уже надо. А если на нём архитектурные штуки висят какие-то то это вообще плохо. Значит вам ничего не доверят. А учить вас? Зачем опять же...
Вопрос: Самописная CMS или Bitrix для интернет магазина?

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

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

Лучший ответ:
электроника для квестов сильно специфическая и цену, даже оценочную, скажет только тот, кто этим уже занимается.
из общих сведений - работу можно выполнить в 3 вариациях:
1) нужна только электроника. встречается нечасто, оценивается относительно недорого. обычно при расширении комнат / добавлении новых.
2) нужна электроника + "интеграция". обычно одиночные заказы для "у меня новый бизнес". нужно быть готовым к тому, что половина или более времени уйдёт на протаскивание проводов и поиск отвалившихся датчиков.
3) нужна электроника + "интеграция" + расширение. когда просят изделие не на базе готового arduino-шлака. сложно, дорого, меньше всего проблем при наладке и эксплуатации.
По всей видимости рассчитывать нужно на вариант №2 и сразу договариваться, что представляет автор - работающую электронику или работающую комнату(ы). это разные вещи, отличающиеся по цене в 2-3 раза.

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

Лучший ответ:
отвыкать и писать как правильно. А правильно с ;.

Худший ответ:
Можно вместо [] написать Array.prototype
Но вообще присоединяюсь к предыдущему ответу - отказ от точек с запятой это какая-то разновидность маниакальной экономии на спичках.
Вопрос: Как сделать такую красивую подзагрузку?

Лучший ответ:
www.w3schools.com/howto/howto_css_loader.asp
или так (делаем спиннер, даём ему класс .spn_hol, затем fadeOut на 500мс):$(window).bind("load", function() {

    "use strict";
    
    $(".spn_hol").fadeOut(500);
});

Худший ответ:
Вот несколько крутых прелоадеров и спиннеров для сайта. Там можно посмотреть исходный код.Может поможет ...
beloweb.ru/novichkam/skachat-neskolko-krutyih-prel...
Вопрос: Как разрабатывать woocommerce?

Лучший ответ:
Поставьте официальную тему от создателей Woo - Storefront . Посмотрите как там всё сделано. Ну и официальную доку в руки берите: https://docs.woocommerce.com/ . Подробнее, чем в документации, вы вряд-лли найдёте.

Худший ответ:
в документации я прочитал, что можно создать папку woocommerce в теме и копировать в неё файлы из папки templates плагина. Что это за шаблоны в папке templates опять ничего не написано.
Хм.. а что, по названиям не ясно?
Ну и знать иерархию шаблонов нужно.
Вопрос: Не устанавливается Windows в виртуалке KVM Ubuntu 16.04 LTS?

Лучший ответ:
Выберите видео Cirrus вместо QLX, у меня так заработало

Худший ответ:
Hyper-Threading активен в биосе, что то уже устанавливал, кроме ms?
Вопрос: Увели сайт, что делать?

Лучший ответ:
главный вопрос: с чего Вы взяли, что Ваш заказчик не врет, возможно он просто просит Вас совершить не правомерные действия?
Делать копию сайта нет смысла, он в поисковой выдачи все равно не окажется там же где и оригинал, без длительной работы по продвижению. Есть смысл делать лучше.
Ранжируются все сайты, видимо Вы термин плохой подобрали. Вопрос: как будет ранжироваться? Если тексты не уникальны, а они де факто есть на более старом и авторитетном сайте, - с SEO будут проблемы.
Запретить использовать фото, как и доказать кражу теоретически возможно, но этот вопрос надо задать юристу, а не на тостере.
Я считаю, что с точки зрения Вашего заказчика, делать копию бессмысленно. Кроме случая, если ему нужна копия, а история со студентом - сказка. Просто люди хотят копию популярного ресурса, что бы заработать на мошенничестве, а Вас сделать крайним. Очень удобно. Для начала я бы посмотрел копии сайта в архивах и подтвердил теорию о том, что когда-то там были контакты Вашего заказчика.

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

Лучший ответ:
ISPmanager 5 - после установки в возможностях можно выбрать mpm для Apache (itk, prefork)VestaCP - умеет prefork, тоже под каждый сайт своего пользователя можно сделать.

Худший ответ:
Если сайтов несколько, то лучший вариант ISPmanager 5. Apache Prefork, PHP FastCGI.
Неплохой вариант Plesk. Там есть FastCGI и PHP-FPM.
Из беслатных BrainyCP, Fastpanel, Centos Webpanel
Вопрос: Как позволить посетителю удалять свои комментарии без авторизации?

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

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

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

Худший ответ:
Тут бы openvpn c tap  и бриджом.
Вопрос: Как массово управлять территориально разнесенными Linux машинами?

Лучший ответ:
Chef/Puppet/Ansible/Salt по вкусу.

Худший ответ:
Ansible
На каждый новый скрипт можно писать свой playbook и отслеживать состояние. Причем с каждой итерацией будет все проще
Вопрос: Что такое ElasticSearch?

Лучший ответ:
Знаете, я с вами соглашусь, что хорошую вводную по Elastic трудно найти. Пока сам не переварил доков и не набил шишек многие элементарные понятия оставались для меня неясными. Поэтому вот моя вводная: Elastic можно использовать как NoSQL БД, только надо быть внимательным, т.к. всё-таки его основная задача поиск, а не удовлетворение функций БД. Например, если вы не настроили хранение исходных данных, а только индексацию, то свои данные вы уже не извлечёте из него. НИКОГДА. Только отдельные выражения, удовлетворяющие условиям поиска. Всё, тупик. Так же нельзя повторно индексировать уже загнанные в него данные. Т.е. перед загрузкой данных надо грамотно настроить индексацию, т.к. перестроить индекс, как это делается в реляционной БД невозможно. Нужно придумать новую схему индексации и перезалить данные в Elastic. Именно поэтому основное использование Elastic - как дополнение к существующей БД из которой данные можно перезалить по одному или полностью в Elastic (можно, конечно сделать схему Elastic->Elastic, но тоже есть нюансы). 
Ещё пару слов про схему. Это ЛОЖЬ, что в Elastic нет схемы данных. Она как раз есть и ооочень жёсткая. Жёсткая до того, что однажды определив, вы не сможете её поменять. Изначально Elastic оказывает медвежью услугу, разрешая вам дополнять схему по-умолчанию, но когда вы разберётесь с этой темой, то можете обнаружить, что Elastic "понастроил" такого у себя внутри, что остаётся только охреневать и переделывать всё явно, отказавшись от его "услуг" по автоматическому добавлению полей в схему.
 Так же в Elastic очень непросто строить сложные запросы на поиск и агрегатные запросы. Совершенно неинтуитивно. Но если освоитесь, то будет вам счастье. )))
Несмотря за такие "страшные" вещи - Elastic классная система и по производительности агрегатных запросов не уступает платной версии MSSQL в поиске в многопроцессорных системах (проверял на одинаковых аппаратных конфигурациях с 16 ядрами). Так что если вам хочется большую скорость в агрегатных запросах и главное - это бесплатность, то берите и осваивайте Elastic. Мощности и возможности у него огромные. Но... нужно потратить приличные усилия на изучение.

Худший ответ:
Бесплатность — да не совсем. В Elastic Stack есть и некоторые платные функции: машинное обучение (почитайте статью на Хабре о том, как оно работает), алертинг, интеграция с LDAP для аутентификации. Буквально месяц назад они сделали бесплатными авторизацию при помощи локальных пользователей (не LDAP) и ролевую модель для Kibana. И ещё продукт очень активно развивается. Тоже недавно они добавили специальные представления для анализа угроз безопасности — SIEM.
Вопрос: Как подсчитать количество вхождения каждого слова в списке?

Лучший ответ:
На Python это делается элементарно, при помощи класса Counter из модуля collections. А любое количество наиболее часто встречающихся элементов находите при помощи метода most_common():>>> text = ['1', '12', '123', '11', '1', '12', '12']
>>> from collections import Counter
>>> text_counts = Counter(text)
>>> text_counts
Counter({'12': 3, '1': 2, '11': 1, '123': 1})
>>> top_two = text_counts.most_common(2)
>>> top_two
[('12', 3), ('1', 2)]

Худший ответ:
Что вы подразумеваете под "вхождением" каждой строки? Частоту? 
Вы хотите получить что то типа:{1: 7, // 1 в 1, 12, 123, 11, 1, 12, 12
12: 4,
etc} ?
Или же{12: 3,
1: 2,
etc} ?from collections import OrderedDict
d = map(str,[1,12,123,11,3,12,12])
для первого: OrderedDict(sorted({i: len([j for j in d if j.startswith(i)]) for i in d}.items(), key=lambda x: x[1], reverse = True))
для второго: OrderedDict(sorted({i:d.count(i) for i in d}.items(), key=lambda x: x[1], reverse=True))
Вопрос: Как post очистить?

Лучший ответ:
Всегда, я не шучу, всегда после обработки post запроса, делайте редирект. Тогда подобных проблем не будет.

Худший ответ:
?в контроллере$this->refresh();
Вопрос: Зачем использовать ajax, если есть вебсокеты?

Лучший ответ:
Разные технологии под разные задачи. Сравнивать некорректно. Вы же не будете делать отдельный вебсокет под простую отправку форму ос или аяксом долбить сервак чтобы получить новые сообщения в чатике?

Худший ответ:
Ну вот смотри. Вот у тебя есть обычный хостинг с пхп, раз так, то о каких вэбсокетах может идти речь, если хост может принять http запрос и отдать ответ? Другое дело, когда у тебя есть возможность на хосте постоянно держать соединение, тогда у тебя есть выбор. Если данные постоянно обновляются, то почему бы не сделать это на сокетах, а если нет, то и на фиг надо заморачиваться, сделал fetch и все.
Вопрос: Стоит ли на такой проект тянуть js фреймворки?

Лучший ответ:
используйте vue, подойдет идеально

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

Лучший ответ:
Лучше - использовать для распределения нагрузки сервер очередей например rabbitmq.

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

Лучший ответ:
Может быть вот такimport requests
import re

url = 'https://kase.kz/ru/trades/'

r = requests.get(url)

cookie_header = r.headers['Set-Cookie']
cookie = re.search('csrftoken=([\s\S]+?);', cookie_header).group(1)

print cookie

cookies = {
    'csrftoken': cookie,
    'TRADE_USER_SETTINGS_FOREX': '"{\"fields\": [3]\054 \"instruments\": [\"USDKZT_TOD\"]}"',
}
data = {
    'csrfmiddlewaretoken': cookie,
    'market': 'FOREX',
    'instrument': 'USDKZT_TOD',
    'field': '3',
}
r = requests.post('https://kase.kz/ru/trades/view/', cookies=cookies, data=data)
print r.status_code
print r.text
Ответ 200, все норм, документ отдается

Худший ответ:
Переписал код наimport requests
from bs4 import BeautifulSoup
headers = {
    'Upgrade-Insecure-Requests': '1',
    'Content-Type': 'application/x-www-form-urlencoded'
}
cookies = {
    'csrftoken': 'pjxuo6wCuMcSyqKN7U5P3GafthpzBJs4qUC3DPbRN6w2vCH1VJOwNmgAyw5HyLTj',
    'TRADE_USER_SETTINGS_FOREX': '"{\"fields\": [3]\054 \"instruments\": [\"USDKZT_TOD\"]}"',
}
data = {
    'csrfmiddlewaretoken': 'ICIZdcQ4t80pwinw6DjCrTeJA6b70093JdNysVvjMskztukKUs2jbzk4FlRfX2Ai',
    'market': 'FOREX',
    'instrument': 'USDKZT_TOD',
    'field': '3',
}
r = requests.post('https://kase.kz/ru/trades/view/', headers=headers, cookies=cookies, data=data)
print(r.status_code)
Теперь вопрос, как их получать, как их получать, они выдаются сервером
Вопрос: Что не так с наследованием интерфейсов?

Лучший ответ:
Вы не указали, что Lol реализует интерфейс IParentpublic class Lol : IChild, IParent
А также, вероятно, вы хотели в IChild добавить свойство Family
После обновления кода:
Вы используете явную реализацию интерфейса, но у IChild нет собственного свойства Family,  только наследуемое от IParent. Как раз можно изучить ключевое слово new у свойств.
Возможно то что вы хотите посмотреть делается так:using System;


public class Test
{
	public static void Main()
	{
		Lol l = new Lol();
		Console.WriteLine(((IParent)l).Family);
		Console.WriteLine(((IChild)l).Family);
		Console.WriteLine(l.Name);
		Console.ReadLine ();
	}
}

public class IParent
{
	public string Family { get { return "suck"; } }
}

public class IChild : IParent
{
	public string Family { get { return "duck"; } }

}

public class Lol : IChild
{	
	public string Name { get { return "ross"; } }
}
// Вывод:
// suck
// duck
// ross

Худший ответ:
public class Lol : IChild,    IParent  // !!!
{
  string IParent.Family { get { return "suck"; } }
  string IChild.Family { get { return "duck"; } }
  public string Name { get { return "ross"; } }
}
Вы пытаетесь использовать свойство интерфейса не унаследовав его.
Советую выучить английский или как минимум научиться читать ошибки.
Вопрос: В чем разница между макбуками MF840 и MF840RU/A?

Лучший ответ:
Локализация

Худший ответ:
Разница в  раскладке клавы. Смотреть обязательно. А то будет у тебя какой то арабский вариант или китайский.
Вопрос: В каком редакторе создают 3d карты для игр?

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

Худший ответ:
Обычно игры имеют в комплекте SDK, в котором есть все необходимое, либо конвертеры и плагины для сторонних инструментов. (например Source SDK на борту имеет редактор карт и конвертре моделей из популярных форматов в свой внутренний)
Вопрос: Куда размещать тег botton, что бы был валидным?

Лучший ответ:
Нет такого тега botton, так что куда вы его ни засуньте - валидатор будет ругаться.<button type="button">

Худший ответ:
Скорее всего button, а не botton
Вопрос: Как организовать файловый обмен 200+ компьютеров?

Лучший ответ:
Syncthing и BTtorrent Sync - собственное два самых подходящих решения.
И Syncthing во многом считается лучше, так что просто настраивайте ваших 200 каталогов - должно нормально работать.

Худший ответ:
попробуйте https://allwaysync.com
синкал 10+ клиентов на сервер - все ОК
Вопрос: Обязательно ли маршрутизатор должен пропускать через себя весь трафик?

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

Худший ответ:
включаем голову:
1 - пока клиенты в разных подсетях - трафик тотально через Milrotik. хотите транзит - как минимум сажайте их в одну подсеть. подсети, и тем более vlan - инструменты именно изоляции upd при чем именно внутренней изоляции клиентов друг от друга. зачем вы их изолируете? если затем мучаетесь как дырочку просверлить?
2 - теперь о скорости - у вас на клиентских компах по сколько портов? если по одному гигабайтному - втыкайте их в lan порты D-Link, (но не делайте на нем vlan и dhcp, тогда остальные его настройки не будут важны) + втыкайте lan Milrotik в lan D-Link (так же с клиентской стороны) в итоге D-Link будет работать просто свичем. Milrotik будет раздавать ip и пропускать трафик в инет. локальный трафик будет на гигабите летать транзитом
Вопрос: Какую БД использовать для быстро меняющихся данных?

Лучший ответ:
подключается более двух тысяч устройств и передают данные с интервалом от 5 до 40 секунд.вести историю (интервал давности: месяц, частота: ежедневные показатели)
Если речь лишь о периодическом добавлении каких-то одних и тех же метрик (числовых значений) во времени, то нужно выбирать что-то из Time Series баз данных типа InfluxDB, Prometheus и др.
Для IoT устройств нужно выбирать СУБД исходя из структуры хранимых данных, частоты добавления, способа извлечения данных.
Для часто обновляемых данных можно взять какую-нибудь быструю K/V СУБД (NoSQL) типа Tarantool, Aerospike или попсовую Redis. Туда стоит класть какие-то небольшие несырые данные, поскольку используется доступная RAM. Это должны быть часто используемые данные. Часто используются для кеша и очередей.
Советую получше изучить какие сырые данные будут передаваться, как будут вычисляться/аггрегироваться/обрабатываться и как часто. Прикинуть примерные объемы на ближайший срок и оставить возможность для роста на порядок. Оценить примерные объемы чистых хранимых данных, исходя их типов передаваемых данных, для того чтобы примерно можно было оценить объем хранилища.
Также подумать о применении систем обработки данных в очереди.

Худший ответ:
Redis - это очень хороший вариант.
Если сервис быстрорастущий, то нужно предусмотреть горизонтальное масштабирование и тогда надо будет использовать Redis Cluster https://redis.io/topics/cluster-tutorial
Вопрос: Какие книги по эффективному самообучению стоит прочесть?

Лучший ответ:
Learning How to Learn: Powerful mental tools to he...отзыв о курсекнига автора

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

Ещё нашёл Make It Stick
Интересно есть ли эта книга на русском языке?
Вопрос: Какой транзистор взять для ключа?

Лучший ответ:
Во всех непонятных моментах советую использовать IRLB3034PBF.
Он при открывющих 3в способен пропустить более 100 ампер. Работает до 40в нагрузки.
Подключение и обвязка всех мосфетов очень просты. 
Прошу обратить внимание, что управляете вы минусом. (землёй)

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