в

Kazan Dev Alliance

Казанское Сообщество Разработчиков Программного Обеспечения

Персональный блог Дмитрия Кальянова

  • Комментарий Дмитрия Медведева о свободном ПО

    5 марта состоялась конференция Первого заместителя Председателя Правительства России Дмитрия Медведева. Приведу один из вопросов, который меня заинтересовал.

    ВЕДУЩИЙ: Интернет-конференция у нас – несомненно, вопросы будут связаны с компьютерами. И вот, в частности, с использованием открытого программного обеспечения. В частности, Артем Шутов из Подольска спрашивает: «Будет ли произведен перевод нашего образования на открытое программное обеспечение?» И вообще вопросы, связанные с открытым программным обеспечением, повторяются у нас на конференции довольно часто и, в той или иной форме, многократно.

    Д.МЕДВЕДЕВ: Это действительно важная и серьезная тема по самому разному набору обстоятельств. Начиная с того, что у нас довольно значительное число программных продуктов в различных местах эксплуатируется с нарушением лицензионного законодательства. Это, к сожалению, так, и мы об этом открыто говорим. И сегодня, в рамках тех процессов, которые идут, связанных со вступлением России в ВТО [Всемирная торговая организация], мы приняли на себя обязательство избавиться вот от таких пиратских наслоений и сделать работу по этим вопросам абсолютно открытой.

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

    ВЕДУЩИЙ: А они еще монополисты часто.

    Д.МЕДВЕДЕВ: А они еще к тому же монополисты. И периодически в своих странах подвергаются антимонопольным расследованиям в рамках антитрастового законодательства, создают проблемы для совершенствования этих систем, для того чтобы создавать в рамках этих систем приспособленные под конкретные цели продукты. Потому что есть система кодирования вот этих лицензионных программ, и эта система недоступна обычным пользователям. Некоторые наиболее продвинутые пользователи взламывают эту систему. Но, во-первых, не все можно взломать, а во-вторых, это незаконный путь.

    А гораздо полезнее, когда существуют открытые коды доступа к соответствующим программным продуктам. И такие программные продукты, такие операционные системы существуют, эти системы работают во многих офисах. У нас они почему-то меньше распространены, а во многих странах Европы они довольно активно применяются, и даже правительства, администрации переходят на использование таких систем, как Linux, как некоторые другие, дающие возможность достаточно быстро приспосабливать эту кодировку к тем или иным задачам, не попадая в зависимость от монополий, производящих soft. Это важная задача, мы об этом думаем, хотя будем заниматься и решением первой проблемы, то есть выводом работы в открытое, законное пространство в рамках существующих сегодня договоров по использованию лицензионных программных продуктов. То есть это двуединая задача.

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

  • Релиз ntfs-3g

    Вчера вышел очередной релиз ntfs-3g — open source драйвера для файловой системы ntfs с поддержкой чтения и записи.

    Благодаря этому драйверу, во многих операционных системах существует поддержка стабильной работы с файловой системой NTFS. В линуксе, например, есть возможность загружаться с разделов с ntfs.

    Смешная часть: Попутно разработчики нашли несколько багов в утилите chkdsk, входящей в состав windows.

    В целом, разработчики проделали огромную работу, реверсируя файловую систему ntfs.

    PS. По информации с их сайта, патентов на ntfs нет, поэтому этот драйвер можно полностью безопасно использовать.

  • Сборщик мусора для real-time приложений

    David Falcon из IBM Research представил систему сборки мусора Metronome. Основное отличие от многих других систем сборки мусора — то, что эта система имеет характеристики, необходимые для real-time приложений, в частности, предсказуемое и достаточно низкое максимальное время работы сборщика, и предсказуемое планирование: время работы сборщика равномерное распределено на все время работы приложения.

    Предисловие к статье начинается с

    It's now possible to develop realtime systems using Java.

    В этой же статье дается обзор и сравнение других методов сборки мусора (mark-and-sweep, copying; incremental, generational). Все изложено достаточно кратко и ясно.

  • Поддержка ODF в ворде

    31 января вышла версия 1.0 odf-converter. Это позволяет ворду читать и писать документы в формате odf (который, напомню, является международным стандартом).

    odf-converter состоит из двух частей: add-in к ворду (поддерживаются версии xp, 2003, 2007) и утилита командной строки.

    Скачать его можно с сайта проекта на sourceforge.net

    Дальнейшие планы проекта — поддержка форматов ods (OpenDocument SpreadSheet) и odp (OpenDocument Presentation)

  • Сопрограммы на C и C++

    Сопрограммы — это один из полезных приемов программирования.

    Например, в C# сопрограммы могут быть использованы для создания итераторов (см. ключевое слово yield) (но не более — область их применения ограничена итераторами).

    Для C и C++ существует интересный способ добавить такую возможность в язык — с помощью макросов.

    Собственно, весь код взят со страницы http://www.codepost.org/view/104 и содержит всего совсем немного строчек.

    Вот он:

    #define cr_context   int __s;
    #define cr_init()    __s = 0;
    #define cr_start()   switch (__s) { case 0:
    #define cr_return(x) { __s = __LINE__; return x; case __LINE__: ; }
    #define cr_end()     { break; default: for (;;) ; } } __s = 0; 
    

    И пример его использования:

    class foobar_f {
    private:
        cr_context;
    
        // place the variables which need to be remembered between calls here.
        int i;
    
    public:
        foobar_f(void) {
            cr_init();
        }
    
        // overloading the function application operator "()"
        int operator () (void) {
            cr_start();
    
            for (i = 0; i < 1337; i++) {
                cr_return(i);
            }
    
            cr_end();
        }
    };
    
    // create a function object, sometimes (incorrectly) called functor.
    foobar_f foobar;
    
    printf("%d\n", foobar()); // prints 0
    printf("%d\n", foobar()); // prints 1
    printf("%d\n", foobar()); // prints 2 
    

    Возможно, будет полезно...

  • Java + GPL

    Sun открывает яву под лицензией GPL (2-й версия с classpath linking exception). Думаю, это начало новой истории явыSmile

    В общем, читайте:

    Причина выбора именно GPL, а не собственной CDDL (Community Development and Distribution License) прежде всего в защите собственного труда — код под GPL невозможно украсть; к тому же, это достаточно эффективно устраняет опасность появления форков явы.

    Цитата из http://www.sun.com/software/opensource/java/faq.jsp#a1:

    Q: What is Sun announcing?

    A: Sun is open sourcing all of its Java platform implementations under same license (called GPL Version 2) used by the GNU/Linux operating system.

    Specifically Sun is announcing:

    • GPL v2 license for Sun's Java SE (JDK) and Java ME implementations, and adding this license to Sun's Java EE implementation.
    • First release of code for the JDK and for Sun's Java ME implementation, projects and communities.
    • Roadmap for future code releases and community development.

    This singular act is the largest contribution ever made to the free software community, and places Sun squarely at the front of the open-source movement — as the single biggest commercial contributor.

  • Microsoft Internet Explorer Team поздравила MoCo с выпуском Firefox 2.0

    http://fredericiana.com/2006/10/24/from-redmond-with-love/

    Подразделение Microsoft Internet Explorer Team поздравило мозилловцев, отправив им торт с надписью «Congratulations on shipping! Love, the IE Team».

    По-моему, очень интересное событиеSmile

© 2007 Kazan Developers Community and Post`s Authors