• Советский центр управления полетами времен «Востоков» и «Восходов»

      image

      Написать эту статью меня побудила вот эта фраза Филиппа Терехова из его обзора фильма «Время Первых»:

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

      Замечание было верным, лично мне тоже очень хотелось узнать, как выглядел наш ЦУП времен первых пилотируемых полетов.И мне это все-таки удалось.

      Читать дальше →
    • Уведомление о новых письмах в jabber

        В gtalk есть приятная опция оповещения пользователся о новых письмах, но поскольку я пользуюсь другим jabber-сервером, подумалось, что было бы удобно замутить такую фичу и себе. Может я конечно плохо смотрел, и в gmail есть такая возможность, но я её не нашел и написал небольшой скриптик, который повесил в cron. И теперь он радостно меня оповещает о новых письмах каждые 15 минут, если конечно таковые письма имеются.

        Для работы с jabber использовал библиотеку XMPPHP.
        Читать дальше →
      • Собеседуем руководителя проектов

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

          Для меня руководитель проекта (проектов) – это человек, прежде всего имеющий глубокое понимание предметной области, в нашем случае интернет разработки, имеющий опыт самостоятельной разработки, находящийся в курсе технологических и бизнес тенденций на рынке. Равноценно вышеупомянутым качествам – умение общаться и находить общий язык с совершенно разного типа людьми. Знания РП должны лежать не только в плоскости разработки, но так же и в прототипировании интерфейсов, и в дизайне, и в интернет-маркетинге.
          Читать дальше →
        • Курс молодого бойца cisco: защищаем периметр маршрутизатором

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

            Рассматривать будем IOS с firewall feature set. Этот набор возможностей, как правило, есть во всех IOSах (в которых есть шифрование), кроме самого базового.

            Итак, пусть на границе нашей сети стоит машрутизатор cisco, который и призван обеспечивать безопасность наших внутренних ресурсов.

            Защищаем трафик.
            Читать дальше →
          • Курс молодого бойца: защищаемся маршрутизатором. Продолжение: IPS

              Система предотвращения вторжений (Intrusion Prevention System, IPS).

              Вообще линейка продуктов по системе предотвращения вторжений у компании cisco довольно широкая. Туда входят отдельно стоящие сенсоры IPS серии 42ХХ, модуль в 6500 — IDSM2, модуль в ASA — AIP-SSM, модуль в маршрутизатор (ISR) — NME-IPS, «карточка» в ISR — AIM-IPS. Ту же идеологию циска старается привнести и в софтовые решения на базе ISR, добавляя в IOS соответсвующий функционал.

              Вся идеология обнаружения и предотвращения вторжений основана на понятии сигнатуры. Сигнатура по сути шаблон «неправильности» в одном пакете или потоке.

              «Неправильности» бывают разные, начиная от типичных методов разведки и заканчивая сетевыми червями. Эти шаблоны старательно пишутся программистами циски и доходят до пользователя в виде обновлений. Т.е. система реактивна по своей сути и основана на постоянных обновлениях, что стоит денег. Лицензии на обновления привязываются к каждой железке непосредственно. Без лицензии можно менять ОС, но нельзя накатить обновления сигнатур.

              Немного истории систем обнаружения и предотвращения вторжений на базе маршрутизаторов.
              Читать дальше →
              • +5
              • 25.5k
              • 3
            • Курс молодого бойца: защищаемся маршрутизатором. Продолжение: NBAR

                На многих маршрутизаторах, даже в базовом IOS есть довольно удобная и наглядная цискина технология: Network-Based Application Recognition (NBAR). При помощи неё маршрутизатор может распознать различные протоколы и приложения и при необходимости использовать эти знания для реализации качества обслуживания (QoS)

                Каким же образом маршрутизатор может выделить из трафика различные протоколы?
                Читать дальше →
                • +4
                • 18.7k
                • 3
              • Защищаемся маршрутизатором: QoS

                  QoS — тема большая. Прежде чем рассказывать про тонкости настроек и различные подходы в применении правил обработки трафика, имеет смысл напомнить, что такое вообще QoS.

                  Quality of Service (QoS) — технология предоставления различным классам трафика различных приоритетов в обслуживании.

                  Во-первых, легко понять, что любая приоритезация имеет смысл только в том случае, когда возникает очередь на обслуживание. Именно там, в очереди, можно «проскользнуть» первым, используя своё право.
                  Очередь же образуется там, где узко (обычно такие места называются «бутылочным горлышком», bottle-neck). Типичное «горлышко» — выход в Интернет офиса, где компьютеры, подключенные к сети как минимум на скорости 100 Мбит/сек, все используют канал к провайдеру, который редко превышает 100 МБит/сек, а часто составляет мизерные 1-2-10МБит/сек. На всех.

                  Во-вторых, QoS не панацея: если «горлышко» уж слишком узкое, то часто переполняется физический буфер интерфейса, куда помещаются все пакеты, собирающиеся выйти через этот интерфейс. И тогда новопришедшие пакеты будут уничтожены, даже если они сверхнужные. Поэтому, если очередь на интерфейсе в среднем превышает 20% от максимального своего размера (на маршрутизаторах cisco максимальный размер очереди составляет как правило 128-256 пакетов), есть повод крепко задуматься над дизайном своей сети, проложить дополнительные маршруты или расширить полосу до провайдера.

                  Разберемся с составными элементами технологии

                  (дальше под катом, много)
                  Читать дальше →
                • Инфраструктура современного офиса — 2

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

                    Да, эта статья — продолжение цикла про организацию инфраструктуры современного офиса. Начало — здесь. Подоспело продолжение про телефонию, wi-fi и планирование провайдерских вводов

                    Как и в прошлый раз, при написании этой статьи я осознаю, что планка по объему материала взята слишком высоко — поэтому, в этот раз остановимся на вопросах организации СКС и общих аспектах организации сети (ЛВС). В следующий раз, стало быть, дойдем до беспроводных решений, телефонии и организации внешних вводов. В качестве необъявленного ранее бонус-трека последует отдельная статья о типовых решениях построения сети на оборудовании Allied Telesis.

                    СКС

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

                    В настоящее время, СКС регламентируется рядом стандартов:
                    • EIA/TIA-568В Commercial Building Telecommunications Wiring Standard (американский стандарт)
                    • ISO/IEC IS 11801 Information Technology. Generic cabling for customer premises (международный стандарт)
                    • CENELEC EN 50173 Information Technology. Generic cabling systems (европейский стандарт)

                    В общем случае, проект вашей СКС должен соответствовать как минимум одному из указанных стандартов. К слову, наиболее употребимые формулировки категорий СКС — «5», «5e», «6» определены в американском стандарте. Если вы не подключены к интернет по WiFi, посмотрите на маркировку кабеля, который соединяет ваш компьютер с сетевой розеткой на стене — скорее всего, там будет присутствовать либо «5e», либо «6». По большому счету, от категории СКС зависит только теоретическая скорость передачи данных по кабелям, но об этом — чуть ниже.

                    А почему, кстати, сразу не воткнуть кабели в свитч — спросит въедливый читатель..

                    И почему же?
                  • Визуальный PHP-рефлектор

                      image
                      Представляю вниманию общественности визуальный PHP-рефлектор.

                      Скрипт индексирует все .php-файлы в указанной директории, кэширует информацию о найденных классах. Разбор .php файлов осуществляется с помощью Tokenizer. Кэшируются имена найденных классов, кэшируется сопоставление имя файла — класс для последующего использования в автолоадере.

                      Список классов представляется в виде дерева. Для каждого класса доступен список методов, свойств. Доступен просмотре базового класса и имплементированных интерфейсов. Данные о «составе» классов получаются на ходу через PHP reflection API. Данные подгружаются через AJAX.

                      Интерфейс выполнен на ExtJS. Этим обусловлена поддержка браузеров — работает в IE6+, FF1.5+, Safari 3+, Opera 9+ (PC, Mac)


                      Посмотреть PHPReflector в действии.
                      UPD: Исходники

                      В исходниках отсутствует Ext
                      Теперь Ext с минимальным набором компонентов подгружается из внешних источников через CDN (CacheFly)

                      Планы на будущее:
                      • Причесать исходники;
                      • Сделать поиск;
                      • Сделать отображение не только базовых классов, но и классов, наследованных от данного;
                      • Отображение DocBlock'ов для классов, методов, свойств
                      • UPD: Добавить отображение штатных классов PHP
                    • GoogleTalk, part III (calls, VoIP & SIP)

                        Продолжаем экзекуцию нашего подопечного. Часть III.

                        (см. также часть I и часть II)

                        Сегодня мы поговорим о голосовых функциях GoogleTalk. Сразу после установки софтины и добавления контактов либо автоматически из гмэйловского ящика, либо вручную с помощью меню Add... мы имеем следующие возможности:
                        • посылать нашим контактом голосовые сообщения (голосовая почта)
                        • звонить таким же, как мы сами, пользователям GTalk
                        • отправлять им файлы
                        • отправлять им письма
                        • отправлять сообщения




                        По умолчанию, первые три пункта работают только в том случае, если у нашего корреспондента также установлен GTalk либо (в случае отправки голосовых сообщений) он является пользователем Gmail. Таким образом мы имеем прекрасные, но несколько ограниченные возможности. Рассмотрим поподробнее именно голосовые функции.

                        Читать дальше →
                      • GoogleTalk, part II (ICQ transports & some tips)

                          В предыдущей части я начал рассказывать про попытку миграции с одного IM-клиента на другой, а именно с Pidgin на GoogleTalk (написание происходило одновременно с изучением предмета).

                          Что ж, принимаю поздравления, миграция успешно удалась!

                          Если помните, оставались нерешёнными всего несколько проблем:
                          • ICQ/AIM интеграция, т.е. как научить GTalk общаться с ICQ-контактами
                          • создание «несколькострочных» сообщений, т.е. как выполнить возврат каретки не отправляя сообщение.
                          • раздельно изменять размеры шрифта в ростере и в окне беседы


                          Приступим:

                          ICQ/AIM


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

                          Но отступать не хотелось и решено было заюзать упоминаемые вчера костыли в виде Psi и jabber-транспортов. Всё оказалось не так страшно, хоть и немного муторно.

                          Читать дальше →
                        • GoogleTalk, part I (first steps, general setup)

                            Несколько лет подряд в качестве IM-клиента я использовал мультипротокольный и мультиплатформенный Pidgin и особо горя не знал. Софтина постоянно развивалась, исправлялись баги, добавлялись новые фичи, все меньше надо было плясать с бубном при настройке под себя.

                            Но последние несколько релизов приносят сплошные разочарования, накапливаются мелкие глючки, не устраивают некоторые фичи и т.п. Я раздражаюсь. Тем не менее, для себя альтернативы до сих пор не видел (миранды и прочие qip'ы отметаются как класс — ну не нравятся они мне!). Да и полная миграция на Linux/MacOS отложилась на неопределенно долгий срок. Так что надо было волевым решением сделать себе жизнь под Windows поприятнее.

                            Года полтора-два назад я уже смотрел в сторону GTalk'a, но тогда он показался мне уж слишком убогим. На сегодняшний день ситуация внешне особо не изменилась, но, тем не менее, выглядит он теперь более «доработанным напильником».

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

                            Итак,

                            Что на первый взгляд нравится/не нравится и что с этим делать:



                            Отсутствие табов


                            Проблема частично решилась. Случайно обнаружил, что можно имитировать вертикальные табы: один раз кликаем по заголовку окна беседы, окошко сворачивается, подводим под него окошко другой беседы и оно прилипает к свёрнутому. Учитывая, что GTalk очень хорошо запоминает расположение и размеры окон, выстроил для себя «столбик» из четырёх бесед — обычно именно столько у меня открыто.

                            Читать дальше →
                          • Выкатываем в бой

                              К бою! Внедрение конечного веб-продукта является не самой приятной процедурой для создателя и часто сопровождается жутким стрессом. Нелюбовь разработчика к релизам связана не только с чувствами ответственности и страха перед эксплуатацией новой версии, но и с ощущениями неопределенности: а что будет после того, как внедримся?

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

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

                              Upd: В названии статьи хоть и фигурирует SVN, но советы, изложенные в ней, подходят ко всем известным мне системам кондроля версий. Стоит так же заметить, что советы направлены в основном на командную разработку.

                              Читать дальше →
                            • SVN merge for dummies

                                Простыми словами и с большим количеством картинок на примере Eclipse рассказывается, как сделать svn merge. Статья будет полезна тем, у кого выполнение слияния веток еще не стало повседневной частью работы.
                                читать дальше
                              • tip: цветной hg diff

                                  feat. habrahabr.ru/blogs/development/53736 :)

                                  Основной инструмент — тот же colordiff.

                                  В ~/.hgrc домашнего каталога или в .hg/hgrc проекта вписываем:
                                  [defaults]
                                  cdiff = -q
                                  
                                  [extdiff]
                                  cmd.cdiff = colordiff
                                  opts.cdiff = -uprN
                                  


                                  И опаньки. Наряду с привычным «hg diff» получаем команду «hg cdiff», которая и выдаёт красивый и наглядный список изменений.
                                • Пишем сервер на php

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

                                      Привет хабралюди.

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

                                      Как-то я писал о Mozilla Weave, расширении для синхронизации Firefox. Работа его к сожалению, далека от идеала, а с приходом версии 3 у меня лично оно перестало работать вообще.
                                      Но выход был найден