Как стать автором
Обновить
15
0
Дмитрий @StamPit

Operations

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

25+ видеоуроков по Android для начинающих

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

Приветствую вас, уважаемый хабрачеловек!
Предлагаю вашему вниманию бесплатно серияю видеоуроков в котрых рассмотренно базовые понятия разработки под Android.
Читать дальше →
Всего голосов 111: ↑108 и ↓3+105
Комментарии33

Google анонсировал бесплатные курсы программирования для Android

Время на прочтение2 мин
Количество просмотров91K
Как стало известно на этой неделе, Корпорация Добра объединилась с небезизвестной Udacity чтобы сделать общедоступные бесплатные курсы по программированию под платформу Android. Курсы будут доступны для всех желающих. По традиции они будут включать в себя видео, викторины, множество учебных материалов и доступ к форумам для общения и обсуждения сопутствующих тем.

Узнать все подробности и ссылки
Всего голосов 35: ↑32 и ↓3+29
Комментарии6

Топ-10 неубедительных причин держаться за плохую работу

Время на прочтение4 мин
Количество просмотров226K
Если вы недовольны своей работой, вам наверняка порой приходит в голову мысль: «Пора бросать это дело». Так почему же вы не бросаете?

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

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

Мы в Alconost перевели для вас статью Александра Кьерульфа, называющего себя одним из мировых экспертов по счастью на работе. Он проанализировал 10 самых распространенных оправданий, мешающих людям бросить опостылевшее рабочее место.


Читать дальше →
Всего голосов 101: ↑81 и ↓20+61
Комментарии69

Обновился HTTP/1.1

Время на прочтение1 мин
Количество просмотров33K
Вот так неожиданно, через 15 лет после начальной публикации, обновилась спецификация HTTP/1.1
Обновлений много, я бы даже сказал, дофига. Добавили много проясняющего текста, разбили спецификацию на 6 RFC (раньше было 2), добавили новый статус 308, стандартизировали X-Forwarded-For (теперь он просто Forward), и еще много всего.

Неполный спискок изменений:
  • Новый статус 308 — Permanent Redirect, но с отправкой этих же самых данных. Т.е. запрос не меняется на GET, как раньше.
  • Новый заголовок Forward, который призван заменить X-Forwarded-For и X-Forwarded-Proto
  • Убрано ограничение на 2 подключения к серверу
  • Убрана поддержка HTTP 0.9
  • Убрана кодировка ISO-8859-1 по умолчанию
  • Убран заголовок Content-MD5
  • Запрет использования Content-Range на POST-запросах
  • Добавлено кеширование кодов 204, 404, 405, 414 и 501
  • Изменена документация кодов 301 и 302 таким образом, чтобы позволить перенаправлять метод с POST на GET. Т.е. задокументировали текущую реализацию всех браузеров.
  • Добавлены разграничения между запретом отправки referer и случаем, когда referer нет. Теперь следует отправлять Referer: about:blank, если referer-а не было.
  • Location теперь может перенаправлять на ссылку с хештегом.
Читать дальше →
Всего голосов 97: ↑96 и ↓1+95
Комментарии40

PHPCI: Система непрерывной интеграции для PHP-проектов

Время на прочтение3 мин
Количество просмотров24K
image

Совсем недавно вышла из бета-версии новая система непрерывной интеграции для PHP-проектов с открытым исходным кодом — PHPCI (текущая версия — 1.1.0), она вскользь упоминалась в дайджесте PHP №21.

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

Читать дальше →
Всего голосов 36: ↑32 и ↓4+28
Комментарии22

Мониторинг на основе данных

Время на прочтение9 мин
Количество просмотров21K
При работе над облачными сервисами Webzilla мы уделяем очень большое внимание системе мониторинга. Мы уверены, что только имея корректно работающий и надежный мониторинг, мы можем оказывать сервис на требуемом клиентами уровне качества. Во время работы над первым из облачных продуктов компании – облачным хранилищем Webzilla Instant Files – мы приступили к построению системы мониторинга еще до того, как начали строить сам продукт, продумали мониторинг для каждой функции еще на этапе её планирования.



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

Мы работали над системой мониторинга не меньше времени, чем над функциональной частью сервиса — и мы делимся наработанным опытом.
В целом, наша система мониторинга состоит из трех основных подсистем:
Читать дальше →
Всего голосов 37: ↑29 и ↓8+21
Комментарии14

Linux Foundation совместно с EdX начинает бесплатный курс «Введение в Linux»

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

Официальный учебный курс «Введение в Linux» от Linux Foundation, который ранее стоил 2400 долларов, будет доступен бесплатно на платформе онлайн-обучения EdX. Записаться на курс можно уже сейчас. Платформа массового онлайн-обучения EdX была создана Массачусетским технологическим институтом совместно с Гарвардским университетом. На ней представлены уже больше 30 университетов. Теперь и Linux Foundation станет официальным партнёром EdX. Курсу присвоен код LFS101x. Он рассчитан на 40 — 60 часов обучения. Занятия начнутся в 3-м квартале 2014 года.
Читать дальше →
Всего голосов 86: ↑83 и ↓3+80
Комментарии22

Эволюция разработки в Badoo

Время на прочтение1 мин
Количество просмотров19K
Как устроен процесс организации разработки в крупном интернет-проекте на всех этапах его роста? Что происходит, когда из стартапа компания перерастает в проект с более чем 190 миллионами пользователей.

В прошлом году на конференции Whalerider Алексей fisher Рыбак рассказывал о том:

  • как у нас Badoo сейчас устроена разработка;
  • как в процессе развития проекта её перестраивали;
  • какие проблемы решали;
  • как преодолевали кризисы роста;
  • на какие грабли наступали.

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



Всего голосов 73: ↑64 и ↓9+55
Комментарии18

IT-книги по свободной цене

Время на прочтение4 мин
Количество просмотров77K
Неожиданно обнаружил, что интернет-магазин books.ru в преддверии Нового Года снова запустил акцию по продаже электронных книг по свободной цене. Акция продлится до 2 января. За списком интересных по моему мнению предложений прошу пожаловать под хабракат.
Читать дальше →
Всего голосов 74: ↑70 и ↓4+66
Комментарии98

Ruby: cheatsheet для изучения

Время на прочтение14 мин
Количество просмотров60K
Это — статья-roadmap-cheatsheet для изучающих Ruby. Вместо того, чтобы рассказывать очередной how-to я постараюсь расписать все те вещи, которые, на мой взгляд, можно изложить кратко и емко, с упором на то, что программисту пришедшему с других языков и платформ может показаться не очевидным, антипоисковым и просто затратным по времени на изучение без подсказок — на остальное просто дам ссылки. Не смотря на то, что в природе существует множество туториалов/кастов/книг/чего угодно по чему угодно — именно такого формата мне самому всегда не хватает. И по сути, это те вещи, которые чаще всего рассказываю при вопросах «а как оно вообще?», «с чего начать?», «а как делается такая вот штука?», «а какой gem лучше?». Кстати, пока работал над этой статьей на Хабре появилась похожая про Python — видимо, идея витает в воздухе.
Читать дальше →
Всего голосов 49: ↑49 и ↓0+49
Комментарии20

Sensu — фреймворк для мониторинга

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


Немного истории

В 2011 году в DevOps-среде возникло движение, объединившееся под хештегом #monitoringsucks, и критиковавшее существующие системы мониторинга за отсутствие гибкости. Что именно их не устраивало — прекрасно иллюстрирует эта презентация.
Если вкратце — хочется людям некоего стандарта API для взаимодействия между компонентами мониторинга, ну и появления самих этих компонент, чтоб из них строить гибкий и умный мониторинг.

Итогом этой волны недовольства стали массовые обсуждения проблем и привлечение внимания к интересным утилитам типа Sensu и Riemann.

В 2013 году хештег в сообществе сменился — теперь это #monitoringlove. Произошло это благодаря развитию opensource-утилит для мониторинга.

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

Именно о Sensu я и расскажу в этой статье, опишу базовые принципы работы и приведу пример решения типичной задачи мониторинга.
Читать дальше →
Всего голосов 26: ↑25 и ↓1+24
Комментарии26

Непрерывная интеграция в Селектеле

Время на прочтение4 мин
Количество просмотров8.9K
Непрерывная интеграция в Селектеле

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

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

Ситуации, о которых идет речь, знакомы нам не понаслышке. Было время, когда наши программисты собирали все пакеты вручную. Но проектов становилось все больше, и количество рутины росло. А вот времени на размышления о развитии и совершенствовании продуктов становилось все меньше и меньше. Нужно было что-то менять, и мы задумались о внедрении непрерывной интеграции.
Читать дальше →
Всего голосов 24: ↑20 и ↓4+16
Комментарии10

Строим стенд для подготовки к CCIE при помощи IOU Web Interface

Время на прочтение3 мин
Количество просмотров56K
Данная статья посвящена созданию собственного виртуального стенда для подготовки к лабораторной работе CCIE RS.

Как известно подготовка к экзамену CCIE является своеобразным подвигом в сетевом мире. Для успешной сдачи кандидат должен вложить уйму ресурсов: времени и денег. Помимо оплаты за сам экзамен необходимо, оплатить учебные материалы, оплатить поездку и.т.д. Одной из статей затрат является организация учебного стенда для подготовки. Рассматривая популярную топологию INE из одноименного воркбука, видно, что понадобится 9 роутеров и 4 свитча. Перечислю классические способы реализации в порядке убывания стоимости:

1. Покупка полного стенда домой из старого железа на ebay.
2. Аренда стойки.
3. Смесь виртуальных роутеров из GNS3 и реальных коммутаторов.
4. IOU.

Про плюсы и минусы каждого из методов уже писали на хабре. Остановимся на самом дешевом (что выгодно, если ваш работодатель не оплачивает вам обучение).
Прежде чем поставить задачу и начать её выполнение стоит упомянуть, что использование IOU не законно, если ты не сотрудник Cisco. Даже для обучения.

Задача статьи: организовать учебный стенд используя топологию INE и веб интерфейс для IOU.

Читать дальше →
Всего голосов 20: ↑19 и ↓1+18
Комментарии10

Много бесплатных книг по программированию

Время на прочтение7 мин
Количество просмотров346K
Читать дальше →
Всего голосов 202: ↑192 и ↓10+182
Комментарии42

Процесс разработки и выкатка релизов в Badoo. Автоматическое тестирование. Девелоперское окружение

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

В июле мы вместе с ведущими IT-Kompot и релиз-инженерами Badoo Владиславом Черновым и Олегом Оямяэ записали выпуск подкаста «Процесс разработки и выкатка релизов в Badoo. Автоматическое тестирование. Девелоперское окружение».
Так как прошлый подкаст вызвал интерес у слушателей и читателей, то этот подкаст мы тоже превратили в статью.

О чем говорили:
Процесс разработки и выкатки релизов в компании Badoo. Используемые инструменты.
  • GIT Workflow. Каждая задача в отдельной ветке;
  • Использование JIRA, TeamCity и AIDA;
  • Формирование релиза и выкатка двух релизов в день. Проблемы и их решения (откат, патчи и т.д.).
Автоматическое тестирование. Рецепт быстрого прогона большого количества тестов.
  • Что мы используем;
  • Как гоняем тесты;
  • Code Coverage;
  • Пускалка. 18000 тестов за 3,5 минуты.
Девелоперское окружение в команде, разрабатывающей сложную распределенную систему
И рекомендации от ребят: полезные книги, статьи и т.д.

Читать полностью
Всего голосов 121: ↑92 и ↓29+63
Комментарии41

Каверзные сетевые вопросы

Время на прочтение14 мин
Количество просмотров227K
Давно была идея собрать воедино интересные вопросы, касающиеся сетей.

Объединяет их то, что все они довольно простые, но мы подчас о них не задумываемся (я во всяком случае о них не задумывался).
В общем я их собрал, подбил, нашёл ответы.
Итак, блиц опрос:

Начнём с самых низких уровней и с самых простых вопросов



В1. Почему для витой пары выбран такой странный порядок: синяя пара на 4-5, разрывая зелёную, которая на 3, 6?




Ответ
О1: Сделано это в угоду двухконтактному телефонному разъёму. Таким образом, например, в патч-панель можно вставить как телефонный кабель, так и витую пару.
Можно даже через один кабель вывести и сеть и телефонию, но я вам этого не говорил!

habrahabr.ru/post/158177.


В2. В стандарте Ethernet между кадрами всегда имеется промежуток, называемый IFG (Inter Frame Gap) длиною 12 байтов. Для чего он нужен, и почему он присутствует в современных стандартах?

Читать дальше →
Всего голосов 166: ↑153 и ↓13+140
Комментарии209

А вы специалист в какой-то одной IT-области или универсал, который занимается всем. Я из второй категории…

Время на прочтение4 мин
Количество просмотров74K
Всем не профессионалам в какой-либо одной области IT-универсалам посвящается данный текст.
История такая: я работаю на довольно неплохой должности (руководитель IT-отдела) и даже имею в подчинении трех несколько человек. Сама фирма не IT направленности. Занимаемся мы розничными, оптовыми и интернет продажами. А также являемся сервисным центром нескольких известных марок. В компании есть несколько веб-ресурсов, в том числе несколько интернет-магазинов, пара из которых имеют очень даже неплохой оборот. Вот этим всем хозяйством мне и приходится заправлять. Плюс реклама, полиграфия, баннеры, сео и т.д. Моя зарплата меня тоже вполне устраивает. Скажем, гораздо выше средней по СПб. В данный момент меня в моей работе все устраивает за исключением одного: отсутствие опыта работы в профильной компании (в профильной среде).
Читать дальше →
Всего голосов 135: ↑117 и ↓18+99
Комментарии166

Университет MIT выложил бесплатно лекции в Сеть

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


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

Есть аудио и видео-курсы, поиск по каталогу, по номеру курса, по наименованию дисциплины, все предметы и степень сложности разделены в отдельные рубрики.
Читать дальше →
Всего голосов 157: ↑116 и ↓41+75
Комментарии40

Детальное описание действий IT-отдела — базовый набор документации

Время на прочтение7 мин
Количество просмотров147K
Во многих западных странах IT-аутсорсинг регулируется либо отраслевыми стандартами, либо вообще на госуровне. У нас такого нет. Поэтому за несколько лет был собран документ, который детально определяет термины в IT-аутсорсинге и расписывает, что в какой тип работ конкретно входит. С его помощью мы документируем работы, а потом чётко и прозрачно считаем, что сколько стоит.

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

Ниже я расскажу, зачем мы всё это сделали, и для каких случаев документ будет очень полезен.
Читать дальше →
Всего голосов 62: ↑58 и ↓4+54
Комментарии12

Бесперебойность (HA) для сервисов OpenStack MySQL + rabbitMQ

Время на прочтение10 мин
Количество просмотров10K
Автор: Piotr Siwczak
Последняя статья Олега Гельбуха дала обзор различных аспектов бесперебойности в OpenStack. Все компоненты OpenStack разработаны с учетом бесперебойности, но платформа использует и внешние ресурсы, как, например, базу данных и систему обмена сообщениями. И это забота пользователя — развернуть эти внешние ресурсы для безотказной работы.

Очень важно помнить, что все ресурсы с фиксацией состояния в OpenStack используют систему обмена сообщениями и базу данных, а все остальные компоненты не хранят информацию о состоянии (за исключением Glance). База данных и система обмена сообщениями являются ключевыми для платформы OpenStack. В то время как система управления очередью позволяет нескольким компонентам обмениваться сообщениями, база данных хранит состояние кластера. Обе эти системы принимают участие в каждом запросе пользователя, как при отображении списка виртуальных объектов, так и при создании новой виртуальной машины.

По умолчанию для обмена сообщениями используется RabbitMQ, а база данных по умолчанию — MySQL. В отрасли известны надежные решения и по нашему опыту их достаточно для масштабирования даже в крупных установках. В теории подойдет любая база данных, поддерживающая SQLAlchemy, но большинство пользователей пользуются базой данных по умолчанию. Для обмена сообщениями трудно найти альтернативу RabbitMQ, хотя некоторые пользуются драйвером ZeroMQ для OpenStack.

Как в OpenStack работают сообщения и база данных



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

Пользователь отправляет свой запрос в OpenStack, взаимодействуя с компонентом nova-api. Nova-api обрабатывает запрос на создание экземпляра, вызывая функцию create_instance из API-интерфейса nova-compute. Функция делает следующее:
Читать дальше →
Всего голосов 16: ↑15 и ↓1+14
Комментарии5

Информация

В рейтинге
4 847-й
Дата рождения
Зарегистрирован
Активность

Специализация

DevOps, Site Reliability Engineer (SRE)
Senior