Доказать отсутствие чего-то обратного принципиально невозможно. Например, невозможно доказать, что олени не умеют летать.
Так же и нельзя доказать, что вымершая высокоразвитая цивилизация должна была оставить за собой мусор, а не утилизировала все на 100%.
Но все же. Если мы говорим про резкое уничтожение цивилизации, то начинается:
Космический мусор — он должен кружиться тысячами лет, в зависимости от орбиты. Посмотрите как мы за 50 лет успели загрязнить космос. Но что-то до 50-х вращающегося вокруг Земли искуственного мусора особо не найдено. Куда он делся? Либо они были оооочень давно, либо не были космической державой. И ладно мусор на орбите, мусор на Луне?
Мост Золотые Ворота весит 894 500 т. И такую массу железа в одном из заливов никто бы до сих пор не нашел? Особенно в Европе, где все копано-перекопано. Они не строили подобных металлических конструкций?
За последние 200 лет мы выработали огромные запасы металла, угля, урана и всего полезного на Земле, при этом не было обнаружено ни одной древней шахты и даже намека на нее. У них не было шахт? И почему они оставили нетронутыми тот же кузбас и прочие открытые залежи, выходящие на поверхность?
Т.е. пока все выглядит так, как общество с тех процессом, включающим в себя каменный топор, вдруг неожиданно открыло синтез атомов и каким-то чудом научилось обогощать уран. Ну может быть, кто знает.
В мусорках/свалках/просто в лесу в земле, если копать, не сложно найти артефакты прошлого века, даже позапрошлого находят.
Стекло то же, ничего с ним за сотни и тысячи лет не происходит. Просто оно обычно слегка мешает людям, его убирают, но тем не менее.
А кирпичи, бетонные плиты, мраморные сооружения?
Но даже если все все утилизировать и перерабатывать — здания даже если обрушатся, от них останутся достаточно значимые и долгое время видимые последствия. Ну а про тоннели, мосты (которые у развитой цивилизации после обрушения должны оставить следы на морском дне), станции метро, да и вообще терраформирование я молчу. Следы развитой цивилизации, способной проделать ход в скале, найти не сложно.
А всякие захоронения? А вот вертолеты/танки/машины, которых затянуло в болото? А танкеры/эсминцы/прочие корабли и самолеты на морском дне? Да, что-то, существовавшее миллион лет назад уже сложнее найти, но 20 тысяч лет — спокойно.
а много ли вы видели пивных банок 40х годов 20 века
Ага, если бы пивные банки в городе с 40х городов никто не убирал, город был бы мягко говоря слегка грязным.
Что там грибы эти разрушают и кому мешают жить — непонятно…
Справедливости ради, даже на этой странице wiki видно, кого эти грибы разрушают и кому они мешают жить. И, как по мне, ржавчина даже менее непривлекательная, чем эти грибы.
О боже. Такого невероятного натягивания совы на глобус я еще не видел. Начиная от того, что производство и установка Александровской колонны прекрасно задокументированна и даже есть двигающаяся модель того как это делали в Питере, заканчивая тем, что я прям сейчас из окна вижу сотни зданий, которые старше 300-т лет. Круглое озеро — воронка от водородного взрыва, не иначе. Каньон — бывшая горнодобывающая промышленность древних, не иначе. А все артефакты предыдущей цивилизации, владевшей водородными бомбами, разобрали алкаши на драгоценные металлы. Просто невероятно.
Вообще реализация подразумевает, что она не имеет доступа к вашей биометрии. Она запрашивает у системы некий айди/ключ. Ключ генерируется и хранится внутри отдельного чипа (яблоки его называют T2 если я не ошибаюсь). Собственно этот отдельный чип и определяет лицо, по нему отдает ключ. Софтварно или на улице сфортографировать и достать этот ключ не получится. При правильной реализации.
Ужасная конструкция с нулевой читаемостью. Я даже не буду придираться что совместную кратность можно было проверить как-то как i % (3 * 5), но вложенные if-else читать невозможно и стоит использовать continue.
Ну а вообще, в языках, откуда эта задачка, видимо, пришла — обычно есть printLn, и тогда первое условие нужно выкинуть вообще, потому что в случае совместной кратности будет fizz и buzz будут выведены на одну и ту же строку и без этого. Я так предполагаю, изначально это и проверялось — догадается ли кандидат до такого поведения, потому что задача, которая просит от тебя написать три условия — ну это не знаю, вступительная задача для пятого класса или типа того.
Вот код, который позволяет решить палиндром.
5 копий строки ради задачи, которая решается всего с одной дополнительной переменной. Браво. (Хорошо, к нижнему регистру приводить нужно все равно).
Второй шаг — реверс строки. Это сделать несложно: необходимо преобразовать ее в массив посредством метода .split() (библиотека String). Потом мы переворачиваем массив, используя .reverse() (библиотека Array). Последний этап — преобразование обратного массива в строку при помощи .join() (библиотека Array).
Первый раз слышу, чтобы в js кто-то Array и String называл библиотеками, а не встроенными типами, ну да ладно.
Если вместо этого вы используете рекурсию, это может понравиться интервьюеру и дать вам несколько дополнительных очков.
Всегда думал, что рекурсивное решение является "стандартным" и все всегда просят переписать на цикл (без использования массива. Я начинаю понимать почему весь веб тормозит), заодно спрашивают чем решение с рекурсией плохое.
Вообще либо я сильно переоцениваю уровень, для которого эти задачи сделаны, либо каждая задача содержит некие подводные камни, которые в статье не разобраны. Например, фибоначи часто реализуют через рекурсию, как самое очевидное решение. Но оказывается, что js (и много кто) не умеет в хвостовую рекурсию и на больших числах падает с переполнением стека.
На полиндром можно было бы просить проверить строку, заведомо большую, что даже вторая ее копия не влезет в память, а FizzBuzz — можно ли сократить количество условий.
Не гуглится модель и производитель, написанные на нем. Точнее гуглится — какая-то китайская фирма, производящая корабли. У них на сайте бытовую технику не нашел, может нужно выходить в конкретное подразделение, но это уменьшает шансы найти спецификацию до отрицательных.
В счлучае квартиры не всегда актуально (батареи всю зиму на минимуме, тепло сохраняется, но бывают и криворукие строители), в случае дома — я бы лучше о теплоизоляции позаботился, оно и летом лучше.
Будучи киприотом, смею с вами не согласиться. (А еще ирландцы не согласятся, португальцы, американцы и половина мира, у которых нет центрального отопления). Когда зимой на улице 5 градусов, изоляция не сильно поможет, дом все равно охладится, а электричество дорогое, чтобы кондей гонять круглыми сутками (вообще в режиме поддержания температуры все должно быть ок, но лично на моей практике кондиционеры дуют что есть силы круглый день), отапливать деревом или углем не вариант, а газ требует постоянного наблюдения и нельзя его оставлять включенным когда никого нет дома (а еще чтобы не угореть, после него нужно открывать окна. Л-Логика).
Летом, к слову, на том же Кипре обратная проблема. И в данном случае я готов пойти на риск мистического отказа Xiaomi от одного из прибыльных направлений.
Но не пошел, потому что квартиру снимаю, кондиционеры менять не могу, а штатные даже не гуглятся, и заснифать их сигнал универсальными пультами не выходит, а осцилограффа разобраться где они накосячили в протоколе у меня нет.
Ну или вот кейс, после которого я задумался о возможности получить состояние микроклимата в квартире из любой точки мира (и повлиять на него) — уехал тут на неделю в командировку, вернулся — все стены в плесени. Знал бы что влажность без меня поднялась до 90% — позвонил бы знакомым, попросил хотя бы проветрить помещение.
P.S. Но я согласен, что при выходе компании из бизнеса или банально отключении интернета, дом может потупеть, но должен оставаться работоспособным. Если кондиционер без вайфая не включается — это уже критинизм.
Был когда-то yeoman, сейчас фронт делается в основном через react-create-app с нужным шаблоном. Есть хороший бойлерплейт, который покрывает реакт + GraphQL + SSR. Но вот чтобы сразу с бэкэндом — видимо, не настолько актуально
В таком случае, большинство современных решений вполне так автономны, и не ломаются при отключении хаба от интернета (филипс, ксяоми, икея).
Но тут есть много но:
Этот хаб нужно еще иметь
Супер раздражает неподдержка одними хабами устройств других производителей. В итоге нужно либо строить гомогенную систему, либо обвеситься хабами, а поверх накинуть еще raspberry pi с каким-нибудь openHub
Если при покупке чайника, скажем, бош, он захочет еще и свой хаб, чтобы работать автономно/удаленно, этот чайник приобретен не будет. Как следствие, у этого чайника и выбора больше нет, кроме как общаться через сервер, в том числе китайский.
В идеале конечно иметь единый хаб, да и еще встроенный в роутер, но пока для этого нужно реверсить zigbee каждой отдельной лампочки, в обычные дома такое придет не скоро. А объединение стандартов не очень то и ожидается, почему-то.
Зачем тогда вообще чайник греть? Есть же проточные, они всегда будут с горячей водой.
А если серьезно, то есть сценарии, когда умному дому нужен доступ к вашей позиции и прочим интернетам.
Более того, видимо, я вкладываю совершенно другое понятие в термин "умный дом". Помимо эргономики и прочих вещей, никак не связанных с электроникой (я никогда не назову умный дом, если в нем случайным образом раскиданы вещи и ночью пройти от кровати до туалета чтобы не расшибить себе бок об угол стола нельзя, так же как и не будет умным дом, в котором рабочее место освещено теплым светом да из одного источника света, что создает резкие тени и вредно для письма/пайки/рисования и практически всех хобби, или, например, спальня наоборот освещена холодным светом, что никак не помогает подготовиться ко сну, в общем суть вы поняли), для меня умным домом является тот, который принимает решение исходя из всей доступной ему информации, и этой информации должно быть довольно много. Если же вы просто можете включать лампочку с мобильного телефона или даже голосом — это не умный дом. В лучшем случае, автоматизированный, однако для меня перенос выключателя со стены в телефон не изменяет сумму. Это как был выключатель, так и остался. Даже датчики движения и включения чайника при подключении к вайфай — это автоматизация.
А вот убедиться что ты в отпуске/другой стране и не жечь впустую энергию отапливая дом — это уже замашки на умность. Выбирать режим обогрева/увлажнения/очищения/чего бы там ни было в зависимости от твоего положения и погоды на улице — вполне умный дом. Например, дом, который включит обогрев за час до моего прибытия домой, или дом, который знает, тчо на улице -20 и потом нагреть квартиру будет сложно, лучше поддерживать температуру — тоже умный. В таких сценариях помимо знания моих намерений, ему еще нужно знать внешнюю температуру, так что нужно либо ставить свою метеостанцию наружу, либо ходить в интернет.
Хотя должен признаться, что таких сценариев мало, большая часть из них вообще нереализуема (потому что знать мои намерения техника пока не умеет), другая часть больше сложностей создает когда у тебя гости дома, так что в настоящий момент речь идет только об автоматизации. Ну а кроме управления голосом, большинство задач автоматизации можно решить локально.
Хотя вот опять же. Допустим, я хочу знать когда кто-то открыл входную дверь — как мне отправить пуш себе на телефон без интернета? (Ах да, СМС...)
Да, есть такое, но это все не IoT, да и эти ваши игрушки "губят психику детей" (с), их вообще запретить. Заодно боли с задержками не будет. VOIP должны держать сервера внутри, наверное, их то как раз и хотят срезать в первую очередь, так что для них задержка в данный момент наименьшее из зол.
Единственное, чем чайник может быть умным, так это включаться когда вы в 2 минутах ходьбы от дома, (ну еще он может оптимальным образом разогревать воду, но это так себе). Ну или в 2 минутах до будильника.
Как вы это сделаете в автономном доме?
Или слушающий наружу домашний сервер с openHub и вебхук в IFTTT все еще считается автономным?
Речь не про лампочку в туалете, а про городскую инфраструктуру, транспорт, заводы, логистику, автономные транспортные средства и все вот это.
Конечно можно возразить, что городу, чтобы понять нужно ли включать освещение или нет, не нужно ходить за свои же пределы, но проблема в том, что ныне мир такой, в котором основные локомотивы индустрии видят способ как получить прибыль c IoT именно через облака, а поэтому и лезут из кожи вон лишь бы засунуть вас в Azure (см Azure Sphere. Операционка от майкрософта на линуксе, смешно), или AWS IoT.
Опять же, мониторить в реальном времени миллионы IoT устройств (опять же лампочки в туалете, а, например, посылки и груз) — свою инфраструктуру для этого еще и построить нужно, поэтому многие предпочтут именно облака.
Но в чем-то я согласен — автономно движущиеся аппараты должны решать задачу управления локально, задержка в сети даже при идеальных условиях в одном конкретном пакете может оказаться слишком большой, в этом вопросе нельзя полагаться на столь ненадежный параметр. Всякие энергосети являются критической системой, их крутить на облаках не разумно. А для всего остального такая уж реалтаймовость не понятно зачем нужна, тот же GPS не чаще раза в секунду обновляется, так что 50мс у вас пинг или 500мс для посылки не играет роли.
Одно из важнейших отличий headless браузеров от обычных браузеров – это скорость их работы. Дело в том, что, когда вы загружаете страницу в браузере без GUI, ему не нужно тратить время на загрузку CSS, JavaScript и рендеринг HTML.
С чего вдруг? Если вам не нужно загружать css, javascript и рендерить html — вам вообще не нужен браузер для тестов. Хедлесс браузеры все прекрасно рендерят. Если попробовать "кликнуть" кнопку, перекрытую каким-то элементом сверху, кнопка не кликнется. И js ровно так же будет выполняться.
Отсюда
Случаи, когда вам не захочется использовать Headless браузер
Конечно же, бывают случаи, когда вам может захотеться использовать полноценный браузер, вместо headless браузера. Например:
Вам нужно имитировать реальных пользователей;
Вам нужно видеть, как отрабатывает тест;
Если вам нужно проводить дебаг, это может быть сложно с headless браузером.
Неправда. Реальных пользователей имитировать очень просто, в том то и преимущество headless браузеров, что они работают как обычные, но не требуют графической оболочки, а тесты можно писать в виде "кликни эту кнопку, вбей этот текст сюда". Более того, часть библиотек для тестирования позволяют записать свое поведение и потом воспроизводить его.
Увидеть как работает тест можно а: сделав скриншоты и сохранив их в папку в ключевые момеенты, б: запустить тест в обычном браузере (опять же, в большинстве библиотек для тестов, в том же cypress, для этого нужно только один флаг поменять).
С дебагом никаких проблем нет, покуда существует remote debug protocol, с ним все прекрасно дебажится (сборку иногда геморно настраивать для фронта).
Другое преимущество headless браузеров заключается в их способности собирать данные с веб-сайтов. Чтобы это сделать, вам не придется вручную запускать браузер. Вы можете использовать headless технологию, чтобы просто скрапить HTML. И рендерить весь браузер совершенно не обязательно.
И хедлес браузер тоже использовать не обязательно, через curl HTML можно забрать.
До пункта "Популярные Headless браузеры" я был уверен, что автор путает понятие HTML движка (который строит DOM-дерево и позволяет быстро искать в нем, к примеру, селекеторами jQuery, например jsdom ), но в итоге статья представляет из себя бесполезную и неправдивую приписку к рекламе курса.
Еще один вариант использования headless браузера – это мониторинг производительности сетевых приложений.
Вот опять же, либо речь идет о производительности фронта, либо зачем вам браузер, чтобы тестировать производительность бэка?
Ага, они indexOf найти в документации не смогли, судя по всему, но зато с бумажкой эффективно решили проблему!
Хотя странно выглядит эта статья. Вроде как код того же Chrome довольно таки хорош и красив, хотя судя по статье сложилось впечатление, будто бы его писало три миллиона джунов с бумажками на псевдокоде.
Какими бы словами там не кидались про слабый или сильный ИИ, беспилотный автомобиль не более чем классическая (пусть и значительно усложненная) система автоматического управления. По большому счету, речь идет о решении задачи оптимального управления, которая сводится к поиску управления, дающего минимум заданного критерия.
Таким образом, говорить о морали машины тоже самое что говорить о морали операции суммы или типа того. "Вот эта сумма просто аморальна!".
Конечно условно можно считать, что мораль задается через этот самый критерий. Например для посадки самолета я бы брал штрафные очки у критерия примерно так:
выезд за ВПП — 10
вероятность повреждения ЛА — 100
вероятность травмы пассажира — 1000
вероятность смерти пассажира/пассажиров — 10 000
въезд в терминал — 100 000
Соответственно, алгоритм никаких там моральных задач решать не будет, все что он сделает — попытается набить минимум "очков".
Но есть большое НО — сложность критерия значительно влияет на возможность эту траекторию просчитать. Иными словами, критерий из серии "если там стоит человек, но он без трости, но ему на вид 50 лет" — да машина с места с такими критериями не сдвинется, пока все просчитает. Результатом будет являеться что-то типа поля запрещенных областей — по аналогии с аэропортом, места, при въезде в которые будут начисляться штрафные баллы.
Хотел бы я посмотреть на то, как начисляются разные штрафные баллы в соответствии с возрастом, полом, расой или родом деятельности человека, в современном мире толерантности.
Так что, на мой взгляд, калькулятор на колесах не может быть моральным либо аморальным, а всегда будет до последнего поступать совершенным с точки зрения математики образом.
P.S. Это если научатся решать уравнение Беллмана или иной строгий способ решения задачи. Пока же машина действует статистически оптимально, но за три сигмы вылететь есть шанс у всех.
Давайте по-очереди.
Доказать отсутствие чего-то обратного принципиально невозможно. Например, невозможно доказать, что олени не умеют летать.
Так же и нельзя доказать, что вымершая высокоразвитая цивилизация должна была оставить за собой мусор, а не утилизировала все на 100%.
Но все же. Если мы говорим про резкое уничтожение цивилизации, то начинается:
Космический мусор — он должен кружиться тысячами лет, в зависимости от орбиты. Посмотрите как мы за 50 лет успели загрязнить космос. Но что-то до 50-х вращающегося вокруг Земли искуственного мусора особо не найдено. Куда он делся? Либо они были оооочень давно, либо не были космической державой. И ладно мусор на орбите, мусор на Луне?
Мост Золотые Ворота весит 894 500 т. И такую массу железа в одном из заливов никто бы до сих пор не нашел? Особенно в Европе, где все копано-перекопано. Они не строили подобных металлических конструкций?
За последние 200 лет мы выработали огромные запасы металла, угля, урана и всего полезного на Земле, при этом не было обнаружено ни одной древней шахты и даже намека на нее. У них не было шахт? И почему они оставили нетронутыми тот же кузбас и прочие открытые залежи, выходящие на поверхность?
Т.е. пока все выглядит так, как общество с тех процессом, включающим в себя каменный топор, вдруг неожиданно открыло синтез атомов и каким-то чудом научилось обогощать уран. Ну может быть, кто знает.
В мусорках/свалках/просто в лесу в земле, если копать, не сложно найти артефакты прошлого века, даже позапрошлого находят.
Стекло то же, ничего с ним за сотни и тысячи лет не происходит. Просто оно обычно слегка мешает людям, его убирают, но тем не менее.
А кирпичи, бетонные плиты, мраморные сооружения?
Но даже если все все утилизировать и перерабатывать — здания даже если обрушатся, от них останутся достаточно значимые и долгое время видимые последствия. Ну а про тоннели, мосты (которые у развитой цивилизации после обрушения должны оставить следы на морском дне), станции метро, да и вообще терраформирование я молчу. Следы развитой цивилизации, способной проделать ход в скале, найти не сложно.
А всякие захоронения? А вот вертолеты/танки/машины, которых затянуло в болото? А танкеры/эсминцы/прочие корабли и самолеты на морском дне? Да, что-то, существовавшее миллион лет назад уже сложнее найти, но 20 тысяч лет — спокойно.
Ага, если бы пивные банки в городе с 40х городов никто не убирал, город был бы мягко говоря слегка грязным.
Справедливости ради, даже на этой странице wiki видно, кого эти грибы разрушают и кому они мешают жить. И, как по мне, ржавчина даже менее непривлекательная, чем эти грибы.
О боже. Такого невероятного натягивания совы на глобус я еще не видел. Начиная от того, что производство и установка Александровской колонны прекрасно задокументированна и даже есть двигающаяся модель того как это делали в Питере, заканчивая тем, что я прям сейчас из окна вижу сотни зданий, которые старше 300-т лет. Круглое озеро — воронка от водородного взрыва, не иначе. Каньон — бывшая горнодобывающая промышленность древних, не иначе. А все артефакты предыдущей цивилизации, владевшей водородными бомбами, разобрали алкаши на драгоценные металлы. Просто невероятно.
Точнее проверить как оно не работает?
Вообще реализация подразумевает, что она не имеет доступа к вашей биометрии. Она запрашивает у системы некий айди/ключ. Ключ генерируется и хранится внутри отдельного чипа (яблоки его называют T2 если я не ошибаюсь). Собственно этот отдельный чип и определяет лицо, по нему отдает ключ. Софтварно или на улице сфортографировать и достать этот ключ не получится. При правильной реализации.
Такую цифру 5 и я бы распознал как что угодно, но не цифру 5.
Ужасная конструкция с нулевой читаемостью. Я даже не буду придираться что совместную кратность можно было проверить как-то как i % (3 * 5), но вложенные if-else читать невозможно и стоит использовать continue.
Ну а вообще, в языках, откуда эта задачка, видимо, пришла — обычно есть printLn, и тогда первое условие нужно выкинуть вообще, потому что в случае совместной кратности будет fizz и buzz будут выведены на одну и ту же строку и без этого. Я так предполагаю, изначально это и проверялось — догадается ли кандидат до такого поведения, потому что задача, которая просит от тебя написать три условия — ну это не знаю, вступительная задача для пятого класса или типа того.
5 копий строки ради задачи, которая решается всего с одной дополнительной переменной. Браво. (Хорошо, к нижнему регистру приводить нужно все равно).
Первый раз слышу, чтобы в js кто-то Array и String называл библиотеками, а не встроенными типами, ну да ладно.
Всегда думал, что рекурсивное решение является "стандартным" и все всегда просят переписать на цикл (без использования массива. Я начинаю понимать почему весь веб тормозит), заодно спрашивают чем решение с рекурсией плохое.
Вообще либо я сильно переоцениваю уровень, для которого эти задачи сделаны, либо каждая задача содержит некие подводные камни, которые в статье не разобраны. Например, фибоначи часто реализуют через рекурсию, как самое очевидное решение. Но оказывается, что js (и много кто) не умеет в хвостовую рекурсию и на больших числах падает с переполнением стека.
На полиндром можно было бы просить проверить строку, заведомо большую, что даже вторая ее копия не влезет в память, а FizzBuzz — можно ли сократить количество условий.
Не гуглится модель и производитель, написанные на нем. Точнее гуглится — какая-то китайская фирма, производящая корабли. У них на сайте бытовую технику не нашел, может нужно выходить в конкретное подразделение, но это уменьшает шансы найти спецификацию до отрицательных.
Будучи киприотом, смею с вами не согласиться. (А еще ирландцы не согласятся, португальцы, американцы и половина мира, у которых нет центрального отопления). Когда зимой на улице 5 градусов, изоляция не сильно поможет, дом все равно охладится, а электричество дорогое, чтобы кондей гонять круглыми сутками (вообще в режиме поддержания температуры все должно быть ок, но лично на моей практике кондиционеры дуют что есть силы круглый день), отапливать деревом или углем не вариант, а газ требует постоянного наблюдения и нельзя его оставлять включенным когда никого нет дома (а еще чтобы не угореть, после него нужно открывать окна. Л-Логика).
Летом, к слову, на том же Кипре обратная проблема. И в данном случае я готов пойти на риск мистического отказа Xiaomi от одного из прибыльных направлений.
Но не пошел, потому что квартиру снимаю, кондиционеры менять не могу, а штатные даже не гуглятся, и заснифать их сигнал универсальными пультами не выходит, а осцилограффа разобраться где они накосячили в протоколе у меня нет.
Ну или вот кейс, после которого я задумался о возможности получить состояние микроклимата в квартире из любой точки мира (и повлиять на него) — уехал тут на неделю в командировку, вернулся — все стены в плесени. Знал бы что влажность без меня поднялась до 90% — позвонил бы знакомым, попросил хотя бы проветрить помещение.
P.S. Но я согласен, что при выходе компании из бизнеса или банально отключении интернета, дом может потупеть, но должен оставаться работоспособным. Если кондиционер без вайфая не включается — это уже критинизм.
Был когда-то yeoman, сейчас фронт делается в основном через react-create-app с нужным шаблоном. Есть хороший бойлерплейт, который покрывает реакт + GraphQL + SSR. Но вот чтобы сразу с бэкэндом — видимо, не настолько актуально
В таком случае, большинство современных решений вполне так автономны, и не ломаются при отключении хаба от интернета (филипс, ксяоми, икея).
Но тут есть много но:
В идеале конечно иметь единый хаб, да и еще встроенный в роутер, но пока для этого нужно реверсить zigbee каждой отдельной лампочки, в обычные дома такое придет не скоро. А объединение стандартов не очень то и ожидается, почему-то.
Я что-то пропустил или они и peer-2-peer внутри страны тоже через DPI собрались гонять?
Зачем тогда вообще чайник греть? Есть же проточные, они всегда будут с горячей водой.
А если серьезно, то есть сценарии, когда умному дому нужен доступ к вашей позиции и прочим интернетам.
Более того, видимо, я вкладываю совершенно другое понятие в термин "умный дом". Помимо эргономики и прочих вещей, никак не связанных с электроникой (я никогда не назову умный дом, если в нем случайным образом раскиданы вещи и ночью пройти от кровати до туалета чтобы не расшибить себе бок об угол стола нельзя, так же как и не будет умным дом, в котором рабочее место освещено теплым светом да из одного источника света, что создает резкие тени и вредно для письма/пайки/рисования и практически всех хобби, или, например, спальня наоборот освещена холодным светом, что никак не помогает подготовиться ко сну, в общем суть вы поняли), для меня умным домом является тот, который принимает решение исходя из всей доступной ему информации, и этой информации должно быть довольно много. Если же вы просто можете включать лампочку с мобильного телефона или даже голосом — это не умный дом. В лучшем случае, автоматизированный, однако для меня перенос выключателя со стены в телефон не изменяет сумму. Это как был выключатель, так и остался. Даже датчики движения и включения чайника при подключении к вайфай — это автоматизация.
А вот убедиться что ты в отпуске/другой стране и не жечь впустую энергию отапливая дом — это уже замашки на умность. Выбирать режим обогрева/увлажнения/очищения/чего бы там ни было в зависимости от твоего положения и погоды на улице — вполне умный дом. Например, дом, который включит обогрев за час до моего прибытия домой, или дом, который знает, тчо на улице -20 и потом нагреть квартиру будет сложно, лучше поддерживать температуру — тоже умный. В таких сценариях помимо знания моих намерений, ему еще нужно знать внешнюю температуру, так что нужно либо ставить свою метеостанцию наружу, либо ходить в интернет.
Хотя должен признаться, что таких сценариев мало, большая часть из них вообще нереализуема (потому что знать мои намерения техника пока не умеет), другая часть больше сложностей создает когда у тебя гости дома, так что в настоящий момент речь идет только об автоматизации. Ну а кроме управления голосом, большинство задач автоматизации можно решить локально.
Хотя вот опять же. Допустим, я хочу знать когда кто-то открыл входную дверь — как мне отправить пуш себе на телефон без интернета? (Ах да, СМС...)
Да, есть такое, но это все не IoT, да и эти ваши игрушки "губят психику детей" (с), их вообще запретить. Заодно боли с задержками не будет. VOIP должны держать сервера внутри, наверное, их то как раз и хотят срезать в первую очередь, так что для них задержка в данный момент наименьшее из зол.
Единственное, чем чайник может быть умным, так это включаться когда вы в 2 минутах ходьбы от дома, (ну еще он может оптимальным образом разогревать воду, но это так себе). Ну или в 2 минутах до будильника.
Как вы это сделаете в автономном доме?
Или слушающий наружу домашний сервер с openHub и вебхук в IFTTT все еще считается автономным?
Речь не про лампочку в туалете, а про городскую инфраструктуру, транспорт, заводы, логистику, автономные транспортные средства и все вот это.
Конечно можно возразить, что городу, чтобы понять нужно ли включать освещение или нет, не нужно ходить за свои же пределы, но проблема в том, что ныне мир такой, в котором основные локомотивы индустрии видят способ как получить прибыль c IoT именно через облака, а поэтому и лезут из кожи вон лишь бы засунуть вас в Azure (см Azure Sphere. Операционка от майкрософта на линуксе, смешно), или AWS IoT.
Опять же, мониторить в реальном времени миллионы IoT устройств (опять же лампочки в туалете, а, например, посылки и груз) — свою инфраструктуру для этого еще и построить нужно, поэтому многие предпочтут именно облака.
Но в чем-то я согласен — автономно движущиеся аппараты должны решать задачу управления локально, задержка в сети даже при идеальных условиях в одном конкретном пакете может оказаться слишком большой, в этом вопросе нельзя полагаться на столь ненадежный параметр. Всякие энергосети являются критической системой, их крутить на облаках не разумно. А для всего остального такая уж реалтаймовость не понятно зачем нужна, тот же GPS не чаще раза в секунду обновляется, так что 50мс у вас пинг или 500мс для посылки не играет роли.
С чего вдруг? Если вам не нужно загружать css, javascript и рендерить html — вам вообще не нужен браузер для тестов. Хедлесс браузеры все прекрасно рендерят. Если попробовать "кликнуть" кнопку, перекрытую каким-то элементом сверху, кнопка не кликнется. И js ровно так же будет выполняться.
Отсюда
Неправда. Реальных пользователей имитировать очень просто, в том то и преимущество headless браузеров, что они работают как обычные, но не требуют графической оболочки, а тесты можно писать в виде "кликни эту кнопку, вбей этот текст сюда". Более того, часть библиотек для тестирования позволяют записать свое поведение и потом воспроизводить его.
Увидеть как работает тест можно а: сделав скриншоты и сохранив их в папку в ключевые момеенты, б: запустить тест в обычном браузере (опять же, в большинстве библиотек для тестов, в том же cypress, для этого нужно только один флаг поменять).
С дебагом никаких проблем нет, покуда существует remote debug protocol, с ним все прекрасно дебажится (сборку иногда геморно настраивать для фронта).
И хедлес браузер тоже использовать не обязательно, через curl HTML можно забрать.
До пункта "Популярные Headless браузеры" я был уверен, что автор путает понятие HTML движка (который строит DOM-дерево и позволяет быстро искать в нем, к примеру, селекеторами jQuery, например jsdom ), но в итоге статья представляет из себя бесполезную и неправдивую приписку к рекламе курса.
Вот опять же, либо речь идет о производительности фронта, либо зачем вам браузер, чтобы тестировать производительность бэка?
Ага, они indexOf найти в документации не смогли, судя по всему, но зато с бумажкой эффективно решили проблему!
Хотя странно выглядит эта статья. Вроде как код того же Chrome довольно таки хорош и красив, хотя судя по статье сложилось впечатление, будто бы его писало три миллиона джунов с бумажками на псевдокоде.
Я лично не понимаю предмета спора вообще.
Какими бы словами там не кидались про слабый или сильный ИИ, беспилотный автомобиль не более чем классическая (пусть и значительно усложненная) система автоматического управления. По большому счету, речь идет о решении задачи оптимального управления, которая сводится к поиску управления, дающего минимум заданного критерия.
Таким образом, говорить о морали машины тоже самое что говорить о морали операции суммы или типа того. "Вот эта сумма просто аморальна!".
Конечно условно можно считать, что мораль задается через этот самый критерий. Например для посадки самолета я бы брал штрафные очки у критерия примерно так:
выезд за ВПП — 10
вероятность повреждения ЛА — 100
вероятность травмы пассажира — 1000
вероятность смерти пассажира/пассажиров — 10 000
въезд в терминал — 100 000
Соответственно, алгоритм никаких там моральных задач решать не будет, все что он сделает — попытается набить минимум "очков".
Но есть большое НО — сложность критерия значительно влияет на возможность эту траекторию просчитать. Иными словами, критерий из серии "если там стоит человек, но он без трости, но ему на вид 50 лет" — да машина с места с такими критериями не сдвинется, пока все просчитает. Результатом будет являеться что-то типа поля запрещенных областей — по аналогии с аэропортом, места, при въезде в которые будут начисляться штрафные баллы.
Хотел бы я посмотреть на то, как начисляются разные штрафные баллы в соответствии с возрастом, полом, расой или родом деятельности человека, в современном мире толерантности.
Так что, на мой взгляд, калькулятор на колесах не может быть моральным либо аморальным, а всегда будет до последнего поступать совершенным с точки зрения математики образом.
P.S. Это если научатся решать уравнение Беллмана или иной строгий способ решения задачи. Пока же машина действует статистически оптимально, но за три сигмы вылететь есть шанс у всех.