Русский
Русский
English
Статистика
Реклама

Удобство

ОПЭДИ мой первый опыт создания IoT устройства

18.10.2020 22:23:47 | Автор: admin

Доброго времени суток, хабр. Думаю многие люди задумывались о том, какое, к примеру, потребление электричества или уровень углекислого газа у них дома.


Проект умного календаря ОПЭДИ создан именно для того, чтобы моментально и понятно передавать телеметрию дома в реальном времени.
В этой статье я расскажу о функционале этого девайса и о том как он делался.


Как это работает?


ОПЭДИ означает "Отображатель потребляемой энергии дома и т. д.".


Источник вдохновения


Собачка Электроника РЭССИ


Внутри панели находятся светодиодные ленты, которые с помощью цвета светодиодов передают человеку информацию. Красный оттенок означает высокое значение отображаемого параметра, зеленый низкое. Для управления светодиодами используется esp8266 на плате node-mcu.
Также внутри панели расположены три сенсорные кнопки, которые реагируют на касания пальцев сквозь передний лист оргстекла. Они расположены снизу.


Наглядное объяснение


Ниже представлен схематический рисунок, иллюстрирующий принцип работы панели.

Принципиальная схема устройства


Таким образом внутри расположено 4х7х5 (=140) + 3 = 143 светодиода. 140 из них используются для отображения полезной информации и ещё 3 используются для индикация текущего отображаемого параметра: электроэнергии, температуры или уровня CO2.
Красная кнопка слева снизу переключает отображаемые параметры, а две кнопки снизу используются для перехода на следующий или предыдущий месяцы. Памяти у устройства хватает на хранение данных в течении 1 года, после чего старые данные начинают перезаписываться новыми.


Данные энергопотребления сообщаются с помощью модуля веб-клиента в виде отдельной node-mcu, к которой подключен датчик тока PZEM-004T. Он вмонтирован в электрощиток нашей квартиры.

Смонтированный модуль счетчика электроэнергии


Веб-сервер


На модуле node-mcu также развернут веб-сервер, с помощью которого можно производить гибкую настройку параметров отображения:

Главная страница


На главной странице есть три раздела:


  • Управление светодиодами
  • Настройки Wi-Fi
  • Просмотр накопленных данных

Управление светодиодами


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

Веб-страница управления светодиодами


Настройка Wi-Fi


Управление Wi-Fi сетями осуществляется через страницу WiFi Settings. Здесь можно посмотреть к какой сети в данный момент подключено устройство, а также добавить новую или удалить существующую. При потери сигнала сети или включении панель сначала будет поочередно пытаться подключиться к списку сетей, которые указал на этой странице пользователь, а уже потом попробует подключиться к прописанной в самом коде изначальной Wi-Fi сети. Если и это не получится, то панель будет продолжать повторять эти действия с самого начала пока не будет установлено соединение.

Веб-страница управления Wi-Fi сетями


Накопленные данные


Для оценки числовых значений датчиков была создана страница, на которой отображаются все накопленные данные. За раз может отображаться не более 28 выборок данных, что соответствует одной неделе.

Пример записанных значений


А вот как стали выглядеть показания с панели когда у нас включили отопление:


Мутность создается из-за рассеивания полупрозрачным стеклом


Процесс создания


Главная особенность умного календаря это его преаттентивность. Данный термин вычитал мой брат пару лет назад в книге Будущее вещей от Дэвида Роуза. Преаттентивное устройство передает информацию человеку за долю секунду, при этом информация также должна быть правильно понята за столь же малое время.


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


Мы с отцом решили пойти дальше и придумали концепт устройства, способного отображать любую телеметрию на куда более длительном промежутке времени, при этом сохраняя практически ту же самую информативность. Так и родилась идея умного календаря ОПЭДИ.


Этапы создания


Работа над проектом началась год назад и длилась примерно 9 месяцев с перерывами. Основными этапами разработки были:


  1. Сборка панели
  2. Разработка ПО для панели
  3. Разработка ПО для модуля счетчика электроэнергии
  4. Сборка модуля счетчика электроэнергии
  5. Финальные доработки и QoL changes

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


Сборка панели


Было принято решение собирать корпус панели из ПВХ, на которую будут клеиться все остальные детали и части электросхемы. После разметки корпуса я начал клеить полоски светодиодной ленты, параллельно очищая у них контакты.

Процесс размещения светодиодных полос
Затем я занялся пайкой всех компонентов. Справа сверху был установлен датчик качества воздуха и температуры HDC1080, там же снизу были расположены мозги: микроконтроллер esp8266 на плате node-mcu. Слева снизу и по центру расположены кнопки управления. Сзади панели был пропущен кабель питания, выходящий снизу, а четыре круглых отверстия служат точками крепления передней крышки из оргстекла.

Вместо синей изоленты и скотча море термоклея


Разработка ПО для панели


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


  1. Управление светодиодной лентой
  2. Развертка веб-сервера
  3. Органы управления
  4. Подключение датчика
  5. Файловая система

Постараюсь рассказать только про самое интересное в каждой из них.


Управление светодиодной лентой

Из-за того что светодиодные полосы были соединены друг с другом зигзагообразным образом, перво-наперво требовалось придумать алгоритм заполнения значений для светодиода по координатам x и y.

Я написал функцию, реализующую придуманный мной алгоритм.
Код получился следующим:


GetPosition(int x, int y) {   int n;   if (x % 2 == 0) {               //Здесь происходит проверка      n = weekSize - y;            //направления столбика:   } else {                        //снизу-вверх или наоборот.      n = y + 1;                   //Если направление снизу-вверх   }                               //то позиция равна высоте столбика                                   //минус y, иначе просто y + 1                                   //Затем прибавляются все дни   return n + weekSize * x;        //из предыдущих столбиков}

Где weekSize является количеством дней в неделе и равно 7.
Для проверки я заполнял все 143 светодиода случайной яркостью.
На этом настройка светодиодной панели по большей части подошла к концу. Оставалось только получить данные с датчиков и обработать их.
Но прежде я решил поднять веб-сервер, так как это казалось проще.


Развертка веб-сервера

Этот шаг оказался не таким сложным, и для проверки работоспособности сервера я добавил возможность передавать по сети на esp8266 номер дня, номер части дня, а также значение, чтобы выставлять в выбранном дне и его части указанное значение.
Также был написан алгоритм конвертации пар значений (День, Часть) в (x, y).


Органы управления

Обработка сенсорных кнопок вылилась в простое считывание соответствующих выводов GPIO. Сами кнопки, при помощи перемычки, переключены в режим "без фиксации". Для тестов я завязал изменение цвета светодиодов на левую нижнюю кнопку. Получилась цветомузыка:



Подключение датчика


Датчик воздуха HDC-1080
Для получениях данных с этого датчика я воспользовался этой библиотекой от Adafruit.
И хотя на самом деле этот датчик не имеет сенсоров углекислого газа, он обладает встроенной формулой высчитывания примерного уровня CO2 на основе температуры и уровня TVOC. В конечном итоге я решил использовать функцию getTVOC() вместо geteCO2() и отображать уровень летучих органических веществ на панели и на сайте.
Данные с датчика считывались каждые 10 секунд и суммировались. По прошествию 6 часов рассчитывалось среднее арифметическое оно и записывалось в память.


Файловая система

Устройству предстояло хранить множество выборок значений с датчиков за определенное время. Поэтому я решил создать следующую структуру как ключевую единицу полезной информации:


typedef struct TLogData {  uint32_t TimeStamp = 0;  uint32_t Power = 0;  uint16_t CarbonDioxide = 0;  uint16_t Temperature = 0;}

Она хранит в себе значения уровня энергопотребления, CO2 (который затем стал TVOC), температуры и времени выборки, для которой было рассчитано среднее арифметическое показаний с датчиков за 6 часов.
Одна выборка данных весила 12 байт, и для хранения данных за 1 год потребуется 17.1 Кб. Когда же память будет заполнена, то очередная выборка данных перезапишет самый первый день, затем следующая перезапишет 2 и т. д. Таким образом в файловой системе реализован кольцевой буфер.
Сквозь кровь и пот и целое море "Исключений 28" была налажена работа файловой системы и реализованы загрузка и сохранение данных.


Когда основные функции главного устройства были доделаны, началась работа над его клиентом модулем счетчика электроэнергии.


Разработка ПО для модуля счетчика электроэнергии


Данный этап был подразделен на 3 задачи: подключение датчика тока, настройка веб-клиента и налаживание прошивки "по воздуху".


Датчик тока и мощности


В первоначальный состав модуля входила еще одна esp8266 на плате node-mcu и счетчик электроэнергии PZEM-004T.

Датчик тока PZEM-004T и катушка трансформатора


Данный датчик тока работает на основе эффекта Холла. В катушку просовывается один провод с нагрузкой, который создает ток в трансформаторе, а уже этот ток измеряется датчиком. К трансформатору подается напряжение 220В, а к другой половине платы подается питание 5В.
Просовывать провод нужно один, потому что если просунуть два, то разные фазы в проводах будут создавать противонаправленные магнитные поля, которые будут компенсировать друг друга, не позволяя таким образом возникнуть току в катушке.
Также большим плюсом данного датчика является возможность сразу считывать с него мощность, напряжение и суммарное энергопотребление (последним я не стал пользоваться, предпочтя самим реализовать рассчитывание всей потребленной энергии).
Сообщение с esp8266 происходило через интерфейс UART по протоколу Modbus, и для получения данных я воспользовался библиотекой ModbusRtu.
Для первоначальных проверок мы просто обмотали изолентой 220В-ые контакты и склеили скотчем датчик вместе с esp8266. Через кольцо был просунут удлинитель, чтобы можно было удобно подключать и тестировать энергопотребление разных бытовых приборов. Так, к примеру, мы подключили к датчику тока воздушную печку, и сравнили номинальные показания мощности и полученные с датчика. Убедившись, что они сходятся, я начал писать код для веб-клиента.


Веб-клиент и связь с панелью


У модуля счетчика электроэнергии была единственная задача: несколько раз в минуту считывать показания с датчика тока и слать их на панель-базу. Изначально клиент подключался к жестко записанной Wi-Fi сети нашего дома, которая также была прописана у сервера. После подключения к одной сети, клиент искал в сети ip сервера и устанавливал с ним связь. В ответ на это сервер пересылал клиенту свой список сохраненных Wi-Fi сетей. При последующем включении веб-клиента он сначала искал сервер в полученных от него Wi-Fi сетях, а уже затем, если у него не получилось найти его, пытался подключиться к нашей домашней сети.
После этапа инициализации начинался процесс передачи данных с датчика от клиента серверу.
Я думаю, что к этому моменту многие читатели задались вопросом "а на кой черт тебе вообще возможность подключаться к другим сетям?". Ответ прост: с этим проектом я участвовал в конкурсе, и для демонстрации работы ОПЭДИ нужно было подключить и его, и модуль электроэнергии к Wi-Fi сети моего телефона.
Почему я просто не переписал захардкоженную Wi-Fi сеть на точку доступа телефона? Ну


Arduino OTA: Прошивка "по воздуху"


Так как планировалось смонтировать модуль счетчика электроэнергии в щиток нашей квартиры, и при необходимости его прошить пришлось бы лазить среди высоковольтных проводов, что совершенно небезопасно, было решено применить технологию Arduino OTA, используемую для заливки кода на микроконтроллер через Wi-Fi.
OTA заработала без каких-либо серьезных проблем.


Сборка модуля счетчика электроэнергии


Предпоследним этапом была сборка модуля электроэнергии. Так как для питания node-mcu и мозговой части датчика тока требовалось 5В, а в щитке было только 220В, в схему был добавлен блок питания на 5В от зарядного устройства телефона.


Я заказал на этом сайте несколько пластиковых корпусов, закрепляемых на DIN-рейке. Выбрав подходящий по размерам, я спаял схему на плате самого корпуса. Получилось следующим образом:

Где:
1 Блок питания на 5В от зарядного устройства
2 PZEM-004T
3 node-mcu (находится под PZEM-004T)


Расположение node-mcu


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



С установкой этого модуля в электрощиток мне помогал папа. Мы обесточили нашу квартиру, отключили фазный провод, и пропустили его через кольцо. Затем подключили два провода, питающие непосредственно сам модуль, к открытым разъемам 220В, подключенным после счетчика.
Включив питание, мы убедились, что модуль успешно посылает показания с датчика на панель.


Финальные доработки


На первых порах эксплуатации проверялась работоспособность панели и было выявлено несколько багов, например:


  • Панель отображала показания со сдвигом в 1 светодиод
  • Некорректная формула расчета среднего арифметического показаний датчиков

Также периодически наполнял софт фичами, необходимость в которых появлялась в период эксплуатации:


  • Добавлен возврат на текущий месяц при помощи одновременного нажатия на обе кнопки пролистывания или таймаута бездействия
  • Добавлена анимация подключения к Wi-Fi в виде бегущей полосы
  • Добавлено затемнение яркости в ночное время
  • Последний горящий кубик в текущем дне отображает показания датчиков в режиме реального времени


Бегущая полоса, движущаяся по часовой стрелке


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



Итог


Данный проект стал для меня уникальным опытом. Прежде я лишь вскользь касался тематики умного дома, но, создавая ОПЭДИ, я узнал много нового.
Такие проекты помогают держать мозг в тонусе, заставляя нас решать совершенно новые для нас задачи.
Код проекта доступен на моем гитхабе.
Заранее предупреждаю, что там есть немного спагетти с костылями.


P.S. Обнаружена дополнительная польза, панель висит возле выхода из дома, и теперь достаточно посмотреть на последний кубик, и, если он зеленый, то значит все основные бытовые приборы отключены.

Подробнее..

Recovery mode Удалённая работа не рай, а светлое будущее

11.12.2020 00:18:41 | Автор: admin

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

Я понимаю, что все люди разные. У всех разная жизнь. Кому-то мешает годовалый орущий ребёнок. Кому-то стройка за окном. Кому-то неуютная кладовка без кофемашины. Кто-то хочет заманить людей обратно в офис, чтобы снова почувствовать контроль и власть над ними. Кто-то просто не может принять новые правила игры. Я хочу привести доводы со своей колокольни и, надеюсь, найду тут единомышленников.


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

Ежедневные путеществия в час пик

Я думаю, это совершенно нормальное желание, всё оптимизировать. Особенно, если дело касается разработчика. Многие из нас всю жизнь только и делают, что оптимизируют какие-то процессы. И первым делом при работе в офисе приходит мысль (лично мне), что изо дня в день, из месяца в месяц, я трачу по часу времени в одну сторону и в другую. За месяц сэкономленного времени хватит, чтобы пройти The Last of Us 2 или курс по какому-нибудь фреймворку. За год сэкономленного времени получается ровно на рабочий месяц: то есть за год вы тратите на дорогу столько времени, сколько тратите на работу за месяц. Это стоимость новенького макбука ну или типа того.

Немаловажный фактор тут ещё: час пик. Так уж заведено, что многие люди, работающие в офисе, едут на работу и с работы примерно в одно время. И вы тоже. И вы попадаете в толкучку людей каждый день. Это, безусловно, не трагедия, если утром вам оттопчут ноги или телегой наедет бабка, а вечером всю дорогу в лицо будет дышать бухой мужик, но и не такое удовольствие, чтобы за это платить своим временем. Можно договориться сместить свой график так, чтобы ездить в такое время, когда люди уже рассосались или, наоборот, ещё не наползли, если у вас нет личной жизни, это неплохой вариант. Ездить не в час пик, читать в дороге книгу или смотреть подкасты, хорошая оптимизация. Она почти решает проблему, но не всем доступна. Тут ещё погут на сцену выйти погодные условия, но я уже не хочу в детали так глубоко лезть.

Я пробовал по-разному. Сместить время поездок на час туда-сюда помогает, но не радикально. Лично я сталкивался с тем, что людей хоть и становилось меньше, но не настолько, чтобы прям они не докучали. Сместить время поездок на много часов получается рассинхрон как с командой, так и с домашними. Читать книгу в дороге или что-то смотреть кажется полезным делом, но далеко не всегда выходит. Рандомные обстоятельства, что-то происходящее за окном или в салоне транспорта, и вот вы уже выпадаете из потока: туда-сюда, почитать сегодня не удалось. А иногда просто бывает лень: с утра больше тянет смотреть котиков и тупить, а вечером то же самое, но уже не потому что только проснулся, а потому что уже устал, а тебе нужно куда-то переться. Я ездил на маршрутке, на троллейбусе, на метро, на велосипеде, ходил пешком. Всё это плюс-минус скорее неприятное времяпровождение... за свой счёт.

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

Климат-контроль

Это когда ты летом сидишь в офисе, над тобой висит кондиционер, а в другом конце комнаты сидит девушка. И холодно ей, а не тебе. Ты бы подкрутил ещё, чтобы приятнее обдувало свежим ветерком, но вот та барышня мёрзнет. И чёрт знает, что с ней делать. Ты с ней не поменяешься местами, так как вы уже сидите, как нужно: ты под кондиционером, а она на солнышке. Что делать? Проситься самому переехать в другую комнату или выселить её? Между прочим, это реальный случай, который у меня был. Жарко было не только мне. Холодно было только ей.

Такая беда есть, безусловно, не только в айти компаниях. Она есть в любых местах, где люди долгое время что-то делают вместе: школа, вуз, курсы кройки и шитья. Но я не думаю, что нужно оправдывать свои неудобства тем, что кто-то другой имеет такие же. Ведь мы можем позволить себе сделать, чтобы было хорошо. Сидеть каждый в своей берлоге и выставлять температуру, влажность и всякое прочее другое на тот уровень, который нам нравится. А ещё дома можно курить, парить вейп, пить пиво и что угодно вообще... хотя, лично я ничего из этого не делаю, но понимаю людей, которым бы не хотелось бегать в курилку каждые (сколько там?) минут.

Дома вы можете работать в приятных для вас атмосферных условиях. В офисе вы должны договариваться с окружающими и находить компромисы.

Беседы с коллегами

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

Серьёзно, чаще всего в офисе беседы идут на самые рандомные темы, и только изредка про работу. И даже в этих редких случаях нередко встречаешься с тем, что человеку просто лень было лишний раз детально перечитать тз, или просто стало скушно, или на стэковерфлоу забанили. Общение в офисе это прежде всего общение ни о чём. И я соглашусь, если мне скажут, что это полезно для психики. Но не могу согласиться, если мне скажут, что это полезно по работе, и в скайпе так не обсудишь, не прочувствуешь, не... не знаю, что там ещё за аргументация? Это бред всё.

Если у меня что-то не получается, я иду гуглить. Потом ещё раз читаю тз, документацию, а потом снова иду гуглить. Когда все мои таланты программиста иссякли, я пишу человеку в скайп, мол, таки и так, такие проблемы, подскажи, плиз, когда будешь не занят. Скайп, ребята, в 2020 году существует скайп. Можно наже расшарить свой экран и наглядно показать, что не получается. Есть и другие инструменты, более мощные, но тема не об этом.

Быт

Давайте честно. Это не быт, это неумение говорить "нет" и доносить до людей информацию, что ты работаешь, а не фигнёй страдаешь. Если у вас дети не страдают дефицитом внимания, они поймут, в какие часы папу/маму не нужно трогать. Если ваш партнёр или другие родственники (вы что, с родителями живёте? это разговор для другой темы) не окончательно тупы, то с ними получится договориться. Ещё люди придумали дверь. Её можно закрыть. В неё можно врезать замок. Когда же я работал в опенспейсе, мне хотелось врезать саморезы себе в уши и больше ничего не слышать, либо врезать тому, кто никак не может заткнуться. Договориться с полусотней человек сложнее и делать по-хорошему должен менеджер, а не вы. Но даже, если вы нагавкаете на окружающих и все заткнутся, они продолжат сопеть, шмыргать, ёрзать на кресле, пукать, говорить шёпотом. Я понимаю, если меня отвлекают малейшие звуки это повод обратиться к психотерапевту, а не пытаться успокоить окружающих, но тем не менее, офис это место, где никогда не будет такой же тишины, как в вашей берлоге.

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

Диван. Это то, чего нет в офисе. Или есть, но тогда он занят. Если не хочется сидеть все восемь часов (да и не полезно это), можно сходить покурить (лол, полезнее), сделать себе кофе, потусить на кухне, походить взад-вперёд по коридору, поиграть в гляделки с теми, кто задолбался и ходит взад-вперёд по коридору вместе с тобой. Чтобы всё это небыло настолько тупым, как выглядит, давным-давно адекватные работодатели покупают в офисы различные ништячки. Я работал в одном офисе, где было массажное кресло вот это действительно кайф. Приставка, что-то от Нинтендо, не помню точно... но я сонибой, потому был разочарован. Телевизор, кресла-мешки, теннисные столы это всё здорово. Если не занято. Или если тебя оно прёт. Но нередко бывает так (как в случае с Нинтендо), что тебе нравится одно, а в офис купили другое, потому что большинство так проголосовало, или просто потому что начальник так захотел. Знаете, что я регулярн делаю в рабочее время? Лежу на диване, играю в приставку или прямо на рабочем компе, кручу в руках головоломки, прокрастинирую на ютубе или хабре. Точно так же я бы отдыхал в офисе, с той лишь разницей, что в офисе виды отдыха крайне отграничены, а дома я могу себе позволить всё, что захочу. Был у меня начальник, который быковал из-за того, что я пару раз в день уходил от компа на диван и минут пятнадцать играл в телефоне в тупые игры... а вот на курящих по пятнадцать раз на день не быковал. Л логика.

Уют

Дом, это место, где я могу поставить себе дорогой хороший монитор. В офисе тоже могу по большому то счёту, но тогда домой мне прийдётся покупать второй или сидеть без него.

Дом, это место, где я могу поставить себе хорошее кресло. Далеко не во всех офисах есть даже дешёвые китайские типа геймерские кресла или что-то типа того. Часто натыкался либо на буквально табуретки со спинкой, либо на совсем уж дешман. Можно принести и кресло в офис вслед за монитором, но тогда дома, опять же, кресла не останется.

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

Тапочки. Я могу дома ходить в тапочках. Или без, просто босиком. Это очень комфортно. Ещё я могу утром приползти к компьютеру в одних трусах. Или без трусов. Вы скажете, что это не дисциплинирует. А я скажу, что я хочу, чтобы мне было удобно, а начальник хочешь, чтобы я хорошо работал, и есть ли на мне при этом нижнее бельё вообще абсолютно моё дело. Дома можно сходить в душ особенно актуально летом. Можно жевать что-нибудь и на тебя никто не будет коситься. Можно заказать бургер из KFC и заточить в одно рыло. Ничто так не располагает к рабочему процессу, как возможность расслабиться, забить на всё вокруг, и погрузиться в кодинг.

Софт

У каждого свой набор. Можно пользоваться передовыми достижениями человечества, можно ограничиваться малым. Я сейчас выбираю второе, просто потому что специфика проекта и коллектива позволяет. Гит, джира, скайп лично для меня это достаточный минимум для комфортного обмена знаниями и результатами работы. Но я поглядываю на более интересные средства Space от небезызвестной компании.

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

Депрессия

Часто в качестве аргумента против удалёнки приводят психические расстройства вроде депрессии, "выгорания" и прочего. Я заработал своё депрессивно-тревожное расствойство в офисе. Я нередко ходил в него и назад пешком, а внутри него был опенспейс, потому в отсутствии физической активности или общения меня сложно упрекнуть. Заработал я там же и панические атаки, и, как следствие, агорафобию, которая подтолкнула меня к домоседству. Да, с агорафобией тяжело бороться и иногда проще забить на офис и поработать удалённо. Но выйти на удалёнку полностью на тот момент у меня не получилось. И я пронёс свои психологические проблемы ещё через несколько компаний и работ в офисе. В конце концов от агорафобии я полностью избавился, пройдя через состояние, когда не мог из дома вообще выйти. Панические атаки ещё бывают. Депрессии нет. Тревожность есть. Я бы сказал, что я излечился процентов на 70. На это у меня ушло восемь лет, куча психиатров, психофармы, работа над собой, переезд из одного города в другой, а потом в третий, развод и много всякого интересного. Но не суть. Я лишь хочу сказать, что искренне убеждён в том, что психические растройства появляются у разработчиков появляются скорее от офиса, а не от сидения дома. Стресс и неудобства находятся в офисе. Дома уют и спокойная атмосфера (а если это не так, смените дом).

Скука

Если ты вайтишник и пришёл сюда за большими зарплатами, а потом разочаровался, потому что для этого приходится отключаться от внешнего мира и печатать буковки, это прежде всего твоя проблема. Просто смени работу. Нелюбимая работа это очень плохо.

Если тебе не нравится читать книжки, документацию, форумы, вайтишник, я же сказал, просто выбери ту работу, которая тебе по душе.

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

Простите

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

Подробнее..

Из песочницы Планшет как основной компьютер

06.09.2020 14:11:00 | Автор: admin
На этой неделе я решила поставить небольшой эксперимент и поработать за планшетом вместо ноута. В последнее время я часто слышу утверждения о том, что планшет может полностью заменить ноутбук, и что многим для работы вообще не нужно ничего кроме iPad: он высокопроизводительный, отлично держит зарядку, на нём нет ничего лишнего и нельзя случайно установить какую-то не ту программу. В общем, отличное устройство для большинства людей, которым не требуется специализированное ПО и не хочется вникать в технические аспекты устройства которое должно просто работать.

Вводные данные: я обычно работаю за MacBook Pro с внешним экраном и клавиатурой, а сейчас решила за тем же экраном и клавиатурой поработать за iPad Pro 3-го поколения с 12.9 дюймовым дисплеем. Я не первый раз работаю за планшетом и постоянно беру его в поездки и для этого специально приобрела Smart Keyboard Folio, но первый раз я решила поработать за ним полноценно из дома с внешним 27 дюймовым дисплеем и клавиатурой с трекпадом. Я менеджер проектов, поэтому основные инструменты у меня не узко специфичные и нацелены на координацию действий команды, отслеживание задач и общение, то есть Slack, Asana, разные инструменты Google, Dropbox Paper, Zoom и Телеграм это мой ежедневный набор основных программ. Ну и помидорка, конечно.

День 1


Так как экосистема Apple работает почти всегда отлично, то никакой адаптации, кроме установки помидорки, не потребовалось. Но я сразу же столкнулась с трудностью переключения раскладки клавиатуры. На работе у меня два языка общения и я постоянно переключаюсь с русского на английский и обратно, поэтому шорткат переключения клавиатуры у меня нажимается по несколько сотен раз в час. На iPad же для этого стоит специальная клавиша с глобусом Кажется что инженеры, которые это проектировали, никогда не переключаются между языками. С внешней клавиатурой всё оказалось ещё веселее: при отсутствии клавиши с глобусом, выбор клавиатуры осуществляется удержанием клавиш ctrl+shift+space, а выбор языка клавишами вверх вниз.

image

Соотношение сторон экрана планшета отличается от внешнего монитора, что приводит к бесполезному пространству на мониторе слева и справа. Меня на самом деле это не сильно смущает, так как я не фанат глазами искать нужную информацию по всему 27 дюймовому монитору. Ну и раз мы начали про это, я сильно не люблю гугловый поиск за то, что он всю информацию прижимает к левому углу. Почему нельзя сделать посередине?

При переходе на тёмную тему уши уже не так бросались в глаза, но из-за бликов я не сторонник работы за тёмным монитором, поэтому я выбрала меньшее из зол и продолжила работать за светлым монитором.

image

Управление. Как оказалось, кнопки яркости на внешней клавиатуре регулируют яркость экрана планшета, а громкости уровень звука монитора. Настройки яркости монитора в итоге тоже нашлись в дебрях приложения Настройки.

Один из забавных моментов момент состоит в том, что при покупке какого-то приложения нужен Face ID, и ты выглядываешь из-за монитора к планшету, чтобы он тебя узнал. А ещё он стоит открытый, в отличие от компа, который у меня всегда был рядом в сложенном вертикальном состоянии, чтобы не занимать место на рабочем столе.

Следующий момент заключается в том, что не все приложения для планшета имеют тот же функционал, что их версии для компьютера или веб версии. Например, приложение Dropbox Paper в отличие от веб версии не даёт изменять настройки доступа при создании ссылки на документ.

Веселье началось во второй половине дня, когда у меня было запланировано совещание с коллегами. Хорошо, что я догадалась потестировать Zoom за 15 минут до встречи. В моем мониторе есть встроенная веб-камера, но оказалось, что камера работает только на планшете, а любое переключение между приложениями и даже сплит вью сразу прерывают моё видео. Пришлось общаться с планшета. Итог: отваливается шея, так как планшет стоял гораздо ниже монитора.

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

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

Кстати, все внешние устройства, которые я использую во время рабочего дня: колонки и наушники вели себя прекрасно, потому что Zoom и Spotify няшки.

День 2


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

Ближе к полудню я попробовала поставить планшет в чехле Smart Keyboard Folio прямо перед собой в качестве клавиатуры, трекпад остался на месте. Мне понравилось: Face ID работает отлично, переключение раскладки клавиатуры не требует усилий.

image

Затем пришла чреда программ для анализа наших приложений. И я обнаружила, что всё таки не все приложения одинаково хороши или плохи по принципу made by Apple/made by (name of the developer). Так, например, Google Analytics в виде приложения ведёт себя почти отлично (скролл не очень хорошо себя показал), а вот App Store Connect всё же не адаптирован под планшет и представляет из себя копию убогой версии для телефона.

SplitView показал себя замечательно: даже при уменьшении масштаба страничек и таблиц до 60-70% работать было комфортно. Из минусов: я не поняла, как открыть рядом две гугловские таблицы.

Вечером я решила также посмотреть на разные приложения, которые я использую не только для работы. Например, моё любимое приложение для разных ментальных карт и графиков Microsoft Whiteboard оказалось странным при внешнем мониторе: я всё равно рисовала, глядя на планшет. Тоже самое коснулось парочки графических редакторов. Lightroom вёл себя, как обычно, но так как полноценной версии для планшета пока нет, то для меня это было не особо актуально. Очень забавно работает Instagram: у него заблокирована ориентация для планшета, но на внешнем дисплее он повернулся на 90 градусов, однако для того, чтобы листать ленту и взаимодействовать с приложением трекпад пришлось тоже повернуть на 90 градусов ()

image

Вывод


За планшетом оказалось работать намного удобнее, чем я себе это представляла. Я думала, что уже через час сбегу обратно к своему MacBook Pro и скажу, что не буду изменять ему больше никогда, но к своему удивлению на следующий день у меня было желание продолжить работать за чудесным iPad.

Ощущения оказались очень интересными: из-за невероятно классной анимации, переходов и дизайна, кажется, что MacBook это что-то устаревшее, и ты наконец-то работаешь за устройством нового поколения. Все приложения выглядят одинаково опрятно, почти ничего не крашится (кроме гугловских документов). Забавный момент состоит в том, что на большом экране сразу видны мелкие изъяны приложений в плане дизайнерских недоработок, и я с удовольствием отметила, насколько наши приложения выглядят классно и красиво (особенно, по сравнению с Мишленовским гидом).

Синхронизация между iPhone и iPad показалась мне более бесшовной, чем между этими же устройствами и MacBook. Из огромных плюсов: гораздо быстрее синхронизируются фотографии между телефоном и планшетом, а также их загрузка в нужные документы идёт через нормальный интерфейс, а не как на маке через одно место.

Основной вывод: iPad полноценный компьютер с классным интерфейсом и, я думаю, что через пару лет его допилят до состояния для всех, а компьютеры перейдут в класс для профессионалов.
Подробнее..

Категории

Последние комментарии

  • Имя: Макс
    24.08.2022 | 11:28
    Я разраб в IT компании, работаю на арбитражную команду. Мы работаем с приламы и сайтами, при работе замечаются постоянные баны и лаги. Пацаны посоветовали сервис по анализу исходного кода,https://app Подробнее..
  • Имя: 9055410337
    20.08.2022 | 17:41
    поможем пишите в телеграм Подробнее..
  • Имя: sabbat
    17.08.2022 | 20:42
    Охренеть.. это просто шикарная статья, феноменально круто. Большое спасибо за разбор! Надеюсь как-нибудь с тобой связаться для обсуждений чего-либо) Подробнее..
  • Имя: Мария
    09.08.2022 | 14:44
    Добрый день. Если обладаете такой информацией, то подскажите, пожалуйста, где можно найти много-много материала по Yggdrasil и его уязвимостях для написания диплома? Благодарю. Подробнее..
© 2006-2024, personeltest.ru