pavki/hr_qa_sbs_best_bad huggingface dataset:
Вопрос: Как найти последний элемент в int массиве?

Лучший ответ: Если массив задан статически:int alpha[100];

alpha[99]=4242;

const int last = alpha [ (sizeof(alpha) / sizeof(alpha[0]))-1];
Если у вас есть только указатель на начало массива - то никак. Храните длину отдельно.

Худший ответ: Никак, если его не помечать.
Для этого в char-строках ("C-strings", "zero-terminated strings") добавляют в конец элемент со значением '\0' (нуль-символ), на наличие которого опираются стандартные функции, вроде strlen(const char*), которая считает символы до первого зеро-терминатора.
ЗЫ Теоретически, есть еще некоторый allocation header, который находится перед выделяемым динамически (то есть только в хипе) буфером, на который ориентируется free(void*), но это никак не регламентируется стандартом.UPD: Начиная с C++11 у нас есть std::array, который фактически оборачивает буфер в объект.
Вопрос: Жёсткий диск накрылся?

Лучший ответ: Ну для начала неплохо бы прочитать SMART диска.
А так - никакой информации.
Ошибки могут быть по многим причинам - плохой контакт, проблемы с питанием, вибрация

Худший ответ: Сначала меняешь SATA-кабель, потом всё остальное.
Вопрос: Как грамотно раздать траффик на 500 человек в своей квартире?

Лучший ответ: На каждом ПК запущен софт, который работает в 60 потоков. Практически, это 500 офисных сотрудников, которые одновременно и без остановок серфят веб.Нет, офисные сотрудники не могут одновременно и без остановок серфить веб.Я предполагаю, что либо свитчер либо роутер просто не успевают обрабатывать все пакеты.Вполне вероятно но далеко не факт, вероятнее, что тупо не хватает ширины канала.Помогите понять, что требует замены: роутер или коммутатор (свитчер) ? Замены требует роутер, провайдер, тариф или админ - надо смотреть по месту

Худший ответ: В общем, как посоветовали добрые люди я провел замену маршрутизатора и свитчей. В качестве маршрутизатора поставил D-Link DFL 260E, несколько свитчей заменил на Dlink DGS-3000-24TC. 
Это обеспечило гигабитную связь между компьютером, свитчем и маршрутизатором.  Пакеты перестали теряться и помирать, вставая в очередь на маршрутизаторе. Сейчас в работе более 12 ПК, канал Ростелекома на 50 Мбит в секунду. Все в порядке!
Большое спасибо!
Вопрос: Какой MAC-адрес передается провайдеру(или роутеру,не знаю)?

Лучший ответ: - Провайдеру пакеты уходят с MAC адресом самого роутера
- Роутеру пакеты уходят с MAC адресом виртуалки

Худший ответ: Почитайте про модель OSI и принципе ее работы. Данные передаются на физическом уровне. Выше него - канальный. Каждый раз при передаче пакета между  устройствами в заголовок помещаются данные отправителя и получается, как раз MAC-адреса.
Отвечая на вопрос - провайдер видит тот MAC, который стоит на внешнем интерфейсе вашего роутера.
Более подробную информацию можно найти в любой книжке по сетям или вики.
Вопрос: Как отправить смс в WhatsApp?

Лучший ответ: К сожалению, WhatsApp ведёт очень жёсткую политику по отношению к разработчикам, у него отсутствует публичный API и возможность отправки сообщений на номера, которые не находятся в ваших контактах. Однако, в сети существуют сервисы, которые предоставляют такой API, однако он не официальный, его использование несет в себе риск бана вашего аккаунта без возможности восстановления. К тому-же такая услуга не бесплатна ( на одном из сервисов, стоит 900р/мес. за 1 аккаунт ) и как правило, с лимитом на количество отправленных сообщений.
Существует так называемое WhatsApp Business API которое доступно лишь "средним и крупным компаниям", заявка отправляется через Facebook, где её проверяют и выносят свой вердикт, по поводу допуска. Простым смертным и ИП-шникам оно не доступно. https://www.whatsapp.com/business/api
Как отметил пользователь storm57, на GitHub можно найти несколько открытых проектов, которые предоставляют API для WhatsApp в виде библиотек и компонентов для различных языков программирования. 
Однако, использование такого способа, может сильно повысить риск бана аккаунта, даже по сравнению с платными сервисами, которые работают через WhatsApp WEB. 
Относительно безопасный и практически бесплатный способ: https://github.com/sigalor/whatsapp-web-reveng
Библиотека, работающая на собственном сервере, с возможностью получения API и отправки сообщений.
Когда-то хотел с ней "поиграться", если захотите, могу установить и настроить её для вас на вашем или моём сервере, мои контакты сверху под ником.

Худший ответ: Понимаю, что тема устарела, но всё же.
Если необходимо отправлять сообщение только одному или двум номерам всего лишь. Т.е. когда например сайт упал, пришло сообщение feedback, пришёл заказ и т.д.
Это ведь не то же самое, что рассылка на чужие номера.
Такое реально или за это так же можно в бан попасть?
Вопрос: Как без проводов сделать подключить интернет на даче, на расстояние 200м?

Лучший ответ: Если есть прямая видимость, то не проблема - делайте мост из двух недорогих внешних точек доступа от Ubiquiti или  Mikrotik.
Цена вопроса около 10тыс рублей.

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

Лучший ответ: Изучить английский и математику

Худший ответ: https://pastebin.com/8ygzT3qf
+ учить и практиковать английский
Вопрос: The Dude. Как отправлять уведомления в Telegram?

Лучший ответ: Вопрос давно решился, но забыл отписаться вовремя. Работает следующий вариант нотификации в дуде (Type: execute on server):/tool fetch url="https://api.telegram.org/botXXXXXXXXX:XXXXXXXXXXXXXXXXXXXXXXXX/sendMessage?chat_id=-10XXXXXXXXXXXXX&parse_mode=HTML&text=at <b>[TimeAndDate]</b> %0A\
on map <b>[Device.NetMaps]</b> %0A\
Device IP <b>[Device.Name]</b> %0A\
Probe <b>[Probe.Name]</b> %0A\
Status <b>[Service.Status]</b> %0A\
Problem Description: <b>[Service.ProblemDescription]</b> %0A\
Changed since <b>[Service.TimeSinceChanged]</b> %0A\
Last time up <b>[Service.TimeLastUp]</b> \
" keep-result=no
Это реальный пример с переносами, выделениями жирным и пр. "лишними" мелочами, достойными удаления.

Худший ответ: На данный момент - никак. Я лично писал по этому поводу в саппорт. Мне ответили, что меня поняли, и возможно, со временем, добавят функционал утилиты fetch в notifications, но на данный момент -- никак, увы.
Вопрос: Frontend(React) + Backend?

Лучший ответ: Backend - REST API, ему плевать что у клиента - react/angular/нативное мобильное приложение или другой сервер, его дело данные обрабатывать и отдавать 
Клиент  - плевать на чем написан backend, хоть на паскале
их объединяет  только документация, все остальное от лукавого

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

Лучший ответ: Этого мало.
Первое. Нужны особые операции, которые гарантированно выполняются атомарно. Например (из исходников Delphi)function InterlockedAdd(var Addend: Integer; Increment: Integer): Integer;
asm
      MOV   ECX,EAX
      MOV   EAX,EDX
 LOCK XADD  [ECX],EAX
      ADD   EAX,EDX
end;
Здесь префикс LOCK (блокирование шины) и даёт атомарность. Также используют операцию XCHG (exchange) — единственная атомарная без префикса LOCK.
На основе этого можно устроить объект, который называется spinlock. Крутим цикл, пока система не скажет: свободно. Из Википедии.mov eax, spinlock_address
mov ebx, SPINLOCK_BUSY

wait_cycle:
xchg [eax], ebx  ; xchg - единственная инструкция, являющаяся атомарной без префикса lock
cmp ebx, SPINLOCK_FREE
jnz wait_cycle

; < критическая секция захвачена данным потоком, здесь идёт работа с разделяемым ресурсом >

mov eax, spinlock_address
mov ebx, SPINLOCK_FREE
xchg [eax], ebx  ; используется xchg для атомарного изменения
; последние 3 инструкции лучше заменить на mov [spinlock_address], SPINLOCK_FREE -
; это увеличит скорость за счёт отсутствия лишней блокировки шины, а mov и так выполнится атомарно
; (но только если адрес spinlock_address выровнен по границе двойного слова)
От спинлока до настоящего мьютекса остаётся один небольшой шаг. Спинлок потребляет ресурс процессора, не производя полезной работы. После того, как спинлок проработал несколько микросекунд и не освободился, мы говорим: не судьба — и передаём работу другому процессу. Надеюсь, вы в своей мини-ОС как-то научились переключать процессы.
В однопроцессорном ядре никаких спинлоков нет. Если надо захватить ресурс, а он чей-то — сразу отдаём управление другому.
UPD1. Почему не сразу отдавать работу другому процессу. Хороший тон — защищать мьютексом не системные вызовы (которые действительно долги) а какие-нибудь структуры данных вроде связных списков и атомарных struct. Так что вероятность, что объект просидит занятым долго, крайне мала. В настоящем мьютексе есть очередь с приоритетом, которая защищается, как ни странно, спинлоком. И этого достаточно.

Худший ответ: Про синхронизацию можно почитать у Рихтера.
Вот в этой книжке:
https://www.ozon.ru/context/detail/id/116668/
Правда, там ничего не сказано про современность, например про Неблокирующую синхронизацию. Чего про неё читать я не знаю.
https://ru.wikipedia.org/wiki/%D0%9D%D0%B5%D0%B1%D...
Вопрос: Какие есть софтовые варианты проверки комплектующих пк на новизну и работоспособность?

Лучший ответ: sergeistrelec.ru/winpe_10_8/146-winpe-10-8-sergei-...
Раздел: Диагностика
Выбрать нужное.

Худший ответ: CrystalDiskInfo для жесткого диска. А остальное нет,  ну для проца и не надо, для видеокарты только стресс тесты, если проходит их то всё нормально. Для оперативки memtest86, типо стресс-теста программа.
Вопрос: Как правильно реализовать такое распределение дивов?

Лучший ответ: flex-wrap: wrap; не пробовал?демка
Или я неправильно поняла суть твоей задачи

Худший ответ: Используй display: grid; прочитай про его свойства по типу grid-template-columns, grid-template-rows, grid-template-area и т.д. Узнаешь все, что тебя интересует.
Вопрос: Php. Как подсчитать отдельно количество столбцов и строк двумерного массива?

Лучший ответ: $arr = [
        ["рр","ыы","ыаы",20,"ыаы",2],
        ["ыпв","ып","вп",9,"впрр",4],
        [ "вр","вр","вр",30,"вр",5],
        ["врар","ароа","аоао",50,"ааоао",12]
    ];


    for($i = 0; $i < count($arr); $i++)
    {
        for($j = 0; $j < count($arr[$i]); $j++)
        {
        }
    }

Худший ответ: Просто подсчитать кол-во можно так:$count = 0;
$data = [
    ['a', 'b', 'c'],
    ['d', 'd', 'e'],
    ['f', 'h', 'j']
];

foreach ($data as $datum) {
    $count += count($datum);
}
Вопрос: В каких случаях используют С# и Java в веб-разработке?

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

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

Лучший ответ: Когда вы просто заходите в папку, чем вы это делаете?
Вы это делаете проводником, а не вашей программой на питоне.
Вы можете попробовать переписать проводник на питоне, добавив в него реализацию доступа по паролю.
Но кто-то поставит FAR или DOS Navigator и получит доступ.
Вы можете попробовать переписать проводник, FAR, DOS Navigator и все другие программы.
Или уже если надежно, то переписать операционную систему, добавив в нее все функции, которые вам нравятся.
Но думаю, что я достаточно ответил на вопрос, чтобы понять, почему питон не будет запрашивать пароль, если вы открываете файл не питоном, а другой программой.

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

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

Худший ответ: Попробуйте посмотреть страницу с отключенными цсс стилями. И проверьте картинки, не загружаете ли Вы их в избыточном размере(а стили их показывают в размере, который Вы указали).
Вопрос: Через какой плагин в Wordpress реализовать проекты домов?

Лучший ответ: А плагин realty  не подойдет?
Я бы реализовал описанный вами выше функционал при помощи ACF Pro + кстомный тип записи + кастомная таксономия. Допиливать и лезть в код все-таки придется

Худший ответ: Этот посмотрите WPL Real Estate
Вопрос: Отказоустойчивость контроллера домена на windows server 2016 с одним сервером?

Лучший ответ: Отвечаю по пунктам
1. Отказоустойчивость с одним КД быть не может. Отказоустойчивость достигается избыточностью, это когда более двух. Вам, возможно, подойдет правило - быстро поднятое не считается упавшим)))
2.  Про Acronis ничего не скажу, а вот Veeam B&R Free Edition вам очень в этом поможет, он даже может гранулярно восстанавливать объекты AD
3. Встроенная майкрософтовская бэкапилка вам тоже подойдет, но не факт что после восстановления из бэкапа КД нормально заработает, а вот с Veeam B&R Free Edition все прекрасно заработает - проверено на личном опыте.
4. Если вы ограничены в бюджете делайте виртуалку с КД и второй КД поднимайте на железном ПК с минимальной конфигурацией  ЦП-i3/ОЗУ-6Гб/ЖД120Гб - этого хватит, если вы на нем ничего больше ничего ставить не будете.
5. Не советую так делать - получите ошибки разсинхронизации в AD

Худший ответ: Для отказоустойчивости я бы порекомендовал вам довольно дешевый вариант. Не обязательно покупать второй сервер, ведь один вы уже купите и купите для него необходимое количество CAL  лицензий.
Ставите одну машину в сети компании, настраиваете на этой машине контроллер домена.
Покупаете самую дешевую виртуалку в облаке Azure, настраиваете VPN ON-Premise--Azure и поднимаете на этой виртуалке второй контроллер в режиме core. Лицензия в этом случае уже включена в стоимость виртуалки.
В случае падения физического сервера, вам всегда поможет контроллер в облаке. Бекапить также можно все при помощи сервисов Azure. Более того, ваши on-premise серверы я бы тоже рекомендовал бекапить в облако, ибо резервных копий должно быть как минимум две и желательно, чтобы они были географически разнесены.
Думаю, стоить это будет не более 2-3т.р в месяц, ну с бекапами максимум 5-6т.р.
Вопрос: Как сделать мультиязычный сайт?

Лучший ответ: Нужно все переводимые строки хранить в отдельном массиве. А в шаблоне использовать нужный массив.
Пример с шаблоном на php и использованием глобальной переменной (для упрощения кода примера):$ru = array(
    'site.title' => "Мой сайт",
    'author.name' => "Иванов И.И.",
);
$en = array(
    'site.title' => "My site",
    'author.name' => "John Doe",
);
$LANG = $_GET['lang'] === 'ru' ? $ru : en;

// где-то в шаблоне:
<html>
<head>
    <title><?=$LANG['site.title']?></title>
</head>
<body>
    <p><?=$LANG['author.name']?></p>
</body>
</html>
Подобным образом делается на любом фреймворке и/или шаблонизаторе. Приличные фреймворки уже имеют готовые инструменты для создания таких словарей.

Худший ответ: Почему-же нет? Конечно возможно! Ставите front-page или аналог какой-то и вперед! Но это если там пару страниц. Иначе лучше все таки двиг какой-то берите! Хостинг то все равно будете покупать, а там как правило можно нажатием одной кнопки все поставить. Да или техподу сказать - они сделают.
Ибо статика коварна! Но надежна...
Вопрос: Как в GOlang указать в функции что возвращаемый тип будет либо массив, либо еще что то?

Лучший ответ: Ответ на этот вопрос:Как в GOlang указать в функции что возвращаемый тип будет либо массив, либо еще что то
Go - язык со статической типизацией.
Вам нужно или явно преобразовать. 
Или использовать interface{} - но не рекомедуется этим злоупотреблять.
Ответ по приложенному вами исходному коду и тексту ошибки:
Но проблема у вас в другом.
Вы объявили переменные "b" и "err" внутри блоковif {
} else {
}
Соответственно снаружи блоков этих переменных не видно.

Худший ответ: Выдается ошибка :
undefined b
undefined err
на вот эти 2 строки:
Это потому что переменные b и err не определены. Здесь затенение переменных. Чтобы заработало:var b []byte
  var err error
  if msg_format == "json" {
    b, err = json.Marshal(in)
  } else {
    b, err = msgpack.Marshal(in)
  }
Далее, если тип возвращаемого значения один ([]byte), но содержание может быть разным, можешь вернуть еще один аргумент, который будет содержать тип (json или msgpack)func getMsgPack(row string) ([]byte, string) {
  // omited
  return b, "json"
}
Не обязательно строкой тип указывать, тут для наглядности.
Вопрос: Можно ли восстановить данные с дисков в RAID10 если полетел контроллер и один из дисков утрачен?

Лучший ответ: Да.

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

Лучший ответ: nag.ru аж пиарились на хабре что чинят и тестируют оборудование

Худший ответ: Я могу вам помочь если актуально. Пишите в скайп alex-belokuriha
Вопрос: Почему Postgresql такой медленный?

Лучший ответ: По поводу медленного COUNT на всю таблицу вам написали, а вот второй запрос "по нормальному" должен отрабатывать мгновенно, при условии что постгрес правильно настроен.
Вы случайно не используете настройки по умолчанию (а они там такие чтоб работало даже на калькуляторе)?
есди да то советую postgresql.leopard.in.ua там какраз новая версия недавно вышла.

Худший ответ: а сделайте ка EXPLAIN (ANALYSE, BUFFERS) ...
Вопрос: Почему после удаление жесткого диска, не создается новый?

Лучший ответ: Посмотрите внимательнее на ваш скриншот.
Видите внизу желтый значок с восклицательным знаком?
Видите что там написано - Невозможно установить Windows на этот диск?
Там же предлагается показать подробности - почему оно так.
Как правило проблемы в вариантах разбивки GPT или MBR и их несовместимостью с текущей системой загрузки BIOS или EFi.

Худший ответ: Во время установки shift+F10, набираете в консольке diskpart, и форматируете диск как вашей душе угодно. В том числе можно поменять таблицу разделов. Как пользоваться - (в той же консольке) diskpart.exe /h
Вопрос: Как передаются в Java объекты в методы?

Лучший ответ: При передаче объекта в качестве параметра передаётся ссылка на объект.

Худший ответ: Передается ссылка (managed указатель), то есть не значение, а номер адреса в памяти, содержащего значение.
Вопрос: Какой Python фреймворк выбрать для связки с Vue?

Лучший ответ: Что же вы так решили забить на Django? MVC очень удобная архитектура для разработки и разделения бэка от фронта, и фреймворк всё распределил за вас по модулям. И что Django может "не уметь"? :) Ответьте, мне даже интересно стало.
Можете выбрать что-то между Flask и Bottle. Оба работают на Werkzeug, на обоих нужно всё делать самому ручками, через силу и через боль ( а вот Django уже всё сделал за вас ).
Есть ещё CherryPy, но как-то я его не использовал. Демка на сайте выглядит красиво, чистенько, но что по функционалу - вообще не знаю.
В таких великанов как Tornado лезть вообще не стоит. Это для сумасшедших проектов\разработчиков.
ВЕРДИКТ: Django - это тема, никому не верьте, даже своему первому впечатлению :)

Худший ответ: то от фреймворка нужен API и ORM
Django + Django REST framework
Не хочешь джанго:
falcon
apistar
flask
Вопрос: Как в архив запаковывать все файлы из папки?

Лучший ответ: Запаковать все файлы из папки:tar czf mysite.tar.gz /home/user/data/*
Запаковать все файлы включая скрытые:tar czf mysite.tar.gz /home/user/data/.

Худший ответ: И так мат часть 
1. "*"  не равно "." при том настолько что использовать ее при запаковке нельзя.
Ибо скрытые будут пропущены  так что логичней было бы  использовать .
2.  zip не всегда есть по умолчанию.
3. time zip -r -0 archive0.zip . -x ./bitrix/backup\* -x archive*.zip
time - мерит время
r - всю папку
- 0 - уровень сжатия
 -x  исключить
. - текущую папку
Вопрос: Какие книги посоветуете для изучения теории?

Лучший ответ: Сети для самых маленьких очень классный цикл статей на хабре. Если встречаете что-то непонятное, то сразу гуглите.
Так же можете найти данную книгу в свободном доступе и почитать. Довольно просто все разъяснено.

Худший ответ: Простым языком - написано в википедии.
Всё остальное - это производный материал.
Про OSI : info-comp.ru/sisadminst/161-modelosi.html
На wikipedia.org: здесь
Вопрос: Как во vue обрабатывать данные в цикле?

Лучший ответ: Создаёшь модель юзераclass User {
    // Это позволяет оборачивать в модель данные из API
    // как-то так: `state.users.push(new User(dataFromAPI));`
    constructor({ name, created_at }) {
        this.name = name;
        this.createdAt = created_at;
    }
    
    // Создаёшь нужные методы и геттеры 
    get createdYear() {
        return this.createdAt.getYear();  // или чё там у тебя
    }
}
Вуаля. Никакого колхоза с фильтрами и методами, которые нужно копировать из компонента в компонент или делать не-вполне-очевидные миксины.<div v-for="user in users">
    <span>{{ user.createdYear }}</span>
    <span>{{ user.name }}</span>
    <span>{{ user.createdTime }}</span>
</div>

Худший ответ: Через фильтр.
{{user.created_at | getCreatedYear}}
Vue.filter('getCreatedYear', function (value) {
  return // тут ваш метод
})
Вопрос: Как на основе slick slider сделать такой слайдер?

Лучший ответ: Что-то готовое вряд ли найти получится.
Есть вот такие примеры, можно под себя доделать:
https://codepen.io/meprap/pen/yXMRpE
https://codepen.io/glitchworker/pen/aZmYdm

Худший ответ: https://www.internet-technologies.ru/articles/26-b... - здесь есть то что вам нужно.
https://nisnom.com/slajdery-dlya-sajta-html-css-i-... - тут тоже интересные слайдеры
Вопрос: Как по коду страницы на сайте узнать имя файла с этим кодом?

Лучший ответ: в хроме открываете dev tools (f12), открываете вкладку Elements, выделяете нужный элемент и справа появится список применяемых стилей с названием файла и номером строки в файле

Худший ответ: dev tools (f12) --->  ctrl+shift+F ---> в поле поиска пишем искомый текст  ну там дальше всё и так понятно
Вопрос: Как сделать лучше, merge двух массивов?

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

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

Лучший ответ: Вы используете postgresql или mysql?!#0 /usr/share/nginx/html/nana/natali_app/vendor/yiisoft/yii2/db/Connection.php(660): PDO->__construct('pgsql:host=172....', 'root', 'password', NULL)
В логе вроде выдаётся ошибка: Не может найти драйвер для postgresql.

Худший ответ: Добавь это в свой Dockerfile:#pgsql
RUN apt install -y libpq-dev \
    && docker-php-ext-install pdo_pgsql pgsql
Вопрос: Какую выбрать библиотеку для построения математических графиков?

Лучший ответ: В Qt SDK есть Qt Charts, задача его схожая, написали его на QML, что и вам советую попробовать.

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

Лучший ответ: В чем проблема просто поискать вакансии и походить на интервью?
Вам имеет смысл поискать компании, которые разрабатывают что-то медицинское - вдруг опыт работы пригодится.
А так - просто попробуйте пройти несколько интервью (хотя бы 3-5) и вопросы отпадут сами собой.

Худший ответ: Не надо себя хоронить в 30+
Просто идите на собеседование и все. Смотрите требования на интересующую вакансию, подтягиваете знания и вперед.
Вопрос: Какую реализовать telegram bot для рассылки картинок из БД по запросу?

Лучший ответ: 1) создать любого бота по примерам
2) найти где парсить без бана запросы
3) соединить

Худший ответ: В примерах у телеграмма был бот @gif