Search
Write a publication
Pull to refresh
21
0
Славкин Олег @OlegSL

DevOps

Send message

Сохранение данных Google Reader

Reading time7 min
Views29K
Чем ближе дата закрытия Google Reader тем более насущным становится вопрос не только переноса подписок в аналогичный сервис, но и сохранения всех текущих записей.

Найденные решения, в том числе и на хабре(здесь и здесь), не подошли в основном по двум причинам: нет возможности сохранения в БД и медленная скорость работы. Пришлось собрать свой велосипед — grbackup, который
grbackup -e fake@gmail.com -p password -ba -o mongodb://localhost:27017 -w 20

за 20 минут сохранил 328250 записей из 102 подписок в локальную БД MongoDB.

Основные возможности:
  • сохранение всех записей, которые можно получить при помощи Google Reader API
  • сохранение записей в различные хранилища
  • использование формата идентичного тому, что отдает Google Reader через API
  • параллельное получение/сохранение записей
  • расширяемость: возможность добавить новый вид хранилища


Доступные виды хранилищ определяются расширениями(плагинами) и задаются при помощи опции (-o, --output) вида type:uri.
На момент написания статьи доступны следующие расширения:
  • simple: вывод в терминал (используется только в режиме просмотра)
  • json: запись в json-файл (json:/path/to/file.json)
  • mongodb: запись в MongoDB (mongodb://[username:password@]hostN[:portN]]][/[db][?opts]])
  • redis: запись в Redis (redis://username:password@host[:port]/dbindex)

Работоспособность проверена на Ubuntu(64) и Win7(64).
Книгу предложений и замечаний можно найти здесь.
Ниже находится подробное описание утилиты.
Читать дальше →

Как найти работу в Германии

Reading time4 min
Views146K

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

Эти незаменимые регистрационные карточки

Reading time10 min
Views74K
image

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

Каково быть ИП? Выводы после года работы

Reading time2 min
Views63K
Снова, привет!

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

Год назад я уволился из хорошей it-компании, проработав там 5 лет. Причины приводить не буду, чтобы не отвлекаться от темы. И оформив ИП, стал индивидуальным разработчиком (специально не говорю «фрилансер», т.к. не люблю это слово). За этот год я успел сделать некоторые выводы и сейчас делюсь ими с тобой (уточню, что буду вести речь исключительно об удаленной работе):
Читать дальше →

Как построить VDI для сложной графики

Reading time4 min
Views19K
Централизация рабочих столов и клиентских ПК в центре обработки данных сегодня все чаще становится предметом обсуждения в IT-сообществе, особенно интересен такой подход для крупных организаций. Одной из наиболее «горячих» технологий в этом отношении является VDI. VDI позволяет централизовать обслуживание клиентских окружений, упростить развертывание приложений, их настройку и конфигурирование, а также обновление и контроль соответствия требованиям безопасности.



VDI «отвязывает» рабочий стол пользователя от аппаратного обеспечения. Развертывать можно как постоянный виртуальный рабочий стол, так и (наиболее частый вариант) гибкую виртуальную машину. Виртуальные машины включают индивидуальный набор приложений и настроек, который разворачивается в базовой ОС при авторизации пользователя. После выхода из системы, ОС возвращается в «чистое» состояние, убирая любые изменения и вредоносные программы.

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

Но что делать, если хочется виртуализовать более серьезную графическую станцию?
Читать дальше →

Видео-курс по Swift на русском языке

Reading time1 min
Views116K
Здравствуй, Хабр!

Мы сделали видео-уроки по языку Swift на основе бесплатной книги The Swift Programming Language от Эппл.



Все 32 урока доступны на нашем сайте. Несколько уроков – под катом.
Читать дальше →

Неочевидные особенности работы СХД

Reading time7 min
Views22K
image

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

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

Почему VMWare? Все просто, я являюсь специалистом по данной среде виртуализации, имею статус VCP5. Продолжительное время работал с крупными заказчиками и имел доступ к их системам.

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

Как сделать рабочий стол, или аутсорсинг решает

Reading time3 min
Views275K
Хабраюзер любит темы про домашние рабочие места, поэтому покажу и я свое, свежеиспеченное.



Топик отношу к DIY – потому как все здесь сделано для меня, благодаря мне и для меня. БОльшая часть «работ» была отдана профессионалам, и это не потому что я «такой уж рукожопый» (хотя и это присутствует), а потому что я хочу пользоваться вещами, удовлетворяющими моим требованиям. А сделать такие самостоятельно – будет очень долго, нервно, муторно => дорого (да и не факт, что получится).

Собственно говоря, руководствуясь этим правилом в последнем ремонте ничего мною лично и не делалось.☺
Читать дальше →

Метод быстрого вычисления адреса IPv4 сети по маске

Reading time1 min
Views64K
В процессе вычисления сетей, при подготовке к CCNA, я выявил интересную закономерность, на основе которой можно быстро вычислять адрес сети, а так же ее широковещательный адрес без особых усилий. Этот метод я ранее в литературе не встречал.
Читать дальше →

Интеграция дизайна мобильных приложений. Часть 2: iOS, Windows Phone

Reading time3 min
Views42K


Это вторая часть доклада, который я прочитал на Dribbble Meetup 2013 в Москве. В первой части я подробно описал свой процесс интеграции дизайна под платформу Android. Эта часть — про интеграцию дизайна под iOS и Windows Phone, а также я вскользь упомяну про Samsung Bada 2.0. Дальше — много картинок.

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

TCP(syn-flood)-netmap-generator производительностью 1,5 mpps

Reading time14 min
Views21K
Дано:
# pciconf -lv | grep -i device | grep -i network
    device     = I350 Gigabit Network Connection
# dmesg | grep CPU:
    CPU: Intel(R) Core(TM)2 Duo CPU     E7300  @ 2.66GHz (2666.69-MHz K8-class CPU)
# uname -orp
    FreeBSD 9.1-RELEASE amd64

Задача:
Необходимо на данном оборудовании и ОС создать нагрузочную вилку в виде tcp(syn)-генератора трафика производительностью не менее 500kpps.

Решение:
Читать дальше →

Сетевое кеширование в iOS. NSURLCache

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

NSURLCache — это комплексное решение для кеширования сетевых запросов в оперативной памяти или на диске. В соответствии с документацией Apple, любой запрос с использованием NSURLConnection будет «пропущен» через NSURLCache.

Кеширование уменьшает количество необходимых обращений к сети, улучшает впечатление от работы с программой во время полного отсутствия интернета или проблем с сетевым соединением.
Читать дальше →

Разработка мобильных приложений: с чего начать

Reading time10 min
Views470K


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

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

90 рекомендаций по стилю написания программ на C++

Reading time20 min
Views419K
От переводчика. Искал в интернете простой и легко применимый гайдлайн по написанию программ на C++. Мне понравился один из вариантов, и я решил его перевести и опубликовать. Если хабрапользователи хорошо встретят этот топик, могу перевести и другие связанные документы, а также гайдлайны по написанию кода от других компаний.

1 Введение


Настоящий документ содержит рекомендации по написанию программ на языке C++.

Рекомендации основаны на установившихся стандартах, собранных из различных источников, личного опыта, частных требований и потребностей определённых проектов, а также почерпнутых из источников (см. ниже).

Но для появления ещё одного списка рекомендаций, помимо указанных источников, есть несколько причин. Основная причина — их излишняя обобщённость, поскольку зачастую требуется задать частные правила (в особенности правила именования). Данный документ содержит комментарии, что делает его более удобным в использовании при проведении ревизий кода, чем другие уже существующие документы. К тому же, рекомендации по программированию обычно вперемешку содержат описания проблем стиля и технических проблем, что не совсем удобно. Этот документ не содержит каких-либо технических рекомендаций по C++, делая упор на вопросах стиля.
Читать дальше →

Баланс в играх жанра Tower Defense (часть 1)

Reading time7 min
Views69K
В данной статье речь пойдет о принципах вычисления баланса в нашей игре жанра Tower Defense (TD), которую мы выпустили летом 2012г. для платформ iOS и Android. Мы расскажем, c какими сложностями и ограничениями пришлось столкнуться, каков был ход мыслей геймдизайнера при выборе того или иного решения, и как был получен конечный результат.

Достижения игры
1. побывала в топ6 и топ7 в категориях US Appstore;
2. занимала топ1 категорий и топ7 overall в RU Appstore;
3. «письмо счастья» от Apple;
4. 425 000 закачек;
5. 5 звезд (средняя оценка для всех магазинов);
6. множество положительных комментариев;
7. обзоры на ведущих мировых мобильных порталах.


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

[Перевод] Как я читаю книги по программированию

Reading time4 min
Views139K
Я получил образование по специальности «Электротехника» и единственными языками программирования, которые мы изучали были C/C++, ассемблер и Matlab. После того как я посетил Startup Weekend, я понял, что информатика и разработка программного обеспечения мне небезразличны и решил погрузиться в эти области с головой. Также я осознал, что мне требуется изучить еще несколько языков программирования, помимо тех, которые я изучал в университете.

За прошедшие полтора года я начал изучать Java (для Android), а также Python, JavaScript, HTML и CSS (для web-разработки) и выявил для себя, что лучший способ изучать язык программирования, разбирая книгу или туториалы, — читать все по три раза! Да, именно по 3 раза!!! Чтение нового материала подобным образом, хорошо помогло мне понять новые языки программирования и концепции.
Читать дальше →

Objective-C как первый язык программирования

Reading time25 min
Views112K
Данный пост был задуман после того, как на некоторые важные вопросы не было найдено внятных ответов. Я отнюдь не претендую на то, что стал крутым программистом. Нет, всё ещё впереди, но период высиживания уже пройден. Это статья из цикла «Не умеешь сам — научи другого». В смысле, чтобы что-то лучше понять нужно это что-то, кому-то объяснить. Мопед не мой, эта фраза встречалась мной раньше в публикациях на Хабре. Некоторые вещи очень сложно понять. И люди, которые понимают, обычно не могут объяснить начинающему. Может быть меня тоже это ждёт. Это как разговор взрослого и ребёнка. Практически конфликт поколений. Пока мой уровень не перерос в профессионала, нужно изложить моё текущее видение.
узнать то, что не знают профессионалы

Хочешь быть iOS разработчиком? Будь им!

Reading time2 min
Views389K
На хабре в прошлом месяце была опубликована статья Конкурс ВК: Мессенджер для Android. Как это было!, в которой автор поделился своими мыслями о конкурсе и опубликовал список ресурсов и статей, которые помогли ему в создании приложения. Так как в последнее время я начал изучать разработку под iOS, то у меня скопилось некоторое количество ссылок, которые могут быть полезны для начинающих. Поэтому я последую его примеру и сделаю то же самое, только для своей платформы. Надеюсь, кому-нибудь они окажутся полезны и сэкономят немного времени.

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

Information

Rating
Does not participate
Location
Москва, Москва и Московская обл., Россия
Works in
Registered
Activity

Specialization

Network Engineer, DevOps
Lead