Vikhrmodels/habr_qa_sbs huggingface dataset:
Вопрос: Как выгодно себя продать на рынке труда?

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

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

Лучший ответ:
Сделайте ветку dev
пусть облако веток задач будет вокруг дева: каждая ветка тестируется по отдельности, а после тестируется их совместимость между собой (я так понял, это и есть причина, по которой нельзя тестировать ветку без подтягивания изменений из мастера). 
После фидбека QA по dev-ветке сливать dev в мастер. 
А еще лучше сделать dev->stage->master. 
На деве тестить слитые ветки, на stage - целые релизы.

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

Лучший ответ:
Запускайте git от юзера, у которого первичная группа groupname.
Ну либо вручную потом chmod выполняйте.
Тут иначе никак - создавая файл (а гит создает файлы), он создается от имени ID и GID текущего юзера/процесса.

Худший ответ:
Поставить на папку setgid битchmod g+s folder
https://www.gnu.org/software/coreutils/manual/html...On most systems, if a directory’s set-group-ID bit is set, newly created subfiles inherit the same group as the directory, and newly created subdirectories inherit the set-group-ID bit of the parent directory.
Вопрос: Как сделать обтекание блока блоком?

Лучший ответ:
Оберните все в 1 див main и задайте ему значение display: flexCSS
.main { display: flex;}
.q1{
  width: 100px;
  height: 200px;
  border: 1px black solid;
  float: left;
  margin-left: 10px;
}
.q2{
  width: 300px;
  height: 100px;
  background: red;
}
https://jsfiddle.net/1gco0s0f/8/

Худший ответ:
Обтекающий блок с поворотом текста на 90 градусов? Или что? Какой результат вы видите?
Вопрос: Что насчет smart-grid?

Лучший ответ:
Очень удобная сетка. Можно создавать бесконечное количество брейкпоинтов. Настроить ширину контейнера, количество колонок, ширину gutter'a и отступы внутри контейнера. Есть вариант использования сетки и на flexbox, и на float'ах.
В отличии от бутстрапа, все размеры задаются в файле стилей, а не в HTML. Это кому как нравится.

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

Лучший ответ:
чо серьезно?
сложить числа в цикле который уже есть, не?$sum = 0;
while ($result = mysqli_fetch_array($query)){
    echo $result['balance'].'<br>';
    $sum += $result['balance'];
}
echo $sum / 5;

Худший ответ:
чо серьезно?
сложить числа в цикле который уже есть, не?$sum = 0;
while ($result = mysqli_fetch_array($query)){
    echo $result['balance'].'<br>';
    $sum += $result['balance'];
}
echo $sum / 5;
Вопрос: Получить список выполняемых action и filters?

Лучший ответ:
Откройте для себя увлекательный мир плагина Query Monitor.

Худший ответ:
Сделайте себе один из лучших возможных подарков к Новому Году - выделите 1 день на то, чтобы установить и настроить Xdebug, научиться работать с ним в вашем IDE (очень рекоммендую PhpStorm), и использовать все  возможности этого отладчика. Это кардинально изменит то, как вы программите. 
Пожалуйста.
Вопрос: Что должно быть в git Yii2 проекта?

Лучший ответ:
Тут все индивидуально и сильно зависит от проекта и его структуры, обычно в gitignore добавляют:vendorruntimeweb/assets файлы содержащие доступы(например подключения к базе данных)файлы генерируемые IDE

Худший ответ:
.gitignore.idea
runtime/*
!runtime/.gitkeep
web/assets/*
!web/assets/.gitkeep
config/common.local.php
То есть исключить 
- папку IDE целиком
- содержимое папок runtime и web/assets, но сами папки (пустые) включить
- пароли и прочие приватные настройки, зависящие от сервера
Вопрос: MacOS vs Unix(Ubuntu || Fedora)?

Лучший ответ:
После перехода на Mac OS не возвращаются) это почти золотое правило. Ось очень удобная, но железо, увы, действительно дорогое. С другой стороны - надо просто больше зарабатывать

Худший ответ:
8 Гб для разработки на Java мало, надо хотя бы 16.
Вопрос: Как формируется документ в программе MS DOS?

Лучший ответ:
В первую очередь копать в сторону ухода с этой программы на что-то более современное, чтобы не иметь проблем с запуском этого чуда, печати из него и т.д. 
Если хотите "красивые" отчёты, то пишите программу, которая будет обращаться к данным Вашей системы учёта и формировать отчёты в любом, удобном Вам генераторе отчётов. А там подумаете и всю программу перепишете! :)

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

Лучший ответ:
https://habrahabr.ru/company/mosigra/blog/113876/
https://habrahabr.ru/company/xmlshop/blog/114014/
https://geektimes.ru/post/258762/
https://geektimes.ru/post/254122/
Судя по всему, единичные экземпляры - не очень реалистично.

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

Лучший ответ:
Нужно не отменять изменения, а переключиться на предыдущий коммит. 
https://git-scm.com/docs/git-checkout

Худший ответ:
С помощью "git log" найти хеш своего коммита в истории.
С помощью "git revert <хеш>" отменить коммит (добавит новый коммит с обратным изменением).
После экспериментов удалить добавленный revert-коммит и откатиться на текущее состояние с помощью "git reset --hard HEAD^" (или "git reset --hard <текущий хеш>", где <текущий-хеш> соответствует текущему последнему коммиту до применения revert).
Вопрос: Что я делаю неправильно?

Лучший ответ:
Что я делаю неправильно?
Всё.Он ведь возвращает : new mysqli(
В сообщении об ошибке нигде не говорится про то, что "он" возвращает. Сообщение об ошибке говорит тебе человеческим голосом что у класса DB нет метода query(). И если ты посмотришь код класса в своем вопросе, то в нем действительно нет такого метода. А ты можешь вызывать только существующий методы у класса, что бы там кто не возвращал. 
Хуже того, даже если ты заставишь свой класс выполянять запросы, он будет создавать миллион соединений с БД.
Потому что в отличие от mysql_connect, каждое обращение к new mysqli создает новое соединение. И тебе самом надо заботиться о том, чтобы соединение с БД юыло только одно. А не создавалось каждый раз, когда ты напишешь $db=new DB();. Фв тф это собираешься похоже писать в каждом методе каждого класса
Ну и то что в DB используется mysqli а не PDO означает что у тебя весь код будет в SQL инъекциях.
Правильный способ будет создать сначала экземпляр класса PDO,  и потом при создании каждого объекта, которому нужна работа с БД, и  передавать его в конструктор.PDO создаем как написано здесь, это код помещаем в файл, чтобы потом инклюдить где нужно.class Categories
{
    public function __construct($db){
        $this->db = $db;
    }
    public function getCategories()
    {
        $query="SELECT * FROM categories";
        return $this->db->query($query)->fetchAll();
    }
}
и потом что-то вродеinclude 'pdo.php';
$category = new Categories($pdo);
$list = $category->getCategories();

Худший ответ:
Ретурн в конструкторе не работает. Всегда возвышается инстанс обьекта
Вопрос: Зачем генераторы html кода?

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

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

Лучший ответ:
Ищи по запросу брут NTLM хешей:
https://xakep.ru/2012/10/04/windows-users-pass-dump/
Принцип прост. Сначала нужно заполучить хеш, потом подбирать по нему пароли. Для всего процесса есть софт, сложного ничего.

Худший ответ:
вариант 1
бекапишь файл C:\windows\system32\config\sam
сбрасываешь пароль
ставишь клавиатурный шпион
восстанавливаешь файл
вариант 2
http://lurkmore.to/Терморектальный_криптоанализатор
Вопрос: Как отправить данный с формы и скрыть ее?

Лучший ответ:
Сделайте одну большую форму и в ней блоки, которые наложены один на другой, как у Вас. А в конце, в последнем блоке будет кнопка Submit, которая и отправит данные формы на сервер.

Худший ответ:
Ну, самое простое - аяксом отправлять данные очередной формы и перерисовывать страницу.
Вопрос: Как сохранить ключ кириллицей в config.ini?

Лучший ответ:
Старайтесь не помнить, что существуют 1251 и koi8
https://habr.com/post/336478/
https://doc.qt.io/qtforpython/PySide2/QtCore/QSett...QSettings settings;
settings.setIniCodec("UTF-8");

Худший ответ:
Почитал выше сказанное и решил просто написать метод транслит кириллицы в латинец. Все довольны) from string import printable
from transliterate import translit

    def filter_latin(item):
        """ filter on latin characters  """
        if not all(map(lambda c: c in printable, item)):
            return translit(item, reversed=True).replace(" ", "_")
Вопрос: Бесплатный плагин для объединения css, js на wordpress?

Лучший ответ:
W3 Total Cache также имеет такую функцию

Худший ответ:
W3 Total Cache также имеет такую функцию
Вопрос: Как убрать баг инпута на iPhone?

Лучший ответ:
iOS 11 bug https://hackernoon.com/how-to-fix-the-i...
У себя решил тем что ставлю:body {
   postion: fixed;
}
При открытии формы на iOS, а после убираю.

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

Лучший ответ:
Есть два простых решения.
Для каждого графика ищем максимальное абсолютное значение (по модулю) и делим все значения на него. Получаем нормированный график, где все значения лежат в диапазоне от -1 до 1. При этом может оказаться, что одной из границ (-1 или 1) график не достигает (например, если все значения положительные). При этом у нас сохраняются пропорции как расстояний между любыми парами точек, так и расстояний от каждой точки до ноля. Например, если у нас было y2 = y1*2 и y3 = y1*3, то после нормировки мы получим y2' = y1'*2 и y3' = y1'*3.
Если ноль не важен, то сначала вычитаем из всех значений минимальное, а уже к результату применяем нормировку на максимум. Получаем график в диапазоне от 0 до 1. При этом сохраняются только пропорции расстояний между точками, но не между их абсолютными значениями. Из примера выше получаем: y1'=0, y2'=0.5 (а не y1'*2), y3'=1 (а не y1'*3), но при этом (y3-y1)/(y2-y1)=2 и (y3'-y1')/(y2'-y1')=2.

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

Лучший ответ:
Устанавливайте с флоппи ;D
"ставлю загрузку с OpticalDrive - не видит диск." - Так не все модели определяют диск. Иногда, чтобы запустить загрузку с диска, нужно нажимать F12/F8 - или другие клавиши во время включения ноута. Почитайте, какая позволяет загружаться на Вашей модели.

Худший ответ:
Если есть возможность, то попробуй) Это же танцы с бубном - куда без них?)
Вопрос: Для чего нужна виртуалицация?

Лучший ответ:
Она нужна для запуска других операционных систем внутри Windows. Например, можно запустить Linux для каких-то задач, разработки, и т. д. Когда разрабатываете под Андроид, можно запустить эмулятор Андроида с помощью виртуализации и тестировать в нём свои приложения.
Для домашних повседневных задач виртуализация не нужна.

Худший ответ:
Очевидно имеется в виду VT-x и VT-d - в i7 3770 есть и то и другое. Это набор дополнительных возможностей, используемых гипервизорами, например VirtualBox (для винды). VirtualBox позволяет запустить внутри винды еще одну ОС - винду, линух, даже OS/2, если дистриб найдешь :D
Вопрос: Nginx(хост) + Virtulhostы PHP FPM (разные версии в Docker ) +Mysql (хост)?

Лучший ответ:
Зачем это вы пытаетесь сделать не совсем понятно.
У каждого инструмента свое назначение.
Docker - для stateless сервисов, которые не хранят состояние, не перезаписывают внутри себя файлы, которые умирают, и никто не переживает, что внутри чтото потерлось. Идеальное применение докера - для микросервисов. Этакий сервис который работает, что-то потихому делает в фоне, а как помрет, его перезапустят и он продолжит работать. Идеально когда внутри один сервис и других нет. 
В вашем случае php в докер пихать не очень целесообразно. web-сервер в докер пихать тоже не рекомендуется. Потому как эта связка статичная, ее нельзя ломать, потому как сломается все. Хранить сайты внури докера вобще плохое решение. 
Мне кажется, из той инфрмации что вы предоставили, вам лучше рассмотреть вместо докера какую-либо виртуализацию в виде lxc, kvm.
Mysql с докере вобще криминал, никто это не рекомендует, т.к база должна жить всегда, дисковую подсистему использовать по максимуму,  и причин ее изолитьвать в докере практически не бывает. Проще поднять еще один инстанс на том же сервере или другом.
Оговорочка. Можно оживить связку nginx+fpm+сайт в контейнерах. Но целесообразно это когда у вас есть какой то внешний условный nginx, который прокидывает proxy-pass-ами на сайтики нижележащего уровня. Но тут нужна серьезная обвязка в виде оркестрации микросервисов (docker-swarm минимум, kubernates), service discovery какой то (consul, etcd). Но для простых задач с сайтиками это просто убийственно сложно и не нужно. 
Если опишите задачу более подробно, будет легче дать совет.

Худший ответ:
Что за проблемы? Каждый сервис по хорошему должен быть в отдельном контейнере. А связывать проще через docker-compose
Вопрос: Как правильно использвать сторонние пакеты в GoLand от JetBrains?

Лучший ответ:
Включить поддержку dep в IDE. Оно само подтянет пакет.Или вручную подтянуть пакет.

Худший ответ:
go get в терминале.
Вопрос: Разграничение API приложения и тяжелых вычислений?

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

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

Лучший ответ:
JWT и не надо изобретать велосипедов.  (под все фреймворки имеются пакеты)
Получаете токен и используете его. В токене могут быть права, экперинс и т.д.

Худший ответ:
Не изобретайте велосипед - используйте OAuth.
Вопрос: Для чего нужен AppDelegate?

Лучший ответ:
Вообще говоря это некая точка входа в ваше приложение.  Этот класс управляет состояниями вашего приложения. Он так же содержит главное окно вашего приложения, то бишь UIWindow. В этом классе настраиваются все основные потребности вашего приложения, будь то Push Notifications или Voice Calls и так далее. Я бы сказал это Core вашего приложения.
Это можно понять по его наследованию. UIResponder и UIApplicationDelegate
По первому: An abstract interface for responding to and handling events.
По второму: A set of methods that are called by the singleton UIApplication object in response to important events in the lifetime of your app.
То бишь чувствуете насколько тут важные(core) вещи вашего приложения.
Но на начальном этапе изучения он вам практически не понадобится.

Худший ответ:
Создал новый проект, но этого файла вообще нету ( Что-то изменилось в xcode? Или я как-то не так создаю новый проект
Вопрос: Будущее за JS или еще не всё потеряно?

Лучший ответ:
не читайте по утрам советских газет.Скоро, скоро, благодаря серверному JS у серверных приложений тупо ничего не останется кроме последнего выбора — сдаться. Ну просто так сложилось, что ничто не в состоянии составить конкуренция JS. Питон и Руби могут попытаться, но вряд ли )https://habr.com/post/106274/#comment_3341256
прошло уже 8 лет....
один игрок на рынке - это стагнация. доказано историей не раз.

Худший ответ:
Два индикатора умирания языка.
1
Учил flash4, мало кто знает, что это такое, отбил время на изучение, успел, повезло.
От политической Эстонии полиции защитило, заказчик был американский. 
Потом код поменялся и пошли все кому не лень делать рекламки и крутилки. Притом все знали недостатки языка.
2
Появляются крутые  гуру, которые только за имя стоящее на сайте (доткомы), как правило  (тогда верстальщики специфические и дизайнер, это было вместе, по отдельности тогда не было...), спекулятивные. Языки называть не буду, чтобы не тревожить ещё живых участников поедания каши.
Вопрос: Профессионально ли реализовал алгоритм?

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

Худший ответ:
Про используют чужой код, а не изобретают велосипед
https://github.com/google/gumbo-parser
Вопрос: Чей сетевой фильтр лучше приобрести, от Defender (DFS 501) или APC(P43B-RS)?

Лучший ответ:
APC будет получше в техническом плане, дефендер - в плане юзабилити - у него 6 против 4 дырок, причем одна с расчетом на БП типа настольной лапмы дневного света (у которых БП - большая черная тяжелая коробка).

Худший ответ:
У меня 2 таких же Defender, только серые. От одного питается стиральная машина и роутер (через usb). От второго десктоп и оборудование террариума.
Usb розетки не самые качественные - при подключении некоторых телефонов (Nexus 5 например) начинает глючить сенсор. Роутер же питается без проблем и перебоев.
Вопрос: Кто какие использует CRM для сео агенства?

Лучший ответ:
planfix.ru
не благодарите

Худший ответ:
Самопис под своих со своим набором функционала
Вопрос: В какое время суток лучше откликаться на upwork?

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

Худший ответ:
Лучше откликаться в первой пятёрке кандидатов.
Вопрос: Как поднять сеть на двух проводах?

Лучший ответ:
только так ssdcam.ru/index.php/aksesuari/item/ip-coax-s
Только раз там ничего у вас сверлить нельзя - так коаксиал же толще витухи. Высуньте аккуратно из рамы коаксиал, засуньте витуху.
Вообще - нет таких обстоятельств, что ничего не просверлить, и никак кабель не пробросить хитро - всегда можно, надо только подумать, и объяснить это заказчику.
Ну я не знаю - еще можете вафай мост сделать из двух роутеров.

Худший ответ:
Мост на DSL модемах
Вопрос: Как правильно отправлять soap-запросы, используя C# (в особенности — на сервера AdvCash)?

Лучший ответ:
Обычно это так делается:
Ссылка на службу: https://wallet.advcash.com:8443/wsm/merchantWebSer...
А дальше дело кода :-)// ServiceReference1 - см. на картинке выше, можно указать любое имя
var client = new ServiceReference1.MerchantWebServiceClient();
// и смотрите какие есть методы в client и что требуется для их использования
// могут быть и другие подводные камни и особенности,
// но свой код взаимодействия писать не придется
// для большинства случаев достаточно будет автоматически созданных классов

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

Лучший ответ:
фотки невозможно конвертировать в svg
делай для каждой фотки максимальное необходимое разрешение и сильно сжимай jpg и уменьшай масштаб для малых размеров экрана

Худший ответ:
Берем svg, открываем jsfiddle, вставляем. Смотрим - если заработало, то да, можно.
https://jsfiddle.net/qa2qqooa/
Вопрос: Насколько безопасно использование AJAX-запросов?

Лучший ответ:
Эм. Безопасен ровно на столько же, насколько и не AJAX запрос.

Худший ответ:
Не опаснее, чем обычные запросы, а наоборот безопаснее, так как проще организовать обработку разных ошибок и следить чтобы она везде присутствовала, во-вторых, "скиллов" потребуется чуть больше чтобы "раскопать" back-end AJAX.Как защитится от мошенников, которые могут просто изменить данные которые передаются в php файл и изменить что-либо о пользователе (например, пароль)?
А вот не надо передавать ничего лишнего в PHP-файл, например у пользователя в личном кабинете есть форма смены пароля, и если там у вас JS будет помимо нового пароля передавать в PHPе еще и id текущего пользователя, то это действительно опасно если недоглядите за авторизацией, но это само по себе абсурдно, не нужно передавать id, на сервер и так при каждом запросе передаются кукисы, id сессии (те же кукисы), OAuth-токен, ЭЦП, сертификат или еще что-то, словом пакет имеет "подпись" ("credentials") которая сама по себе определяет текущего пользователя, в задачи сервера входит лишь ее проверка, как и при любом другом запросе.
Насчет авторизации, либо ищите статьи "авторизация REST API", либо берите сниффер и изучайте как сделано на существующих сайтах, смотрите сами какая методика вам ближе.
Вопрос: Как при помощи react js применять класс при клике на кнопку?

Лучший ответ:
в state ложите переменную по клику на кнопку ее меняете, в рендере компонента  className делаете в зависимости от переменной в state

Худший ответ:
Хранить в стейте компонента флаг и на основе этого флага применять стили. К примеру:import React from 'react';
import classnames from 'classnames';

class SomeComponent extends React.PureComponent {
  constructor(props) {
    super(props);
    this.onClick = this.onClick.bind(this);
    this.state = {
      show: false,
    };
  }

  onClick() {
    this.setState({ show: !this.state.show });
  }

  render() {
    const { show } = this.state;
    return <div onClick={this.onClick} className={classnames('some-class', { 'change-class': show })} />;
  }
}

export default SomeComponent;