Как стать автором
Обновить
132
0

Пользователь

Отправить сообщение
Продолжайте изучение инструмента и на этом этапе меньше слушайте подобных «особых мнений». Не стоит превращать инструмент в идеологию. Идеальная архитектура — это не решение задачи, к а один путей к ее решению, зачастую достаточно дорогой для компании и, в целом, очень субъективный.

Тут кто-то писал про Coldfusion, мол «фе». Пару лет назад я работал в прибыльной компании из штатов с 10М+ пользователей, добротной архитектурой приложений (не идеальной, но достаточно понятной для внесения изменений и поддержки меняющихся требований бизнеса), все на распоследних версиях фреймворков, в том числе Rails. И вот в один прекрасный момент нас купила фирма-конкурент, которая клонировала изначальную идею нашей фирмы (геймификация ритейла + персональные рекомендации), повела более грамотную маркетинговую политику, набрала больше инвестиций и выкупила нашу компанию (по сути покупался бренд и база пользователей). Весь наш чудесный код выкинули на помойку и заменили ужасным и кривущим кодом на Coldfusion (практически никто из нашей dev-команды не захотел работать с этим ужасом дальше и все уволились). Компания по прежнему процветает. Код по прежнему на Coldfusion. Делайте выводы, господа идеалисты. Рынку не нужна идеальная архитектура приложения, да никто про нее и не знает даже, кроме инженеров.
Прочитайте мое сообщение более внимательно, я говорил про TRUE, а не про true.
2.2.3 :001 > TRUE
 => true 
2.2.3 :002 > TRUE = false
(irb):2: warning: already initialized constant TRUE
 => false 
2.2.3 :003 > TRUE
 => false 
Описание кейса в статье отвратительно неграмотное. Во-первых, в Руби нет ключевого слова или типа TRUE, это просто название константы, которая содержит значение true, и никто в сообществе саму константу не использует, ну да ладно, это привет сишникам с макросами из 90х. В языке нет неявного приведения типов с потерей данных, как в js и некоторых других плохо спроектированных языках. Т.е. в языке и true == 0 и false == 0 будет всегда однозначно false, потому что 0 и true/false — это разные типы. Вторая часть утверждения "только boolean false и нулевое значение (nil) вычисляются в FALSE" — полный бред с точки зрения языка.
В чем же дело на самом деле.
Дело в "хитром" устройстве операторов if, case и тернарного оператора, которые трактуют все значения, кроме nil и false, как true. В том числе это: 0, отрицательные числа, комплексные числа, пустые строки и полные массивы, объекты любых других классов и т.д. Ничего по факту не вычисляется, грубо говоря это проверка для "значение nil или false — значит выражение ложно, иначе — истинно". В языке верны только выражения true == true и false == false, все эти домыслы про 0 == true от незнания поведения такой простейшей конструкции языка, как условный оператор.
На мой взгляд это логичное поведение оператора if и оно намного лучше, чем Сишное, где отдельных булевских типов не было, и пришлось заменять false нулем и потом таскать везде макросы #define FALSE 0. Зачем это поведение тащили в js — для меня загадка. К слову, Java и C# этот атавизм (0 == TRUE) не поддерживают и даже не скомпилируют код с ошибкой, что, на мой взгляд, является самым правильным решением проблемы в принципе.
У меня OS X El Capitan с последними апдейтами, выражаю надежду, что это достаточно современная ОС :) Свежий хром и сафари ругаются на сертификат.
Добрый день. По вашей ссылке хром выдает:

Your connection is not private

Attackers might be trying to steal your information from battle.hexlet.io (for example, passwords, messages, or credit cards). NET::ERR_CERT_COMMON_NAME_INVALID
euroradio.fm/ru/delo-sms-minera-metro-v-minske

9 лет за смску, ну и за одно навешали на него всех собак, дело-то громкое, выслужится всем нужно.
Но главная его особенность в том, о чем производители термостатов должны были подумать много лет назад: как создать в каждой комнате дома свою, подходящую для неё, температуру… Вот это умное решение!


Даже как-то неловко писать, но таких решений на рынке полным-полно. В чем инновации, в приложении для смартфона?

а также легко интегрируется с различными продуктами для умных домов, такими как Nest Learning Thermostat


Увидел вора — скинь температуру в комнате, что бы он простыл, собака!

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


Т.е. открывать (опасную?) дверь гаража с 2х метров небезопасно, а открывать ее же из офиса — безопасно?

С обычным кондиционером

Воу-воу, а зачем мне тогда дизайнерский термостат с датчиками в каждой комнате, если еще кондиционеры надо отдельно настраивать?

Благодаря такой модели использования, в случае, если ваша сигнализация сработает, Roost Smart Battery отправит сообщения на выбранные смартфоны, после чего можно либо вызвать пожарных, либо отключить сигнализацию с этого же смартфона.


При условии, что вайфай точка не сгорела или не вырубилась при защите от пожара (упс). Иначе будет обидно, дом сгорел, а 35 баксов (на каждую комнату) — не вернут.

Лучший умный замок
оказался умной щеколдой для безопасных районов в США. Хорошо сочетается с хлипкой деревянной входной дверью.

Система стоит $300 и эта цена, конечно, не идёт ни в какое сравнение с затратами на восстановление ущерба от затопления.
и особенно с ценами на серьезные устройства такого рода на рынке, которые еще и воду смогут перекрыть, а не просто постить в инстаграм фоточки протечки.

В общем, как обычно — набор разрозненных дизайнерских устройств, с адским ценником даже по меркам серьезных систем, большая часть залочена на проприетарные протоколы и «свои» облака. Набор функций можно описать по принципу «это обычный %приборнэйм%, но с дизайнерским видом, приставкой „умный“ и с приложением на телефон. Умеет постить в твиттер».

Хотя некоторые приборы и решают задачи для «хитрой квартиры» на 2-3 комнаты, для «умного дома» такие решения не подходят в принципе, как их не обзывай «умными».
> Баг репорт создается в 2 клика, где там можно ногу сломить? Просто интересно.
Ногу там сломить во время поиска по ключевым словам, многие из моих репортов закрыли с пометкой «дубликат», а ведь я честно пытался найти проблему в трекере. Вы немного лукавите про 2 клика, собрать шаги для воспроизведения ошибки не так и просто. К примеру, проблема, которая возникала в последние 2 месяца использования RubyMine на двух разных машинах (macbook pro 2014 и air 2012): при каком-то стечении обстоятельств, при запущеной IDE машина намертво виснет, помогает только полный ресет. Сколько времени нужно потратить, что бы отдебажить эту проблему и создать багрепорт?

Не стоит забывать, что речь идет о платном продукте, а не об опенсорсном. Если при чистой установке приложения в нем не работают основные фичи (я уже приводил пример с рефакторингами, наблюдал у двух разных людей, а это, на минутку, затрагивает даже обычный rename), то это проблема не пользователей, а QA продукта.

И можно сколько угодно рассуждать про репорт багов, но это только одна (и не самая серьезная) из проблем IDE, которую я описал.
К сожалению, качество IDE на основе идеи упало ниже плинтуса. Всевозможные глюки, отваливающиеся куски функциональности, подвисания на не очень слабых машинах (ssd, i5, 16 гб ОЗУ) просто достали. Пользовался продуктами jetBrains еще со времен Idea 3, последние годы использовал RubyMine и AppCode. У жены тоже был RubyMine. Постоянные проблемы и косяки нас просто достали, поэтому мы переехали на vim и atom. Говорю в основном про мак. С какого-то момента мне стало стыдно рекомендовать продукты на базе idea, потому что люди ставят триал и начинают спрашивать «а почему у меня рефакторинги не работают», «а почему на моей машине такие фризы», «что за артефакты в редакторе при работе с двумя мониторами» и т.д.

По поводу «а есть ли баг в багтрекере?». Спасибо, нет. В вашем багтрекере черт ногу сломит, а после того, как один мой баг провисел полтора года, и делать его начали только после нытья на Хабре, я перестал репортить баги.

Ребята, вспомните свою работу над производительностью для RubyMine 4, вы же могли сделать продукт, который летал на моем стареньком macbook air. Про тормознутость ваших продуктов ходят легенды, достаточно открыть любой тред на реддите.

Объяснение № 3
Часть ответственности лежит, конечно, на Oracle (за недоделанные продукты и агрессивное продвижение полусырых фич), но, мне кажется, львиная доля проблем вызвана скорее некомпетентностью интеграторов.
А вы словно вчера родились :) Никогда энтерпрайзные монстры не ориентировались на разработчиков и сисадминов, они всегда нацелены на менеджмент. Отсюда и «красивые картинки» и легкий ненавязчивый текст без технических подробностей. Их задача распиарить продукт руководству (и не важно на каком этапе готовности этот продукт, есть ли там вообще хоть какая-то документация, подготовили ли они техподдержку и т.д.).

Пишу, потому что давно страдаю от программных продуктов вышеназванной фирмы, которые были втюханы ушлыми партнерами под видом идеального решения проблемы через руководство. Итоги обычно печальные: многозначные расходы для фирмы, невнятные преимущества, совершенно всегда сорванные сроки интеграции по вине интеграторов (подозреваю, что страна происхождения не важна, работал с конторами из США, Индии, ЕС и России), постоянная нервотрепка в общении с ними и «индусами» из техподдержки, которые не знают своих продуктов, иногда документацию на внедряемые поделия удается выбить с боем, но часто не удается (скорее всего потому, что ее не существует), обязательно добавьте сюда километры переписки и редиректов по любому пустяковому вопросу (типа «А какой диапазон значений может принимать поле А в вашем сообщении?»).

Но какой полет фантазии можно встретить в таких системах! Схемы данных, в которых ни одного осмысленного названия — корпоративный стандарт. А если там будут использоваться бета версии или экспериментальные фичи каких-то продуктов — тем лучше! Неуникальные первичные ключи типа bigdecimal (реальный кейс одной ЕРП системы)? Почему бы нет!

Для себя решил обходить стороной любые проекты, где используются технологии вышеназванной фирмы. Два раза нарушал это правило и два раза уходил с этих проектов с последующей полугодовой ментальной реабилитацией.

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

Да, управлять с айпэда каждой лампочкой в доме не выйдет, все устройства будут сами по себе, но часто ли реально нужно обычному человеку иметь в доме контроль за всеми параметрами всех устройств? Мне кажется, что 80% типовых задач по экономии и повышению уровня комфорта в доме решаются за 20% средств, а все остальное уже идет по статье «дорогие игрушки». Не поймите меня неправильно, я всеми руками за крутейшие хайтек-технологии интернета вещей, но, к сожалению, пока не владею несколькими нефтяными скважинами.
Кроме баловства с мигающими лампочками и «мульимедиа»-системами (по астрономическим ценам за управляющие устройства, которые легко перевешивают даже стоимость среднего набора 7.1 аукстики и телевизора), есть еще такие вещи, как контроль температуры в разных комнатах, принудительная вентиляция, осушение и увлажнение воздуха, системы охраны и разумный подход к монтажу электрических линий в доме. Отчасти такие системы помогают экономить, отчасти увеличивают комфорт проживания. А куча оборудования появится в любом случае (если мы говорим про современный дом): это электрический щиток, котел, вытяжки, вентиляторы, рекуператоры, система отопления, насосы, системы водоснабжения и водоподготовки. Грамотное проектирование и интеграция всего этого хозяйства в среду дома и будет называться «умным домом», хотя, скорее всего, красивой сенсорной панели из стекла и металла за 11 тысяч евро там не будет.
И последнее. Жителям Беларуси, вероятно, будет полезно знать, что практически те же самые принципы, изложенные в этой статье, применимы и к их деятельности. Однако, есть и отличия — например, в Беларуси нет льготы, освобождающей от уплаты налога на доходы иностранных организаций, не осуществляющих деятельность на территории Республики Беларусь через постоянное представительство. А ставка налога, между прочим, аж 15 процентов.


Можно зарегистрироваться как ИП, ставка налога по упрощенной форме — 5%, около 1%-1.5% заберет банк (ну и еще сколько-то потеряете на разнице курсов). Для обслуживания счета можно выбрать адекватный банк, который не будет требовать «оригинала договора с печатью и подписью директора фирмы Apple».
Ну хоть скажите, поможет ли снизить стоимость системы консультация с интеграторами(инсталляторами?) на этапе проектирования дома?
Ну если мы говорим про практические решения типа «контроль освещения в доме», то наверное люди с опытом внедрения могут оценить затраты на единицу площади или на комнату в диапазонах от «необходимый минимум» до «суперэлитный премиум». Понятно, что точные цифры зависят от проекта, но можно хотя бы на что-то ориентироваться?
Добавьте пожалуйста еще и про порядок цен в практической части!
А что вы думаете по поводу threadgroup.org?
Вы просто говорите список продуктов «умному дому», заказ отправляется по интернету на автоматизированные склады, где всё собирается, а потом на самоуправляемых машинах доставляется до вашего дома. Вам нужно будет лишь выйти на улицу и встретить ее. Если повысить уровень лени, то можно включить в схему к машине и робота, который принесет заказ к двери. Средства автоматически списываются с электронного счета при получении товара. И не надо слабовидящим людям ни в каких магазинах ориентироваться, пусть лучше где-нибудь просто погуляют.


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

Информация

В рейтинге
Не участвует
Дата рождения
Зарегистрирован
Активность