Vikhrmodels/habr_qa_sbs huggingface dataset:
Вопрос: Как сделать иерархическую структуру таблицы?

Лучший ответ:
Для хранения древовидных (иерархических) данных в реляционных БД обычно используют такие структуры:

Materialized Path
Nested Set
Adjacency List


Худший ответ:
Коряво это делается в виде self reference связей. В реальном мире для этого используются графовые базы данных
Вопрос: Где выше качество обучения на ПМИ 01.03.02: в МЭИ или МАИ?

Лучший ответ:
В 100500 раз - в ВУЗ не научат программировать. Могут дать  какую-то поверхностную базу по языкам и технологиям, не более. Программистом прекрасно становятся и без ВУЗ'а. Если хочется стать программистом то стоит начинать уже сейчас и самостоятельно, а ВУЗ закончить для корочки

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

К остальным - да, мне не пригодился матан(!), дифуры(!), теория меры, уравнения мат физики и даже теория иррациональных чисел, но вполне зашли дискретка, теория автоматов, теория графов, теорвер, алгебра и теория множеств. Ну и профильные предметы, типа основы рбд, кластерный анализ, (сюрприз!) программирование, основы оп. систем. Другой вопрос что это все училось мной 20+ лет назад, и сейчас есть много других источников информации. Но сруктурный подход к обучению в вузе не изменился, и это норм. Учат медленно, но ты выходишь с нормальным набором знаний, универсальным для большинства направлений. Все "молодые горячие" спешат рвануть в айти за длинным рублем здесь и сейчас, "потратить целых 3 года на образование - пфф, не смешите меня", нахватываются по верхам, потом смотришь на эти поделки и думаешь, как вообще у этого человека мозг работает?
Вопрос: Влияет ли как-нибудь микроволновка на рядом стоящий ноутбук?

Лучший ответ:
А если ставлю рядом работающий ноут и включается микроволновка, то он зависает. Не всегда, но эффект этот заметил. Может совпадение, а может и ...

Худший ответ:
Свист харда - явно не от микроволновки. От микроволновки первыми сгорят микросхемы и/или дорожки на мат.плате.

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

Тем не менее - ноутбук лучше убрать подальше. Куда-нибудь на полочку...
Вопрос: Стоит ли заходить в программирование через вышмат (ВУЗ)?

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

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

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

Худший ответ:
3 - СУБД
2 - стоит. и можно )) upd если учебный пример на корке 2.* почему не погрызть его?
Вопрос: Какой фреймворк для каких задач?

Лучший ответ:
Современные фреймворки вроде Angular/React/Vue созданы для решения одних и тех же задач. Использовать лучше тот, который больше нравится и который лучше знаете. При неумелом использовании все преимущества конкретного фреймворка меркнут, и на Vue, в таком случае, вы можете получить медленную скорость разработки, а на React неподдеживаемый код.

Худший ответ:
Фреймворк, это транскрипция от английского Framework
По вопросу, может быть и так, но раз вы задаете такой вопрос то это вас коснется еще не скоро
Вопрос: Стоит ли брать начинаещему программисту мак?

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

Худший ответ:
Нет
Конкретно mac вам не поможет разрабатывать на python, но как железо mac очень неплохие, хотя за такие деньги можно норм pc железо подыскать.

Если говорить именно как python разработчик, то macos создаст вам больше проблем, не тем что это mac а тем что большинство инструкций чаще пишут для windows на pc, (мало того для linux машин вообще все просто будет именно как разработчику, собирать окружение, подбирать библиотеки и версии и т.п.)
Вопрос: В чем разница между symfony и laravel для начинающего?

Лучший ответ:
попробовав пописать на ларавел я понял, что он даётся ощутимо тяжелее чем чистый PHP. Это по тому что у вас нет понимания ооп в достаточном объеме. Да и "чистый" пхп нифига не проще, если писать что-то чуть сложнее чем "несложный сайтик на классах", и вы быстро потонете в говнокоде. 

Ларавел, как впрочем и другие фреймворки, дает уже готовую структуру, + кучу готового функционала, в том числе и структурированную основу, где у вас основной задачей становится именно дописать немного кастомного функционала, не покрытого внутренними механизмами движка, или отсутствует готовая библиотека под нужную фичу. Далее все сводится к манипуляции готовыми объектами. Что касается выбора - новичку скорее зайдет Лара, так как симфони на порядок сложнее по использованию искаропки, в Ларе же много чего просто уже работает, причем визуально гораздо проще чем в симфони, хотя за фасадами там достаточно такой сложный для новичков код, но обычно туда и не лезут без особой необходимости. 

Симфони сложновата для новичка, так как во первых полностью компонентная, во вторых даже для построения элементарной модели придется достаточно много писать ручками.

Худший ответ:
Laravel это как низкоуровневый Worpress. Популярный, относительно простой и полно информации. Документация, статьи, уроки. Всего достаточно.
Вопрос: Список литературы для самостоятельного изучения программированию?

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

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

Важно пройти полностью готовый курс любой бесплатный. Можно видео, можно текстом. Это даст общие представления о материале. 
Потом изучать конкретные темы поиском. То что не понятно или более глубоко. Возможно в этот момент или после него стоит изучать по оригинальной документации, И начать писать конкретный код.
Времени на это уходит уйма.

Имхо.
Я еще не программист
Вопрос: Как вычилсить на Python дату наступления китайского нового года?

Лучший ответ:
Так же, как и без питона.

Худший ответ:
Удалось найти.
pip instal LunarCalendar

import datetime
from lunarcalendar import Converter, Solar, Lunar, DateNotExist

l = Lunar(year=2020, month=1, day=1, isleap=False)
print(Converter.Lunar2Solar(l))
выдаст совершенно верное 25.01.2020
Вопрос: Вздулся Macbook Pro 13” 2018 (Touch Bar) что делать?

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

Худший ответ:
Только в АСЦ, только там вам смогут заменить батарею. И лучше не медлить, следующий этам - трекскается трекпад.
И скорее всего вам поменяют нижний топкейс полностью на новый, возможно даже клавиатуру нового поколения поставят, там вроде как ifixed говорят что вообще другой метал мембран и теперь все будет намного лучше.
Касательно "без ноута неделю" - требуйте ноутбук в СЦ, не знаю какая у вас практика в России на этот счет, но в других странах СЦ выдают по требованию другой ноутбук на время ремонта. Я бы на вашем месте обзвонил СЦ и напрямую спрашивал могут ли они дать ноут на подмену и на каких условиях.
Вопрос: Проблемы с видеокартой (мигают мониторы, а видеокарта постоянно "перезагружается"), что делать?

Лучший ответ:
Решение очень даже простое - несите в сервис.

Худший ответ:
1. Проверить работу с 1 монитором, второй выдернуть совсем. Потом поменять местами.
2. Проверить работу c двумя мониторами под любым загрузочным образом LiveCD , виндовый или линуховый, без разницы.

После этого станет ясно, дело в дохлом мониторе, видюхе или винде.
Вопрос: Как увеличить сумму только один раз?

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

Худший ответ:
а. После клика сразу отписываться
б. Завести переменную и делать что-то типа
if(!clicked) {
  clicked = true;
  var $price = $("#set1");
  $price.val(parseInt($price.val()) + 400);
}
(вообще мой пример может быть достаточно не стабилен, тк я не уверен, как работает конкурентность в жс)

Но вообще хранить данные в разметке - это плохая практика. Представление должно зависеть от данных, а не наоборот.
Я так понял - это у вас некоторый калькулятор для стоимости покупки - советую в вашем случае создать некоторый класс, который будет реализовывать в себе логику просчёта стоимости, а потом отдельной функцией отрисовывать его состояние.
Это особенно удобно будет сделать на react или другом подобном фреймворке, который может реактивно перерисовывать html после изменения данных.
Вопрос: Идентификация получателя письма или бред?

Лучший ответ:
tools.ietf.org/html/rfc822 собственно это наше все, уникальный заголовок письма описывается в 4.6.1.  MESSAGE-ID / RESENT-MESSAGE-ID это нам и нужно. В вольном переводе:

Данный заголовок должен представлять из себя уникальную строку формируемую сервером при ее отсутствии либо клиентом (Бинго!!!). Смотри дальше  видим заголовки

4.6.2.  IN-REPLY-TO

4.6.3.  REFERENCES


Конечно они опциональные, но таки нормальные клиенты их ставят (Бинго!!!)

А вот пример
using (var client = new SmtpClient())
using(var message = new MailMessage("test@ya.ru",model.To,model.Subject,model.Body))
{
  int requestId = 1977;
  var messageid = string.Format("<{0}_{1}>", Guid.NewGuid().ToString("D"), requestId);
  message.Headers.Add("Message-ID", messageid);
                    client.Send(message);
}

Вам же в письме осталось сделать ссылку для перехода. 

https://site.com/api/promote/45555-66666-888_1977
и  на сервере обрабатывать этот переход, после же выставляя 301 статус для переадресации в нужный раздел

Худший ответ:
UTM-метки по идее.
Вопрос: Насколько актуальны эти технологии?

Лучший ответ:
В Xamarin актуально, в Андроиде Axml. 
Html5 это кстати тоже xml ну типа  вы поняли да. 

codeigniter это типа PHP ?
Не в курсе

Худший ответ:
> qml
Да. В Qt очень часто пользуются им.
> xml-подобные
html для веба и xaml для WPF/UWP/Xamarin/Avalonia. Владимир ещё упомянул андроид.
В жаве вроде бы ещё вроде в свинге используется xml.
Так что да - ещё актуально.
Сейчас ещё модно использовать всякие DSL для разметки - так делают в Dart, Kotlin, Swift UI. Ну и elm-подобные штуки
Вопрос: Если выучить чисто Unix, то насколько потом легко перейти на Linux?

Лучший ответ:
На чем вы собираетесь учить "чисто Unix"? По книжкам? По стандартам?
Сейчас как таковой ОС UNIX не существует. Торговая марка UNIX принадлежит The Open Group. 
Официально ОС может называться UNIX, если получит сертификат от The Open Group. Сертификат выдается после прохождения тестов на соответствиес стандарту Single UNIX Specification. 
Вот тут список всех сертифицированных UNIXов: https://www.opengroup.org/openbrand/register/
Линукс хоть и не проходила сертификацию, но стандарту соответствует. Поэтому можно считать, что Linux это одна из реализаций UNIX. Поэтому не парьтесь и изучайте Линукс. В подавляющем большинстве вакансий под UNIX понимают именно Linux.
И еще. Даже сертифицированные UNIXы отличаются друг от друга примерно так же, как Linux отличатеся от FreeBSD.
Удачи!

Худший ответ:
Там, где вы видели слово Unix на самом деле имелось ввиду Linux...  Успокойтесь.  Не нужно его учить. 
Изучите любую современную Linux и этого будет достаточно. Будь то Ubuntu, Debian, Cent OS , Fedora, Suse ...

А вообще просто поставьте виртуальную машину virtual box и постарайтесь развернуть LEMP на Debian Burster - будет полезно.   
Cсылка
Вопрос: Когда просить повышения?

Лучший ответ:
Запросить feedback от руководителя и коллег. По его результатам принимать решение о подаче заявления. Правда, 7 месяцев всего ... серьезно? Мы не знакомы, но прогресс о миддла за такое время не у всех гениев даже происходит

Худший ответ:
Если у тебя мега-прогресс, который виден всем, то уже можно.

Если нет, то во многих компаниях стандартно раз в год.

Прогресс от джуниора до мидла за год редкость, но можно попросить прибавки в пределах джуниорской вилки.

При этом тебя нагрузят дополнительными обязанностями.
Вопрос: Как перевести 2d изобрадение в 3d модель?

Лучший ответ:
Эту картинку в любом 3d редакторе делать примерно 5 минут. 

1. Нарисовать контур кривыми
2. Добавить экструдом глубину
3. У экструда включить фаски, чтобы срезать углы
4. Взять цилиндр, поставить его внутрь этой фигуры и через булево исключение сделать дырку в фигуре по форме цилиндра

4 простейшие операции.

Худший ответ:
Обведи его в paint 3d, за последствия не ручаюсь, ну а если серьёзно то есть сайт с бесплатным 3д
Вопрос: Какое сделать название почты для работы?

Лучший ответ:
 естественно на gmail
нужно чтобы e-mail адрес содержал в себе имя и фамилию
вроде как-то некрасиво
Культ карго какой-то.
Не ставите себе "sexyboy" или там "hitler1488" и нормально. Ну и почта не должна быть на mail.ru, лично я таких бы даже не рассматривал.

Худший ответ:
Да никак они не смотрят, скопировали вставили отправили вам письмо, если у вас конечно не почта по примеру кто.сюда.письмо.отправит.тот.погибнет.666@mail.ru или что в этом духе, спокойной ставь nickname@gmail.com, а фамилии указываются на корпоративных почтовиках или люди старой закалки) 
А если хотите выделиться есть время и деньги или оборудование какое, поставьте свой почтовик и будет у вас ivanov@I.am.the.best.pro )
Вопрос: Почему такое странное поведение in_array?

Лучший ответ:
Раз:

Если strict не установлен, то при поиске будет использовано нестрогое сравнение.

Два:

В случае, если вы сравниваете число со строкой или две строки, содержащие числа, каждая строка будет преобразована в число, и сравниваться они будут как числа.

Три:

Значение определяется по начальной части строки. Если строка начинается с верного числового значения, будет использовано это значение. Иначе значением будет 0 (ноль).

Худший ответ:
Это поведение и вправду очень странное, но корректируется третьим параметром, выставленным в TRUE

if (in_array($el, $arr, TRUE))
Вопрос: PHP preg_match_all и большая строка (760к)?

Лучший ответ:
Измените настройки PCRE:

ini_set('pcre.backtrack_limit', 10000000); // Лимит обратных ссылок

https://www.php.net/manual/ru/pcre.configuration.php

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

В вашем случае проще обработать файл построчно.
Вопрос: Как обстоят дела на Windows с 4k мониторами?

Лучший ответ:
Вполне нормально, на работе дезигнерам поставил - жалоб нет вообще.
Сирисли, именно под Windows они поддерживаются в первую очередь.

Худший ответ:
У винды - все ок, но вот у старого софта - бывают сложности. 
Хотя у винды тоже бывает, например у mstsc
Вопрос: Взломали впс и выкачали 30 терабайт трафика, куда он ушел?

Лучший ответ:
пароль был что-то вроде тест123, ибо было влом вводить сложный пароль в командной строке
Классика самсебезлобногобуратизма.стало интересно, куда шел трафик и вообще что происходило с сервером?
А хрен его знает. Я вот думаю, что на ботнеты и дудос.трафика набежало на 15 евро
Вам крупно повезло, некоторые влетали на огромные суммы. Считайте это платой за науку.

Худший ответ:
ну видать free proxy ;)
Вопрос: Какую БД и механизмы использовать для работы с разных устройств?

Лучший ответ:
в приоритете Postgresql хороший вариант для бекенда (СУБД на удаленном сервере. а значит, для безопасности как минимум, еще и покрытая слоем API)
если хотите локальную, такую же кросcплатформенную СУБД как и само приложение, скорее всего это SQLite

Худший ответ:
Базу можешь использовать любую, какая больше нравится. А обмен данными можно организовать через JSON
Вопрос: Почему БД драйвер Python MySQL Connector работает на порядок быстрее чем в других языках?

Лучший ответ:
Навскидку: cursor.executemany() соединяет запросы в один большой INSERT. Остальные драйверы сами этого, видимо, не умеют.

Думаю, если вы руками соберете multi-row INSERT, то на то примерно и выйдет:
INSERT INTO tablename (fieldA, fieldB, fieldC, fieldD, fieldE)
VALUES (a, b, c, d, e),
(a1, b1, c1, d1, e1),
(a2, b2, c2, d2, e2),
...

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

Если вопрос производительности таки важен - либо выполняем множественную вставку за один запрос, либо обворачиваем в транзакцию.

Автор, проведите свой же тест, но с транзакцией вокруг вашей тысячи вставок, результаты будут отличаться.
Вопрос: Upwork есть ли сервис для апрува аккаунта?

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

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

Лучший ответ:
Взять – у поисковиков! В Google есть поисковый оператор inurl:

поисковый запрос авто -inurl:https 
найдёт сайты по ключевому слову «авто», в адресе которых отсутствует "https", т.е. которые работают без HTTPS.

Попробовать

Почему-то из документации по поиску упоминания этого и других поисковых операторов уже выпилили. Остались упоминания на сторонних сайтах.

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

Лучший ответ:
1. Можно подхимичить на коленке, создав двух юзеров с одинаковым UID/GID
правим /etc/passwdtestuser:x:1003:1003:,,,:/home/testuser:/bin/bash
testuser1:x:1003:1003:,,,:/home/testuser:/bin/bash
Пароли делаем разные, все остальное одинаковое.
При логине обоими юзерами линукс будет везде отображать имя только первого (testuser), так как UID совпадает, HOME совпадает, все совпадает.
Затем запрещаем одному из юзеров удаленный логин:
В /etc/ssh/sshd_config DenyUsers testuser1
Перегружаем sshd и все.
2. Можно замутить почти тоже самое, добавив к pam_unix еще авторизацию по ldap, настроить лдап, и второго юзера завести в LDAP (тоже прописать одинаковый UID/GID).
3. Лучше всего конечно настроить сложный пароль и ssh ключи, и не париться.

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

Лучший ответ:
Если чисто математически считать, то получится как-то так:$offset = 3*3600;
$t = floor((time() + $offset) / 86400) * 86400 - $offset;
(применимо только в часовых поясах, не имеющих перехода на летнее время, иначе - придётся всё-таки использовать функции получения даты-времени)

Худший ответ:
Сейчас вы считаете за последние 24 часа, если хотите считайте за сутки, то так и считайте, с 0 часов до 23:59, и все это может сделать СУБД.
Вопрос: Почему центр координат родителя перемещается в центр координат дочернего обьекта?

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

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

Лучший ответ:
Введите 2 фактурную авторизацию. И блочте пользователей по токенам. То есть вы пишете в базу токен для устройства. Это легитимно , но на каждое новое выводите просьбу подтверждениЯ это геморойно для складчиков. Ну и по жесткому спрашивайте у умельцев а почему ты мил человек читаешь с 5 устройств?

Худший ответ:
Правда жизни  - от этого ты не защитишься. Кто не хотел купить - не будут покупать. И как у варнер бразерс - также упущенная прибыль не будет на миллионы долларов (это им маркетологи напели за свою ЗП). Это фейк и заблуждение. 5-ть бомжей хороший продукт сольют - но если он актуальный, обновляемый и пополняемый - профит и пиар от слива будет выше чем якобы упущенная прибыль. не мысли как инфо циган. open mind! 

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

Лучший ответ:
Сокращением дроби на корень из х.

Худший ответ:
Разделили числитель и знаменатель на sqrt(x)
Вопрос: Как называется особенность функции в python?

Лучший ответ:
Аннотации это называется.

Худший ответ:
Аннотации.
Интересная статья по теме -  Введение в аннотации типов Python
Вопрос: Странная переменная, PHP/WP. Как сменить тип в число из строки?

Лучший ответ:
Вас не смутило string(6) "14704"?14704 - это 5 символов. Значит вначале есть какой то невидимый символ, который не даёт преобразовать число в int. Либо проверяйте что у вас в {{id}}, либо попробуйте перед преобразованием сделать переменной trim.

Худший ответ:
Используйте тогда settype($customer_id, "integer");
Вопрос: Бывают ли «умные» проходные/перекрестные выключатели?

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

Худший ответ:
Затратно. Дешевле иметь второй контроллер УД, чем городить резервирование и сращивать его с контроллером.