Vikhrmodels/habr_qa_sbs huggingface dataset:
Вопрос: Одно из двух полей обязательное Yii2?

Лучший ответ:
Решил так. [['phone', 'phone_other'], 'required', 'when' => function ($model) {
    $validate = empty($model->phone) && empty($model->phone_other);
    if ($validate) { return false; }
    return true;
    }, 'whenClient' => "function (attribute, value) {
    if($('#order-phone').val() == '' && $('#order-phone_other').val() == ''){
    $('.field-order-phone, .field-order-phone_other').addClass( 'has-error' ).find('.help-block-error').text( 'Необходимо заполнить хотя бы одно из полей «Телефон» или «Доп. Телефон»');
    return true;
    } else { 
    $('.field-order-phone, .field-order-phone_other').removeClass( 'has-error' ).find('.help-block-error').text('');
    return false;
    }
   }", 'message' => 'Необходимо заполнить хотя бы одно из полей «Телефон» или «Доп. Телефон»'],
Реализация не из лучших может кто то знает как по правильному сделать.

Худший ответ:
С точки зрения логики, первое поле сделать обязательным. Второе необязательным.
А так, одна из первых ссылок гуглpublic function rules()
{
    return array(
        // array('username, email', 'required'), // Remove these fields from required!!
        array('email', 'email'),
        array('username, email', 'my_required'), // do it below any validation of username and email field
    );
}

public function my_required($attribute_name, $params)
{
    if (empty($this->username)
            && empty($this->email)
    ) {
        $this->addError($attribute_name, Yii::t('user', 'At least 1 of the field must be filled up properly'));

        return false;
    }

    return true;
}
Вопрос: Как добавить пользователя без права на вход через консоль?

Лучший ответ:
в /etc/passwd указывается шелл, который получает юзер при входе. Пропишите нужному пользователю /sbin/nologin или /bin/date, вместо bash/ksh и при попытке подключиться консолью, его сразу отключит.
команда adduser имеет опцию -s , которую можно использовать в виде
adduser -s /sbin/nologin

Худший ответ:
в /etc/passwd указывается шелл, который получает юзер при входе. Пропишите нужному пользователю /sbin/nologin или /bin/date, вместо bash/ksh и при попытке подключиться консолью, его сразу отключит.
команда adduser имеет опцию -s , которую можно использовать в виде
adduser -s /sbin/nologin
Вопрос: Нужны ли такие посты на хабре: Возможности СSS3 в одном тэге?

Лучший ответ:
Нужны.

Худший ответ:
Очень интересный подход, так же любые иконки можно нарисовать. Кода даже меньше, чем svg, и использовать просто. Вот бы редактор, который бы выдавал результат в виде такого css
Вопрос: Как на CentOs обновить PhpMyAdmin или установить его заново, но не из репозитория?

Лучший ответ:
Оператор сервиса "Погугли чужими руками" приветствует Вас!
Вот Вам ссылка на описание процесса установки PhpMyAdmin из официальной документации.

Худший ответ:
phpMyAdmin 4.0.9 лежит в репозитории remi
Вопрос: Кто-нибудь знает todo лист с ачивками, баллами, прогрессбаром?

Лучший ответ:
Посмотрите на HabitRPG :) https://habitrpg.com/static/front

Худший ответ:
Zurmo еще есть.
Вопрос: Как в Ubuntu включить «заснувший» монитор?

Лучший ответ:
«Сами спрашивали, сами отвечаем». 
Команда: 
xset dpms force on

включает монитор.

Задействуется DPMS (Display Power Manager Signaling) — сигналы управления энергопотреблением дисплеев, технология, позволяющая управлять питанием монитора.

Худший ответ:
Может Вы хотите вообще отключить сбережения экрана?
Для этого в Startup Applications добавить
xset -dpms
Вопрос: Распределение обязанностей на фрилансе для WordPress?

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

Худший ответ:
Так чисто от себя хочу сказать что если у вас все получится, то ты будешь делать намного больше работы чем он... и как я уверен у вас будет 50 на 50 =) Жиза просто
Вопрос: На чем писать приложение на Android?

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

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

Лучший ответ:
Есть такой сайт dzone.com на котором собрана большая коллекция cheat sheet. Шпаргалка по GoF у них самая популярная. 
Прямая ссылка для скачивания www.mcdonaldland.info/files/designpatterns/designp...

Худший ответ:
Посмотрите тут: habrahabr.ru/post/210288
Вопрос: Какой выбрать гипервизор для Ubuntu 14.04?

Лучший ответ:
Да можно выбрать и VirtualBox чтобы не запариваться. Использую на работе для работы с окнами, ни разу не подводил пока что. Нужно было быстро, надежно и вчера))

Худший ответ:
можете также VMware Workstation использовать для виртуалок, либо Virtualbox
или вам принципиально под гипервизор надо под 0 уровень?
Вопрос: Как бороться с неработоспособность angularJS в Rails?

Лучший ответ:
может дело в turbolinks?

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

Лучший ответ:
text.textContent[0]='+'
заменить на text.textContent[0] == '+'
А то у вас не приравнивание, а присвоение.

Худший ответ:
Можно использовать replace() для этих целей:var text = '+ текст';
var string = text.replace(/\+/g, '');Пример
Вопрос: С чего начать изучение схемотехники?

Лучший ответ:
Титце и Шенк — классика же.

Худший ответ:
Хоровиц, Хилл — Искусство схемотехники
Вопрос: 4G и SIP телефония сочетаются?

Лучший ответ:
Вполне

Худший ответ:
Yota не совсем стабильна, у нее часто бывают микро разрывы, в серфинге это не заметно, но на sip телефонии отразится.
Вопрос: Как сделать короткий путь localhost:3000/danil вместо localhost:3000/users/danil Использую гем friendly_id и Devise?

Лучший ответ:
Сергей Краснодемский подсказал неплохо, но это не rails way. Чтобы избавиться от имени модели в урле для RESTful-ресурса необходимо указать "нулевой" путь:resources :users, path: ''

Худший ответ:
попробуйте добавить роутget '/:id', to: 'users#show'
Вопрос: Как использовать SQL-запросы в JavaScript?

Лучший ответ:
Я думаю проще от сервера рут дать, пусть юзеры делают любые запросы

Худший ответ:
Не делай так!
Вопрос: Какую выбрать CMS на PHP?

Лучший ответ:
Вы описали CMS по имени "любая"

Худший ответ:
Раз Jekyll не катит по идеологическим соображениям - тогда Sculpin. 
Но если WordPress "слишком сложен" -  то да, наверное это вообще не сюда вопрос.
Вопрос: Как реализовать в Asterisk звонок на группу и расширение группы абонентов через несколько секунд?

Лучший ответ:
Однозначно через канал local.
asterisk.ru/knowledgebase/Asterisk+local+channels
В дополнение к  Rsa97.
Можно отправлять звонок  в другой контекст, так будет нагляднее. По вашему ТЗ это будет выглядеть так:exten => s,1,Dial(SIP/1&SIP/2&SIP/3&Local/s@new_context);[new_context]
exten => s,1,Wait(30)
exten => s,n,Dial(SIP/4&SIP/5&SIP/6&SIP/7)

Худший ответ:
torr2009 , а чем именно вам не нравится ваш вариант?
Dial с опцией t, далее новый Dial с большим числом сотрудников.
Вопрос: Что возвращает GROUP BY без агрегатной функции?

Лучший ответ:
первая попавшаяся

Худший ответ:
Вообще по стандарту SQL такой запрос должен кидать ошибку.
MySQL по дефолту ошибку не кидает, возвращает случайное значение для полей не под группировкой.
Настраивается это поведение директивой ONLY_FULL_GROUP_BY
Непонятки с sql_mode=ONLY_FULL_GROUP_BY
Вопрос: Насколько распространена практика IT-разработок за счет доли в будущей прибыли?

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

Худший ответ:
Хорошо распространена. В геймдеве такой подход популярен.
Но вопрос некорректен. Без разницы на сколько распространена практика — условия должны оговариваться с конкретными людьми. Если они всех устраивают — хорошо, не устраивают — распространённость практики ничем не поможет.
Вопрос: Бесконечный цикл в Qthead, как сделать правильно?

Лучший ответ:
Для постоянного цикла вам лучше реализовать слот, который будет постоянно вызываться в конце самого себя:
test.h:private slots:
   void workMethod();
test.cpp:void Class:workMethod()
{
     ....
    QMetaObject::invokeMethod(this, "workMethod", Qt::QueuedConnection);
}
Тогда ваш метод будет выполнять каждую итерацию под управлением очереди сообщений и в любой момент вы можете остановить поток.

Худший ответ:
Если я правильно помню то сигналы к слоту из потока надо цеплять с флагом Qt::QueuedConnection
а в нутриях цикла, когда понимаешь, что можно бы обработать внешние сигналы надо звать QEventLoop::processEvents
Вопрос: Существуют ли заочные курсы или стажировка по анализу данных на русском языке?

Лучший ответ:
ИМХО, тут есть несколько аспектов:
1. Как написал brainick , математический бэкграунд и английский в data science практически обязателен. 
Причин этому несколько: отсутствие хорошей литературы на русском языке (как по теории, так и по программированию), обилие английских терминов (lift/top/cross-validation и прочие), значение которых в переводной литературе порой объяснятся весьма туманно.
2. Если говорить о конкретной литературе, которую стоит почитать, я бы выделил несколько уровней:Уровень 0 
1. Бизнес-аналитика - Паклин, Орешков (самое базовое и обзорное введение)
2. Статистика/Тервер ( по мне, хороши книги Айвазяна/Мхитаряна)
3. SQL - в обязательном порядке. Мне в свое время помогла книга "SQL для простых смертных"
4. Изучаем Python - М. Лутц (наиболее полная книга по языку, все что нужно для data science здесь точно есть)
5. Программируем коллективный разум (к слову сказать, вот в этой книге отличный перевод)Уровень 1 
1. Математические основы машинного обучения и прогнозирования - Вьюгин (книга сложная, без подготовки по учебникам НМУ на тему анализа и линейной алгебры лучше не подходить)
2. Python for Data Analysis (pandas во всей красе, тут нечего добавить)
3. Примеры и статьи по построению моделей в sklearn - на хабре в последнее время часто мелькают статьи на эту тему, там все достаточно хорошо расписано.Уровень 2
1. Hadoop и иже с ним ("Hadoop в действии", "Programming Pig")
2. Apache Spark - достаточно почитать описание  Python API.
Тут есть еще один момент - не стоит слишком привязываться к одному языку и фреймворку.
Одна из неприятных проблем python+pandas+sklearn заключается в том, что эта связка слабо масштабируется - при 2-3-4 гб данных становится сложно разместить их  в оперативной памяти. Я знаю про chunk-reading+partial_fit, но точность таких моделей оставляет желать лучшего.
С другой стороны, если обрабатывать эти данные в pyspark, то теряется все удобство pandas.DataFrame и так далее. Отрасль data science быстро развивается и обрастает новыми технологиями, так что нужно все время держать руку на пульсе.
UPD: в spark 1.3 появились DataFrame.

Худший ответ:
Соглашусь с предыдущими сообщениями о том, что анализ данных без математики вряд ли возможен, так что может с неё всё-таки начать?
Вы попробуйте в ШАД за это руку не отрубают! ;) Там вообще довольно приятные люди и если даже не поступите, то по крайней мере узнаете много нового и поймёте чего вам не хватает (особенно если дойдёте до собеседования). К тому же кажется, что к заочникам у ШАДа более лояльное отношение.
Как раз весной набор, подготовиться, конечно, придётся, но там ничего сверхъестественного, по собственному опыту знаю (примерно первые пару курсов матфака). Многие пишут, что готовились самостоятельно, я, честно говоря, не готовилась совсем, но на это равняться не стоит, поскольку имею математическое образование.
Успехов! ;)
Вопрос: Каковы возможные оптимизации нагрузки простейшего скрипта?

Лучший ответ:
Тут скорее проблема в HTTP-сервере. Попробуйте реализовать то же самое на node.js или перевести под nginx+php-fpm, если используете Apache.

Худший ответ:
Используйте встроенный perl/lua в nginx.

PS: каков вопрос — таков ответ
Вопрос: Актуальность написания приложений под Symbian

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

Худший ответ:
С одной стороны Симбиан все еще очень распространен, особенно в развивающихся странах. С другой стороны, даже продвинутые устройства на симбиан гораздо меньше воспринимаются их владельцами как «смартфоны» и соответственно вся культура скачивания и установки приложений гораздо менее развита. Я тому, что даже при большом количестве устройств потенциально способных запустить ваше приложение, людей которые воспользуются этой возможность, будет, скорее всего, не так уж и много. По-мне, если вы хотите, что бы ваше приложение нашло своих пользователей, то стоит выбрать одну из платформа с развитой системой доставки контента и культурой ей пользоваться, т.е. Android/iOS/WP7/Bada, причем первые две покрывают большую часть рынка.
Вопрос: Как клонировать DNS запросовы на внешние сервисы?

Лучший ответ:
А для чего все это? Вы хотите за пользователями следить? Так поставьте прокси.
Если был ДНС-запрос - это еще не означает что по адресу кто-то пошел. Всего-лишь запрос и только

Худший ответ:
Роскомнадзор перелогиньтесь :) А если по сути, что мешает клиенту в локальной сети сменить DNS сервер на 8.8.8.8 и не париться с вашим.  Но допустим если у вас "православные" пользователи, которые не знают как менять dns, ваш вопрос сводится к задаче "как поднять и настроить DNS сервер", чтобы иметь репликацию внешних DNS серверов и другие фичи, данный вопрос без контекта рассматривать бессмысленно, как минимум DNS сервер можно поднять на linux и на windows и инструментарий будет разный.
Вопрос: Каким сервисом можно заменить хостинг т.к места (1гб) для хранения файлов?

Лучший ответ:
Берите от aws free tier на 1 год бесплатно, настройте под отдачу файлов. 
Можно привязать ваш поддомен типа file.вашсайт.ком.

Худший ответ:
google app engine. 1гб bandiwdth/день бесплатно
или как говорили регай aws s3 - 1 год бесплатно
Вопрос: задачка по настройке двух интернет каналов

Лучший ответ:
Честно говоря я б на вашем месте пользовал бы какой нить онлайн мессенджер, типа imo.im — с сохранением истории на сервере. Тогда сообщения по пути не будут теряться, а будут прилежно сохраняться в хистори на веб-сервисе, и можно будет их просмотреть потом.

Худший ответ:
сидите в асечке через проксю, а к проксе маршрут пропишите
Вопрос: Реально ли стать тестировщиком ПО в 39 лет, учитывая то, что основная профессия далека от IT?

Лучший ответ:
Обучаю коллегу, который старше меня. Он экономист, работал на телевидении, много где. Он, пока, молчит когда идёт обсуждение архитектуры, принципов DDD или вариантов реализации новой фичи. Но каждая минута, вложенная в его обучение, экономит мне две.
По выбору места работы - выберите среднюю компанию, наиболее крупную коммерческую из средних. В таких компаниях есть отлаженный процесс обучения. Если хотите устроиться туда, откуда никогда не увольняют - устройтесь в государственную структуру, там тоже есть ИТ.
Что касается литературы - читайте всё, литературу для разработчиков, аналитиков, архитекторов, руководителей. Так поймёте, что хотят от инженера по тестированию. Литературу для инженеров по тестированию тоже читайте, так научитесь говорить на одном языке с коллегами.
Если прочтёте советы выше, между строк. То увидите, что в тестирование советуют идти студентам. Среди студентов, половина из которых сменит место работы при получении диплома, будете специалистом относительно высокого уровня. Также между строк прочтите и такой совет - запишитесь на курсы, станьте студентом. Могу сказать только по своей команде, постоянно обучаемся всему подряд. Новые продукты и библиотеки, внешние внутренние курсы, книги, журналы, онлайн-обучение, ... Когда учился в университете, учился меньше.
По сравнению зарплат разработчика и инженера по тестированию, замечу, следующее. Если разработчик работает по 16 часов в сутки, пишет лучший код, изучает всё вокруг, обучает коллег, улучшает процесс, стремиться к лучшим к отрасли. А тестировщик с тем же стажем лишь кликает по чек-листу. То зарплата тестировщика будет ниже, что логично. И это неправильно выполненное сравнение.
Если же тестировщик прёт как танк, а разработчик лишь способен исправлять баги, создавая при этом два новых, то ситуация по зарплате будет обратной.

Худший ответ:
Все IMHO:
Я бы не назвал тестирование уж очень востребованным и тем более предполагающим карьерный рост. 
Из того что я вижу, - либо вакансии обезьянок с чеклистом, либо ищутся люди уже умеющие все это автоматизировать.
Зарплаты первых - соответствуют их квалификации, зарплаты вторых как правило +- равны зарплатам обычных разработчиков.
Если есть опыт руководства - лучше в менеджеры какие нибудь идти, но тут без понимания процессов тоже сложно будет.
PS Реально сейчас востребованы разработчики нативных мобильных приложений.
Вопрос: В чем проблема адаптации сайта?

Лучший ответ:
Если планируется верстка под моб.девайсы, всегда указывайте <meta name="viewport" content="width=device-width, initial-scale=1.0>
Почитайте про viewport
Тестируйте на живых девайсах по возможности. Эмуляторы частенько врут. По моему мнению, для эмуляции устройств лучше пользоваться встроенным инструментом в средствах разработчика chrome.
Копаться в вашем css файле с important желания нет, уж простите.

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

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

Худший ответ:
"не распределяющая полученную прибыль между участниками."
Зарплату то себе как платить будете) ?
Вопрос: Верификация адреса Upwork — что делать с постоянной регистрацией?

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

Худший ответ:
В альфабанке печатают только фактический адрес, то есть тот который у вас в паспорте, он же у вас должен быть указан в апворке. не понимаю в чем у вас проблема?
Вопрос: Back-end, работающий со Smarty

Лучший ответ:
Уж простите за оффтопик. Но знание пхп принесет вам пользы на несколько порядков больше. Зачем вам костыль в виде смарти? по сути тот же самый пхп, но с фигурными скобками и гораздо меньшими возможностями; люди пишут плагины обертки чтобы хоть как то возместить отсутствие функций, структур и прочего. 
К тому же вы сознательно сужаете количество проектов над которыми вы потенциально могли бы работать. Не станете же вы предлагать работодателю переписать приложение на сматри, чтобы уставшему верстальщику было удобно вставлять ерунду.
Вообще не понятно зачем верстальщику вставлять какую то ерунду в прототипе? Задача верстальщика сделать из макета прототип страницы в html+css. все остальное (подставлять переменные, выводить информацию в циклах и т.д.) делают разработчики. Если же вы разработчик, работающий с PHP CMS то не знать пхп - нонсенс
имхо профессию верстальщик давно пора вносить в красную книгу. Не спорю в эпоху печати верстальщик это царь и бог. Но в наш то 21ый век, любой front-end developer сделает шаблон не хуже верстальщика, а то может и лучше. Времена изменились, требования к кандидатам на работу ростет, мало знать один только html+css, необходимы хотя бы поверхностные знания во всем стэке вэб разработки. не майтесь дурью - учите пхп

Худший ответ:
попробуйте piecrust или что-то в этом духе.
Ежели вы знаете js можете попробовать nodejs
Вопрос: Что лучше выбрать, woocommerce или PrestaShop?

Лучший ответ:
"1. Да. Корзина отключается. Кнопка в шаблоне комментится. К примеру. И получается каталог."
  - В настройках Prestashop можно включить режим каталога и ничего править в шаблоне не нужно.
2. Robokassa подключается без проблем. Модуль есть в продаже.
3. Зависит от опыта и умений разработчика. С данным проблем никогда не возникало.
4. Идет сразу из коробки. Акции и т.д можно ставить на определенный срок, на конкретную группу людей и даже на страну. 
5. Если входной csv файл, то можно импортировать стандартными средствами.
6. Да, возможно.
С woocommerce стараюсь вообще не работать. Тем более если идет связка woocommerce + wpml.
Все таки если это и-магазин, то нужно использовать системы, которые именно под это заточены. 
Поэтому мой выбор очевиден, это Prestashop :)

Худший ответ:
Лучше воспользуйтесь OpenCart. Огромное русское комьюнити, огромное количество копеешных плагинов (по сравнению с woocommerce), гораздо более менее требователен к ресурсам.
На Woocommerce ставил два магазина - никому не пожелаю такое повторить. Для простых магазов может и сойдет, но если нужно что-то чуть более сложное - это катастрофа.
Вопрос: Как выглядит хостинг изнутри?

Лучший ответ:
Думаю 90% хостинга строится на готовых решениях вроде средств виртуализации, биллинга (например,Billmanager) и панели управления (ISPManager, CPanel, DirectAdmin, и др.). Большая часть ПО идет в комплекте. Биллинг чаще самописный, чем панелька — т.к. его сделать проще.

Целеком самописные решения создают только монстры (вроде мастерхоста), и то далеко не все, и не во всём… Потому статей и нет — архитектура такого хостинга это интеллектуальная собственность компании.

Худший ответ:
самое простое из интересных решений это openvz.org + code.google.com/p/ovz-web-panel на хосте
и подготовленный шаблон контейнера с nginx, php-fpm, mysql
Вопрос: Приложение для управления проектами

Лучший ответ:
Используем у себя active collab — по мне оптимальное простое в понимании решение. Если правильно погуглить — можно найти отученную от жадности версию

Худший ответ:
Вот здесь описано пару систем - pmexperience.org/ru/ksup/solutions
Вопрос: Можно ли поставить?

Лучший ответ:
Нет. Его чипсет не поддерживает:
www.cpu-upgrade.com/mb-Intel_(chipsets)/HM55_Express.html
или тут
ark.intel.com/products/43183/Intel-BD82HM55-PCH#@c...

Худший ответ:
Я не вижу здесь сокет, но как я понимаю, это ноутовская мать. Скорее всего, нет. Рекомендую вам позвонить в офф.сервис. Там скажут точно.
Вопрос: Почему много разных папок в node_modules?

Лучший ответ:
У каждого модуля есть свои зависимости. Раньше они ставились в папки node_modules соответствующего модуля, а начиная с какой-то недавней версии все модули устанавливаются в корневую папку node_modules. Так уменьшается количество файлов в проекте, его размер и устраняются проблемы, связанные с ограничением на длину названия файла в Windows.

Худший ответ:
Новая npm ставит все зависимости в корень. и зависимости зависимостей.
Раньше они грузились в подпапки подпапок подпапок .....