• Курс молодого бойца cisco: искусство владения консолью

      Введение: многие начинающие настройщики сетевого железа боятся консоли (CLI, Command Line Interface) как огня. Ещё бы: ни тебе всплывающих подсказок по наведенному мышиному курсору, ни тебе красивых картинок, а лишь непонятные буквы на черном (зеленом, белом) фоне. Боязно…

      Однако, консоль является мощнейшим инструментом, не овладев которым называть себя настройщком cisco нельзя.

      При помощи консоли можно:
      1. Задать начальную конфигурацию.
      2. Восстановить потерянные пароли (для разных железок по-разному. Но поиском на сайте cisco.com легко найти процесс по ключевым словам “password-recovery (название железки)” )
      3. Настроить нестандартные топологии
      4. Включить скрытые возможности
      5. Проверить правильность настроек командами show
      6. Отладить процесс командами debug

      Помните: при помощи консоли можно всё, при помощи GUI – не всё, а только то, что запрограммировали и разрешили.

      Как же овладеть искусством быстрой настройки через консоль?

      Читать дальше →
    • Многострочный Javascript

        Возможно для многих это не новость — но я раньше не знал об этом и спешу поделиться.
        Для записи многострочных переменных в javaScript коде мы обычно используем конструкцию типа:
        var value = 'Строковая переменная'+
        ' достаточно длинная'+
        ' чтобы разместить ее на нескольких строках в коде';

        Но эту конструкцию можно заменить на более читаемую
        var value = 'Строковая переменная\
         достаточно длинная\
         чтобы разместить ее на нескольких строках в коде'
        ;


        Взято с Snook.ca
      • Suggest в Google — никакого аякса

          Честно говоря, у меня, давно сложилось впечатление, что если клиент (в данном случае броузер) что-то должен с сервера забирать без перезагрузки страницы, то это обязательно должен быть AJAX XMLHttpRequest. Ткнул куда-то пользователь, сработало событие, сгенерировался AJAX XMLHttpRequest-запрос, пришел с сервера ответ, коллбэк обработал его и пользователь что-то увидел.

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

          Читать дальше →
        • Типографика и WPF — Рисуем красивый текст

            Важно: этот подход устарел, теперь можно просто использовать DirectWrite и получать все плюшки OpenType. Пример конкретной реализации можно найти вот тут.



            Введение


            Как известно, в WPF есть достаточно мощная встроенная система типографики. К сожалению, эта система ориентирована в основном на работу с документами и, тем самым, все типографические изыски вроде поддержки OpenType невозможно использовать для какого-нибудь простого контрола вроде Label. Но, не смотря ни на что, есть все-таки возможность получить качественную отрисовку текста – просто нужно немного помучаться.
            Читать дальше
          • Доступ к приватному видео Вконтакте

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

              Немного копнуть


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

              Далее, свое публичное видео я сделал крайне приватным (только для себя), и попробовал снова скачать файл напрямую с завершенной сессией. Ага, качается. Это значит, что сервера на раздаче видео не производят проверки на приватность (и правильно делают, потому как это надо делать в другом месте).
              Читать дальше →
            • Дебаг в Zend Framework с использованием FirePHP

                Zend Framework and FrePHP

                Есть одно правило — не показывать заказчику debug информацию, для этой цели обычно существует две конфигурации, но если заказчик очень любопытен, либо Вам, из эстетических побуждений, хочется скрыть килобайты дебаг информации? В этих благих намерениях нам поможет FirePHP.
                Читать дальше →
                • +20
                • 1,5k
                • 8
              • Подключаем транспорты к GTalk. Через тернии…

                  То там, то здесь в течение последнего полугода возникают сообщения о том, что люди не могут подключить к их jabber-аккаунту на Google Talk новые транспорты. Как показал анализ трафика и несколько обсуждений в списке рассылки jabber-operators, дело в том, что GTalk «не любит» JIDы в формате srv.example.org, а предпочитает исключительно node@example.org и поэтому честные транспорты не могут запросить у пользователя авторизацию.

                  Если количество ссылок вас еще не утомило, то ниже я в двух словах расскажу, что с этим можно сделать, пока инженеры Google полгода чинят этот лютый баг.
                  Читать дальше →
                • Метапрограммирование

                    imageМетапрограммирование — общее название класса средств автоматизации труда программиста. Под ним понимают и кодогенерацию, и макросы препроцессора в C, и шаблоны C++, и макросы LISP, и создание своих DSL, а так же использование динамических языков с генерацией кода на лету. Nemerle поддерживает еще один вариант метапрограммирования.

                    Читать дальше →
                  • Нулевой прототип или проекты «для себя»

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

                      Проекты для дяди


                      Когда вы создаете проект для заказчика, то вам, по большому счету, плевать, будет ли проект коммерчески успешным. Заказчик хочет новую социальную сеть? Пожалуйста. А о том что очередная социальная сеть никому не нужна, и что создавать ее сегодня уже просто смешно, вы скромно умолчите. Заказчики часто не понимают, что большая часть фич, которые они хотят, на самом деле никогда не будут востребованы. Как-то мне довелось столкнуться с проектом, который со стороны выглядел обычным каталогом сайтов. На создание аналогичного каталога ушла бы неделя. Но на самом деле объем этого проекта составлял более ста тысяч (!) строк.
                      Читать дальше →
                    • автоматическое монтирование подключаемых устройств через udev

                        Задача автоматического монтирования флешек решается довольно просто в KDE или GNOME — эти среды можно настроить так, что они сами всё смонтируют, откроют файловый менеджер и покажут значок в трее. Но что делать, если у вас только консоль или стоит, например, awesome? Или вы не хотите разбираться с конкретным DE, а ищите универсальное решение?

                        Независимое от DE решение есть — udev.
                        Читать дальше →
                      • текст под произвольным углом без флеш и js

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

                          Теперь я хочу вам рассказать о том как сделать поставленную задачу без картинок, флеш и js, только средствами html и css. К тому же стало возможно сделать текст под произвольным углом. В конце статьи есть готовый пример.

                          вертикальный текст и текст под углом
                          Читать дальше →
                        • Boost.Preprocessor

                            Препроцессор — штука достаточно неодназначная, что-бы это понять, достаточно поднять дискуссию на эту тему на каком-нибудь формуе, и опасная, так-как он вообще не в курсе синтаксиса языка программирования С++, ничего не знает о пространствах имен, шаблонах и тд. Лучше всего ограничить его применение условной компиляцией, а так-же не забывать использовать #undef. Но, если не следовать этой рекомендации, то с его помощью можно делать очень интересные вещи:)
                            узнать какие
                          • Исключения. Где я их использую

                              После прочтения «Как правильно использовать исключения» и комментариев к ней решил написать небольшую статью где я использую исключения, а не как «правильно», всё основано на опыте, кратко и лаконично.
                              Читать дальше →
                            • Как правильно использовать исключения

                                Жаль, если ваше изучение концепции исключений закончится чтением соответствующего раздела официальной документации по вашему языку.

                                Изучив синтаксис конструкции try{...}catch(Exception $e){...}, узнав о возможности создавать собственные классы исключений, наследуя их от класса Exception и поверхностно осознав мощь оказавшегося в ваших руках механизма, дальше вы можете пойти по одному из двух путей:
                                • Начать тут же использовать исключения. Скажем, прикручивать их к системе, в которой они никогда не использовались. Или приколачивать их к проекту, в котором ООП и не пахнет. Или, что самое ужасное, пытаться использовать их повсеместно, особенно там, где это не нужно.
                                • Попытаться понять, где их применять, как делать это правильно, и зачем они нужны.

                                Читать дальше →
                              • Румикс — создай виртуальную комнату и обставь ее 3D моделями мебели!

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

                                  Наш проект Roomix (http://www.roomix.ru) предлагает онлайн-сервис для покупателей мебели и товаров для дома. Roomix — это онлайн-приложение, которое позволяет прямо на сайте создать и обставить комнату в 3D. В виртуальной комнате можно расставить объемные модели шкафов, диванов, стульев из каталога, покрасить стены, постелить ковры, повесить свой портрет на стену и одним кликом получить список со всеми товарами и контактами магазинов. Мы делаем упор на наличии в приложении простого пользовательского интерфейса и удобной навигации, поэтому стараемся сделать так, чтобы воспользоваться им смогла каждая домохозяйка или офисный планктон.

                                  Сейчас в базе реальная мебель и товары для дома и ремонта (картины, обои, ламинат) наших первых клиентов — крупнейших российских мебельных компаний: Новоместо, Сходня-мебель, Мир Диванов, ХДМ и других.

                                  В ближайшее время мы продолжим добавлять новый функционал и расширять ассортимент.

                                  Буду рад ответить на вопросы по проекту в комментариях.

                                  UPD. Хабраэффект :) Подняли. Ждем что будет дальше.
                                  UPD2. Те, у кого Opera, могут потестировать приложение по этой ссылке

                                  Читать дальше →
                                • Знакомство с Processing 1.0

                                    Цель написания этого топика — познакомить вас с замечательным языком Processing. Этот ЯП не может похвастать широкой функциональностью или богатыми выразительными средствами, но он способен предложить кое-что другое…
                                    Читать дальше
                                  • Как качать с Rapidshare.com «free user», используя curl или wget

                                      Появившаяся почти год назад статья про скачивание с многими любимого кладезя почти легальной вами же забэкапленной информации Rapidshare.com вызвала одобрение у публики хабра. За последнее время рапида убрала с себя капчу, сделала не столь долгим ожидание между загрузками, в общем, всем своим видом показывает, что с ней очень приятно работать. А если это можно делать ещё и бесплатно… так почему же нет?!
                                      Читать дальше →
                                    • Нано.Самолётики на карте мира

                                      • Из RSS

                                      Хотите увидеть самолёты, которые сейчас находятся в воздухе? Теперь за ними можно следить прямо на карте.

                                      Информация о рейсах и расчет местоположения происходит на основе данных сервиса Яндекс.Расписания. Летают наши самолёты по ортодромиям — кратчайшему расстоянию между двумя точками находящимися на поверхности сферы (хотя в реальной жизни маршруты проложены по специальным воздушным коридорам).

                                      Приятного вам просмотра :)