Vikhrmodels/habr_qa_sbs huggingface dataset:
Вопрос: Как уведомить работников на складе, что нужно собрать товар?

Лучший ответ:
Я бы прикупил домен, сделал бы простенькую html-страницу, прикрутил авторизацию.
Каждого пользователя склада привязал бы к группам, где группа это один из складов.
После авторизации в вебе пользователь видит заявки на сбор товара и ссылки на печать документа если надо. Тыкнул на ссылку - пошла печать.
В 1С при оформлении заявки отправляйте на веб-сервер данные. Более того, этот вебсервер можно там же поднять, где 1с стоит.
Для уведомлений о новых заявках использовать Бота в телеграм, где каждый id чата = складу. Ну, или тупо ajax-автообновление страницы сделать и пусть в своих компьютерах/планшетах/телефонах видят заявки вообще ничего не нажимая. (будет как в Макдональдсе)))
--
Когда заказ собран, сотрудник ставит галочку в таблице заказов, а в 1С попадет информация о статусе заказа "Собран/Собирается".
--
Это самый простой вариант. Можете пойти по второму пути - поставить на склад тоже 1С с другими правами доступа, но это может оказаться сложно для пользователя, работающего на складе.

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

Лучший ответ:
Заменой меди на стекло.

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

Лучший ответ:
Это стандартное поведение в текстовом редакторе ВП.
Одиночный перенос строки заменяется на <br> а двойной на <p>. Другими сломами следующий текстПривет
мир!

Как твои дела?
При выводе (через хук the_content), будет приведён к такому<p>Привет<br>мир!</p><p>Как твои дела?</p>
Кроме того, если у вас не полные права, будут применяться и другие фильтры.
Вставляйте ваш html в специальный блок https://gogutenberg.com/blocks/custom-html/

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

Лучший ответ:
Никак, если она не указана в User-agent.

Худший ответ:
"Может тебе дать еще и ключ от квартиры, где деньги лежат?" (С) Двенадцать стульев
Никак. В User-Agent по умолчанию прописывается, но туда можно прописать всякую шляпу.
Вопрос: Что можно почитать по парсингу синатксических конструкций?

Лучший ответ:
SICP можно почитать для начала.

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

Лучший ответ:
json в несколько тысяч строк то как поступают в этом случае ? 
Обычно делают пагинацию, иначе гуй тормозить будет.Да и в моём случае можно ли как то это сделать проще ..не так как я туплю там ?
Удобнее использовать фреймворк (Vue, React), или какой-нибудь шаблонизатор (mustache, underscore и.т.д.).
UPD: вот пример на undersocre https://jsfiddle.net/Vlad_IT/c5mkwxp8/ я там поле с сайтами сделал массивом, чтобы удобнее было в цикле проходить.

Худший ответ:
С сервера приходит JSON той структуры, которую вы ожидаете. Если это ваш сервер, то вы сами и формируете этот JSON, иначе структура описана в документации.
Из строки получается так:var str = '{"x":123, "y":234, "z": [ 1, 2, 3 ] }';
var obj = JSON.parse(str);
obj.z[2]; // 3
Вопрос: Как делать лайки на Laravel?

Лучший ответ:
Невероятно большой это сколько?) несколько миллионов записей? Это ни о чём. Надо только индексы расставить правильно.

Только я дизлайков что-то не вижу.

Худший ответ:
Как станет невероятно большой и тормознутной, тогда можно легко и просто отделить проблемную сущность. Т.е. решать проблему, когда она появится, а не заранее. Это если появится. А пока можно сделать как в примере, только убрать likes в трейт туда же методы с лайками (запись/удаление и т.д.) чтобы код не дублировать, вместо
$table->unsignedInteger('likeable_id');
$table->string('likeable_type');написать
$table->morphs('likeable');
И коунт лайков можно в бд писать и инкрементить, чтобы запросов не делало
Вопрос: В чем отличие процедурного от функционального программирования?

Лучший ответ:
Пример в контексте JavaScript:
Процедурный стиль:const array = ['first', 'second'];

let output;

function allOdd(words) {
  let result = true;

  for (let i = 0; i < words.length; ++i) {
    const len = words[i].length;

    if (len % 2 !== 0) {
      result = false;
      break;
    }
  }

  return result;
}

output = allOdd(array);

alert(output);
Функциональный стиль:function length(string) {
  return prop('length', string);
}

function odd(number) {
  return equals(modulus(number, 2), 0); 
}

function allOdd(...words) {
  return every(compose(odd, length), words);
}

alert(allOdd('first', 'second'));
Реализации prop, modulus, equals, every и compose оставлены за кадром. Думаю, из их названия легко понять какой результат они возвращают.

Худший ответ:
В декларативном программировании, Вы разъясняете: я хочу, чтобы факториал n был n раз факториалом n-1(как в определении факториала в математике). Декларативное - это что.const factorial = (n) => {
  return (n === 0) ? 1 : n * factorial(n-1);
}
В императивном, Вы приказываете четко передвигаться по шагам - умножать это на это, пока идет отсчет и запоминаются какие-то числа.const factorial = (n) => {
  const iter = (counter, acc) => {
    return (counter === 0) ? acc : iter(counter - 1, counter * acc);
  }
  return iter (n, 1);
}Императивное - это как.
Вопрос: Кто лучше — трехсекционная СВО с кулерами по 120мм или двухсекционная по 140мм?

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

Худший ответ:
Вы конечно извините, но любой корпус фуллтауэр + хороший воздух на проц обеспечит Вам тишину и безгеморойность...

Смысл сво мне до сих пор не ясен
Вопрос: Как отобразить изображение на странице в spring, thymeleaf?

Лучший ответ:
Здравствуйте!
Начнем с самого простого...
Предположим, что вы загрузили изображения в папку img, которая лежит в static  ( resources/static/img/myImage.jpg )
Если вы используете шаблонизатор thymeleaf, то в шаблоне нужно задать:<img th:src="@{img/myImage.jpg}" alt=""/>
У вас на скрине ошибка, так как вы просто вставили картинку в атрибут src, а пути некооректные (404 ошибка), так как не учтен context path. У вас наверняка приложение открывается по урлу localhost:8080/contextPath
Кстати, урлы к внутренним ссылкам, скриптам и стилям задаются точно также (  th:href="@{/url/url}"   )
Также заметил небольшой баг, с чем это связано не знаю, возможно intellij idea, возможно spring boot...
В общем, если даже перезапустить приложение, даже при корректных путях к файлам может быть 404 или 500 (насколько я понял, это происходит при настроенном spring security). Чтобы избежать этих ошибок, нужно сделать Rebuild project, а потом запустить. Столкнулся с этим только в одном проекте.

Худший ответ:
у меня возникла аналогичная ситуация картинка не открывается ни по<img th: src = "@ {/ images / polygon.png}" />  ни по<img src = "/ images / polygon.png" />  .Как можно решить эту проблему
Вопрос: Где хранится семантическое ядро сайта?

Лучший ответ:
Семантическое ядро нигде на сайте не хранится. По семантическому ядру пишутся тексты на сайт

Худший ответ:
СЯ (семантическое ядро) на сайте нигде не хранится.
Для того, чтобы оно работало. Его нужно класстеризовать (разбить на страницы), проанализировать частотность собранных групп (нужны ли вообще такие страницы на сайте), создать страницы, ну и написать текст используя ключевые слова из СЯ.
Вопрос: Библиотека, которая поможет понять, что «ответы» и «OtBETЫ» — это одно и тоже?

Лучший ответ:
Этому алгоритму уже более 100 лет: https://ru.wikipedia.org/wiki/Soundex

Худший ответ:
Алгоритм я уже придумал, но нужно много писать алиасов букв.
Возможно кто-то уже сделал это до меня и есть готовая либа по распознанию такого, чтобы не изобретать велосипед, не подскажите?) 
Зачем там либа? Это всего-навсего один-единственный ассоциативный массив.
Типа:conv["t"] = "т"
conv["@"] = "а"
И удобная обвязка под него, типа:func MyConv(symbol string) string {
   s:= LowerCase(symbol)

   if v, ok:= conv[s] {
       return v
   } else {
       return s
   }
}И на этом всё!
Вопрос: Допустимо ли в проектах использовать logrus так?

Лучший ответ:
Опять отвечу я :-) (как и на вопрос по ссылке)
Да, вы можете использовать так как написали, сам logrus имеет в себе глобальный логер по умолчанию.

В чём суть передачи логера в параметрах?
Ну... 
Мы избавляемся от глобальной переменной. 
Передача логера происходит в функцию явно.
Мы можем передавать по разному настроенный логер в одну и ту же функцию.

Для малого приложения без разницы, как будет написано, с глобальными переменными или нет, но вот для большего приложения, поддержка станет сложнее.

UPD. Это пример если логирование всех ошибок приложения в одном стиле производится, но мне интересно у кого-нибудь был проект где требовалось несколько разных логеров?
Я бы не советовал передавать в функцию явно, если бы не натыкался на подводные камни глобалок...
Предположим, у вас есть функция парсинга сайтов и вам вдруг(требования меняются часто в реальных проектах) стало необходимо писать лог в файл по имени сайта, как вы будете это делать с глобальным логером?
С передачей логера по ссылке, это сделать очень просто:
А в случае теста, мы заменим логер в файл, на логер с выводом в консоль.
func main() {
	logger := logrus.New()

	sites := []string{
		"example.com",
		"google.com",
	}

	DoParse(sites, logger)
}

func DoParse(sites []string, logger logrus.FieldLogger) {
	for _, site := range sites {
		logger.Infof("Start parse site: %s", site)
		siteLogger := initLoggerForSite(site)
		parseSite(site, siteLogger)
	}
}

Или часть приложения логировать в файл, а часть и в файл и на консоль выводить.

Худший ответ:
Нет.
Так не можно. Функция  configurateLogger() у вас бесполезная. Она только оперирует внутренней переменной logger. Чтобы переменную было заметно глобальней нужно объявлять ее в более широком контексте, снаружи функции(а не внутри оператором := ). А что бы ее было видно в других пакетах она должна именоваться с большой буквы var Logger = configurateLogger() и все это добро нужно импортировать в другие пакеты.
Вопрос: Каким образом обрабатываются объекты в ООП?

Лучший ответ:
Основная суть ООП в объектах, которые сами могут управлять собой и выполнять действия над собой. 
МояМашина.ПовернутьНалево, а не ПовернутьМашинуНалево(МояМашина).
Классы могут наследоваться. Мы можем иметь список объектов, например список транспорта (например, список будет состоять из объектов велосипедов, самолётов, легковых машин). Сами объекты могут иметь собственные методы, например, МойВелосипед.ПодтянутьСпицы; МойСамолёт.Приземлиться; которых нет у других, но могут иметь общие методы, например тот же поворот. И мы можем дать команду всему списку ПовернутьНалево. цикл для i от 0 до 100 делать СписокТранспорта[i].ПовернутьНалево.
В списке транспорта, как я уже сказал и самолёты и вертолёты, но все они выполнят команду, т.к. все они будут наследоваться от класса Транспорт, который имеет метод ПовернутьНалево.

Худший ответ:
Никем и никак они не управляются. Конкретно в С++ ты можешь рассматривать объекты как структуры, с привязанными к ним функциями, имеющими неявный аргумент this.
Вопрос: Можно ли инпуту добавить псевдо?

Лучший ответ:
Заверните инпут в div, и добавьте к диву нужный псевдоэлемент.

Худший ответ:
https://codepen.io/topicstarter/pen/wbWKxm так ?
Вопрос: Как настроить ssl сертификат для https?

Лучший ответ:
прочитать документацию до конца.

Худший ответ:
Добавить корневой от LE в хранилище корневых, естественно. Странно, конечно что его там нет. Либо, если корневой есть, а нет промежуточного (что бывает) - добавить промежуточный.
Вопрос: Не хватает опыта, что делать?

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

Худший ответ:
Отсутствие ментора не обуславливает остуствия желаемой работы.
Ищите команду и side projects. Для этого не обязательно расставаться с существующей работой.
Просто поставьте себе цель и идите к ней. Можно медленно, можно быстро, - но идите. А для этого нужно действовать. Пассивно размещенное резюме особого толка не даст. Помните, что сейчас ажиотаж на рынке удалённого IT в пласте джуниоров.

P.S. А ещё маленький лайфак - почему бы при оформлении подобных вопросов на подобных ресурсах не оставлять в профиле контакты? ;)
Вопрос: Как увеличить количество запросов в секунду Laravel (PHP)?

Лучший ответ:
1) отключить дебаг на продакшене, сильно тормозит, проверено
2) включить OpCacher, кеширование опкодов увеличивает быстродействие
3) сделать профилирование, определить узкие места кода. Как правило это запросы... По оптимизации и профилировании запросов есть много информации в интернете. Большинство людей во фреймворках  используют ОРМ. Надо помнить, что ОРМ как правило делает НЕ оптимальные запросы.
4) Может стоит какие-то данные закешировать или вычислить при старте фреймворка.
5) если проблема в вычислениях, то часть кода вынести в отдельный микросервис и написать его на чем-то более быстром, например golang. Это выносится на отдельный url ( роутер) и разруливается nginx location. Это уже крайняк...
6) Могут быть проблемы в самой архитектуре приложения, может что-то стоит вынести в отдельные части (воркеры) и подтягивать AJAX или WebSocket уже после загрузки страницы: по запросу запускаем подзадачу, которая по готовности оповестит страницу и та уже  вытянет оставшиеся данные .  

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

Худший ответ:
А очереди к диску? К сети? А вообще нужно найти долгие запросы: https://pgcookbook.ru/article/slow_queries_search.html и проанализировать план их выполнения с помощью чего-нибудь типа https://explain.tensor.ru/
Вопрос: Может ли Google блокировать запросы из-за их большого кол-ва (Парсер на Python)?

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

Худший ответ:
Да, может
Вопрос: Как разместить 2 сайта на двух серверах с одним белым ip адресом?

Лучший ответ:
нжинкс должен стоять в точке разделения трафика. На роутере нет возможности поставить и настроить нжинкс?
Если нет - роутер пробрасывает весь трафик 80 и 443 на первый сервер, на первом сервере стоит нжинкс\хапрокси, который уже разделяет трафик по доменам и отправляет часть на второй.

Худший ответ:
В такой конфигурации только с помощью reverse proxy на nginx на первом сервере, который будет перебрасывать запросы для определенного домена на второй сервер.
Вопрос: Есть ли программисты, которые будучи джуниорами могли нормально думать только ночью, а потом смогли и днем?

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

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

Лучший ответ:
Бэкапов и снимков VSS нет
Боюсь, на этом всё.

Худший ответ:

Сменить пол, переехать в Мексику
Вопрос: Как сделать движение существа к еде?

Лучший ответ:
Вероятно, игра перерисовывается кадр за кадром?
Когда существо почуяло близкий холодильник, надо обновлять его координаты, на чуть более близкие к координатам холодильника:x = x + k * (xTarget - x);
y = y + k * (yTarget - y);В этом ответе подробнее: Какой алгоритм подойдет для описания полета насекомого?

jsFiddle, демонстрирующий такую «погоню» за целями.

Худший ответ:
Для начала надо решить - будет ли существо обладать инерцией, или оно движется в сильно вязкой среде.

Для вязкой среды всё просто:
вычисляем вектор до еды: { X_еды-X_существа, Y_еды-Y_существа }
вычисляем длину этого вектора по теореме Пифагора;
если длина вектора больше, чем шаг_существа - делим каждую компоненту этого вектора на его длину и умножаем на размер_шага_существа (иногда шаг_существа вычисляется по количеству времени после прошлой итерации);
а если длина вектора меньше, чем шаг_существа - то оставляем вектор как есть;
прибавляем к координатам_существа модифицированный (или не модифицированный) вектор.

С инерцией всё сложно, т.к. ускорение существа обычно сильно зависит от направления и скорости. Характер движения - зависит от того, какой у существа нрав.
Например, существо может ускоряться в сторону еды, когда еда далеко, и тормозить, когда еда близко.
А бывает так, что для поворота - существо должно остановиться, развернуться и потом бежать к еде.

Ну и понятно, что если существо бежит к еде на максимальной скорости - то оно ускориться сильнее уже не может.
Вопрос: Как лучше осуществить работу с удалённой базой данных на Android?

Лучший ответ:
API, API и еще раз API. И не забыть про безопасность (токены, все такое)

Худший ответ:
API, API и еще раз API. И не забыть про безопасность (токены, все такое)
Вопрос: Насколько плохо с жёстким диском?

Лучший ответ:
Насколько плохо с жёстким диском?Непонятно.
Критичные параметры в норме, но некоторые параметры намекают на проблемы
Поэтому -
1)Обратите внимание на вибрацию или удары - датчик ударов показывает приличное значение.
Возможно системник пинают ногами, может он стоит рядом с оборудованием создающим вибрацию.
В общем не стоит делать отбивные на том же столе, на котором стоит системник.
2)Обратите внимание на кабель -  CRC ошибки часто указывают на проблемы с кабелем, хотя могут быть следствием вибраций.
3)Обратите внимание на питание- нестабильное питание может давать множество ошибок чтения.
В вашем случае скорее всего жесткая вибрация присутствует и дает весь спектр проблем.
Устраните и посмотрите будут ли менятся счетчики.

Худший ответ:
Оцениваем состояние жёстких дисков при помощи S.M.A.R.T.
https://www.ixbt.com/storage/hdd-smart-testing.shtml
Вопрос: Как перенести самописный движок на вордпресс?

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

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

Лучший ответ:
А по-простому "закрыть" родительские функции отдельным паролем/пинкодом - это разве не метод?

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

P.S. Почему вы не хотите, чтобы ребенок мог посмотреть свою статистику?
Вопрос: Как создать свой вариант конструктора Date?

Лучший ответ:
Знатно накосячил из-за невнимательности. 
тоже верные варианты))
Тут такое дело, встроеная Date не является классом как таковым, поэтому все неверные варианты убрал под спойлер

Был не прав, варианты рабочие)))
class ServerDate extends Date {
    construcror(...args) {
        super(...args);
        if (args.length === 0) {
            // если аргументов конструктора нет то получаем время от сервера
            fetch("url роутера на сервере отдающего время в миллисекундах")
                .then((response) => {
                    return response.json();
                })
                .then((data) => {
                    this.setTime(data.time)
                })

        }
    }
}

const date = new ServerDate();

!!!!!  возможно будет ругаться на super(...args);. Если да, то можно попробовать сделать так
class ServerDate extends Date {
    construcror(...args) {
        // super(...args);
        if (args.length) {
            this.setTime(Date.now());

        }else{
            // если аргументов конструктора нет то получаем время от сервера
            fetch("url роутера на сервере отдающего время в миллисекундах")
                .then((response) => {
                    return response.json();
                })
                .then((data) => {
                    this.setTime(data.time)
                })            
        }
    }
}

const date = new ServerDate();

console.log(date)



Верный вариант мы с вами сейчас сделаем в комментариях.

Но сразу предупреждаю, это откровенный костыль, не делайте так)))
!!!!!  Кроме того, такие функции как Date.now() и ей подобные по прежнему будут работать со временем клиента
!!!!! А так же до тех пор пока идет запрос к серверу, дата полученная этим способом const date = new ServerDate(); будет содержать время клиента

Худший ответ:
Так?
snippet
Вопрос: Почему браузер блокирует сайт и как это исправить?

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

Худший ответ:
Зарегистрируйтесь в вебмастере гугла и там будет кнопка отправки сайта на перепроверку
Если скриптов нет, то перепроверят достаточно быстро и сообщение исчезнет
Вопрос: Как сделать свой интернет?

Лучший ответ:
1) Регистрируете ASN
2) Покупаете блоки IP адресов
3) Покупаете оборудование
4) Подключаетесь к другим провайдерам
5) Ловите привет от ФСБ и тратите ещё 2 стоимости предыдущих этапов на сорм
6) Ловите второй привет от РКН и тратите ещё 5 стоимостей предыщих этапов на пакет яровой.
А так фигня полная

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

Лучший ответ:
OpenVPN management
Для ленивых есть даже вебмордочки.

Худший ответ:
Я наткнулся на канал "Ratijas and MAC-J studio" , там был туториал, я все сделал.
Туториал про openvpn - первая запись. Зайдите сюда : https://t-do.ru/ratijas_life и посмотрите первую запись
Вопрос: Как открыть localhost на другом компьютере в той же сети?

Лучший ответ:
тут всё зависит от Вашей конфигурации. В целом это выглядит примерно так:
• Узнать локальный ip адрес своей машины, на которой разрабатываете. В случае с виндовс - командная строка -> ввести ipconfig --> смотреть ipv4
• Запустить сервер разработки не на localhost а на ip адресе который узнаете. (Машины на которой разрабатываете)
• На другом устройстве(вашем макбуке) просто вводите вместо localhost ip адрес где запустили сервер
• Не получилось? Пойти в настройки своего роутера и пробросить этот ipшник(на разных роутерах это по разному. Возможно потребуется перезагрузить роутер и переподключиться к wi-fi)
• В крайних случаях может потребоваться отключить Брандмауер виндовс на время теста

Худший ответ:
Ваш IP 192.168.1.5
IP другого 192.168.1.6

По IP в браузере не получается? 
192.168.1.5
http://192.168.1.5:80