Vikhrmodels/habr_qa_sbs huggingface dataset:
Вопрос: Логика и/или в while php?

Лучший ответ:
в условие $a || $b != 0 сначала проверяется условие по $a и если оно возвращает true выполняется тело цикла, условие $b != 0 при этом даже не проверяется. Если же условие $a возвращает false - только тогда происходит проверка условия $b != 0.  Это стандартная логика условия ИЛИ в php

Худший ответ:
Ошибка здесь:
Повторять действия пока $a или $b не станет = 0.
Выполнять пока $a или ($b !=0) true
На пятой итерации цикла
a = 50
b = 0
значит идём дальше
На десятой итерации цикла
a = 0
b = -50 (true)
значит идём дальше
Может поставить условия $a != 0 || $b != 0
Вопрос: Как определиться новичку?

Лучший ответ:
но все наперекор твердят, что надо выбирать, типа не потянешь и все - такое
Да нет, можно совмещать (сам занимаюсь и дизайном и разработкой). Очень полезно посмотреть на то, что делают ребята из Tubik Studio - если научитесь совмещать навыки дизайнера в плане "придумать и нарисовать" и навыки "реализовать это на html/css/js" - станете очень ценным специалистом.Недавно видел вопрос мужичка тут, который 8 лет верстал на чистом html/css и вдруг понял, что стоит на месте и так продолжаться не может :D
Если делать однотипные проекты с одними и теми же инструментами - этот момент наступит независимо от того, что это за инструменты.Я осознал, что не хочу оказаться на месте этого мужичка и начал лихорадочно учить подряд все фреймворки, попадавшиеся мне под руку
Имея опыт дизайна, вам стоит не просто "учить все, что попалось", а разобраться в том, что можно сверстать, а что нет, для чего есть готовое решение, а где придется руками целый день писать. Это очень полезное умение - ни у кого не возникнет желания "оторвать вам голову". Также очень полезно будет изучить все возможности CSS.Как вообще единомышленников найти в этой сфере? Вместе вроде как всегда проще и веселее учить и двигаться вперед :D
В русскоязычном интернете - крайне проблематично (вероятно менталитет сказывается). Посмотрите на codepen, совмещая навыки дизайнера и фронта можно регулярно попадать на первую страницу и получать какую-то обратную связь, заводить знакомства. Как бонус - можно смотреть, что делают окружающие, и перенимать опыт в создании чего-то не очень стандартного (анимации, неочевидная верстка, и.т.д.)

Худший ответ:
1. А зачем Вам движки, если вы уже знаете JS ? Архитектуру приложения - научились строить? ну vue.js могу посоветовать.
2. Для создания сложной анимации: список игровых движков
Вопрос: Как реализовать такое на Python?

Лучший ответ:
dct = {
        'Женя': {'Брюнетка', 'Толстая', 'Умная'},
        'Лера': {'Блондинка', 'Худая', 'Глупая'},
        'Даша': {'Блондинка', 'Худая', 'Умная'},
}


def search(string):
  res = set()
  str_set = string.replace(' ', '').split(',')
  for name, features in dct.items():
    if any([f in str_set for f in features]):
      res.add(name)
  return ', '.join(list(res))


print(search('Худая, Блондинка'))
print(search('Умная'))

Худший ответ:
Мой вариант:girls = { 'Женя': {'Брюнетка', 'Толстая', 'Умная'},
          'Лера': {'Блондинка', 'Худая', 'Глупая'},
          'Даша': {'Блондинка', 'Худая', 'Умная'}}

def search(*words):
  return ', '.join([name for name, features in girls.items() if features >= set(words)])

print(search('Худая', 'Блондинка'))
print(search('Умная'))
Вопрос: Какую программную АТС на основе Asterisk выбрать (FreePBX, 3CX ...)?

Лучший ответ:
FreePBX Distro. Ставится сам, настроен из коробки. Манов полон инет.
Ещё можно Elastix посмотреть.

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

Лучший ответ:
На столь размытый вопрос, Вы вряд ли получите менее размытый ответ. Для адаптиции есть два основных решения:
1. Можете попробовать взять сетку готовую, например, Bootstrap-сетку
2. Для этого существуют media-запросы

Худший ответ:
viewport надо писать и пользоваться медиазапросами. если с ними вам сложно - флексбоксы. с ними мз писать будет проще и меньше по кол-ву строк. ну или юзать css-фреймворки типа bootstrap или foundation
Вопрос: Какой переходник купить для установки SSD вместо HDD в ноут?

Лучший ответ:
Для замены HDD на SSD не нужно ничего, просто выкрутить старый диск и вкрутить SSD.
Если Вы очень хотите оставить одновременно и SSD, и HDD, то советую выкинуть оптический привод (дисковод) и воткнуть вместо него адаптер для второго диска. SSD вставить вместо жёсткого диска, а старый (или другой. новый дополнительный) жёсткий диск воткнуть через адаптер вместо дисковода.
https://www.ulmart.ru/goods/288056
www.dns-shop.ru/product/a7909bc9a097526f/salazki-e...
Это единственный случай, когда может потребоваться переходник.
Также таким образом можно воткнуть в ноутбук два SSD или два HDD.

Худший ответ:
Насчёт совместимости SATA-II и SATA-III:И ещё раз. SSD. Совместимость SATA-II и SATA-III
Вопрос: ООП, php, обучение и помощь, Где найти сайт/форум/человека которому можно задавать вопросы?

Лучший ответ:
От части, для этого и придуман Тостер, разве нет?

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

Лучший ответ:
Можно сделать PWA, тут не важно какой фреймворк НО тут подводный камень в iOS, с поддержкой PWA всё плохо, с последними апдейтами лучше не стало, так что если хочется кроссплатформенное мобильное приложение то придётся заюзать Cordova плагины. Но конечно лучше NativaScript или ReactNative или что-то похожее для Vue, но тут уже проблема, смотря какой у вас фреймворк, если у него нету реализации для мобилок, то наидешёвейшим вариантом будет Cordova или может что-то аналогичное.
Более правильный - написать веб приложение на стеке React, React Native, Redux\Mobx. Бизнеса логика в Redux/Mobx, интерфейс в React/React Native. То есть меняя интерфейс логика может работать так-же, либо уже на ваше усмотрение. Ещё более правильный - нативные языки, но это уже не в тему вопроса)

Худший ответ:
Почитайте про iOS https://habr.com/post/216697/
Вопрос: Вместо админки, добавлять товары через phpmyadmin?

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

Худший ответ:
Если вы один имеете привилегии добавлять товары, то вопрос касается лично вас. Но все же лучше реализовать некий интерфейс для пользователей, слабо понимающих веб технологии.(обновлять дамп БД) 
А если БД будет расти? Это уже проблема, даже если размер БД более 10 мб. Как минимум не этично так делать, дампами пользуются при переносе и бекапеМожет в плане безопасности могут быть проблемы
Файл дампа может быть несовместим, поврежден, загружен с ошибками.напишу отдельные роуты
Неплохая затея.сейчас они у меня живут в БД
Не особо понимаю как так? Вы храните код HTML в бд? Решать конечно вам, но я советую все же выделить модель вид и контроллер (Вид - хранит в себе шаблон/разметку в который подставляются данные) для каждой из них
Одной моделью могут пользоваться несколько контроллеров. Например модель товаров, на странице вывода - выводим все товары из модели, или на главной, в качестве виджета, пару товаров из модели.Фреймворками не пользуюсь.
Все же загляните в Laravel он до боли простой (из всех имеющихся) для изучения
Вопрос: Что лучше взять для сборки ПК, 1 HDD на 1Т и 1 SSD на 500 ГБ ИЛИ 2 SSD на 500 ГБ и на 960 ГБ?

Лучший ответ:
Советую взять SSD + HDD. На SSD поставить винду, а также все ваши основные программы по монтажу видео например. А на харде хранить большие объемы видео и других файлов.

Худший ответ:
Зависит от целей сборки.
Если планируется просто хранить большие объемы данных (фильмы, игры и пр.), то есть смысл взять HDD + SSD, либо гибридный SDHDD - он даст ощутимый прирост скорости при повторном обращении к кэшированным данным.
Если же постоянно нужно перелопачивать большой массив данных (например, БД), то лучше брать SSD.
Вопрос: Как передать статистику с роутера на сервер?

Лучший ответ:
1. Убеждаемся, что железка держит протокол SNMP - это самый распространенный протокол получения статистики.
Тут сразу всякий дешман начинает резко отваливаться
Если железка есть, SNMP нет, но хочется - убеждаемся, что прошивка OpenWRT или DD-WRT с нужным набором функций под ваше устройство существует.
Если нет - подарите это барахло нуждающимся и покупайте микротик (круто, но еще почти дешман).
2. Поднимаем у себя Zabbix или Icinga (или что попало по вкусу), которые вполне успешно умеют SNMP принимать или дёргать со стороны. Еще на управляемых железяках можно настроить SNMP Trap, чтобы при наступлении определённых событий (подключение к порту например) на сервер отсылалось оповещение.
3. С ограничением доступа - в случае с микротиком вполне реально. В случае с Zyxel Keenetic второго поколения прошивок - тоже. В случае с циской/джунипером и прочими топами совсем легко :). 
У всех перечисленных довольно хорошая командная строка в терминале, поэтому можно редактировать правила на сервере и заливать через командную строку.
https://natenka.gitbooks.io/pyneng/content/book/15...
посмотрите эту и соседние главы - пример автоматизации на питоне с управлением толпой устройств.
Возможно, задача с непонятной формулировкой "ограничение доступа" отлично накладывается на возможности 802.1X
4. Не упомянутая, но обычно возникающая проблема - если ип у подчиненных железяк будет динамическим - задача найти эту железяку. 
Решений два - каждая железяка использует какой-то из вариантов No-IP (у микротиков из коробки бесплатный) 
или железяки поддерживают впн/опенвпн туннель до сервера, а сервер уже просто через туннели дёргает их по известным локальным (для него) адресам.
Далее - менеджмент интерфейс железяки по хорошему не должен вообще торчать наружу, так что завернуть в впн - один из методов обеспечения безопасности.
99. Путь настоящего изв...ерга
Пишем для каждой модели скрипт, который логинится с центрального сервера на железку на веб-интерфейс, вытаскивает статистику, складывает в базу.
100. Для того, чтобы было мало секса - выкиньте сразу непонятные железяки и закупите циски или микротики, или что угодно аналогичной профессиональной крутизны, главное чтобы УМНОЕ И ОДИНАКОВОЕ иначе будет счастье, безграничное счастье, потому что наверняка Вас ждут самые дешманские d-link, tp-link, upvel или еще что-то совсем безымянное.

Худший ответ:
Если роутеры Mikrotik то можно. В других - если кастомные прошивки делать, в стандарных не встречал.
Вопрос: Зачем в языке Go приняты отступы в 8 символов?

Лучший ответ:
Там не 8 символов, там tab. Вы можете настроить в вашем текстовом редакторе размер табуляции в нужное вам количество символов.

Худший ответ:
Если бы там было 2 пробела или 7 пробелов - вы задали бы точно такой же вопрос.
Автор утилиты go fmt, которая и делает это "стандартное" форматирование сам не доволен используемым форматом. Он лично предпочитает другой.
Но автор go fmt согласился со своими сотоварищами авторами Go, что формат должен быть единым во всём мире.
Какой приняли, такой приняли.
UPD:
go fmt вставляет не пробелы а табы.
таким образом, отображение зависит только от твоего текстового редактора, а не от "вредного" Go.
Вопрос: Как придумать мрачный дизайн сайта?

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

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

Лучший ответ:
у детей свои устройства? гоняйте их по чужим, вроде не плохим DNS. https://dns.yandex.ru/

Худший ответ:
Задача сразу же распадается как минимум на три.
- Как "идентифицировать" детей - ведь в сети есть не только дети, но и взрослые?
- Как сделать так, чтобы "дети" не обходили ограничения?
- Как собственно реализовать ограничения?
Только squid понятно, эти вопросы не решает. Это типовые задачи корпоративного админа :) 
Вопрос первый решается либо доменом, либо локальными учетками на прокси. Либо привязкой по макам к определенным IP - здесь уже вопрос, как у Вас IP раздаются.
Вопрос второй решается блокировкой на прокси анонимайзеров, а также блокировкой выхода в Сеть без прокси. Разумеется, на компах "детей" не должно быть тора, friGate, оперы и других "относительно легальных" средств обхода блокировки
Вопрос третий решается списком сайтов и соответствующей настройкой squid. Списком порносайтов могу поделиться :)
Еще есть squidguard, не знаю насколько жив проект, но списки там есть.
Вопрос: Можно ли использовать js-плагины без сборщиков проектов?

Лучший ответ:
Чаще всего: удали приставку 'gulp', допиши в конце ' js' и загугли. Большинство таких модулей изначально писались не для Gulp , а потом допиливались мини-модули под него.
Просто интересно, а зачем использовать их без сборщика?)

Худший ответ:
А в доке к ним не пробовали смотреть ?
cssnano.co/guides/getting-started
https://github.com/mishoo/UglifyJS
sass-lang.com/install
Вопрос: Blend4web или Verge3d?

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

Худший ответ:
Есть еще https://www.babylonjs.com или как вариант unity
Вопрос: Почему возникает ошибка LNK2001 Неразрешенный внешний символ символ?

Лучший ответ:
Как говорят, «или крест снимите, или трусы наденьте». И учите понятие «единица компиляции».
По какой схеме устроен ваш проект? «Одна единица компиляции» или «много единиц компиляции»?
Си недалеко ушёл от ассемблеров. А в ассемблерах программа компилировалась по частям и собиралась воедино линкером (компоновщиком, редактором связей) — в те времена кода было много, а данных мало. Многие из ошибок невозможно было определить, не запустив линкер. Си++ пользуется многими из архитектурных особенностей ассемблеров и Си — по крайней мере ни одно из модульных решений не стало рекомендацией (кроме костыля extern template class).
Но как говорить «переменная/функция есть, такого-то типа и в другой единице компиляции»? Для этого есть прототипы функций и extern-определения переменных. Их обычно вносят в заголовочные файлы с таким требованием: ничего, что находится в заголовочном файле, не должно производить кода. А код производят…
• Глобальные переменные (без typedef, extern).
• Нешаблонные функции (кроме inline).
• Полностью специализированные шаблонные функции (кроме inline).
• Команда «специализировать шаблон» (template class).
При этом…
• Функции в теле struct/class автоматически inline и кода не производят.
• Для неявной специализации шаблонов существуют обходы — код генерируется дважды, но ошибки не выдаёт.
• «Свой» хедер обычно включают первым, чтобы убедиться, что в нём нет недостающих зависимостей.
В системе «одна единица компиляции» всё просто: есть ровно один файл, подлежащий компиляции. Тогда в хедерных файлах вполне могут быть конструкции, производящие код.
Системы «одна единица компиляции» и «много единиц компиляции» можно комбинировать, но надо знать:
• Все хедеры, которые производят код, должны подключаться из одной-единственной единицы компиляции. Надо чётко осознавать, из какой, и не подключать из чужих.
• У библиотеки всё равно должен быть хедер-фасад, не производящий кода и предназначенный для стыковки с другими единицами компиляции.
Такая конструкция ускоряет полную перекомпиляцию и часто применяется для библиотек, но надо знать: огромные библиотеки вроде SqLite, в 5 мегабайт препроцессированного кода, мешают распараллеливанию компиляции (ибо пока откомпилируется SqLite, остальные процессоры вполне себе соберут остальную программу).// В схеме «одна единица компиляции»: ничего не делать.
// В схеме «много единиц компиляции»: лишняя зависимость; унести в unit1.cpp
#include <cstdlib>

// В схеме «одна единица компиляции»: убрать extern.
// В схеме «много единиц компиляции»: завести unit1.cpp, там сделать MyType x;
extern MyType X;

// В схеме «одна единица компиляции»: ничего не делать.
// В схеме «много единиц компиляции»: перенести функцию в unit1.cpp, оставив в .h только прототип.
void XReset() {}

Худший ответ:
extern MyType X 
эта строка означает, что переменная с именем X типа MyType уже существует и объявлена в некотором другом .cpp файле, причем глобально.
TL;DR: уберите extern
Вопрос: Как сверстать такой интерактивный элемент?

Лучший ответ:
Порядок прост:
1. SVG для пунктиров
2. DIV-ы: 1 DIV центральный и 6 DIV для описаний
3. Относительное позиционирование 6 DIV и 6 SVG относительно центрального
4. Медиа-селекторы для создания адаптивности
Осталось сделать...

Худший ответ:
Зачем эти полоски верстать? Чтобы что?
Делать их частью картинки, текст поверх, да и всё.
Как вариант, сделать бутерброд из 2 равновеликих картинок - квадрокоптер и все полоски.
Это тот самый случай, когда мудрить нет смысла.
Вопрос: Не распознается третий HDD — в чем может быть причина?

Лучший ответ:
Совсем без втыка не получится - есть несколько вариантов. 
Первым делом я бы проверила что все кабели в порядке и подключены, иногда такое забывается. Потом - виден ли диск в bios - если нет, проблема скорее всего в железе, попытайтесь поменять порты, кабели.
Если да, попробуйте в device manager просканить ещё раз на наличие HD (disk drive > check for hardware changes). Если и это не поможет, я бы поискала драйвера на официальном сайте производителя диска, хотя если раньше работало с тем же ОС вряд ли проблема в этом.
Удачи!

Худший ответ:
А наиболее простой вопрос: у вас нужные SATA-порты в BIOS включены?
Вопрос: Как проверить уникальность текста?

Лучший ответ:
text.ru или etxt.ru

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

Лучший ответ:
Да xyz его знает :-)

Худший ответ:
Как к такому домену отнесутся поисковики?
Уже давно доменная зона не влияет на позицию вашего сайта в поисковой выдачи.Может ли компания-регистратор изменить условия, во много раз увеличить стоимость продления, прекратить поддержку или вообще отобрать домен по своему усмотрению?
Внимательно прочитайте условия, а вообще, регистраторы такой "фигней" не занимаются.
Ответ: если для вашего проекта подходит именно такая зона, то регистрируйте, и меньше переживайте (типо отберут, заблокируют и т.д.)
P.S. ах да, обратите внимание не на цену при первой покупке, а на цену продления. Так например, при первой покупке домен стоит 69 руб., а продлить надо будет за 1xxx руб.
Вопрос: Методы сохранение данных в модели (БД) Laravel. Какой использовать?

Лучший ответ:
№1 и №3 внутри идентичны, используйте, какой больше нравится и по логике больше подходит в конкретной ситуации. №2 выкиньте.

Худший ответ:
Первый способ позволяет заполнять поля которые не разрешены в fillable
Второй способ лучше всего, только название нужно дать нормальное. Для разных контекстов правила сохранения могут быть свои, поэтому хорошим тоном считается делать раздельные конструкторы и персисты. Как пример, на этапе регистрации пользователь задаёт все поля, а при редактировании email менять нельзя.
Третий способ самый использует массовое заполнение и не заполнит поля, которые не указаны в fillable. Насколько я помню, были ещё траблы с евентами, они отличались с методом save, так что лучше делать $user->fill($role)->save();
Вопрос: Как записать текст в файл построчно?

Лучший ответ:
Дописывать в конец строки \n

Худший ответ:
with open('text', 'a') as f:
     print('Привет', file=f)
     print('Друг', file=f)
Вопрос: Как запретить удаление гаджета с рабочего стола?

Лучший ответ:
Правильнее всего использовать 2 разные учетки.

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

Лучший ответ:
Проходитесь по специальной служебной таблице, называемой каталогом.
Извлекаете из нее названия всех ваших таблиц в вашей базе данных.
И делаете по каждой из них отдельный запрос. Объединить запросы можно через UNION
Только как вы себе это представляете в выводе?
В одной колонке у вас будут то числа, то слова, то даты????

Худший ответ:
Вот так: SELECT * FROM *
Это будет в пределах базы данных.
Вопрос: Что значит «знание linux» в вакансиях на позицию веб-разработчика?

Лучший ответ:
имхо я считаю что это значит надо уметь поднять свой софт/скрипты на сервере.
Знать что такое ssh/ftp и как этим пользоваться.
И конечно как сделать apt-get install nginx php-fpm
Как купить/привязать домен, как настроить его на сервере и всё такое.
Если разработчик этого не умеет, то встает вопрос как он вообще делает сайты?
Т.к. встречался фронтенд-разработчик который сделал круглые глаза когда ему сказали на фтп что-то залить.
И это вызвало недоумение уже у меня.
На локалке вроде всё делает, а на сервак даже не знал как зайти, чем он занимался раньше и как работал без понятия.

Худший ответ:
Это уровень уверенного пользователя - способоность поставить из репозитория пакеты, базовые знания оболочки. Если фуллстек или бэк-энд разработчик - то еще установка и настройка веб-сервера и базы данных.
Вопрос: Что это за адская папка «windows.old» в Windows 10?

Лучший ответ:
Что это за адская папка «windows.old» в Windows 10?Это системная папка.И вот я решил вдруг от этой огромной по размеру папки избавиться, и понеслись проблемы..Избавляются от системных папок через штатные механизмы очистки диска. Удалять через проводник не лучшее решение, там скорее всего куча хардлинков будет, оценивать размер через проводник - та же самая история.Помогла только точка восстановления, но эти восстановления не внушают доверия и теперь думаю переустановить систему полностью. Точки воостановления нужны не для внушения, а для отката системы. Используются для создания точной копии системы на момент времени. Переставлять систему, при наличии точки восстановления это мягко говоря неумно.Так вот хочу спросить что это за папка такая странная? Зачем ее так сложно делать?Папка системная, сложно сделана для того, чтобы места немного занимала, и при этом откатить на прежнюю версию легко можно было.И где я совершил ошибку?Ошибку вы совершили, когда начали удалять системную папку через проводник.

Худший ответ:
Добавлю к ответу АртемЪ : windows.old - это предыдущая версия вашей системы.
Скорее всего, ситуация возникла при установке очередного крупного апдейта: в таком случае windows делает возможность отката на предыдущую версию. 
Папка удаляется автоматически - или - можно удалить её через 
(свойства диска) -> (общие) -> (очистка диска) -> (очистить системные файлы).
Там, в списке на чистку, вы увидите "Предыдущие версии Windows" и "Очистка обновлений" с оценкой их объема, причем, как правило, неверной - опять же АртемЪ все написал, а disk cleaner, видимо, не умеет правильно со ссылками работать.
Через этот интерфейс можно относительно безопасно удалить подобные вещи.