2016-09-18

Мониторинг микроклимата помещения

Интернет вещей

Интернетом вещей балуюсь уже давно, еще со времен появления первых версий Raspberry Pi.
В блог об интернете вещей еще не приходилось писать, но, думаю, пора это исправить.
Так что же это такое? В Википедии как-то непонятно описано. Интернетом вещей я называю различные устройства (вроде Raspberry Pi, Arduino, ESP и подобных), а так же их взаимодействие с датчиками, сенсорами, исполнительными устройствами и между собой посредством беспроводных технологий или интернета. Все же, в основе, именно взаимодействие через интернет или с помощью беспроводных технологий, а в качестве контроллера может выступать даже компьютер.

Мониторинг климата

2016-09-17

PostCSS и все все все (оптимизация процесса верстки)

В начале 2016 года Microsoft официально объявила о прекращении поддержки своих старых IE. Текущими актуальными версиями браузеров компания начала считать IE11 и последнюю версию Edge.
Edge, судя по собственному опыту использования и сайтам наподобие html5test.com и caniuse.com, довольно таки неплох в плане поддержки современных стандартов. С IE11 частенько приходится еще "пободаться".
Для упрощения верстки уже давно используются различные фреймворки и сборщики CSS (LESS, SCSS и т.п.).
На одном из проектов решил познакомиться с PostCSS, а до этого склонялся к использованию bootstrap+scss.


2015-06-12

Основы AngularJS

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

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

2015-04-14

Виртуализация

Предыстория

История про то, как мы решали проблему тормозов сервера с сайтами и про то, что же такое виртуализация, обзор средств и какие задачи она решает.
Однажды, из-за трудноуловимых тормозов на сервере с кучей сайтов, было принято решение изолировать проекты друг от дружки, а именно - разнести их по виртуальным машинам. На тот момент я себе еще слабо представлял, что же такое гипервизоры, виртуальные машины и контейнеры. Просто что-то где-то слышал и пробовал использовать VMWare и VirtualBox. Но надо было использовать серверное консольное решение и начались поиски информации в интернете.


2014-08-13

Кеширование в Битриксе своих ключей в result_modifier.php и доступ к ним из component_epilog.php

Часто на проектах встречаю выключенный кеш в Битриксе. В основном, отключение производится программистом из-за непонимания правил работы кеша и нежелания разобраться.
Рассмотрим возможность добавления своих ключей в кеш стандартного компонента (в "result_modifier.php") и получение доступа к этим данным из "component_epilog.php".

2014-08-07

Разные кеши на одной странице в Битриксе

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