pavki/hr_qa_sbs_best_bad huggingface dataset:
Вопрос: Не могу сделать вывод из JSON запроса на php?

Лучший ответ: так вам итерировать нечего - у вас всего один объект, а не массив объектов.
форич на одном объекте прост перебирает его свойства и $a->number приведет к фаталу (ибо $а не является объектом).
в вашем случае нужно весь код заменить на просто <?= $data->number ?>
для наглядности - https://ideone.com/VM6kdT

Худший ответ: <? var_dump($data->number); ?>Так работает.
Значит и так тоже до первого объекта:<?php foreach($data as $a): ?>
<?= $a ?>
<?php endforeach; ?>
Поэтому упрощённо - такая версия (все объекты делаем json-ами):<?php foreach($data as $k=>$a): ?>
<?=(is_string($a))?"$k=>$a<br>":"$k=>".json_encode($a)."<br>" ?>
<?php endforeach; ?>
По-скольку json - это структура, то для извлечения произвольного поля нужно написать рекурсивную функцию, которая будет перебирать всё "дерево" и находить нужное значение. Или явно указывать нужное через цепочку "->" корректно задавая путь по "дереву" к нужному узлу.
Вопрос: Как выравнивать текст с такой высотой строки?

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

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

Лучший ответ: domain:        UNDRESSME.RU
nserver:       aron.ns.cioudlare.com.
nserver:       kurt.ns.cioudlare.com.
С бумажки NS-сервера переписывал? Какой нафиг cioudflare ?

Худший ответ: Для доменного имени undressme.ru отсутствует A-запись. либо вы её не указали и тогда надо это сделать, либо она ещё не обновилась и нужно подождать.
Вопрос: Как смоделировать вселенную?

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

Худший ответ: https://ru.wikipedia.org/wiki/Игра_«Жизнь»
Вопрос: С# стоимость приведения типа?

Лучший ответ: Говорят, стоимость высокая.
https://switch-case.ru/73228064

Худший ответ: object o = new MyType();
var entity = (MyType)o;
это не приводит к изменению объекта, значит, ресурсы не тратятсяможет это даст ответ на вопрос
Вопрос: Что в сленге означает «замапить»?

Лучший ответ: Это англицизм-синоним слову "отобразить". Но обычно относится к смыслу "сопоставление значений".

Обычно это означает "произвести отображение контекста А на контекст Б". Результатом отображения является набор соответствий значений. 
Это очень высокоуровневое и обобщённое понятие.
Но оно обозначает прямой процесс построения отображений с помощью лишь одних значений и соответствий.

Англицизм употребляется потому, что весь процесс программирования состоит из отображений, это слово настолько перегружено, что просто бесполезно.

Трансляция - процесс передачи из одного контекста со своей терминологией в другой контекст со своей терминологией. Если информация в одном контексте кодируется определённым набором символов, то в процессе трансляции построится абстрактное синтаксическое дерево для контекста А, потом оно будет по каким-то правилам отображаться в АСД для контекста Б, по которому будет сконструирована 
новая форма отображения информации, но уже в терминах контекста Б.

Если вместо трансляции произвести "маппинг", то у нас информация в контексте А будет разбита на куски, информация в контексте Б будет разбита на куски, и маппинг выдаст нам набор стрелочек вида кусок А-> кусок Б.

Маппинг - это всегда про значения. Значения кодов клавиатуры символам или функциям, enum и все задачи, в которых вы используете key-value storage и т.д. и т.п.

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

Лучший ответ: для этого отлично заходят шаблонизаторы.

Худший ответ: Там смотрите. Есть же как бы основной шаблон в который входят всякие модули. Что мешает сделать так как это обычно происходит в cms
то есть head лежит в основном шаблоне и в нём же размечены модули. А каждый модуль представляет из себя отдельное MVC то есть имеет совй контроллер модель и представление.
Таким образом у Вас конечная страница собирается из кода основного шаблона + сгерерировавшегося html каждого из модулей которые подставляются в нужное место основного шаблона.
По коду не привожу примеров в виду их объемности, а так же поскольку конечных решений много больше чем одно.
Вопрос: Какие ЯП (Язык программирования) лучше для написания ядра операционной cистемы?

Лучший ответ: Пока только СИ. Ну если только вы не придумаете новую альтернативу

C:
----Java
----Go 
----Scala

Не надо бояться того что СИ старый. Иногда старое это проверенное временем и лучшее!

Худший ответ: Можете использовать хоть питон, хоть пхп. Если сможете обеспечить необходимый функционал и интерпретатор сделать чтобы в нужной среде работал. Или можно транслировать в Си и компильнуть
Вопрос: Не могу установить 3proxy, privoxy и OpenVPN на OpenVZ VPS, какими еще способами можно его настроить как прокcи или VPN?

Лучший ответ: apt update; apt upgrade сделайте.

Худший ответ: Зачем все так усложнять. Почитайте про динамический SSH-туннель и поставьте в браузер дополнение типа foxy proxy. И на ваш vps ставить вообще ничего не нужно. Только Putty и дополнение в браузере.
Вопрос: Каков путь опытного javascript программиста?

Лучший ответ:  На каких сервисах посоветуете учиться ? Сейчас я учусь на learn.javascript. 
Это только для того чтобы стать "начинающей заготовкой программиста".
Ни о каком сколько-то полноценном программисте, а уже тем более опытом - речи идти не может.
Только самое что ни на есть начало длинного пути.,как стали таким каким являетесь на данный момент
Практика.
Много-много-много лет.
Наблюдение показывают, что "заготовка программиста" становится программистом (только начинающим программистом причем) где то спустя 2 года постоянного ежедневного программирования.
А опытным - еще спустя 5-7 лет.

Худший ответ: почитайте гикбрейнс, там есть истории успеха, может найдете что
Вопрос: Что означает Не Curlится сервер?

Лучший ответ: Это какой-то дурацкий сленг. Видимо, кто-то попытался отправить на сервер HTTP-запрос с помощью curl`а и у него не получилось.

Худший ответ: Отправьте такой же CURL-запрос с другого IP и промониторьте логи на своём сервере.
Если запрос не дошёл до сервера даже - то это уже у провайдера выясняйте.
Вопрос: Есть ли для Android поиск библиотек по описанию?

Лучший ответ: да, https://android-arsenal.com/

Худший ответ: Нет такого поиска
Вопрос: Как начать изучать Javascript новичку в программировании?

Лучший ответ: поиск "книга javascript" по тостеру - 380+ вопросов
поиск "курсы javascript" - 260+ вопросов
и куча других вариантов с сотнями вариантов вашего вопроса.
совет научиться для начала пользоваться поиском - в чуть больше чем 100% случаев
не буду нарушать статистику.

Худший ответ: learn.javascript.ru и практика
Вопрос: Магические числа?

Лучший ответ: Первая причина использовать переменные - если значение нужно в 2х местах и более. Чтоб не копипастить.
Одинаковые transition, размеры заголовков и тд.
Втарая - удобство настройки компонентов. Например гамбургер. Он есть в каждом проекте, но меняется цвет, размеры и тд. Это удобно вынести в переменные и не лезти править внутри.
Третья - базовое значение. Например для отступов.$indent: 8px;
.elem {
  padding: $indent*2 $indent*3;
}

Худший ответ: Переменных должно быть столько, сколько требуется для решения задачи наиболее оптимальным путём.
Если проще, быстрее, прозрачнее и логичнее сделать без переменной — делайте без переменной. Если вы понимаете, что переменная вам всё же нужна — делайте переменную.
Во многих крупных проектах многое на переменных построенно, ибо так можно многое автоматизировать. Например, в том же Bootrstrap почти всё построенно на переменных — это позволяет автоматизировать процесс кастомной сборки. 
Например, делал недавно небольшой компонент кнопки — вышло порядка 35 переменных (+6 глобальных), и все они служат своей цели, лишних нет. А сегодня я делал достаточно большой компонент баннеров — там всего 6 переменных вышло (+2 глобальных). И больше не было нужно для поставленной задачи. 
Словом, делайте по ситуации и технической потребности.
Вопрос: ListView может в 2 колонки выводиться?

Лучший ответ: А здесь не нужен второй listView,
просто в одном item отрисуйте две вьюхи.
также можно данное реализовать через Grid или Table лайяуты
или правильнее взять recyclerView
https://stackoverflow.com/questions/12442795/pinte...

Худший ответ: Плюсую ребятам сверху, однажды попользовав RecyclerView с ListView уже связываться не захочется. Там все есть, и такие вопросы ровно одной строчкой кода решаются.
Вопрос: Как создать аккаунт в Microsoft Azure (разработчику из России)?

Лучший ответ: Я пообщался с английской поддержкой, они передали мои координаты в русскую, чтобы со мной связались.
Мне позвонил манагер из какого-то партнера Microsoft, кажется из 1С:Первый бит, но могу и ошибаться. Я долго объяснял ему проблему, он был вообще не в курсе. Сказал, что прояснит ситуацию и перезвонит.
На выяснение у него ушло несколько дней, он снова перезвонил, стал предлагать описать какие ресурсы мне нужны и тогда заключить договор, платить по договору по безналу. Я сказал, что мне нужно сначала попробовать вообще как это работает ....
Короче, по совокупности факторов я решил, что мне это не нужно. Тем более, что оказалось, что тот продукт, который меня интересовал уже не развивается Майкрософтом как непереспективный, а замену ему они еще не разработали...
В общем - мутота

Худший ответ: Я получил доступ к AZURE с помощью поддержки, через три дня предоставили, но только к AZURE/
Вопрос: Как сделать циклический сдвиг массива на 4 вправо?

Лучший ответ: Суперидиотский метод:for(int k=0; k<4; k++){
   int t;
   t = a[n-1];
   for (int i = n-2; i>=0; i--)
   {
       a[i+1] = a[i];
   }
   a[0] = t;
}

Худший ответ: Понимаю, что это учебное задание, но вообще не сдвигайте массив, сдвигайте индекс.
Вопрос: Как сделать калькулятор JS + HTML + WORDPRESS?

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

Худший ответ: Если вы не хотите, чтобы ваш код был виден на клиентской стороне, то js вам не подходит.
Лучше используя технологию ajax, отправляйте на сервер введенные пользователем данные, а затем обрабатывайте их на сервере и отправляйте результат вычислений обратно
Вопрос: Как оптимально реализовать фронт на Vue и бэк на Yii (желательно без CORS)?

Лучший ответ: OPTIONS не содержит практически никакой логики на бекенде, разве что авторизацию проверить, чего у вас так от него бомбит? Итого выполняется <50ms, ну дальше уже от интернета зависит.
"Чинится" двумя заголовками и больше не беспокоит.
Весь бекенд уже давно понимает OPTIONS.Сейчас хочется сделать "как положено", разделить мух (Yii) и котлеты (Vue). 
И бомбить от корса, а всего лишь нужно было узнать что это работает только между разными доменами, так почему бы просто не поднять бекенд и фронт на одном домене?

Худший ответ: Добрый вечер.
Vue желает быть отдельным приложением. При работе кошерным способом через CLI (удобно!) генерирует свою папку. Как подсунуть ее Yii, 
Сто лет не делал ничего на Yii, так что не судите строго.
При деплое на прод в том шаблоне(я про Yii-шный шаблон), в котором вы хотите Vue  отдаете то что у вас получилось из папки dist при билде Vue приложения. При разработке Vue приложения просто проксируете все запросы на Yii endpoint
Вопрос: Как реализовать возможность проверки результата игры с помощью криптографии?

Лучший ответ: Игрок делает ставку и шлет ее на сервер
Сервер решает, что он выиграл

Худший ответ: Можно random.org юзать. Там вроде рандомные числа генерируются на основании радиочастотных помех
Вопрос: Модальное окно на чистом JS — что можно использовать кроме объекта window?

Лучший ответ: https://jsfiddle.net/xa6d2cvb/5/
Или, если нет подложки, то вешать обработчик клика на контенте, когда появляется модальное окно

Худший ответ: document.body, например.
или, если есть оверлей с затемнением, можно слушать клики на нем.нельзя использовать eventтебя заперли в подвале в 2007?
Кстати, в твоем текущем варианте есть ошибка:/* Закрываем модальное окно по клику на маску*/
window.onclick = function (event) {
Это же клик по window, а не по маске.
Вопрос: Есть ли официальная документация по JavaScript?

Лучший ответ: Javascript - это одна из реализаций ECMA-262. Если вам нужно именно "официально-стандартно" - вам именно сюда.
Обратите внимание, это девятая редакция, которая вышла в июле. В следующем году скорее всего выйдет новая редакция. Ну и в этом СТАНДАРТЕ вы не найдете всяких новых экспериентальных штук. Экспериментальные штуки обычно описаны в черновиках.
BOM и DOM - это на самом деле не часть javascript, это API браузеров.
В 99% случаев вам будет удобнее всего ориентироваться на MDN, там все неплохо структурировано, и поддерживается в довольно актуальном состоянии.

Худший ответ: Не совсем, но сделано крутоили это
https://stackoverflow.com/questions/1606212/why-is...
Вопрос: Не работают одновременно 3 монитора?

Лучший ответ: Вероятно этого не позволяет сама мать. Рекомендую установить внешнюю видеокарту.

Худший ответ: VGA и DVI это два интерфейса одного и того-же выхода.
630-й интел поддерживает трёхмониторную конфигурацию, но только в строго определённом сочетании портов.
Вопрос: Как можно оптимизировать этот скрипт?

Лучший ответ: Попробуйте ansible

Худший ответ: Код не структурирован.
Нет обработки ошибок.
Нет комментариев.
Вопрос: Альтернатива Dev Tools для адаптивной вёрстки?

Лучший ответ: firefox - "режим адаптивного дизайна" - вводишь любые размеры (Ctrl + Shift + M)
в хроме так же можно

Худший ответ: вообще неплохо бы иметь два монитора и обычно увеличение/уменьшение окна отлично работает.
Вопрос: Можно ли на Хабре создавать новый аккаунт если тебя заминусовали?

Лучший ответ: Модератор говорит, что если не выявят дополнительные аккаунты, то можно))

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

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

Худший ответ: Если пароль правильный то выполнить код из файла
Если пароль не правильный выполнить из другого
Извините за псевдокод пишу с мобильника
И как выше заметили шарп компилируется в сборки , так что у вас не вызов файла, а вызов какого то класса
Вопрос: Script.js:17 Uncaught TypeError: Cannot read property 'replaceChild' of null?

Лучший ответ: document - корневой элемент, у него нету родительского узла (parentNode)

Худший ответ: "Уважаемый" автор вопроса, вам на почти)))) человеческом, английском языке, пишет:Cannot read property 'replaceChild' of null
что переводится:гугл переводчик - Не удается прочитать свойство 'replaceChild' из nullяндекс переводчик - Не удается прочитать свойство 'replaceChild' из null
смотрим внимательно: Ни как не могу прочитать свойство 'replaceChild' из якобы объекта если оно ни хрена не объект а null.
Может быть JS ошибся? Проверим:console.log(document.parentNode) // выведет null
Но ведь мы умные, на слово не верим и идем читать доку в поисках может ли быть  свойство parentNode у document?
один parentNode
два document
И видим что:Каждая веб-страница, которая загружается в браузер, имеет свой собственный объект document. Интерфейс документа служит точкой входа для получения содержимого веб-страницы (всего DOM - дерева...)
То есть document содержит всю веб страницу (все что включает тэг body). 
ЭТОГО НЕ МОЖЕТ БЫТЬ, А КАК ЖЕ СВОЙСТВО ПАРЕНТ????? (скажете вы)
Чтобы Вас убедить предложу прокрутить по ссылке document чуть вниз и посмотреть какие есть свойства и методы у document. Теперь Вам должна быть понятна причина появления ошибки:Uncaught TypeError: Cannot read property 'replaceChild' of null
Вопрос: Как уменьшить количество запросов в бд. WooCommerce (1200 запросов в БД)?

Лучший ответ: Не делать интернет магазин на вордпрессе.

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

Лучший ответ: Думаю DaData

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

Лучший ответ: Контекст потерялся. Ну и не надо пытаться достучаться до элемента через querySelector - он доступен как свойство target объекта события.submitText = (e) => {
  this.setState({
    text: e.target.value,
  });
}

Худший ответ: Контекст потерялся. Ну и не надо пытаться достучаться до элемента через querySelector - он доступен как свойство target объекта события.submitText = (e) => {
  this.setState({
    text: e.target.value,
  });
}
Вопрос: Почему возникает ошибка Not all parameters were used in the SQL statement?

Лучший ответ: Попробуйте вопросительные знаки на %s заменить мне помогло

Худший ответ: Попробуйте кортеж в квадратные скобки заключить.
Вопрос: Можно ли отправить сообщение в Direct Instagram с помощью API и также получить оттуда сообщение?

Лучший ответ: вот тут про api шки которые смогут это сделать

Худший ответ: Нашел ответ на свой вопрос и он оказался очень печальным! Такой возможности нет, после 2016 года.
Вопрос: Проверить на адекватность мой первый js(slider)?

Лучший ответ: Ну если по 5-балльной шкале, то оценка кода где-то -1.

Худший ответ: Для таких вопросов есть codepen
Вопрос: Что такое {this.props.children} и когда вы должны его использовать?

Лучший ответ: В children попадает массив элементов, находящихся "внутри" компонента. Например, в таком случае:<SomeComponent>
    <ChildComponent />
    <ChildComponent />
    <ChildComponent />
</SomeComponent>
SomeComponent получит props, где в children будут все ChildComponent.

Худший ответ: this.props.children это дочерние компоненты(потомки)
Вопрос: Как проверить, можно ли из кирпичей разного размера составить цепочку нужной длины?

Лучший ответ: Вам нужно сравнить сколько целых больших нужно для заданной длины и есть ли у вас достаточное количество маленьких, чтобы "добить" до нужного количестваspoilerpublic class HelloWorld{

     public static void main(String []args){
        System.out.println(calc(3, 1, 8));
        System.out.println(calc(3, 1, 9));
        System.out.println(calc(3, 2, 10));
     }
     
     public static boolean calc(int small, int big, int len){
         int xxx = len / 5;
         int yyy = len % 5;
         
         return xxx <= big && yyy <= small;
     }
}

Худший ответ: Вам нужно сравнить сколько целых больших нужно для заданной длины и есть ли у вас достаточное количество маленьких, чтобы "добить" до нужного количестваspoilerpublic class HelloWorld{

     public static void main(String []args){
        System.out.println(calc(3, 1, 8));
        System.out.println(calc(3, 1, 9));
        System.out.println(calc(3, 2, 10));
     }
     
     public static boolean calc(int small, int big, int len){
         int xxx = len / 5;
         int yyy = len % 5;
         
         return xxx <= big && yyy <= small;
     }
}
Вопрос: Как найти первый seo заказ?

Лучший ответ: Делаешь сайт с сео услугами, сеошишь его

Худший ответ: Посмотри на биржах фриланса какие ниши больше всего заказывают. Сделай сайт под это дело. Когда раскрутишь продай)) Потом добавь его в портфолио что делал для такого-то заказчика.
Вопрос: Long poll — как делать тысячи соединений открытыми?

Лучший ответ: Слишком уж общий вопрос, ну и технология древняя, почему не сокеты?
https://github.com/centrifugal/centrifugo
Имеет fallback с поллингом.
Но основной-то вебсокет канал по сути.
На хорошо нагруженном 8 ядерном сервере держит 4-5к коннектов нормально. Захлебывается при перезапуске конечно)
Общение почти только в одну сторону, без приёма данных от клиентов.
Не очень подходит для общения в две стороны, в основном для рассылки с сервера.
В две стороны обмен нагрузка сразу скачет до небес и виснет.
В целом на GO что-то изобразить можно например.
Наколеночная реализация в один процесс и один поток держала 2-3к пользователей. Опять же логики почти не было, только авторизация и проверка на наличие оповещений.
Если запилить шардинг или мультипоточность, но на 4-8 ядрах вполне можно держать 15к+.
Ну и NodeJS никто не отменял.
https://habr.com/post/123154/
Но по факту у меня в говнореализации NodeJS работал фиговее чем GO, примерно в 2 раза меньше мог держать онлайна 1500-1700, на том же одном процессе и потоке как Go.
Реализация в обоих случаях была на коленке, функционал одинаковый.

Худший ответ: Вот мой проект https://github.com/CppComet/comet-server я писал на C++
Если всё делать по уму то много одновременных соединений только память требуют. И то сравнительно не много. Так как не надо делать по отдельному потоку на каждое соединение. Гораздо сложнее обрабатывать много запросов. Так как это потребляет процессорное время.
Вот я делал замеры на 64 000 соединений https://comet-server.com/wiki/doku.php/comet:load-...
Если есть вопросы или желание поучаствовать в проекте пишите.
Вопрос: Какой трекер под Android выбрать для пожилого человека?

Лучший ответ: Так андройд и так вас отслеживает постоянно.
https://www.iguides.ru/main/apps/kak_posmotret_ist...

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

Лучший ответ: Самый простой и дешевый вариант, это просто почитать официальную документацию по PostgreSQL.
Написана просто и по делу, без воды.

Худший ответ: Начни с https://postgrespro.ru/education/courses
Вопрос: Что делать, если автор вопроса отметил решением свой ответ, но мой ответ гораздо лучше?

Лучший ответ: Еще есть вероятность, что случайно мимо проходящий куратор тега отметит и ваш ответ решением.

Худший ответ: Нет, такого способа на данный момент нет.
Вопрос: Кто видел работу на стыке IT и биологии?

Лучший ответ: На blastim мелькают вакансии по биоинформатике. Например, BostonGene ищут то айтишников с любовью к биологии, то биологов с любовью к айти.

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

Лучший ответ: Полезные ссылки:
https://moz.com/learn/seo/url
https://moz.com/blog/15-seo-best-practices-for-str...
Слишком длинные урлы не очень хороши с точки зрения СЕО, также говорят, лучше использовать транслитерацию.

Худший ответ: /категория/категория2/производитель/коллекция/товар
Это перебор.....
Да, длинные урлы - не хороший показатель с любой точки зрения, включая сео.
Но не забывайте, о правильных редиректах если надумаете их менять