Как стать автором
Обновить
2
0.1
Алексей @cmd01

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

Отправить сообщение

Связка rvm + Rails + Nginx + Unicorn или деплоим рельсы правильно

Время на прочтение9 мин
Количество просмотров55K
Целью данной заметки я ставлю в подробностях описать организацию сервера для Rails приложений в самой популярной на данный момент связке: rvm + Rails + Nginx + Unicorn. К написанию статьи побудило отсутствие полной пошаговой документации по этой связке, понятной не только ядреным профессионалам этой области. Далее я попытаюсь подробно, шаг за шагом, описать идеологически правильный процесс организации сервера для обслуживания нескольких Rails приложений (на примере одного) — если у вас есть абсолютная уверенность в том, что на подопытной машине никогда не будет работать более одного приложения — настройка может быть существенно короче и проще. Хочу предупредить, что тонкости, касающиеся работы приложения под высокой нагрузкой в статье не описываются, т.к. цель ставилась иная — заставить работать приложение в связке и сократить количество конфликтов с другими приложениями до минимума.
Читать дальше →
Всего голосов 68: ↑63 и ↓5+58
Комментарии135

Мой web-интерфейс управления умной квартирой

Время на прочтение2 мин
Количество просмотров44K
Привет!

Последние 1.5 года я работаю над очень интересным проектом — это система управления домом по сценариям. Она позволяет навешивать произвольную логику (сценарии) на различные события в доме (срабатывание датчиков, нажатия кнопок, события от внешних сервисов, например, получнеие email или сообщения в twitter). Система имеет модульную архитектуру, весь функционал находится в плагинах. Если нужно добавить новый тип события или новые команды «домашнего API», нужно просто добавить плагин для этого.

В феврале у нас был первый релиз. Первая версия включала фреймворк для домашней автоматизации: систему плагинов и инфраструктуру для них (чтобы плагины могли описывать свой API и события, а также использовать API и подписываться на события друг друга). Сейчас близится релиз второй версии, основная фича которого — новый веб-интерфейс.



UI теперь — модульное одностраничное приложение. Плагины могут описывать свой UI в виде html/js/css файлов, расположенных в ресурсах DLL. Клиентская часть UI основана на backbone.js и marionette.js, модули загружаются через require.js. В целом получилось довольно удобно для авторов плагинов — даже не имея глубоких знаний java script, можно, смотря в примеры, описать полноценный UI, который будет автоматически подключен в интерфейс управления домом.

А теперь - слайды!
Всего голосов 43: ↑37 и ↓6+31
Комментарии41

Если нет денег на AXIS, или управляемая вебкамера своими, в меру кривыми, руками

Время на прочтение6 мин
Количество просмотров42K
Когда я впервые увидел трансляцию видео с управляемой вебкамеры на 13-м этаже МГУ, меня это очень впечатлило. Настолько, что захотелось устроить нечто аналогичное. На камеры типа AXIS 214PTZ лишних денег у меня нет, так что пришлось на некоторое время эту идею оставить. До тех пор, пока я не узнал про Arduino и про то, что к ней можно приделать «сетевую карту» и моторчики. Необходимые комплектующие быстренько были приобретены и у меня в наличии оказалось всё для сооружения полноценной вебкамеры, управляемой по сети.

Изучение интернетов показало что идея приделать камеру к сервам приходит первой ко всем счастливым обладателей ардуины и сервомашинок. Однако, ни одна из уже реализованных схем управления (кнопками, мышкой PS/2, с управляемого роутера, с компа, с вебстранички на встроенном в ардуину сервере) меня не впечатлило, ибо неудобно, имхо. Хотелось чего-то универсального, чтобы можно было выложить веб-интерфейс на сайт и с него управлять.

В итоге появилась вот такая штукенция:

Читать дальше →
Всего голосов 251: ↑245 и ↓6+239
Комментарии113

Почему рост качества вызывает рост некачества, или должна ли работать основная функция

Время на прочтение7 мин
Количество просмотров31K
Аналоговое видео Глупо спорить с тем, что аналоговое видеонаблюдение уходит в прошлое: дешевые IP камеры дают картинку сопоставимого качества с дорогими аналоговыми. Помимо этого, IP камеры не ограничены сверху ничем, кроме производительности регистратора, тогда как аналоговые камеры требуют жесткого соответствия приёмной карты, согласования уровней сигнала передатчиков/усилителей/приемников и прочего шаманства.
Конструируя систему на базе IP камер в любой момент можно снять камеру и заменить на более качественную — если при этом сохранить IP адрес и логин-пароль, то, скорее всего, даже не придётся менять настройки приемника — просто в архив пойдёт более качественная картинка.
С другой стороны, это накладывает ограничения на регистратор — он должен быть готов работать с любым разрешением, любым битрейтом, любым кодеком и любым протоколом… Ну или по крайней мере, корректно работать с заявленным.

Шива В мире софта есть два пути — есть linux-way: это набор небольших программ, каждая из которых делает одну функцию, но очень хорошо; и есть windows-way: это огромные кухонные комбайны, которые умеют делать всё, и немного больше. Главная проблема linux-way — это отсутствие интерфейса. Чтобы получить всю пользу придётся скурить маны (или хотя бы прочитать --help), и поэкспериментировать. А так же сообразить, что и с чем можно скомбинировать и как. Главная проблема windows-way — это потеря основной функции. Очень быстро при обрастании доп.функционалом теряются тесты ключевого функционала, и со временем начинаются проблемы даже с ним. А еще при этом начинается инерция мышления: «это главная функция, она оттестирована сильнее всего, там бага быть не может, пользователь делает что-то не то».
Читать дальше →
Всего голосов 67: ↑64 и ↓3+61
Комментарии51

Головная станция IPTV

Время на прочтение4 мин
Количество просмотров92K
Доброго времени суток!

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



Итак, что мы имеем:

  • 7 спутниковых антенн на 11 спутников
  • Мультисвитчи в нужном количестве
  • ~80 спутниковых приемников
  • Видеошлюзы (стриммеры)
  • Серверы Middleware
  • Видео сервера (VOD, NPVR)
  • Сервера потокового шифрования
  • Систему мониторинга




Читать дальше →
Всего голосов 91: ↑85 и ↓6+79
Комментарии112

Защита подъезда методом организации разумного видеонаблюдения без консьержа

Время на прочтение13 мин
Количество просмотров259K
Так получилось, что какой бы ни был аккуратный микрорайон, он всегда с чем-нибудь соседствует, плюс всегда есть праздношатающиеся, непраздношатающиеся и «этождети». Это если забыть про наркоманов, целенаправленных воров и разбойников. Твой дом — твоя крепость. Подъезд твоего дома — тоже твой дом. (Да, этот пункт многие не понимают, но учиться никогда не поздно). Классические методы защиты подъезда — установка укреплённых дверей; установка домофона; инсталляция консьержки; организация видеонаблюдения над входами.

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

Однако, если включить мозги и подумать, на самом деле можно весьма небольшими вложениями получить очень эффективный результат.
Читать дальше →
Всего голосов 298: ↑294 и ↓4+290
Комментарии314

Шпионские гаджеты от АНБ

Время на прочтение10 мин
Количество просмотров395K
imageСреди документов опубликованных Эдвардом Сноуденом, бывшим сотрудником ЦРУ и Агентства национальной безопасности США, были обнаружены материалы описывающие некоторые детали технологий шпионажа используемых АНБ. Список программных и аппаратных средств оформлен в виде небольшого каталога. Всего сорок восемь страниц отмеченных грифами «Секретно» и «Совершенно секретно», на которых дано краткое описание той или иной технологии для слежки. Данный список не является исчерпывающим. Представлены техники связанные с получением скрытого доступа к вычислительной технике и сетям, а также способы и устройства радиоэлектронной разведки связанные с мобильной связью и оборудование для наблюдения. В этой статье я расскажу об этих методах шпионажа, далее будет четыре дюжины слайдов(осторожно, трафик).
Узнать больше
Всего голосов 256: ↑251 и ↓5+246
Комментарии222

За что конкретно я ненавижу некоторых отдельно взятых маркетологов — или как айтишник по магазинам ходил

Время на прочтение5 мин
Количество просмотров615K
Знакомьтесь, это обычный «литровый» пакет молока:

image

  • Проверка на внимательность: там 900 грамм. Рядом несколько по 950. Но пакет может быть воспринят как литровый.
  • Проверка на знание физики. Рядом лежит похожий кефир. Объём измеряется в миллилитрах, масса — в граммах. Плотность кефира трагически выше плотности воды. То есть 900 грамм кефира 3,2% жирности — это примерно 874,5 миллилитров.

Второй пациент:



25 лет гарантии. Круто, правда? Есть одна проблема. Надо сохранять чек. Проверка, опять же, на знание физики. Чек у них печатается на обычной кассовой термоленте (я проверил на месте). У меня в офисе лежит много чеков. Мы их ксерокопируем, потому что через год-два они полностью выцветают. Самый старый чек, который видел коллега, держался 3 года в папке в архиве. UPD: смотрите самый низ топика, Икея ответила.

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

Осторожно, трафик: под катом много находок с фотографиями.
Читать дальше →
Всего голосов 814: ↑769 и ↓45+724
Комментарии778

Медленная работа SD карточек — кто виноват и что делать?

Время на прочтение6 мин
Количество просмотров126K
Давно думал написать статью на Хабр, но все как-то не решался. Хотя и кажется, что есть мысли, которые были бы небезинтересны сообществу, но останавливает предположение, что это «кажется» проистекает от завышенной самооценки. Тем не менее попробую. Поскольку я профессионально занимаюсь электроникой, в частности, программированием микроконтроллеров, довольно-таки длительное время (как я подозреваю, дольше, чем живет большАя а может даже и бОльшая часть читателей Хабра), то за это время накопилось изрядное количество интересных случаев. Представляю на суд сообщества рассказ об одном из них.

Итак, в одной разработке мне потребовалось сохранять значительные объемы информации с целью последующей передачи через сеть в обрабатывающий центр. Поскольку полученное устройство предполагало серийное производство, был выбран вариант с применением относительно недорогих компонентов, и, в частности, микроконтроллера как центрального элемента системы. Поскольку в тот момент (середина 2012 года) предложение микроконтроллеров с Ethernet PHY на борту не отличалось разнообразием (да и сейчас положение не намного лучше), был выбран МК фирмы TI семейства Stellaris, конкретно LM3S8962, тем более что отладочная плата для него у меня уже имелась. МК на тот момент относительно новый, активно продвигаемый фирмой TI (это в конце 2013 года она ВНЕЗАПНО перевела всю серию в разряд NRND), и обладающий вполне достаточными для решения данной задачи параметрами. Для хранения информациии был выбран вариант с SD карточкой, в первую очередь из за их доступности и дешевизны, а также потому, что на отладочной плате наличествовало контактное устройство для них, а на поставляемом с платой отладки CD имелись многочисленные примеры, в том числе и для SD карт. Интерфейс к карточке был реализован простейший — SPI, предложенные примеры сходу заработали, принятое решение позволяло обрабатывать полученные данные до написания интерфейса при помощи элементарного переноса карточки из устройства в кард-ридер ПК, так что первоначальная отладка алгоритмов взаимодействия с объектом управления проблем не вызвало, по крайней мере в этой части проекта. Как все понимают, проблемы возникли несколько позже…
Читать дальше →
Всего голосов 102: ↑102 и ↓0+102
Комментарии38

Краткие заметки по Cisco CCNA (часть ICND1)

Время на прочтение8 мин
Количество просмотров103K
Приветствую!

В этом посте я структурировал заметки, созданные вместе со слушателями на курсах в процессе повторения пройденного материала. Изначально все это делалось в блокноте. В посте нет детальных описаний и т.д. Добавил немного графиков и оформил по порядку. В общем, рассматривайте информацию, как краткие шпаргалки, которые можно почитать вечером перед сдачей экзамена, чтобы быстро все освежить в памяти. Если будет интересно, то можно выложить ICND2, да и много чего еще есть в таком же духе.
Читать дальше →
Всего голосов 24: ↑20 и ↓4+16
Комментарии43

Пропавшие без вести (топ 10 полезных команд не попавших в курс CCNA)

Время на прочтение4 мин
Количество просмотров24K
В курсе CCNA содержится великое множество команд для настройки и отладки самых разных сетевых протоколов и технологий. Все необходимые инструменты в наших руках, но это далеко не все инструменты, с помощью которых мы можем работать с сетевым оборудованием. Мы составили список из 10 наиболее полезных команд, которые должны были быть в курсе CCNA, но по каким-то таинственным причинам куда-то пропали.

Читать дальше →
Всего голосов 52: ↑47 и ↓5+42
Комментарии30

Прокачай английский с LinguaLeo: cоздавай тематические словари, тренируй память и занимайся в группе!

Время на прочтение4 мин
Количество просмотров34K


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

Во-первых, теперь каждый пользователь может создавать и публиковать тематические наборы слов на LinguaLeo. Ими можно поделиться со всеми или отправить ссылку на набор кому-то одному. Во-вторых, теперь все изучаемые наборы слов можно проводить через тренировку brainstorm. Она построена так, что пользователь быстро запоминает значение и написание слов. В третьих, изучать английский на LinguaLeo теперь можно в группе.

Под катом мы расскажем, что получилось и как оно работает.
Читать дальше →
Всего голосов 43: ↑34 и ↓9+25
Комментарии76

Новая «Цивилизация» выйдет уже этой осенью

Время на прочтение1 мин
Количество просмотров87K


Много лет назад Сид Мейер выпустил космическую игрушку "Альфа Центавра Сида Мейера". Долгое время от Сида Мейера не было новостей, и вот теперь поклонники серии «Цивилизации» могут быть довольны. На сцене появляется «Civilization: Beyond Earth».

Как можно понять из названия, действие игры будет разворачиваться вне Земли, где-то в космическом пространстве. В принципе, новая игрушка — скорее сиквел к «Альфа Центавра Сида Мейера», чем к «Цивилизации».

Читать дальше →
Всего голосов 89: ↑79 и ↓10+69
Комментарии72

Сети для самых маленьких. Часть девятая. Мультикаст

Время на прочтение51 мин
Количество просмотров662K

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

В этой статье сосредоточимся на следующем:




Читать дальше →
Всего голосов 108: ↑106 и ↓2+104
Комментарии27

Вычисление редакционного расстояния

Время на прочтение5 мин
Количество просмотров63K

Редакционное расстояние, или расстояние Левенштейна — метрика, позволяющая определить «схожесть» двух строк — минимальное количество операций вставки одного символа, удаления одного символа и замены одного символа на другой, необходимых для превращения одной строки в другую. В статье излагается метод вычисления редакционного расстояния при использовании небольшого объема памяти, без существенной потери скорости. Данный подход может быть применен для больших строк (порядка 105 символов, т.е. фактически для текстов) при получении не только оценки «схожести», но и последовательности изменений для перевода одной строки в другую.
Читать дальше →
Всего голосов 81: ↑78 и ↓3+75
Комментарии19

Наш контроллер для умного дома

Время на прочтение6 мин
Количество просмотров156K


UPD: мы сняли работу Wiren Board Smart Home на видео

Краткое содержание:


На базе нашей платформы Wiren Board (компактный индустриальный компьютер с Linux и разными интерфейсами) мы сделали навороченный контроллер для домашней автоматизации Wiren Board Smart Home (ARM9 64MB RAM, GSM/GPRS, Ethernet, Wi-Fi, USB, 2xRS-485/Modbus, CAN, 2 реле, ASK/FSK радиомодуль 433MHz, NRF24L01+ и т.д.), к которому можно подключить кучу всяческих проводных и беспроводных исполнительных устройств и датчиков от разных систем и производителей. Устройство готово и протестировано. На устройства из первой большой партии мы открываем заказ с доставкой до майских праздников по специальной цене.
Читать дальше →
Всего голосов 93: ↑87 и ↓6+81
Комментарии132

Как хвост виляет собакой. Азбука пропаганды

Время на прочтение4 мин
Количество просмотров210K
Чем доступнее информация, тем больше её вокруг. Чем быстрее она распространяется, тем меньше остаётся времени на то, чтобы её проверить. Постепенно информационная среда превращается в некое подобие «белого шума». Всё труднее строить внутри себя новые информационные фильтры, чтобы отсеять лишнее: убрать в сторону лозунги, агитацию, пропаганду, а оставить только то, что на самом деле кроется за ними. А манипулировать нашими мыслями пытаются постоянно, и я говорю не о 25-ом кадре (он не работает), а о более земных вещах — приёмах пропаганды, которые так умело (а зачастую — очень топорно) используют политики, рекламщики и вообще, все, кому не лень. Об этих приёмах и пойдёт речь в статье.

Хвост виляет собакой. ("Wag the dog") — чтобы избежать большого скандала или «замять», оставить незамеченным какое-нибудь важное, но неприятное событие, часто используется простой, но хитрый и ловкий приём, который англоязычные политтехнологи называют «Wag the dog», а русскоязычные — «Хвост виляет собакой». Он заключается в том, чтобы вовремя поднять волну обсуждения вокруг вопроса второстепенной важности, на фоне которой другое, более важное событие или действие пройдёт незаметно.
Примеры таких вопросов: Отмена перехода на зимнее время, российское гражданство Депардье, поездка Путина или Саши Грей на Ладе Калине по России, полёты со стерхами и т.д.
Своё название этот приём получил в честь английского выражения tail wagging the dog, который, в свою очередь, появился из следующего народного пассажа:
— Почему собака виляет хвостом?
— Потому, что собака умнее, чем хвост. Если бы хвост был умнее, он вилял бы собакой.

Ещё 7 приёмов - под катом
Всего голосов 402: ↑352 и ↓50+302
Комментарии183

О космической доброте и Челябинском метеорите

Время на прочтение4 мин
Количество просмотров104K
Пока NASA находится в коматозе, самое время рассказать о том, как российская космическая доброта, одержала маленькую победу над российским космическим равнодушием. Сегодня снова поговорим о нашем спутнике Электро-Л, и о том как Хабр может творить маленькие чудеса.

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


Читать дальше →
Всего голосов 395: ↑390 и ↓5+385
Комментарии80

IPv6 теория и практика: виды пакетов и автоконфигурация

Время на прочтение5 мин
Количество просмотров63K
Эта вторая статья, продолжающая цикл, посвященный IPv6. В первой вводной статье речь шла о структуре IPv6 пакета, записи адресов, префиксе. Сегодня мы поговорим о том, какие виды пакетов бывают в IPv6, о важности мультикастов, а также, о видах автоматической конфигурации хоста в IPv6.
Примечание: в этой и других статьях под словом «маршрутизатор» я подразумеваю «маршрутизатор cisco».
Читать дальше →
Всего голосов 40: ↑36 и ↓4+32
Комментарии13

IPv6 теория и практика: введение в IPv6

Время на прочтение7 мин
Количество просмотров139K
Этой статьёй я хочу начать цикл, посвященный IPv6. Я являюсь инструктором академии Cisco, поэтому, если вы в совершенстве знаете материал нового CCNA Routing & Switching, то скорее всего, не найдёте в цикле ничего нового. Речь пойдёт о структуре и особенностях протокола IPv6, а также, применении его на маршрутизаторах Cisco (маршрутизация RIP, OSPF, EIGRP, списки контроля доступа, и др. – как пойдёт). В первой статье мы поговорим о структуре IPv6 пакета, записи адресов, префиксе. Вторая статья цикла доступна здесь. Информация подойдёт для новичков, имеющих, тем не менее, некоторые знания по IPv4 и модели OSI.
Цикл статей основан на материалах моего блога, которые, в свою очередь, основаны на опыте преподавания, работы с оборудованием и вольном переводе и обдумывании официального курса CCNA Routing & Switching.
Итак, начнём. Не буду останавливаться на стандартных рассуждениях о том, что IPv4 адресов мало, о том, что NAT и прокси – это костыли, о том, что костыли пока работают, и никто не хочет переходить на IPv6, вместо этого – сразу к сути.
Читать дальше →
Всего голосов 39: ↑35 и ↓4+31
Комментарии42

Информация

В рейтинге
3 704-й
Откуда
Москва, Москва и Московская обл., Россия
Дата рождения
Зарегистрирован
Активность