Vikhrmodels/habr_qa_sbs huggingface dataset:
Вопрос: С чего начать изучение разработки игр под андроид?

Лучший ответ:
Английский язык, C# и ТОЛЬКО! оф. документацию на сайте Unity.
Что нужно знать обязательно начинающему c# разработчику чтобы сделать свою первую программу/игру?

Худший ответ:
С гугла!
Вопрос: Как вычислить новую ширину квадрата, если повернуть его на 45 градусов?

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

Худший ответ:
Повернуть его обратно, вычислить, а потом повернуть так, как надо.
Вопрос: Как программа «Блокнот» определяет кодировку файла?

Лучший ответ:
Far при сохранении файла в UTF-8 пишет в начале файла BOM маркер (EF BB BF), указывающий что весь текст далее закодирован с помощью UTF-8 кодировки. А при сохранении в ANSI - ничего не пишет. UTF8 может не содержать BOM - и тогда, определение кодировки лежит на плечах редактора и/или пользователя. Некоторые редакторы анализируя строку умеют определять верную кодировку с ощутимой долей вероятности.

Худший ответ:
Far при сохранении файла в UTF-8 пишет в начале файла BOM маркер (EF BB BF), указывающий что весь текст далее закодирован с помощью UTF-8 кодировки. А при сохранении в ANSI - ничего не пишет. UTF8 может не содержать BOM - и тогда, определение кодировки лежит на плечах редактора и/или пользователя. Некоторые редакторы анализируя строку умеют определять верную кодировку с ощутимой долей вероятности.
Вопрос: Вредно ли втыкать 2 usb устройства в один порт usb?

Лучший ответ:
Вредно ли втыкать 2 usb устройства в один порт usb?Конечно.Ничего не погорит если кто-то нечайно воткнёт другое устройство во второй разъём?Нет.

Худший ответ:
Физическим разветвлением у вас ничего не выйдет, т.к. по USB можно подключить либо одно активное устройство, либо концентратор с ограничениями в работе подключаемых уже в него.
Колхозить вам придётся путём пересборки готового USB хаба и установки внутри ноута, причём место на плату + 2 коннектора у вас появится только при замене дисковода на заглушку.
Вопрос: Как «синхронизировать вид» RAW и JPG?

Лучший ответ:
Привет,
1. Внутрикамерная обработка в JPG зависит от настроек камеры (баланс белого, резкость, тип снимка и т.п.) и после нажатия кнопки в камере создается RAW (сырой снимок) и сразу за ним процессор камеры, используя эти установки формирует JPG. В зависимости от модели камеры может быть сохранен только JPG или только RAW или RAW+JPG.
2. Вместе с камерой распространяется и программа, к примеру, DPP у CANON, которая фактически, может делать JPG из RAW автоматом, используя именно те установкам камеры, которые были определены при съемке. Если автомат не удовлетворяет, то можно самостоятельно покрутить всяческие бегунки и "вытянуть" RAW, как душе захочется. Но, внутри программ от производителей есть возможность автоматизировать обработку и в пакетном режиме, как по установкам камеры, так и по своим. Создали некий алгоритм "вытягивания" и потом применили его к куче RAW-ов.
А "блеклый" RAW потому, что там, грубо говоря, "все в нулях" - это сырой снимок. Делаете, к примеру, резкость = 5, насыщенность = 7 и т.д. и RAW уже становится не "блеклым".
P.S. Играться с RAW можно "до одури" :-) и через некоторое время это надоедает настолько, что снимать в RAW практически перестаешь.

Худший ответ:
Я знаю, как это обычно звучит, но, тем не менее скажу: вам это не нужно. Большинство редакторов для "проявки" RAW имеют, в том или ином виде, кнопки автоматической установки настроек или чтения настроек камеры из метаданных снимка. Найдите их в том редакторе, которым пользуетесь, или подберите редактор, в котором они вас устроят (включая софт, поставляемый производителем камеры). Еще лучше, если вы просто научитесь сразу снимать то, что нужно, чтобы не тратить время на пресловутую обработку, на которой все помешались и считают ее необходимым атрибутом "настоящего фотографа". Последнее не касается таких областей, как съемка свадеб, мероприятий и спорта, но это вообще отдельная история.
Вопрос: Как проследить путь исполнения для CMS под PHP?

Лучший ответ:
IDE (например phpstorm) + XDebug

Худший ответ:
Слышал, что можно xdebug для этого использовать +IDE (PHPStorm например)
Вопрос: Можно ли написать свой редактор кода на python?

Лучший ответ:
Да, можно.

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

Лучший ответ:
Дело в том, что у меня может быть ID и вида cli435ent8565767 , а прибавить единицу нужно именно в конце, что бы на выходе получилось cli435ent8565768 
- ну сделайте отсчет с конца цифр (https://docs.microsoft.com/ru-ru/dotnet/api/system...
- разрубаете строку на этом месте, любым понятным для вас способом
- "хвост" конвертируете в число
- инкриминируете
- конвертируете в строку
- склеиваете с "головой"
.. творить можно все что угодно. но если вы будете продолжать неожиданные усложнения, это будет откровенным нарушением правилps даже не особо сложно из cli435ent8565767 получить cli{а тут знаки свыше 7}ent{7 знаков} и 4358565767... сделать инкремент и собрать обратно, соблюдая ваши странные правила. вопрос только в том, что бы правила были однозначно определены. и повторюсь - необходимые основы, вам уже сообщилиpps если вы ждете чудесных манипуляций именно со строками/символами - их нет. можно определить код символа и инкрементировать его.. это работает для [0..8].. а для девятки будет "упс"..
.. далее, допустим у вас концовка нумерации 199 - инкремент то нужен 200.. а если 1999, тогда 2000.. ход мыслей уловили?
инкрементировать желательно именно числовое значение. если исходная строка сложная, это ваша отдельная задача - изучить структуру строки, и какие части должны быть "чувствительны" к инкременту "хвоста".. а разбор строки на части и обратная склейка - дело техники.. при чем простой. и (upd новичку*) вполне корректно задавать вопросы по шагам подобной техники, но не превращать вопрос в задание - "сделайте мне хорошо"ppps еще точнее, вопросы может задавать кто угодно, и какие угодно. но надо различать грань "помогите мне"/"сделайте за меня". успехов

Худший ответ:
Если буквенная часть у Вас всегда одинакова и всегда является строкой "client", то вот так:const string id = "сlient4567224";
      const string Prefix = "client";
      var numeric = int.Parse(id.Substring(prefix.Length));
      var nextId = $"{prefix}{numeric + 1}";
Если префиксом не всегда является строка "client", но цифровая часть всегда строго после буквенной, то Вам подойдет такой вариант, он более универсален:const string id = "blahblah4567224";
      const string Prefix = "client";

      var i = 0;
      while (i < id.Length && !char.IsDigit(id[i]))
      {
         i++;
      }

      var numeric = int.Parse(id.Substring(i));
      var nextId = $"{prefix}{numeric + 1}";
Вопрос: Почему не устанавливается новая версия win 10?

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

Худший ответ:
Как скачать Windows 10 с сайта Майкрософт напрямую без программ
1. Зайдите на страницу с браузера Edge или Exploer загрузки средства Media Creation Tool на сайте Майкрософт — Скачать Windows 10
 затем нажмите правой кнопкой мыши в любом месте страницы и выберите пункт меню «Просмотреть код» (или нажмите клавиши Ctrl+Shift+I ).
2. Нажмите по кнопке эмуляции мобильных устройств (отмечена стрелкой на скриншоте). 
3. Обновите страницу. Вы должны будете оказаться уже на новой странице, не для загрузки средства или обновления ОС, а позволяющей скачать образ ISO. Если не оказались, попробуйте в верхней строке (с информацией об эмуляции) выбрать какое-то устройство. Нажмите «Подтвердить» ниже выбора выпуска Windows 10.
5. На следующем шаге нужно будет выбрать язык системы и также подтвердить его.
6. Вы получите прямые ссылки на загрузку оригинальных ISO. Выберите, какую Windows 10 вы хотите скачать — 64-бит или 32-бит и дождитесь скачивания через браузер. 
И получите образ ISO который нужно будет записать на USB(я создавал программой "UltraISO"), а так-же(если у вас не лицензионная ОС) её активировать и получится это:
Вопрос: Можно ли ускорить этот запрос?

Лучший ответ:
По доброму, если вам нужна такая информация, то сумму для каждого пользователя необходимо считать в отдельной таблице (или таблице пользователей) и пересчитывать её каждый раз, когда добавляется новая запись в таблицу table. Тогда пересчет будет происходить для каждого пользователя отдельно и только тогда, когда что-то меняется.
Альтернативный вариант, но менее эффективный - создать виртуальную таблицу для запроса:SELECT table.user_id, SUM(table.value) as value_sum FROM table GROUP BY table.user_id
И уже из неё делать выборку с сортировкой и лимитом. Такую таблицу MySQL будет пересчитывать сама при каких-либо изменениях в таблице table, но я не уверен на сколько это будет быстро работать.

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

Лучший ответ:
Сделать ещё один микросервис(с простым API), пусть остальные обращаются к нему за данными.UPD:
Если вы не хотите плодить микросервисы, то непонятно зачем вы используете микросервисную архитектуру.
Ведь несколько десятков различных микросервисов в одном проекте это вполне нормально (есть немало проектов, где их сотни).
Вы же пишете что их всего два o_O

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

Лучший ответ:
html слишком прост, чтобы специально искать сайты с упражнениями.
Смотрите просто справочник
https://www.w3schools.com/tags/tag_doctype.asp

Худший ответ:
Лучшее обучение html это верстать psd макеты.
Вопрос: На каком движке сделать образовательную игру для детей?

Лучший ответ:
На том, который вы знаете и который подходит под ваше ТЗ.
Без ТЗ советовать движок - так себе затея.

Худший ответ:
Если без знаний в программировании, то Construct 2 или 3, в зависимости от финансов.
Если есть знания в программировании, то Unity. 
Ответ "пальцем в небо" потому что нету внятных требований, например: 
- Игра будет в 2D или 3D?
- Подразумевается какой-то конкретный жанр?
- Нужен ли мультиплеер онлайн/оффлайн?
- На какие платформы нужно будет экспортировать игру?
- Что игрок должен в игре делать?
Вопрос: Как оплатить штраф за просроченный 3-ндфл физ.лицу?

Лучший ответ:
Штраф оплачивается только при его наличии. Оплатить штраф "заранее" нельзя.

Раз вы физик - то вам надо просто подать декларацию о доходах и оплатить налог, причем это можно сделать вроде бы до апреля (хз какая страна, но в СНГ везде вроде бы так).

P.S. проморгал что там декабрь 2018. Тогда уже не заранее )

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

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

Худший ответ:
Раз спрашиваешь, то рано. Касательно английского, я считаю себя отлично знающим его, Но! чтобы писать лаконичные, емкие(в одном предложении сразу и показать, что ты про, и вежливость и уточнить и предложить заодно вариант, того что будет лучше) я сижу по полчаса над важными сообщениями (отклик на инвайты, сдача работы, заявки), думаю над идиомами, метафорами итд. Юзаю context.reverso.net  гугл транслэйт, иногда https://www.urbandictionary.com/ просто гуглю, смотрю юзают ли такое выражение или нет. А первый год, так вообще работал переводчиком, чуть ли не, искал адекватные переводы терминов и процессов своей работы очень долго.
Короче инлиш не препятствие, тем кто действительно хочет вкалывать, а на апворке лафы нет.
Вопрос: Почему вторая линия толще первой?

Лучший ответ:
Потому что линия рисуется в обе стороны от центра. А слева от левой линии просто негде рисовать. У вас там canvas кончился.

Худший ответ:
приписывайте еще 0.5 пикселя к координате, чтобы линия получилась тоньше
Вопрос: Как получить доступ к DOM элементу посредством Vue?

Лучший ответ:
<div>
   <textarea ref="textarea"></textarea> 
   <span></span>
</div>this.$refs.textarea
Задаете атрибут ref для нужного элемента и по установленному значению обращаетесь в this.$refs
Про refs в документации

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

Лучший ответ:
https://codepen.io/MagicMight/pen/mdJbpVp
Вот решение

UPD
https://codepen.io/MagicMight/pen/mdJbpVp
Просто добавляйте класс ко всем кнопкам, которые нужно активировать.

Худший ответ:
Замените
this.form.submit.disabled=0
На
this.form.submit.disabled=0;this.form.submit[1].disabled=0
Вопрос: Как заставить компьютер на windows запускаться после нажатии на клавишу?

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

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

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

Худший ответ:
Да нет здесь никаких скилов. Если вы не Джимми МакГил, не обладаете примерно такой же харизмой и красноречием, то боюсь, софтскилами вы себе ничего не набьете. Хорошее портфолио и профессионализм в данном конкретном случае будет гораздо важнее, и вкачать его в вашем случае проще и быстрее, чем ветку красноречия.
Ни один заказчик не предпочтет сидящего на ушах продавана с плохим портфолио лаконично-скромному профессионалу с отличным портфолио. А если предпочтет - тем лучше, значит, плохой заказчик.
Вопрос: Какой реэим электропитания лучше использовать?

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

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

Лучший ответ:
поднимать скилл CSS до высот.
начинать изучать JS, именно JS, а не jQuery и прочие фреймворки, т.к. это тоже самое, пытаться учиться парковаться на машине, не зная где находится педаль газа xD

Худший ответ:
Обратите внимание на freecodecamp.org.
Вопрос: Стоит ли переезжать на windows 10 с Linux из-за проблем с драйверами железа?

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

Худший ответ:
Нормально всё вроде с вендой. Нечего там терпеть. Единственное, что приходит на ум, это не будет работать копипаст через выделение и среднюю кнопку мыши.
Вопрос: Как сделать чат — бота vkcoin в ВК?

Лучший ответ:
Я нечего не пойму я в это деле 0
Как ты тогда сделаешь его?

Худший ответ:
 Можете не кидать библиотеку и т.д. Я нечего не пойму я в это деле 0
А как тогда иначе, за тебя бота написать? В вопросе речь о том, как сделать, а не где найти готового.Гитхаб готового бота
Вопрос: Почему Win 10 грузит систему пока не вызовешь Диспетчер задач?

Лучший ответ:
Проверьте, может, у вас в Хроме майнер  завёлся.

Худший ответ:
Win10 переключает приоритет на процесс, окно которого находится на переднем плане. У диспетчера задач приоритет высокий, так что ему будет доставаться больше процессорного времени, а на переднем плане тем более.
Можешь проверить подобное с помощью архиватора, например
Еще у хрома есть свой диспетчер задач, в котором можно посмотреть, какая вкладка или расширение грузит систему сильнее всего. Можно и с помощью системного диспетчера задач убить зажравшийся процесс, но там будет только пачка безликий chrome.exe.
Вопрос: Как поменять пароль в phpmyadmin?

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

Худший ответ:
Забить в Гугл заголовок вопроса.
Или Вы хотите, чтобы я это сделал за Вас?
Вопрос: С чего начать изучение программирования 3D графики?

Лучший ответ:
Начните с основ https://habr.com/post/248153/
Затем переходите к более прикладным задачам https://habr.com/post/310790/
Если ваша цель не с графикой разобраться, а просто писать игры, то берите сразу готовый движок. Unity там или Unreal Engine.

Худший ответ:
1. Франк Луна. DirectX 12.
2. www.3dgep.com
3. chilitomatoyoutube
Обязательно изучать C++. Хотя можно взять C# и платформу UWP, потом можно будет взять движок Unity 3d.
WinAPI.История, как DirectX победил OpenGL.
Вопрос: Где может понадобиться трейт в PHP?

Лучший ответ:
Там, где может понадобиться множественное наследование.

Худший ответ:
Есть у Вас 20 классов унаследованных от разных классов и есть методы одинаковые. Вы выносите их в трейт.В каком же случае наследование будет предпочтительнее трейтам?
Это две абсолютно разные вещи. Наследование дает множество благ, трейт только 1. Стоит ли использовать наследование, если надо всего лишь метод вынести для повторного использования?
Вопрос: Имеет ли значения длина витой пары от роутера?

Лучший ответ:
Разница будет только в одном случае - витая пара превысит допустимую длину линка, т.е. будет больше 100м. Тогда просто работать не будет )

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

Лучший ответ:
Работать будет даже на очень слабом железе.
Проблема только в капризности ESX по отношению к сетевым картам и контроллерам дисков.
Про железо можно посмотреть погуглив "whitebox ESXi"

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

Лучший ответ:
PHP не предлагать 
Простите конечно, но и дурак. Весь мир Российского фриланса крутится вокруг него. Если вы серьёзный разработчик вам не составило бы труда его выучить и попробовать на нем поработать.
Если вы такой брезгливый то попробуйте не знаю на Django, возможно вы увидите себя в дальнейшем Python разработчиком
Пока это два основных серверных языка во фрилансе. Другие я встречаю крайне редко или никогда.
В JS сейчас можно на Angular что-то найти, но шансов найти что-то на Vue или React  в разы больше

Худший ответ:
А что мешает искать заказы на ASP.NET, где надо что-то кроме сайта визитки?
Их конечно в разы меньше, и искать дольше, но они есть и отдача лучше - один проект на несколько месяцев лучше чем 50 на 1-2 дня каждый.
Вопрос: Как сделать детектор курения? какой датчик учует табачный дым?

Лучший ответ:
Оцениваем качество воздуха с датчиком CCS811 от ams на Ebay продаются модули для ардуиныПеревести дыхание: датчики Winsen для контроля кач...
Гуглить: "VOC sensor"/"датчик ЛОВ"

Худший ответ:
Стандартный пожарный дымовой извещатель ловит табачный дым наура. Когда работал в ГОП инженером, это была частая головная боль. Не успели на объекте и полсигареты выкурить, как срабатывала пожарка.
Вопрос: В чем главные недостатки Test management system?

Лучший ответ:
Я видел одну систему "нового типа", это HipTest, там шаги можно переиспользовать. В классических системах, ты просто пишешь/копипастишь текст. Такие системы не нужны, тогда можно и в ворде все хранить. 
Когда описания формализованы  и имеют семантику, открываются новые возможности чтобы действительно управлять тестами, а не просто их складывать. Тогда ты можешь например ответить на вопрос, сколько тестов у нас проходят через этот экран. Сколько тестов у нас нажимают на эту кнопку.  Я считаю, что смысл такой системы в этом. Давать новые возможности работы с данными.  А не просто сделать хранилище текста, с аккаунтами, чтобы можно было распределять тексты и собирать галочки проставленные пользователями (тестировщиками). Или еще какие-то там красивые репорты из этого кроить. Т.е. понятно, что это тоже нужно, но не это главное в системе управления тестами. Не это отличает систему управления тестированием, от системы управления <чем-то другим>. Я считаю, что цифровые системы должны не просто быть компьютерной заменой бумаге, а расширять возможности человека. Позволять ему делать то, что ему раньше было не доступно. Тогда это оправдано.  Например электронная книга дает возможность полного поиска по тексту, в то время как книги, в лучшем случае, ограничены предметным указателем.

Худший ответ:
Мне кажется, ты собрался заниматься херней.
ПС: нет, это не троллинг.
Вопрос: Где находится файл .profile в git?

Лучший ответ:
.profile имеет смысл только для sh (оно же Bash) в Linux. Если что, этот файл находится в корне пользовательской директории. Возможно, git для Windows умеет подцеплять его из соответствующего местонахождения.

Худший ответ:
В домашнем каталоге. Напишите и выполните следующий скрипт:echo ~
В этом каталоге и создавайте .bashrc или .profile для bash в виндовс.
Вопрос: Как сократить такое условие?

Лучший ответ:
element.previousSibling !== null
вынести во внешнее условие,
element.previousSibling.nodeName.toLowerCase() сделать один раз перед проверкой
остальное - внутри 
"h1", "h2", "h3", "h4", "h6", "p", "img"
можно сделать списком и проверять на вхождение в список

Худший ответ:
Наверное можно и без сравнения с null, ведь условие преобразуется в логический тип, а null в js преобразуется в false:if (element.previousSibling) { 
 // ... остальной код Дмитрия Дерепко
}

// Или без вложенных циклов
// сначала проверить:  если у элемента нет предшествующего элемента
if (!element.previousSibling) { 
  return element;  
  // вернуть элемент, чтобы другая функция что-то с ним могла сделать. 
  // Или вернуть false, не суть. Важно просто обработать сценарий, когда элемент 
  // идет первым в родителе. Можно просто выйти из функции.
}
// Дальше, если предшественник есть, делаем как в коде Дмитрия
const targetTags = ['h1', 'h2', ...],
    lowerName = element.previousSibling.nodeName.toLowerCase();

if (!targetTags.includes(lowerName)) { 
  // do samething
}

// Кстати, можно targetTags передавать сразу аргументом в функцию, чтобы код был чуть 
// более универсальным.
function doSomethingEpic(element, targetTargs) {
 // code
}

const someElem = document.querySelector('.epicElement');
const tags = ['h1', 'h2', ...],
doSomethingEpic(someElement, tags);Важно: метод includes не поддерживается в IE, полифилл есть на сайте MDN