pavki/hr_qa_sbs_best_bad huggingface dataset:
Вопрос: Прием с банк карт с минимальной комиссией меньше 2ух процентов?

Лучший ответ: Никак

Худший ответ: Можно договориться с банком, предоставляющим услуги интернет эквайринга о проценте.
Но с Вами будут разговаривать, только при большом обороте. Думаю (почти пальцем в небо), для <2% у вас месячный оборот должен быть порядка 2кк+Вот тарифы сбера. Но я уверен, есть там еще какие-...
Вопрос: Можно ли дать права на редактирование информации, без полного доступа к сайту?

Лучший ответ: Не знаком с Битрикс.
Но для любой CMS должно быть доступно такое решение:
1) Создание роли контент-менеджера под определенный тип контента CMS (роль несет в себе необходимые ограничение к объектам CMS и FTP каталогу);
2) Создание аккаунта пользователя контент-менеджера, и закрепление его за ролью;

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

Лучший ответ: Попробуй<img src="/icon/<?php echo $item[1]->icon; ?>.jpg" width="34" height="34" title="<?php echo $item[1]->name; ?>" />

Худший ответ: 1. html никак не связан с базой
2. данные содержаться в массиве (это php, не html) соответственно доступ к элементу массива можно получить через например$query[0]->name. "0" это ключ массива, так что Вы можете вывести любой элемент где хотите.
Вопрос: Как разрешить ввод только цифр и одной точки с заменой запятой?

Лучший ответ: Ой, ну что вы в самом деле...
Раз уж все равно JQuery используете, так используйте JQuery Mask

Худший ответ: Ужас. Чем вам html не угодил?Ввод чисел
Вопрос: Где можно найти ребят на Python/Django?

Лучший ответ: Продолжай тянуться к буржуям
Потом сюда https://www.reddit.com/r/Python/

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

Лучший ответ: Разрабатывая на go я уяснил одну очень важную особенность - нельзя думать так как бы вы это делали на другом языке, а надо думать как в go. Не хочу вдаваться в вашу проблему, но думаю что есть выход, например, не создавать столько структур.
По вопросу: делаете интерфейс с геттерами/сеттерами и 1 функцию принимающую этот интерфейс в качестве аргумента. Юзаете функцию, отдавая ей ссылку на объект структуры.
Да-да, не получится сделать метод, и сделать через задницу, но это по меркам  многих других языков, в го - это норма. 
Можно ещё поиграться с рефлексией или генераторами. 1ое не go-way, 2ое норм, но надо заморочится с генерацией.

Худший ответ: Решение дали на stackoverflow и как подсказал Никита 
Решение простое -  func Save(i interface{}, id int) {
    data, err := json.Marshal(i)
    check(err)
    if id == 0 {
        _, err = app.DB.Exec(`INSERT INTO users(data) VALUES ($1) `, string(data))
    } else {
        _, err = app.DB.Exec(`UPDATE users SET data = $1 WHERE id=$2`, string(data), id)
    }
    check(err)
}
и вызыватьu := User{}
a := Admin{}

Save(u, u.ID)
Save(a, a.ID)
Мне потом ещё потребовалось присваивать ID, вернувшееся из базы обратно в структуру, поэтому я сделалinterface Model {
    getID()
    setID()
}
Сделал реализацию этого интерфейса для User и использовал его вместо interface{}func Save(i model) {
	data, err := json.Marshal(i)
	var id int
	check(err)
	if i.getID() == 0 {
		err = app.DB.QueryRow(`INSERT INTO users(data) VALUES ($1) RETURNING id`, string(data)).Scan(&id)
		i.setID(id)
	} else {
		_, err = app.DB.Exec(`UPDATE users SET data = $1 WHERE id=$2`, string(data), i.getID())
	}
	check(err)
}
Вопрос: Функция определения координат?

Лучший ответ: Если в имени функции имеется слово "enemy", то включается блок ИИ и машина понимает, что это координаты врагов. То же самое и с Shoot.
Поэтому ошибки в этих словах делать нельзя

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

Лучший ответ: Что? Какие ещё .exe на Линуксе?
Большие проекты можно перемещать архивом.

Худший ответ: Пользуйтесь zip или tar+gzip, в чем проблема?
Вопрос: Как устранить ошибку: «count(): Parameter must be an array or an object that implements Countable»?

Лучший ответ: Можно попробовать сбросить query
wp_reset_query();
the_content();

Худший ответ: Эта ошибка возникает, когда в count передается что-то что нельзя проитерировать. 
Пример:<?php
count(null);
Всего скорее проблема в том, что активны какие-то косячные плагины или доп. функционал темы.
Попробуй:
1) Поочередно отключить плагины
2) Сменить тему
Так ты определишь откуда растут ноги. Вангую, что это будет тема. Если так, то идешь в functions.php и поочередно комментишь функционал, чтобы найти проблемный участок кода.
Вопрос: Как объяснить рядовому клиенту, что сайт, сделанный руками, а не на шаблоне, для него будет лучшим выбором?

Лучший ответ: проект, созданный командой разработчиков (UX-дизайнер, верстальщик, программист и т.д.) будет заведомо лучшим выбором, нежели, чем тот, который собран на коленках школьником вечером после уроков быстро/сердито/дешево? 
1. С чего ты взял что твой "проект" будет лучше шаблонов, сделанных специалистками и проверенными-перепроверенными ещё сотней-тысячью других? ЧСВ зашкаливает?
2. Какая связь межу шаблоном, сборкой и школьниками? Уже это говорит что ты не понимаешь предмета.
А клиенту опасно связываться с такими самодельщиками - никто не проверит что там в реальности, доработать может быть сложнее и дороже.

Худший ответ: а зачем пояснять
биссер сейчас дорог
через6-9 месяцев слив деньги на коньтесную рекламу чел сам приползёт за спасением 
вопрс в уровне специалиста и скорости нагрева паяльника убедителя
зэказчики о бычно барыхи поэтому тут нужно просто кречать топать нагами називать его матерными словами  тогда моджет и убедите
Вопрос: Как реализовать нумерацию абзацев?

Лучший ответ: На всякий случай напоминаю, что это можно сделать автоматически тупо на CSS (CSS Counter with Decimal Leading Zero): snippet
На JS можно так (спасибо Интернету):snippet

Худший ответ: вот это странное: '<div class="numberIMG">' + '0' + number + '</span>'
открываете тег div, но дальше тег закрывающий span ...
Вопрос: Что удобнее «пагинатор» или «показать еще»?

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

Худший ответ: Самым верным решением будет комплекс:
1. "Окно" - подгрузка контента на +1 высоту viewport'а и удаление контента сверху при выходе за 4x-5x высоты viewport'а, чтобы экономить память клиентского ПК.
2. "Прозрачная" пагинация в стиле как на VK.
3. "Читать далее: название публикации" - можно оставить внизу: будет срабатывать подгрузка или по нажатию на эту кнопку, или по событию скроллинга страницы.
Вопрос: Готовое решение для асинхронной работы с базой, есть ли?

Лучший ответ: На гитхабе целая куча обёрток для jdbc-драйверов, эмулирующих асинхронность с помощью пула потоков. Но чего-то действительно хорошего и общепризнанного я тоже не встречал. Есть надежда на обещанный в Java 10 асинхронный JDBC, но пока самый гармоничный способ асинхронной работы с БД - это заворачивать запросы в CompletableFuture.

Худший ответ: Уже советовали RxJava, можно применять её. Оборачивать подключения в Observable и пошло-поехало. Советую посмотреть в её сторону, как минимум.
Вопрос: Работает ли UPnP через несколько роутеров?

Лучший ответ: Нет.
По крайней мере не встречал такого.
Для этого надо чтобы первый роутер в цепочке по своей инициативе отправил запрос на открытие порта на второй.
Поэтому порты будут проброшены на первом от вас роутере.

Худший ответ: И всё-таки UPnP обходит два NAT, если UPnP работает на обоих трасляторах.
Вопрос: Можете помочь с исчезновением памяти?

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

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

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

Худший ответ: 1. Да, будет негативное влияние, потому что хоть поддомены и воспринимаются отдельными сущностями, всё же они относятся к основному домену.
2. Это будет так же негативно сказываться на всех поддоменах.
3. Основной домен не нужно скрывать. Приведу аналогию: стоит многоквартирный одноэтажный дом. В нём 18 квартир, у каждой квартиры свой отдельный вход с улицы. Но парадный вход закрыт. Вот просто замурован намертво. Положительного в этом мало.
4. Присвоить основому домену регион либо "Россия", либо "нет привязки к региону". Но конкретные действия нужно предпринимать исходя из ниши, сайта, конкурентов и т.д.
Вопрос: Не получается реализовать в классе записи и чтения в/из файла. Какие действия посоветуете?

Лучший ответ: Так, как вы написали в комментариях - не прокатит для сложных объектов, вроде Sport.
Во-первых, вы записываете и читаете txt-файл в двоичном формате. Вы представляете вообще, как должен выглядеть файл, содержащий данные вашего типа?
Во-вторых, у вас внутри объекта есть динамические члены (способные изменять свои размеры) - vector и string. Благодаря этому объект имеет многомерное представление в памяти и вам необходимо придумать, как спроецировать его на "плоскую" память, записать его почленно. Если с char, int, float все очевидно (их размеры известены на этапе компиляции: sizeof(char), sizeof(int), sizeof(float)), то для string, например, нужно сначала сохранить его размер (чтобы потом знать, сколько читать из файла), а потом записать содержимое. С vector - аналогично, за тем исключением, что это тот же Sport и вам нужно вызвать функцию сохранения для каждого ребенка текущего объекта (и для их детей, т.е. рекуррентно обойти дерево владения). 
Чтение производить в обратном порядке.

Худший ответ: Тыц#include <iostream>
#include <string>
#include <vector>
#include <fstream>

using std::ofstream;
using std::vector;
using std::string;
using std::cout;
using std::cin;
using std::endl;

class Sport
{
  vector<Sport> Sp;
  char     team;
  double   bal;
  unsigned mesto;
  string   name;
public:
  Sport(string   _name  = {}, char _team = {}, double _bal = {},
        unsigned _mesto = {}, vector<Sport> sp = {})
      : name {_name}, team{_team}, bal{_bal},
        mesto{_mesto},  Sp{sp} {}

private:
  friend ofstream& operator<<(ofstream& ofs, Sport& sp);
};

ofstream& operator<<(ofstream& ofs, Sport& sp)
{
  ofs << sp.name  << ' ';
  ofs << sp.team  << ' ';
  ofs << sp.mesto << ' ';
  ofs << sp.bal   << ' ';
  ofs << endl;
  for(auto& p : sp.Sp)
  {
    ofs << p;
  }
  return ofs;
}

void writeSportsTo(const char* filename, Sport& sp)
{
  ofstream of(filename);
  if(of)
  {
    of << sp;
    of.close();
  }
}

int main()
{
    constexpr char* filename = "C:\\sports.txt";
    Sport sp;
    writeSportsTo(filename, sp);
    return 0;
}
Чтение аналогично.
Вопрос: Кто знает аналог NppFTP Linux?

Лучший ответ: sublime -  уже давно популярней notepad ++
phpstorm - для  сложного кода  
Теперь про FTP  я бы на вашем месте задумался зачем вам вообще хоть какая-то утилита для редактирования
Ведь linux может с легкостью монтировать FTP как локальное устройство
А монтировать умеет любой местный навигатор , есть ли смысл при этом использовать плагины и тд ересь? когда вы можите просто работать локально. При том все это уже в дружелюбном GUI

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

Лучший ответ: Молодец за рвение.
Но должен тебя огорчить - чистое самообучение на раннем этапе это худшее что может с тобой случиться.
Пойти устроится в контору (пусть на не полный рабочий день).Работать там ОЧНО, а не удаленно. Хотя бы 2 года минимум. Прежде чем идти на фриланс и самообучение.
Контору выбрать так, чтобы там были опытные коллеги. Много опытных коллег желательно.
С ними ты быстро взлетишь - сэкономишь себе просто ГОДЫ.
Встречал фриленсеров которые занимались самообучением и 5 и 7 и 10, а один даже 15 лет.
Вот первые два - на уровне студентов из моей конторы, которые работают у нас по 2 года.
Третий и четвертый тоже не далеко ушли - их оцениваю как миддлов. Хотя за эти годы могли бы уже и нормальными программерами стать.
Образование программиста дает возможность работать на гос.компании и уезжать за рубеж по рабочей визе, как я знаю.
Ну еще расширяет кругозор и знакомит тебя с интересными людьми.
На этом все.
Как профессиональное обучение ВУЗ полезен весьма постольку поскольку.

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

Лучший ответ: У Тёмы же.

Худший ответ: https://www.behance.net/
Русс. говорящих пользователей там более чем достаточно .
Вопрос: Куда попадают патенты после окончания их срока?

Лучший ответ: > [авторское право] [сети] [права доступа]
При чем здесь все это?  Не спамьте в тэги.
> Куда попадают патенты после окончания их срока?
Да никуда не попадают.  Зачем?  На каждом патенте дата написана прямо на титульном листе.  Срок действия из нее вычисляется.  А вот извещения об истекших досрочно — те печатаются.
> в общественный доступ
А действующие патенты по вашему где находятся?  О_о
Для чего вообще нужны патенты, если они не опубликованы и их нет в публичном доступе?
> я хочю например почитать патенты по ракетостроению
Возможно, вы имеете в виду авторские свидетельства и патенты, ранее составлявшие государственную тайну?
> где все они находятся эти открытые патенты
«Открытые патенты» — это на которые заранее дано согласие предоставить лицензию всякому обратившемуся?  Какая вам разница «открытые» они или нет, если они истекли?
А так — где могут находится периодические издания?  В библиотеках.  В частности в патентных библиотеках.  В Москве это ВПТБ.
Вы хотите спросить, есть у них ли полнотекстовый поиск по текстам всесоюзных и российских авторских свидетельств и патентов на изобретения за последнюю сотню лет?  Есть [0].  И весьма по-божески — 59 руб. / запрос.
[0] www1.fips.ru/wps/wcm/connect/content_ru/ru/inform_...

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

Лучший ответ: 1. Стив Макконнелл - Совершенный код.
- почему еще никто не назвал эту очевидную классику? (я аж Ctrl+F-нул по странице, не поверил сначала).
- также рекомендую его "Анализ алгоритмов. Вводный курс" (хоть это и в стороне от сабжа).2. Кент Бек - Экстремальное программирование. Разработка через тестирование.
- многие считают этот подход антипаттерном, но прочесть, безусловно, стоит хотя бы ради того, чтобы иметь возможность самому поискать ошибки в рассуждениях автора (оно того стоит).
Еще несколько очень разных книг, которые для меня стоят в одном ряду с Макконнеллом:3. Фредерик Брукс -  Мифический человеко-месяц.4. Эндрю Хант, Дэвид Томас - Программист-прагматик. Путь от подмастерья к мастеру.5. Том Демарко, Тимоти Листер - Человеческий фактор: успешные проекты и команды.
Далее, у Макконнелла в (1) после каждой главы приведен огромный список литературы по теме, большая часть - признанная классика, можно прямо брать списком и выкладывать в этот тред.

Худший ответ: "Agile Software Development: Principles, Patterns, and Practices" Роберта Мартина. И "Чистый Код" за его же авторством.
Вопрос: Как переустановить Win 7 без потери лицензии?

Лучший ответ: Всё просто, у вас должны быть ключи / наклейки. Если их нет, значит и лицензии у вас нет.
Если есть просто наклейка без ключа, значит он вшит в BIOS, винда активируется сама.

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

Лучший ответ: На всем подряд, хотя обычно C
Сейчас часто панель управления имеют свои личные мозги со своей закрытой ОС которую еще надо взломать. Просто так взять и поменять не получится. В лучшем случае вы получите дамп прошивки в виде hex.
Приведите конкретный пример железяки

Худший ответ: Так как производители защищают свои устройства от извлечения кода - это будет весьма проблематично. Может быть есть поддержка графических тем или скинов? Спросите это у производителя.
Вопрос: Почему Yii:$app это плохо?

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

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

Лучший ответ: фиас же

Худший ответ: кладр же
Вопрос: Где найти проекты Python, чтобы сделать портфолио?

Лучший ответ: Отличная международная биржа фрилансеров upwork, ежедневно куча проктов, в том числе и по python, вернее python и фреймворк Django. Но требуется знать английский. Плюс этого сайта что без даже на фри аккаунде есть 60 заявок в месяц, чего достаточно! А по поводу Django - пройдите базовые уроки на оф.сайте а дальше уже практикуйте на контретном проекте, сделайте себе блог например.

Худший ответ: У меня есть проект как раз для такой задачи. Если интересно, можете мне написать comp-style собак Яндекс точка ру
Вопрос: Что сделал не так?

Лучший ответ: if (h > 19 || h < 20) {...}
Перевожу на русский: если h больше девятнадцати или меньше двадцати, то...
Теперь представим, что h = 15, например. Это меньше двадцати, значит подходит под условие.
Представим, что h = 19. Это тоже меньше чем 20, значит подходит.
Представим что h = 20. Это больше чем 19, значит тоже подходит.
Представим что h = 100500  - и снова подходит, ведь 100500 больше чем 19.
Точнее подсказать как вывести "в определенное время" я затрудняюсь, так как вы не уточнили какое время считаете определенным.

Худший ответ: jQuery(document).ready(function ($) {
var date = new Date(); // получаю дату и время
var h = date.getHours(); // получаю час
if (h > 19 && h < 20) document.getElementById("id-text").innerHTML = "Выводится текст"; // вывожу
});
Вопрос: Как Ограничить доступ администратору?

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

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

Лучший ответ: https://alvarotrigo.com/fullPage/ - ищите форки
P.S. опытные пользователи не положительно ставятся к такой реализации, так как им кажется что их воспринимают за не умеющих пользоваться прокруткой

Худший ответ: На данный момент решил проблему так:
Посмотрел чему равен e.originalEvent.wheelDelta, при прослушке mousewheel.
При скролле на тачпаде значение быстро нарастает от 3 до неопределенного числа (в зависимости от силы толчка - может быть сотня, может 400, может больше, может меньше). Далее начинает медленно затухать так же до 3. Меньше 3 оно никогда не равно.
Покумекал, прикинул, потестил и выяснил, что для моего скрипта оптимально будет реагировать на модуль дельты (Math.abs(e.originalEvent.wheelDelta)) больше 25 - таким образом медленно затухающая инерция после прошествия 1000мс (минимальное время на скролл в моем скрипте) уже будет игнорироваться, как и совсем слабые (случайные) толчки. 
Правда, не знаю как мышь генерирует эту дельту и что там получится.UPD: Решил переделать и придумал такую логику:
При каждом вызове mousewheel сравниваю значение e.originalEvent.wheelDelta с прошлым значением$(document).on('mousewheel', function (e) {
    e.preventDefault();

    // действо происходит в методе класса, it === this 
    // (в каждом методе создаю переменную it, равную this - для удобства)
    // it.scrollDelta - свойство класса - изначально равно null
    if ( Math.abs(e.originalEvent.wheelDelta) > it.scrollDelta ) {
        console.log('New Event');
        // т.к. условно это новое событие, то мы вызываем нужные нам скрипты
        // проблемка только в том, что сначала по нарастающей идет постоянный вызов,
        // но у меня он игнорируется за счет блокирования скрипта на время анимации;
        // эту проблему можно решить, вызывая "новое событие" только первый раз,
        //  а дальше вызывать его только после начала затухания
    }
    it.scrollDelta = Math.abs(e.originalEvent.wheelDelta);
});PS: Остается только придумать, как различать здесь мышь и тачпад, ведь у мыши то, скорее всего, дельта будет всегда одинаковой (кто-то может замерить как мышь себя ведет?)
Вопрос: Какие языки программирования использовал Кевин Митник?

Лучший ответ: какие ЯП используют хакеры принципе
Все подряд. Серьезно. Понятие Хакер (с большой буквы) предполагает широкий кругозор, а он в свою очередь предполагает знакомство с 10-20 различными языками. Потом уже без разницы на чем писать. У каждого толкового специалиста, так или иначе связанного с программированием или ИБ, будет 2-3 языка, которые он использует чаще других в данный период времени, но в целом - написать небольшую програмку или что-то пофиксить можно на любом языке. Тем более в те времена, когда работал Кевин Митник, мир был проще, можно было в буквальном смысле "знать все" (ну или по крайней мере почти все).

Худший ответ: Честно говоря никогда не задавался этим вопросом. Хотя если говорить о Кевине Митнике, то имеет смысл рассказать о социальной инженерии. Как зарождалась и какую опасность представляет сейчас. Какие существуют методы противодействия и профилактики.
Кстати, тема действительно важная и очень актуальная на сегодняшний день.
Биография:
1. https://ru.wikipedia.org/wiki/%D0%9C%D0%B8%D1%82%D...,_%D0%9A%D0%B5%D0%B2%D0%B8%D0%BD
2. https://geektimes.ru/post/68273/
3. lurkmore.to/%D0%9A%D0%B5%D0%B2%D0%B8%D0%BD_%D0%9C%...
Социальная инженерия:
https://goo.gl/51Kalo
Вопрос: Как сверстать такие декоративные полоски?

Лучший ответ: Это, конечно, не семантично, но можно использовать <fieldset><legend>Hello World</legend></fieldset>fieldset {
  border: 0;
  border-top: solid 1px red;
}
legend {
  margin: 0 auto;
  padding: 1em;
}https://jsfiddle.net/umLocy7e/
Или создать псевдоэлементы https://jsfiddle.net/hhsfbz5c/
Но в таком случае, нужно в css указывать длину текста. Или оборачивать текст в span с паддиногм и непрозрачным фоном.

Худший ответ: псевдоэлементами с абсолютным позиционированием