Search
Write a publication
Pull to refresh
5
0
Андрей @UncleAndy

User

Send message

Построение приложений командной строки (CLI)

Reading time30 min
Views97K
Данная статья написана под влиянием книги Дэвида Коупленда «Build Awesome Command-Line Application in Ruby» (купить, скачать и изучить дополнительные материалы). Большая её часть будет посвящена проектированию дизайна CLI-приложений вне зависимости от используемого языка. По ходу будут обсуждаться и вещи специфичные для ruby, но не страшно, если вы его не знаете, кода будет не слишком много. Можно считать эту статью довольно подробным обзором вышеупомянутой книги с вкраплениями собственного опыта. Книжку рекомендую!

Для начала я задам вопрос. Если посмотреть на сообщества IT-шников, можно заметить, что несмотря на обилие программ с красивым графическим интерфейсом, приложения командной строки остаются весьма популярны. Почему?
Ответов несколько. Во-первых, это красиво удобно — если вы можете описать задачу командой в командной строке, то её гораздо проще автоматизировать, чем если вам приходится анализировать передвижения мыши и клики на разные пункты меню. Во-вторых, это даёт возможность комбинировать программы невероятным числом способов, чего сложно добиться с помощью графических интерфейсов.
В значительной степени философия Unix базируется на том принципе, что множество маленьких утилит, каждая из которых умеет делать свою конкретную задачу — это лучше, чем одна многофункциональная программа-универсал. И это одна из причин успеха Unix-систем в мире IT-шников.
Наверное, каждый понимает, что обычного пользователя вряд ли удастся сманить от GUI к CLI, давайте сосредоточимся на нас, «компьютерщиках» и конкретизируем наши пожелания к CLI-приложениям.
Читать дальше →

Тонкости Rails 4 — Turbolinks

Reading time5 min
Views39K


Гем под названием Turbolinks способен неплохо ускорить ваше приложение, используя JavaScript для обновления контента на странице. Он включен по умолчанию в Rails 4, но я покажу, как можно использовать его уже сейчас в программах, написанных на Rails 3. Также вы узнаете о некоторых подводных камнях.
Читать дальше →

OVH: заказываем микро-сервер у крупнейшего хостера в мире

Reading time3 min
Views112K
OVH — на данный момент является крупнейшим хостинг-провайдером в мире, 120 тысяч серверов в Европе и еще 360 тысяч — в Канаде. Дичайшая конкуренция на французском рынке держит цены на низком уровне (особенно на трафик).

Интерес эта компания у многих вызывала давно, до 2011-года они вообще работали только с резидентами ЕС, после — регистрироваться приходилось в разных отделениях в разное время, оставалось много неясных (для меня) вопросов. Их я и решил прояснить.

Под катом — краткий рассказ о том, в какой валюте придется платить, как избавиться от НДС, какие документы требуют и краткий тест выделенного сервера на Atom-е за 10 евро в месяц.
Читать дальше →

Обзор читалки PocketBook Basic New 613

Reading time8 min
Views45K


После экспериментов с PocketBook Touch, ко мне в руки попало другое устройство от этого производителя — читалка PocketBook Basic New 613. В отличие от более дорогой модели PocketBook Touch 622, у читалки PocketBook Basic New нет поддержки Wi-Fi, отсутствует возможность прослушивать звуковые файлы формата Mp3, для управления устройством предусмотрены только механические клавиши и джойстик (сенсорного покрытия на экране устройства нет).

Однако, в то же время:
  • Веб-серфинг с использованием Wi-Fi сажает аккумулятор в разы быстрее, чем обычное чтение книг (из моего опыта взаимодействия с PocketBook Touch). Кроме того возможности браузера читалки (для большинства устройств с поддержкой Wi-Fi) во многом уступают возможностям FireFox, Opera и Google Chrome, установленным на стационарный компьютер, ноутбук, нетбук или планшет.
  • Поддержка MP3 не нужна, если вы любите читать глазами (или у вас есть возможность слушать звуковые файлы с телефона, MP3-плеера или другого полезного девайса).
  • Отсутствие сенсора в этом устройстве вполне достойно компенсируется продуманным, компактным и очень удобным интерфейсом читалки.

В устройстве очень порадовала высокая скорость работы, поддержка всех основных форматов электронных книг, обширный набор настроек для шрифтов в книгах текстовых форматов (18 разных шрифтов; возможность задать размер шрифта книги в настройках, или же изменять джойстиком прямо во время чтения; регулируемые поля и многое другое), удобная работа с закладками, заметками и поиском, продуманная система управления личной библиотекой, а также возможность настраивать назначение клавиш под свои нужды.
Это далеко не полный список бонусов, которые доступны в этой читалке от PocketBook, подробнее читайте под хабракатом (будут фотографии и gif-слайдшоу, так что следите за траффиком).
Читать дальше →

Valve выпустила Half-Life под Linux

Reading time1 min
Views77K
Компания Valve сегодня выпустила нативный порт под Linux оригинальной игры Half-Life (да-да, той самой первой игры, 1998 года).



Если пятнадцать лет назад вы не купили игру, а пользовались пиратской версией, то теперь у вас появился шанс отдать долг разработчику. В каталоге Valve игра Half-Life продаётся за 199 руб.

Valve усиленно продвигает игровую платформу Steam и считает Linux самой лучшей платформой для компьютерных игр на десктопе. Может быть, Half-Life 3 даже выйдет эксклюзивно под Linux, кто знает.

Работа с виртуальными машинами KVM. Введение

Reading time4 min
Views77K
Как и обещал, начинаю серию статей о том, как мы делали услугу аренды выделенных серверов на базе KVM.

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

Читать дальше →

Щит и меч в системах ДБО. Прикладное решение

Reading time3 min
Views11K
Механизмы аутентификации и подтверждения платежа посредством электронной подписи широко применяются в системах ДБО. Эволюция технических средств электронной подписи наглядно показана в статье Щит и меч в системах ДБО. Кратко линейку можно представить в виде — токены, токены с криптографией на борту, trustscreen с криптографией на борту.

Обычно устройства с криптографией на борту реализуют базовые криптографические алгоритмы — ЭП, хэш-функцию, шифрование. Но в ряде случаев в системах ДБО для аутентификации и ЭП применяются цифровые сертификаты. Для интеграции криптографических возможностей устройств и инфраструктуры PKI мы выпустили решение Рутокен WEB PKI Edition, мультиплатформенный и мультибраузерный плагин для систем с web-интерфейсом.



Новая версия плагина поддерживает наш trustscreen с криптографией на борту — устройство Рутокен PINPad. Теперь можно проверить, что подписывается действительно платежка, отображаемая в браузере.

Читать дальше →

Meteor — Node.js для гуманитариев

Reading time6 min
Views58K

Введение


На хабре уже несколько раз упоминали о проекте Meteor, основанном в 2011 году семерыми энтузиастами web-технологий из Сан-Франциско. По сути Meteor является просто надстройкой над node.js, который сам ещё даже не дошёл до релизной версии. Тем не менее проект собрал более семи тысяч подписчиков на github и получил 11 миллионов долларов инвестиций.
С чего такая популярность? Дело в заявлении авторов о том, что они хотят кардинально переосмыслить способ написания современных web-приложений в сторону его упрощения. Не секрет, что написание кода на чистом node.js довольно сильно выворачивает мозг и вынуждает использовать различные костыли image в виде control flow средств. На Meteor, говорят авторы, писать крутые приложения сможет даже гуманитарий.
Ну что же, проверим. Имеется: 1 гуманитарий-социолог, закрывший сессию и желающий после Парсонса и Зиммеля перейти на что-нибудь полегче, компьютер с Ubuntu 12.10 и установленный node.js (не спрашивайте, как он оказался у социолога).

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

Автозапуск rails+rvm+unicorn+nginx на FreeBSD

Reading time5 min
Views5.4K
Во-первых, нужно сказать «спасибо» автору этого руководства. Без него я бы долго ещё не сел за написание сего поста: кучу проблем пришлось бы решать самостоятельно. Однако в моём случае ситуация была чуть другая (не Debian, а FreeBSD), да и вопрос с автозапуском unicorn остался открытым. Встречавшиеся мне на просторах интернета решения на изящество тоже не претендовали: делать по службе на веб-приложение — моветон. Во FreeBSD эта проблема решается на первый взгляд просто — созданием «метаслужб», позволяющих запускать более одного экземпляра (в качестве примера — FreeBSD jails). Однако, как это часто бывает, есть нюансы…
Читать дальше →

Дамп memcached на диск

Reading time3 min
Views9.3K
API взаимодействия с memcached представлен во всех популярных языках, поэтому в задачах кэширования это наиболее используемый инструмент. В случае когда не требуется ничего кроме кэширования, видимо, — самый оправданный.
Одна из проблем с которой я столкнулся при работе с memcached — невозможность сбросить его состояние на диск. Существующие решения либо не являлись простым кэшом (представляя скорее БД), либо не были настолько же стабильны и поддерживаемы. Вдобавок имелось желание «покодить», поэтому какой-то из готовых вариантов я мог банально упустить.
Читать дальше →

Планшет Enot J101: 7 дюймов за 75 долларов

Reading time4 min
Views30K
Планшет был случайно обнаружен в сети. Цена заинтриговала — на тот момент составляла 599грн(75$), но были опасения насчет качества.

enot-j101

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

Подумав, посмотрев характеристики, таки решил купить, так как решил что за 100 дол, риск небольшой, и риск себя оправдал, планшет оказался даже очень и очень за свои деньги.
Читать дальше →

10 дистрибутивов Linux специального назначения

Reading time2 min
Views224K
Прелесть Linux в том, что можно сделать дистрибутив под любые запросы. Требуется лишь время и желание. Многие популярные дистрибутивы Linux — результат работы отдельных энтузиастов или групп, недовольных имеющимся набором опций. Вот некоторые из дистрибутивов Linux специального назначения.

1. Parted Magic OS: дистрибутив для восстановления дисков и работы с разделами, который поддерживает более десяти файловых систем и включает различные утилиты для «переноса, копирования, создания, удаления, расширения и сжатия дисковых разделов. Клонирование дисков и осуществление полного бэкапа. Тестирование дисков на возможность сбоя в будущем. Поиск сбойных секторов. Тестирование производительности компьютера. Безопасная полная очистка диска без возможности восстановления. Доступ к незагружаемым HDD для восстановления важных данных».


Читать дальше →

Новый тип EC2 инстанса — High Memory Cluster Eight Extra Large Instance

Reading time1 min
Views4.1K
Привет! image

Сразу вслед за High-Storage Eight Extra Large Amazon Web Services анонсировали новый тип инстансов для In-Memory вычислений — High Memory Cluster Eight Extra Large Instance.

Итак, технические характеристики нового типа инстанса:
  • два восьмиядерных процессора Intel E5-2670 с частотой 2.6 GHz с поддержкой Intel Turbo Boost и NUMA
  • 244 ГБ ОЗУ (!)
  • два 120 ГБ SSD винчестера
  • 10 Гб сеть для Cluster Placement Groups0
  • только HVM виртуализация
  • только EBS-backed AMI
Читать дальше →

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

Reading time9 min
Views55K
Целью данной заметки я ставлю в подробностях описать организацию сервера для Rails приложений в самой популярной на данный момент связке: rvm + Rails + Nginx + Unicorn. К написанию статьи побудило отсутствие полной пошаговой документации по этой связке, понятной не только ядреным профессионалам этой области. Далее я попытаюсь подробно, шаг за шагом, описать идеологически правильный процесс организации сервера для обслуживания нескольких Rails приложений (на примере одного) — если у вас есть абсолютная уверенность в том, что на подопытной машине никогда не будет работать более одного приложения — настройка может быть существенно короче и проще. Хочу предупредить, что тонкости, касающиеся работы приложения под высокой нагрузкой в статье не описываются, т.к. цель ставилась иная — заставить работать приложение в связке и сократить количество конфликтов с другими приложениями до минимума.
Читать дальше →

Светодиодная лента в качестве освещения комнаты

Reading time15 min
Views1.3M
Изначально для основного освещения одной из комнат, где шёл капитальный ремонт, планировалась обычная люстра. Но недавно мне на глаза попалась суперяркая светодиодная лента Ultra 5000 со светодиодами smd 5630 торговой марки Arlight. Решение было принято быстро, окончательно и бесповоротно — хочу такую ленту в качестве основного света в комнате.



О реализации светодиодного периметра освещения далее

R’ha — короткометражный анимационный фильм немецкого студента, открывший ему двери в Голливуд

Reading time2 min
Views240K
Удивительным образом в рунете почти нет информации об этом ярком событии, но я сейчас это исправлю. Шутка ли, студент первого курса Высшей школы медиа-дизайна из Берлина, благодаря своему короткометражному анимационному фильму под названием R`ha получил контракт в Голливуде!



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

«В его работе присутствуют кадры, достойные фильма с бюджетом в 150 миллионов долларов» — пишет продюсер фильма «Сезон ураганов».

Но по порядку.
Читать дальше →

Подмена DSDT через GRUB2

Reading time3 min
Views17K
Зачем все это надо? Причина в том, что мой нынешний ноутбук Gigabyte Q1105M нестабильно работает под Линуксом. Проблема явно где-то на уровне БИОСа и проявляется в спонтанных зависаниях наглухо. В среднем раз в несколько часов. И это точно не перегрев и не сбой драйверов. Лечится только отключением одного из ядер в БИОСе, что по понятным причинам не годится. Полным перебором всех источников проблемы уткнулся в конце концов в кривой DSDT, что весьма типично для производителей ноутбуков второго эшелона.
Читать дальше →

Ускоряем запуск Ruby on Rails используя набор патчей RVM railsexpress

Reading time2 min
Views7.4K
Эта статья для тех, кто хочет ускорить запуск рельс, а заодно ускорить работу интерпретатора ruby.
О том как установить RVM (Ruby version manager) уже написано много статей, поэтому я перейду сразу к делу.
Список патчей в RailsExpress для Ruby 1.9.3-p362
(это последняя версия руби на момент написания статьи)
Applying patch railsexpress/01-fix-make-clean.patch
Applying patch railsexpress/02-railsbench-gc.patch
Applying patch railsexpress/03-display-more-detailed-stack-trace.patch
Applying patch railsexpress/04-fork-support-for-gc-logging.patch
Applying patch railsexpress/05-track-live-dataset-size.patch
Applying patch railsexpress/06-webrick_204_304_keep_alive_fix.patch
Applying patch railsexpress/07-export-a-few-more-symbols-for-ruby-prof.patch
Applying patch railsexpress/08-thread-variables.patch
Applying patch railsexpress/09-faster-loading.patch
Applying patch railsexpress/10-falcon-st-opt.patch
Applying patch railsexpress/11-falcon-sparse-array.patch
Applying patch railsexpress/12-falcon-array-queue.patch

Читать дальше →

Остановка неиспользуемых хостов через CloudWatch

Reading time1 min
Views2.7K
Привет! image

Многие сталкивались с тем, что ресурсы системы простаивают. Обычная практика борьбы с простоем — удаление из системы этих ресурсов. С практической точки зрения на AWS, мы уже давно имеем инструменты терминировать простаивающие EC2 инстансы. Но это иногда не практично.

Возьмём ситуацию, когда при каждом старте нового инстанса при автоскейлинге, он каждый раз конфигурируется и обновляет софт. Т.е. это занимает определённое время и требует определённых взаимодействий. И вот каждый раз при скейлдауне эти инстансы выключаются и удаляются, а при скейлауте — поднимаются и снова конфигурируются. Как бы было хорошо, если бы инстансы просто выключались, а не удалялись!
Читать дальше →

Мобильное приложение для управления AWS

Reading time1 min
Views3.5K
Привет! image

Мои поздравления пользователям Android! С сегодняшнего дня доступно официальное приложение для управления облаком Amazon Web Services с вашего девайса со следующим функционалом:
  • Просматривать детали серверов EC2 и метрик CloudWatch
  • Фильтровать и сортировать серверы EC2 и метрики CloudWatch
  • Останавливать и перегружать серверы EC2
  • Просматирвать тревоги из CloudWatch
  • Просматривать графики из CloudWatch
  • Просматривать автоматические действия для CloudWatch
  • Переходить из тревог CloudWatch на EC2 серверы, которые пострадали
  • Работать во всех регионах
  • Переключаться между разными пользователями
Читать дальше →

Information

Rating
Does not participate
Location
Подгорица, Подгорица, Черногория
Date of birth
Registered
Activity

Specialization

Backend Developer, Database Developer
From 500,000 ₽
Golang
Docker
PostgreSQL
Git
Nginx
High-loaded systems
Kubernetes
Linux
MySQL
Redis