• Плохо документированные особенности Linux

      Привздохнув, произнесла:
      «Как же долго я спала!»
      image Когда-то, впервые встретив Unix, я был очарован логической стройностью и завершенностью системы. Несколько лет после этого я яростно изучал устройство ядра и системные вызовы, читая все что удавалось достать. Понемногу мое увлечение сошло на нет, нашлись более насущные дела и вот, начиная с какого-то времени, я стал обнаруживать то одну то другую фичу про которые я раньше не знал. Процесс естественный, однако слишком часто такие казусы обьединяет одно — отсутствие авторитетного источника документации. Часто ответ находится в виде третьего сверху комментария на stackoverflow, часто приходится сводить вместе два-три источника чтобы получить ответ на именно тот вопрос который задавал. Я хочу привести здесь небольшую коллекцию таких плохо документированных особенностей. Ни одна из них не нова, некоторые даже очень не новы, но на каждую я убил в свое время несколько часов и часто до сих пор не знаю систематического описания.

      Все примеры относятся к Linux, хотя многие из них справедливы для других *nix систем, я просто взял за основу самую активно развивающуюся ОС, к тому же ту, которая у меня перед глазами и где я могу быстро проверить предлагаемый код.

      Обратите внимание, в заголовке я написал «плохо документированные» а не «малоизвестные», поэтому тех кто в курсе прошу выкладывать в комментариях ссылки на членораздельную документацию, я с удовольствием добавлю в конце список.
      Читать дальше →
    • Мощь Scapy

        Scapy — инструмент создания и работы с сетевыми пакетами. Программа написана на языке python, автор Philippe Biondi. Познакомиться с основным функционалам можно здесь. Scapy — универсальный, поистине мощный инструмент для работы с сетью и проведения исследований в области информационной безопасности. В статье я попытаюсь заинтересовать Вас использовать scapy в своей работе/проектах. Думаю, что лучше всего этого можно добиться, показав на примерах основные преимущества scapy.
        В качестве примеров я возьму простые и наглядные задачи, которые можно решить средствами scapy. Основным направлением будет формирование пакетов для реализации того или иного вида атак.
        Подробности
        • +19
        • 43k
        • 8
      • Нидерланды приняли закон о сетевом нейтралитете

          8 мая 2012 года парламент Нидерландов утвердил новый Акт о телекоммуникациях с поправками о сетевом нейтралитете. Таким образом, эта страна стала второй в мире после Чили, где сетевой нейтралитет закреплён на законодательном уровне. В Норвегии эти принципы прописаны в виде соглашения между провайдерами, министерством телекоммуникаций и обществом защиты прав потребителей.

          Поправки о сетевом нейтралитете (неофициальный перевод на англ. яз.)

          Сетевой нейтралитет — принцип, по которому провайдеры телекоммуникационных услуг Нидерландов не имеют права фильтровать трафик, за исключением четырёх случаев.
          Читать дальше →
        • Платформа gov.uk будет полностью открытой. Исходные коды опубликованы на GitHub

            Правительство Великобритании создает полностью открытую платформу электронного правительства gov.uk
            Платформа gov.uk призвана заменить текущую систему DirectGov.

            Архитектура платформы создана с учетом ее работы в облачном сервисе, причем в качестве провайдера облачной инфраструктуры выбран AWS. То есть система будет работать в публичном центре даных, при этом будут соблюдены
            все требования к защите данных.

            Система написана на языке Ruby, ее код полностью открыт и опубликован на GitHub
            Читать дальше →
          • Краудсорсинг новой конституции Исландии

              Комитет по составлению новой конституции Исландии обратился к гражданам с призывом помочь в написании документа. Они открыли страничку на Facebook, где каждый может высказать своё мнение относительно черновика документа, и эти правки будут внесены в текст. Новости проекта транслируются через Twitter, Youtube и Flickr.

              Таким образом, новая исландская конституция станет первой в мире, составленной при помощи краудсорсинга, то есть коллективными усилиями граждан страны.
              Читать дальше →
            • Кричим троекратное «Ура!», друзья: SOPA и PIPA были отклонены конгрессом

                Письмо от fightforthefuture.org:

                Hi everyone!

                A big hurrah to you!!! We’ve won for now — SOPA and PIPA were dropped by Congress today — the votes we’ve been scrambling to mobilize against have been cancelled.

                The largest online protest in history has fundamentally changed the game. You were heard.
              • Швейцария: музыку и фильмы по-прежнему можно скачивать легально



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

                  Общий вывод исследования заключается в том, что действующий закон об авторских правах, в соответствии с которым скачивание защищенных авторским правом материалов для личного пользования разрешено, не должен измениться. Доклад начинается с того, что интернет принципиально изменил подход к копированию файлов. Ксерокс, аудиокассеты и видеомагнитофоны хоть и позволяли пользователям делать хорошие копии, но этим устройствам не хватает удобного способа дистрибуции. С развитием всемирной паутины всё изменилось.
                  Читать дальше →
                • Написание плагина к Redmine

                  Про систему управления проектами Redmine наверное многие слышали, а некоторые возможно даже использовали в своей работе. Redmine — довольно гибкая кроссплатформенная система, написанная на известном фреймворке Ruby on Rails. Как и большинство подобных систем, Redmine позволяет расширять свою функциональность за счет сторонних плагинов. В данный момент уже имеется более тысячи таких плагинов на разный вкус и цвет. Я хочу рассказать об одном из них и о том как написать плагин к Redmine на его примере.
                  Читать дальше →
                • А вы всё ещё используете Google Reader?

                    Когда в марте этого года стало известно о закрытии Google Reader, я думаю многие кинулись изучать аналогичные сторонние сервисы. И я был не исключением. Потыкавшись в разные сервисы я так и не нашел то, что понравилось бы лично мне и благополучно продолжил пользоваться Google Reader. Но время X неминуемо приближается и уже осталось меньше двух месяцев до закрытия сервиса, поэтому я опять решил поискать альтернативу. На этот раз я решил попробовать различные opensource решения и поднять rss-читалку на своем сервере для себя и моих друзей. Поизучав этот вопрос я наткнулся на «Tiny Tiny RSS», который, кстати, оценили и на хабре.

                    Он настолько мне понравился, что я совсем перестал заходить в Google Reader. И мне пришла в голову мысль, а почему бы не открыть регистрацию для всех желающих?
                    Читать дальше →
                  • Почему Erlang?

                      Оригинал статьи: smyck.net/2012/04/22/why-erlang

                      Шансы, что вы читаете эту статью на устройстве с многоядерным процесcором, растут каждый день, вот почему все постоянно говорят про параллелизм (concurrency). Параллелизм для наших web приложений и API бэкендов, это когда вывод htop выглядит примерно как на картинке:

                      Concurrente htop

                      Я недавно был на великолепной Ruby конференции и три или четыре доклада были про параллелизм. Сообщество Ruby достаточно открыто и обсуждалось достаточно много возможностей: использовать потоки, использовать различные среды выполнения Ruby, чтобы обойти GIL, использовать больше процессоров, использовать модель акторов через библиотеки как Celluloid или даже использовать Akka через JRuby.

                      В то время как модель акторов, кажется, хорошо подходит для создания сетевых параллельных приложений, которые часто страдает от проблем, если среда выполнения, на которой реализовано приложение не имеет нативной поддержки. Существуют реализации для Ruby, Python и Java, но все они должны подстраиваться, чтобы достичь нормальной работы и не обязательно результат даёт наилучшую производительность. Это одна из многих причин, почему Erlang был бы намного лучшим выбором, но сначала, давайте немного уделим время модели акторов, чтобы понять, почему это так хорошо работает.

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