Search
Write a publication
Pull to refresh
0
0
Эйтор @ilder

User

Send message

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

Reading time7 min
Views347K
Читать дальше →

Установка, настройка и использование WPKG

Reading time19 min
Views37K
Ещё совсем недавно я наблюдал, как специалисты ИТ повсеместно пытались внедрить открытое ПО, а руководство сопротивлялось и требовало использовать продукты Microsoft. Нелицензионные продукты, но тем не менее. Сейчас же я всё чаще вижу обратное: руководство требует внедрения открытого ПО, а сотрудники ИТ отделов выбивают расширение бюджета для закупки лицензий. Причины изменившихся взглядов руководства понятны – это и регулярные рейды полиции, не позволяющие использовать ворованное, и успешные внедрения открытого ПО в других компаниях, и возможность экономить немалые суммы. Я говорю сейчас, прежде всего, о популярной замене Microsoft Office с Outlook’ом в комплекте на OpenOffice.org и Mozilla Thunderbird.

Но в чём же причина снижения интереса к открытому ПО со стороны ИТ специалистов? Сопровождение. Если руководство на планёрке за час до конца рабочего дня приняло решение, требующее смены настроек ПО на всех рабочих станциях к следующему утру, в однородной среде ПО от MS админу достаточно запустить оснастку «Управление групповыми политиками», сделать несколько кликов и идти домой. ПО не от Microsoft обычно политиками не настраивается… И админ «побежал» по сотне рабочих станций. А дома мама \ жена \ дети \ собака опять в угол нагадила (нужное подчеркнуть). Или вот, например, обновление Thunderbird. WSUS’ом не скачается, по рабочим станциям не раскидается и само не установится. При этом обновляется каждый месяц.

Хорошо, если админ любит изобретать велосипеды. Ещё лучше, если умеет. Тогда под всё необновляемое и ненастраиваемое городятся костыли и это всё шатко, но стоит. Пока админ не уволится. Тогда обычно с грохотом рушится.

Ещё здорово, когда есть боец. Молодой и с сильными ногами. Бойцу пишется регламентная задача, и боец её выполняет, заменяя собой и GPO, и WSUS, и множество других полезных штук.

Это не наши методы. Мы хотим рационального использования трудовых ресурсов, стандартизации инфраструктуры и прозрачных бизнес-процессов ИТ. Поэтому настройки и обновления будем распространять централизованно. С помощью WPKG. Странно, что на Хабре не нашлось ни одной статьи о нём.
Читать дальше →

Структуры данных, PHP

Reading time9 min
Views86K
Данный пост является переводом и предназначен для новичков. Ну или для тех, кто забыл лекции с начальных курсов своих вузов. Скорее всего, данный материал уже попадался на хабре в той или иной модификации, но здесь упор на PHP и его особенности.

Структуры данных или Абстрактный Тип Данных (ADT) — это модель, определенная как некий набор операций, которые могут быть применены к самой себе и ограничена тем, какой результат дают эти операции.
Большинство из нас сталкиваются со стеком и очередью в повседневной жизни, но что общего между очередью в супермакете и структурой данных? В этом мы и попробуем разобраться в данной статье, где также будут описаны деревья.

http://www.thisiscolossal.com/2013/01/a-wooden-domino-tree-by-qiu-zhijie/



UPD: s01e02

Осторожно, трафик! Очень много текста!

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

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

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

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

Руткит Avatar: детальный анализ

Reading time8 min
Views37K
В феврале 2013 г. появилась информация о новом рутките Avatar, которая, судя по-всему, имеет происхождение с одного из подпольных форумов. В частности, на сервисе pastebin было опубликовано описание его возможностей. Информация о новом рутките горячо обсуждалась в security-сообществе, поскольку описываемые возможности этого руткита действительно впечатлали. Среди них, например, возможности загрузки драйвера без участия жесткого диска, заражение бут-драйверов ОС, новые схемы защиты ботнета и другие. Также заявлялся обход нескольких security/AV-продуктов и известных антируткитов.

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

Пилим Adblock

Reading time9 min
Views174K


Стратегия


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

Тестирование тривиального кода

Reading time5 min
Views24K
Даже если код тривиален, вы всё равно должны его тестировать.
Пару дней назад, Роберт Мартин опубликовал пост «Прагматичность TDD», (здесь лежит переводприм.переводчика) где он рассказал о том, что не тестируют абсолютно весь код. Среди исключительных ситуаций, когда не стоит применять TDD, дядя Боб упоминает написание GUI-кода, и я вижу смысл в таких утверждениях, но среди исключений есть парочка, на мой взгляд, нелогичных.
Читать дальше →

За что я ненавижу аутсорсинговое системное администрирование. Взгляд со стороны клиента

Reading time10 min
Views114K

Пост гнева.


Чтобы мой пост гнева не был похож на выяснение отношений — я намеренно не буду называть аутсорсинговую компанию, которая нас обслуживает. Имена в тексте мной изменены. Я не стремлюсь очернить моих нынешних сисадминов. Этот пост — просто крик души, возможность немного спустить пар. И может для кого-то из сисадминов интересно посмотреть на проблему глазами озверевшего клиента.
А еще я хотел бы понять — аутсорс администрирование — это всегда так? Или мне элементарно не повезло? Или наоборот мне очень повезло, а у остальных еще хуже?
Читать дальше →

RE: Аутсорсинговое системное администрирование: как с нами бороться

Reading time6 min
Views12K
Интересную и поучительную историю все мы прочли в топике гнева. В первую очередь хочется пожелать автору прислушаться к комментариям и своему сердцу – как никак нервные клетки нужно беречь.

Я же хочу немного развеять часть мифов о сисадминском аутсорсинге, если позволите так его называть. Сам я являюсь работником такой же фирмы на протяжении 3х с хвостиком лет. Единственная оговорка – находимся мы не в Столице РФ, а в крупном по местным меркам городе N, являющимся столицей области. Конкуренция тут не такая сильная, но ответственность, как ни парадоксально, выше. Ну и ещё чуть-чуть о компании – сисадминский аутсорсинг (далее – сис. аутсорсинг, с позволения Читателя), это не основной профиль деятельности компании. Компания воюет на нескольких фронтах, вполне успешно надо отметить. А аутсорсинг вырос как побочная услуга, поддерживающая одно из основных направлений деятельности.

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

Предупреждение. Данный текст пользы для, а не холивара ради

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

Отказоустойчивая архитектура из двух веб-серверов на примере Debian Squeeze

Reading time10 min
Views18K
Мне поступила задача организовать отказоустойчивость веб-приложения из двух серверов. Веб-приложение включает в себя статические файлы и данные в СУБД MySQL.
Основное требование заказчика — веб-приложение должно быть всегда доступно и в случае сбоя в течении 5 минут сбой должен быть восстановлен.
2 сервера, территориально разнесенные в разных ЦОДах, должны удовлетворить данное требование.

Подробности

Делегирование административных задач в Active Directory

Reading time12 min
Views166K
Ввиду того, что во время Хабравстречи я рассказывал об 11 различных сценариях, естественно, мне хотелось бы на каждом из этих моментов остановиться подробнее. Другими словами, начиная с этой статьи я рассмотрю большинство моментов, о которых шла речь во время предыдущего доклада. Итак…
Относительно недавно мне в Windows Live Messenger задали несколько вопросов, связанных с делегированием административных полномочий в Active Directory. Однако, прежде чем переходить к самим вопросам по этой теме, я буквально в двух словах расскажу, что же собой представляет делегирование и для чего оно нужно.
Читать дальше →

Возвращаем приватность или большой брат следит за мной на стандартных настройках. Часть 2. Блокируем следящие скрипты на сайтах и настраиваем VPN

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

Сегодня посмотрим (и избавимся) на то, сколько статистики собирают на нас даже без использования сторонних «куки»-файлов и расскажем о пользе и настройке VPN простым языком.

Хочу сказать большое спасибо всем, кто оставлял комментарии в прошлой статье (и оставит в этой) — все ваши дельные советы будут включены в этот или последующий мануалы.


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

Уведомления о завершении консольных команд

Reading time1 min
Views24K
Undistract-Me — простая, но чрезвычайно полезная в хозяйстве утилита, которая делает одну вещь — выводит уведомление, когда длинная команда (по умолчанию 10 секунд, но можно настроить) завершила свое исполнение.



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

О законах Универсальности или что нам может объяснить Тетрис про кофейные пятна

Reading time6 min
Views44K
На следующее утро после больших метелей, охвативших северо-восток США, я сидел в своей машине, готовый бросить вызов опасным дорожным условиям, чтобы съездить в местное кафе. Мой дом в Нью-Джерси был за пределами основного пути шторма, так что вместо сугробов нас приветствовала смесь мокрого снега и ледяного дождя. И сидя в своей машине, я не мог не быть очарован этими странными узорами из льдинок, образующихся на лобовом стекле. Вот что я увидел:


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

Как работают браузеры: принципы работы современных веб-браузеров

Reading time2 min
Views190K
Просматривая одно из обучающих видео "Школы разработки интерфейсов" Яндекса, наткнулся на ссылку на офигенный труд израильской веб-программистки Тали Гарсиэль (Tali Garsiel) "How browsers work" (Как работают браузеры).

Она в течение нескольких лет отслеживала всю издаваемую информацию о внутреннем устройстве браузеров, изучала исходный код WebKit и Gecko и, в конце концов, собрала все воедино. Вот что пишет сама Тали:
Когда на 90% компьютеров был установлен IE, приходилось мириться с тем, что это загадочный «черный ящик», однако теперь, когда более половины пользователей выбирает браузеры с открытым исходным кодом, пришло время разобраться, что скрывается у них внутри, в миллионах строк программного кода на C++...
Пролистав, я был поражен — отличная работа. Внутреннее устройство браузеров, алгоритмы разбора — все хорошо иллюстрировано, доступно и понятно. И без излишних подробностей, страниц на 30-40. Как раз то, что нужно. Решил — это надо обязательно перевести. Покопался еще немного — оказалось перевод уже как 1,5 года есть!

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

Под катом содержание перевода, чтобы решить стоит ли читать.
Читать дальше →

Дизассемблируем Windows Explorer — отключаем группировку на панели задач

Reading time6 min
Views92K
Однажды, в 2009 году, вышла Windows 7. В то время я сидел на Висте, которая притормаживала на моем стареньком компьютере, и я решил пересесть на семерку сразу после ее выхода.

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



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



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

Под катом:
  • Подробная демонстрация того, как можно самостоятельно подправить принцип работы такого системного процесса, как explorer, под себя, используя отладчик OllyDbg.
  • Готовое решение описанной выше проблемы.

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

Консольные команды на PHP

Reading time4 min
Views37K
У многих, равно как и у меня, периодически возникает потребность в реализации каких-то небольших задач. Например распарсить сайт/API и сохранить данные в xml/json/csv, произвести какие-либо расчеты/пересчеты, перегнать данные из одного формата в другой, собрать статистику и т.д. и т.п. Замечу, что речь о задачах не связанных с текущими проектами.



Собирать тяжелый фреймворк ради удобных фич, лень, а реализовывать в рамках кода текущих проектов как-то не эстетично. Поэтому для экономии своего времени приходится создавать скрипт, копипастить в него куски кода из предыдущих наработок, подключать разнообразные библиотеки и запускать скрипт из консоли. При этом часто требуется некоторая интерактивность работы скрипта: обработка опций/аргументов, а то и диалоговое взаимодействие. Здесь главное чтобы не было настроения, которое хорошо описывается выражением «Аппетит приходит во время еды», тогда вообще не понятно к чему приведет работа над простой задачкой =)

В такие моменты я вспоминал удобную симфоническую консоль, к которой успел привыкнуть работая с проектами на
Symfony 2. Не в обиду другим консолям (zend, yii, django, ror etc), все хороши, просто так сложилось.

Когда в очередной раз потребовалось что-то распарсить, я опять вспомнил про консоль Symfony (Console Component) и тот факт, что это независимый компонент все больше подтолкнул меня к мысли использовать ее возможности.

За пару часов получилась простая тулза, в основе которой:

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

Как запустить программу без операционной системы: часть 2

Reading time8 min
Views65K


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

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

! ВАЖНО!: Все дальнейшие действия могут успешно осуществляться только после успешного прохождения всех 6-ти шагов описанных в первой части статьи).

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

А вы хорошо знаете статическую маршрутизацию?

Reading time12 min
Views213K
Статический маршрут — первое, с чем сталкивается любой человек при изучении понятия маршрутизации IP пакетов. Считается, что это — наиболее простая тема из всех, в ней всё просто и очевидно. Я же постараюсь показать, что даже настолько примитивная технология может содержать в себе множество нюансов.
Следите за руками.

Information

Rating
Does not participate
Location
Россия
Date of birth
Registered
Activity