Как стать автором
Обновить
84
0
Владимир Коровин @vakorovin

Разработчик

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

Отчёт и задания со всероссийской олимпиады по администрированию Linux-систем

Время на прочтение4 мин
Количество просмотров37K
image
Участники

19 ноября прошел финальный тур олимпиады по администрированию Linux среди студентов и молодых специалистов. Я уже несколько лет занимаюсь проведением таких Олимпиад: первые 4 олимпиады были просто по администрированию смешанных систем, а вот последние 2 года мы сосредоточились на Linux.

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

Ниже будут задания с ответами, описание практического задания и детали, но пока встречайте победителей:

image
Владимир, Анна и Вячеслав
  • I место — Вячеслав Карпухин из Санкт-Петербурга (в прошлом году он занял III место).
  • II место — Анна Мартынова из Москвы.
  • III место — Владимир Довгелевич из Краснодара.
Читать дальше →
Всего голосов 57: ↑48 и ↓9+39
Комментарии26

Как заставить работать расширения yii-user и rights совместно?

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

Предисловие


Доброе время суток хабравчане.

Для начала представлюсь. Меня зовут Роман, и я занимаюсь разработкой сайтов (в основном на php-фреймворке «yii», но проскакивают и другие php\python фреймворки\цмс\велосипеды\быдлокоды). В своих проектах на yii всеы нам часто приходится реализовывать тривиальные функции регистрации, авторизации и тд. Плюс ко всему прибавьте к этому ещё и распределние прав доступа для различных пользователей. Готов поспорить, что у каждого толкового разработчика есть хотя бы одна заготовка реализации этого функционали, либо он использует сторонее расширение. Вот и я каждый раз использовал одну и туже реализацию, от пректа к проекту допиливал её, интегрировал с другими частями системы. Но недавно я всё же решил порыть в сторону готовых решений, которые удовлетворяли бы мои потребности и таковые нашлись довольно быстро. 2 самых популярных расширения для yii из оффициального репозитория«yii-user» и «rights».
Читать дальше →
Всего голосов 37: ↑31 и ↓6+25
Комментарии19

Вышел Zabbix 2.2

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

Я очень рад сообщить, что сегодня вышла новая версия открытой системы мониторинга Zabbix 2.2. Хочу поблагодарить нашу команду, пользователей и активное сообщество наших друзей. Спасибо всем за работу и активное участие!

Что такое Zabbix?


Zabbix — это распределённая система мониторинга. Zabbix является полностью свободным (Open Source) решением без каких-либо платных версий или расширений.

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

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

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

Первая версия Zabbix вышла в свет в 2001 году, в настоящее время разрабатывается командой профессионалов. Наш головной офис находится в Риге и существует дочерняя компания в Токио, Япония. Мы занимаемся разработкой и предоставлением коммерческих сервисов нашим клиентам: техническая поддержка различных уровней, обучение, разработка новой функциональности, решения под ключ и другое. Это то, как мы растём и развиваемся.
Довольно о нас, что же нового в 2.2?
Всего голосов 60: ↑56 и ↓4+52
Комментарии96

Новый сертификат ZCPE от Zend на основе PHP 5.5

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


3 октября 2013 года компания Zend объявила в своём блоге о доступности новой программы для сертификации девелоперов, основанную на языке PHP версии 5.5. На днях я успешно прошёл тестирование и стал третьим человеком в Украине, кто получил этот сертификат. Внутри я постараюсь рассказать подробнее о самом процессе тестирования и о подготовке к экзамену.
Читать дальше →
Всего голосов 40: ↑34 и ↓6+28
Комментарии41

Google говорит «F*ck You, АНБ» и начинает шифровать трафик между дата-центрами

Время на прочтение2 мин
Количество просмотров90K
На прошлой неделе в СМИ попала информация о программе АНБ по перехвату трафика между дата-центрами Google непосредственно через оптоволоконные кабели (программа MUSCULAR). Идея в том, чтобы перехватывать трафик до того момента, как его шифруют между серверами фронтенда и компьютерами пользователя.


Рисунок АНБ с издевательским смайликом

На этой неделе газета The Washington Post опубликовала дополнительные сведения о программе MUSCULAR, в том числе фрагменты пакетной передачи из внутренней сети Google.
Читать дальше →
Всего голосов 219: ↑193 и ↓26+167
Комментарии76

Функции в PHP 5.6 — что нового?

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

Слева направо: Rasmus, Build 5.4, Version 5.5, Relise 5.6

Сегодня хочу поделиться своим видением того, как будет выглядеть работа с функциями уже в ближайшем мажорном релизе PHP — 5.6. Для этого я изучил рабочие предложения и нашёл там немало вкусняшек:

  • Новый синтаксис для функций с переменным числом аргументов и радостный отход в историю мороки с func_get_args():
    function fn($reqParam, $optParam = null, ...$params) { }
    

  • Опускаем указание значений для необязательных аргументов:
    function create_query($where, $order_by, $join_type = '', $execute = false, $report_errors = false) { }
    create_query('deleted=0', 'name', default, default, /*report_errors*/ true);
    

  • Импорт функций из пространства имён:
    use function foo\bar\baz;
    baz();
    

  • Исключения вместо набивших оскомину фатальных ошибок:
    <?php
    function call_method($obj) {
        $obj->method();
    }
    
    call_method(null); // oops!
    
    try {
        call_method(null); // oops!
    } catch (EngineException $e) {
        echo "Cool Exception: {$e->getMessage()}\n";
    }
    

  • Добавление модификатора deprecated:
    deprecated function myOldFunction() { }
    

  • Вызов методов и доступ к свойствам создаваемого объекта:
    new foo()->xyz;
    new baz()->bar(); 
    

Большинство из приведенных предложений пока находятся на стадии обсуждения. Но среди них уже есть утверждённые и даже реализованные.

Также искушённого читателя ждёт эксклюзив: изучая чужие умные мысли, я и сам решился написать собственный RFC. Сейчас вы не увидите его в списке предложений, так как на данный момент он находится на самом начальном этапе — на рассылке internals@lists.php.net.

А начну обзор с RFC, который уже реализован и гарантированно попадает в релиз 5.6.

Синтаксис для функций с переменным числом аргументов

Реализовано в PHP 5.6, Принято 36 голосами против 1

И сразу в бой: рассмотрим код, который показывает как переменный аргумент ...$params будет заполняться в зависимости от количества переданных аргументов:
function fn($reqParam, $optParam = null, ...$params) {
    var_dump($reqParam, $optParam, $params);
}
 
fn(1);             // 1, null, []
fn(1, 2);          // 1, 2, []
fn(1, 2, 3);       // 1, 2, [3]
fn(1, 2, 3, 4);    // 1, 2, [3, 4]
fn(1, 2, 3, 4, 5); // 1, 2, [3, 4, 5]

$params будет пустым массивом, если число переданных аргументов меньше, чем число объявленных. Все последующие аргументы будут добавлены в массив $params (с сохранением порядка). Индексы в массиве $params заполняются от 0 и по возрастанию.
Читать дальше →
Всего голосов 98: ↑83 и ↓15+68
Комментарии203

Джентельменский набор модулей для Drupal 7

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

Те, кому часто приходится поднимать сайты на Drupal, имеют в загашнике постоянный набор модулей и тем, которые так или иначе могут использоваться на поднимаемом ресурсе.
При отсутствии данного набора приходится вспоминать и скачивать модули для воплощения на сайте того или иного функционала.
Поскольку актуальной на данный момент версией является седьмая, о ней и пойдёт речь.
Читать дальше →
Всего голосов 46: ↑40 и ↓6+34
Комментарии22

Generating PDF files with PHP and FPDF

Время на прочтение5 мин
Количество просмотров113K
Большинство web-сервисов экспортируют данные в разных форматах для дальнейшего использования. Данная статья о том, как экспортировать данные в pdf-формате.
Хотя многие знают как это делать, я опишу кратко для тех кто не знает.
Читать дальше →
Всего голосов 38: ↑35 и ↓3+32
Комментарии48

Подборка полезного для любителей Twitter Bootstrap

Время на прочтение1 мин
Количество просмотров83K
В подборке инструменты, плагины и другие полезности, облегчающие работу с Twitter Bootstrap. Предыдущая подборка.

Инструменты




Bootstraptor — подборка большого количества бесплатных и премиум тем, в том числе Starter Kit, на основе Bootstrap.
Читать дальше →
Всего голосов 109: ↑96 и ↓13+83
Комментарии21

Собеседование разработчика

Время на прочтение5 мин
Количество просмотров61K
Техническое собеседование – практически неотъемлемый атрибут трудоустройства любого разработчика, а для старших разработчиков – проведение их (собеседований) ещё и чуть ли не повседневная обязанность. Но как за короткий срок (в идеале 20-30 минут) составить у себя более менее приемлемое представление о реальном опыте соискателя?

Читать дальше →
Всего голосов 79: ↑60 и ↓19+41
Комментарии144

Встречайте GNOME 3.10

Время на прочтение7 мин
Количество просмотров80K
Проект GNOME с гордостью представляет выпуск GNOME 3.10. После релиза 3.8 прошло уже шесть месяцев и было сделано 34786 изменений, внесенных 985 участниками. В состав релиза входят новые возможности и множество мелких улучшений. В версии 3.10 содержатся как улучшения пользовательского интерфейса, так и новые возможности для разработчиков приложений.
Читать дальше →
Всего голосов 111: ↑103 и ↓8+95
Комментарии109

«Хабрахабр» запускает программу поддержки стартапов

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

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


Читать дальше →
Всего голосов 272: ↑242 и ↓30+212
Комментарии152

Symfony CMF. Часть 1, хранение данных

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

Вместо предисловия


Я программирую на Yii уже два года и в последнее время начал засматриваться на Symfony Framework 2. Отчасти меня привлекает продуманная архитектура, отчасти слабая связность компонентов, отчасти гибкость построенных приложений. Сразу после того, как я разобрался с основным устройством нового фреймворка, мне стало интересно, возможно ли на нем построить CMS, а может быть, даже воспользоваться готовой.

Коробочного решения пока не придумали, однако, каким-то образом я забрел на сайт проекта Symfony CMF и оказался сражен наповал методичным подходом к решению тех проблем, с которыми я сталкивался в бытность работы на конвеере по натягиванию дизайна на какой-нибудь Друпал. На Хабре публикаций про именно CMF нет, да и сам проект еще очень сырой, однако в перспективе выглядит все интересно, хоть местами и есть к чему придраться.

Symfony CMF


Проект Symfony CMF призван упростить разработку функционала, присущего CMS, для всех, кто использует в работе Symfony Framework 2.
Основные особенности проекта:

  • слабая связность компонентов
  • масштабируемость
  • удобство
  • тестируемость

Стоит сделать акцент на слове CMF — проект не является CMS сам по себе, это именно фреймворк. В отличие от CMS, где все компоненты жестко завязаны друг на друге, в Symfony CMF вы:

  • используете все, что хочется
  • заменяете то, что не нравится
  • игнорируете то, что не требуется

То есть, вам дан набор модульных инструментов для разработки, а не готовое приложение «под ключ», хотя уже разработаны базовые бандлы, обеспечивающие CMS-функционал.
Зачем еще один CMF?
Всего голосов 37: ↑33 и ↓4+29
Комментарии17

Собранные требования к psd-макету веб-сайта

Время на прочтение3 мин
Количество просмотров69K
Привет, фрондэнд разработчики!

При верстке сайта с psd-макета, мы постоянно сталкиваемся с проблемой реализации некоторых элементов, которые нарисовал дизайнер. Будь то кнопка, или какой-то хитрый градиент. Нам приходится либо изворачиваться, тратя на это свое рабочее время или просить дизайнера переделать или в крайнем случае забить и сделать более-менее что-то похожее.

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

Немного набрал в весе мозга и статуса в компании, в какой-то момент я понял, что так дальше продолжаться не может и начал собирать свои требования в psd макетам.
Читать дальше →
Всего голосов 47: ↑39 и ↓8+31
Комментарии70

Почему мы не тестируем. Практика проведения технического интервью

Время на прочтение5 мин
Количество просмотров52K
Я руковожу разработкой ПО уже достаточно много лет. За эти годы мне пришлось провести более тысячи интервью и посчастливилось захантить больше сотни классных программистов. Естественно, у меня сложилась определенная практика проведения технических собеседований, которой я собираюсь поделиться. Возможно, это окажется кому-то полезным.

Ставим задачу
Кого ищем? Ищем эффективных бойцов. Известно, что эффективность программистов со схожим опытом может отличаться в 10 раз (Ф. Брукс) или даже в 27 раз (Р. Гласс). Сразу, оговорюсь, эффективность это не только количество трупов врагов реализованных требований к ПО на единицу трудозатрат, но и умение результативно взаимодействовать с окружающими. Это важно, потому что по моим наблюдениям 50% проектных человеко-часов тратится на коммуникации. У нас это называется «синхронизация ментальных моделей».

Поэтому задача, которую ставим себе при проведении технического собеседования это постараться оценить эффективность бойца.


Если на заводы людей нанимают за умения и обучают нужному отношению к делу, то в разработке ПО, следует поступать наоборот. Нанимать за нужное отношение к делу и учить необходимым умениям. Не следует брать людей, которые знают и умеют, а потом заниматься промыванием их мозгов и пытаться мотивировать их на эффективную работу. Их знания и умения ничего не будут стоить уже через полгода или год.
В идеале, конечно, следует стараться привлечь и знающих, и умеющих, и подходящих по своим жизненным позициям. Но если приходится выбирать, то правильнее выбрать жизненную позицию. Ищем тех, кто хочет развиться и расти, а затем, если необходимо, помогаем им получить требуемые технические навыки. Предлагаем не работу, а возможности.
Почему не тестируем
Всего голосов 151: ↑125 и ↓26+99
Комментарии220

77 терабайт в месяц на домашнем анлиме

Время на прочтение3 мин
Количество просмотров91K
Житель Калифорнии и счастливый владелец оптоволоконного доступа в интернет по тарифу Verizon FiOS поставил личный рекорд по трафику: 77 терабайт за месяц. Для него это необычно много, ведь в среднем за последние месяцы получается не более 35 терабайт. Хотя FiOS считается тарифом без ограничения трафика (честный анлим), но парень всё-таки удостоился звонка от менеджеров компании Verizon.

«Я никогда не слышал, чтобы такое с кем-нибудь случалось. Но я наверное использовал больше трафика, чем любой абонент FiOS в Калифорнии, так что я не особенно удивлён», — рассказывает пользователь под ником houkouonchi на форуме DSLReports.com. Вот моя статистика по трафику в этом году:

Январь: 35 ТБ
Февраль: 32 ТБ
Март: 77 ТБ
Апрель: 28 ТБ
Май: 19 ТБ (на 21-е число)
Читать дальше →
Всего голосов 96: ↑91 и ↓5+86
Комментарии101

Что нам стоит Git настроить!

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

Дарова, хабр! (ничего оригинальнее не придумал)

Сомневаюсь что эта заметка тянет на полноценный пост, но я все же оставлю ее здесь. О чем же пойдет речь?

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

Так, мне уже немного надоело писать этот, по сути, бессмысленный вступительный текст, так что давайте уже начнем что-то делать.
Читать дальше →
Всего голосов 188: ↑155 и ↓33+122
Комментарии41

IT в регионе. Ульяновск. Выходим из сумрака

Время на прочтение10 мин
Количество просмотров49K
Ульяновск — мой родной город, но карьеру разработчика я начал в Москве и прошел путь от PHP-девелопера в веб-студии до программиста Ruby On Rails в Skype. Зеленоград, в котором расположился офис Skype, оказался очень необычным городом. Он действительно очень зеленый, ухоженный и приятный для жизни. Именно там пришла мысль о том, что свет клином на Москве не сошелся. Через какое-то время я уволился и, не имея ни плана, ни сбережений, отправился домой, в Ульяновск, создавать компанию своей мечты.

Каково же было мое удивление, когда я узнал о том, насколько в городе развито ИТ-движение.

Читать дальше →
Всего голосов 85: ↑74 и ↓11+63
Комментарии174

Бета-тестирование Brainstorage

Время на прочтение3 мин
Количество просмотров64K
Всем привет! Сегодня по адресу Brainstorage.me вместо HTTP-авторизации стала открываться дружелюбная форма регистрации — добро пожаловать на бета-тест!



Немного подробностей под катом.
Читать дальше →
Всего голосов 196: ↑178 и ↓18+160
Комментарии241

IPoE, а также Client-VLAN и DHCP Option 82

Время на прочтение5 мин
Количество просмотров84K
В этой статье я опишу что из себя представляет технология доступа в Интернет IPoE, которой на самом деле не существует. А также расскажу про схему Client-VLAN и про опцию 82 DHCP (DHCP Option 82), которые стали неотъемлемой частью этой несуществующей технологии. Все это, конечно же, с технической точки зрения и с примерами конфигов.
Читать дальше →
Всего голосов 40: ↑37 и ↓3+34
Комментарии81

Информация

В рейтинге
Не участвует
Откуда
Конаково, Тверская обл., Россия
Дата рождения
Зарегистрирован
Активность