<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://www.itkazan.com/utility/FeedStylesheets/atom.xsl" media="screen"?><feed xmlns="http://www.w3.org/2005/Atom" xml:lang=""><title type="html">Персональный блог Дмитрия Кальянова</title><subtitle type="html" /><id>http://www.itkazan.com/blogs/dvk/atom.aspx</id><link rel="alternate" type="text/html" href="http://www.itkazan.com/blogs/dvk/default.aspx" /><link rel="self" type="application/atom+xml" href="http://www.itkazan.com/blogs/dvk/atom.aspx" /><generator uri="http://communityserver.org" version="3.0.20611.960">Community Server</generator><updated>2006-10-30T18:23:00Z</updated><entry><title>Комментарий Дмитрия Медведева о свободном ПО</title><link rel="alternate" type="text/html" href="http://www.itkazan.com/blogs/dvk/archive/2007/03/06/890.aspx" /><id>http://www.itkazan.com/blogs/dvk/archive/2007/03/06/890.aspx</id><published>2007-03-06T05:11:00Z</published><updated>2007-03-06T05:11:00Z</updated><content type="html">&lt;p&gt;5 марта состоялась &lt;a href="http://www.rost.ru/print/themes/2007/03/052148_8215.shtml"&gt;конференция&lt;/a&gt; Первого заместителя Председателя Правительства России Дмитрия Медведева. Приведу один из вопросов, который меня заинтересовал.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;ВЕДУЩИЙ: Интернет-конференция у нас – несомненно, вопросы будут связаны с компьютерами. И вот, в частности, с использованием открытого программного обеспечения. В частности, Артем Шутов из Подольска спрашивает: «Будет ли произведен перевод нашего образования на открытое программное обеспечение?» И вообще вопросы, связанные с открытым программным обеспечением, повторяются у нас на конференции довольно часто и, в той или иной форме, многократно.&lt;/p&gt;
&lt;p&gt;Д.МЕДВЕДЕВ: Это действительно важная и серьезная тема по самому разному набору обстоятельств. Начиная с того, что у нас довольно значительное число программных продуктов в различных местах эксплуатируется с нарушением лицензионного законодательства. Это, к сожалению, так, и мы об этом открыто говорим. И сегодня, в рамках тех процессов, которые идут, связанных со вступлением России в ВТО [Всемирная торговая организация], мы приняли на себя обязательство избавиться вот от таких пиратских наслоений и сделать работу по этим вопросам абсолютно открытой.&lt;/p&gt;

&lt;p&gt;Но это часть темы. Есть и другая сторона медали. Вот эти программные продукты, они всем известны, которые продаются и которые в общем и целом стоят… ну не таких уж и маленьких денег, и приносят крупным производителям того, что называется soft, довольно приличные, если не сказать огромные, прибыли…&lt;/p&gt;
&lt;p&gt;
ВЕДУЩИЙ: А они еще монополисты часто.&lt;/p&gt;

&lt;p&gt;Д.МЕДВЕДЕВ: А они еще к тому же монополисты. И периодически в своих странах подвергаются антимонопольным расследованиям в рамках антитрастового законодательства, создают проблемы для совершенствования этих систем, для того чтобы создавать в рамках этих систем приспособленные под конкретные цели продукты. Потому что есть система кодирования вот этих лицензионных программ, и эта система недоступна обычным пользователям. Некоторые наиболее продвинутые пользователи взламывают эту систему. Но, во-первых, не все можно взломать, а во-вторых, это незаконный путь.&lt;/p&gt;

&lt;p&gt;А гораздо полезнее, когда существуют открытые коды доступа к соответствующим программным продуктам. И такие программные продукты, такие операционные системы существуют, эти системы работают во многих офисах. У нас они почему-то меньше распространены, а во многих странах Европы они довольно активно применяются, и даже правительства, администрации переходят на использование таких систем, как Linux, как некоторые другие, дающие возможность достаточно быстро приспосабливать эту кодировку к тем или иным задачам, не попадая в зависимость от монополий, производящих soft. Это важная задача, мы об этом думаем, хотя будем заниматься и решением первой проблемы, то есть выводом работы в открытое, законное пространство в рамках существующих сегодня договоров по использованию лицензионных программных продуктов. То есть это двуединая задача.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Таким образом, можем видеть, что и в правительстве наконец-то стали задумываться об этом.&lt;/p&gt;&lt;img src="http://www.itkazan.com/aggbug.aspx?PostID=890" width="1" height="1"&gt;</content><author><name>dvk</name><uri>http://www.itkazan.com/members/dvk.aspx</uri></author></entry><entry><title>Релиз ntfs-3g</title><link rel="alternate" type="text/html" href="http://www.itkazan.com/blogs/dvk/archive/2007/02/22/ntfs-3g.aspx" /><id>http://www.itkazan.com/blogs/dvk/archive/2007/02/22/ntfs-3g.aspx</id><published>2007-02-22T12:54:00Z</published><updated>2007-02-22T12:54:00Z</updated><content type="html">&lt;p&gt;Вчера вышел очередной релиз &lt;a href="http://www.ntfs-3g.org/index.html"&gt;ntfs-3g&lt;/a&gt; &amp;mdash; open source драйвера для файловой системы ntfs с поддержкой чтения и записи.&lt;/p&gt;
&lt;p&gt;Благодаря этому драйверу, во многих операционных системах существует поддержка стабильной работы с файловой системой NTFS. В линуксе, например, есть возможность загружаться с разделов с ntfs.&lt;/p&gt;
&lt;p&gt;Смешная часть: Попутно разработчики нашли несколько багов в утилите chkdsk, входящей в состав windows.&lt;/p&gt;
&lt;p&gt;В целом, разработчики проделали огромную работу, реверсируя файловую систему ntfs.&lt;/p&gt;
&lt;p&gt;PS. По информации с их сайта, патентов на ntfs нет, поэтому этот драйвер можно полностью безопасно использовать.&lt;/p&gt;&lt;img src="http://www.itkazan.com/aggbug.aspx?PostID=795" width="1" height="1"&gt;</content><author><name>dvk</name><uri>http://www.itkazan.com/members/dvk.aspx</uri></author></entry><entry><title>Сборщик мусора для real-time приложений</title><link rel="alternate" type="text/html" href="http://www.itkazan.com/blogs/dvk/archive/2007/02/07/real-time.aspx" /><id>http://www.itkazan.com/blogs/dvk/archive/2007/02/07/real-time.aspx</id><published>2007-02-07T13:37:00Z</published><updated>2007-02-07T13:37:00Z</updated><content type="html">&lt;p&gt;David Falcon из IBM Research &lt;a href="http://www.acmqueue.org/modules.php?name=Content&amp;pa=showpage&amp;pid=454&amp;page=1"&gt;представил&lt;/a&gt; систему сборки мусора Metronome. Основное отличие от многих других систем сборки мусора &amp;mdash; то, что эта система имеет характеристики, необходимые для real-time приложений, в частности, предсказуемое и достаточно низкое максимальное время работы сборщика, и предсказуемое планирование: время работы сборщика равномерное распределено на все время работы приложения.&lt;/p&gt;
&lt;p&gt;Предисловие к статье начинается с &lt;blockquote&gt;It's now possible to develop realtime systems using Java.&lt;/blockquote&gt;&lt;/p&gt;
&lt;p&gt;В этой же статье дается обзор и сравнение других методов сборки мусора (mark-and-sweep, copying; incremental, generational). Все изложено достаточно кратко и ясно.&lt;/p&gt;&lt;img src="http://www.itkazan.com/aggbug.aspx?PostID=671" width="1" height="1"&gt;</content><author><name>dvk</name><uri>http://www.itkazan.com/members/dvk.aspx</uri></author><category term="Java" scheme="http://www.itkazan.com/blogs/dvk/archive/tags/Java/default.aspx" /><category term="Realtime" scheme="http://www.itkazan.com/blogs/dvk/archive/tags/Realtime/default.aspx" /><category term="Garbage Collector" scheme="http://www.itkazan.com/blogs/dvk/archive/tags/Garbage+Collector/default.aspx" /><category term="IBM Research" scheme="http://www.itkazan.com/blogs/dvk/archive/tags/IBM+Research/default.aspx" /></entry><entry><title>Поддержка ODF в ворде</title><link rel="alternate" type="text/html" href="http://www.itkazan.com/blogs/dvk/archive/2007/02/02/odf.aspx" /><id>http://www.itkazan.com/blogs/dvk/archive/2007/02/02/odf.aspx</id><published>2007-02-02T21:33:00Z</published><updated>2007-02-02T21:33:00Z</updated><content type="html">&lt;p&gt;31 января вышла версия 1.0 odf-converter. Это позволяет ворду читать и писать документы в формате odf (который, напомню, является международным стандартом).&lt;/p&gt;
&lt;p&gt;odf-converter состоит из двух частей: add-in к ворду (поддерживаются версии xp, 2003, 2007) и утилита командной строки.&lt;/p&gt;
&lt;p&gt;Скачать его можно с &lt;a href="http://odf-converter.sourceforge.net/"&gt;сайта проекта&lt;/a&gt; на sourceforge.net&lt;/p&gt;
&lt;p&gt;Дальнейшие планы проекта &amp;mdash; поддержка форматов ods (OpenDocument SpreadSheet) и odp (OpenDocument Presentation)&lt;/p&gt;&lt;img src="http://www.itkazan.com/aggbug.aspx?PostID=629" width="1" height="1"&gt;</content><author><name>dvk</name><uri>http://www.itkazan.com/members/dvk.aspx</uri></author><category term="OpenDocument" scheme="http://www.itkazan.com/blogs/dvk/archive/tags/OpenDocument/default.aspx" /><category term="Microsoft Office Word" scheme="http://www.itkazan.com/blogs/dvk/archive/tags/Microsoft+Office+Word/default.aspx" /><category term="Open Office" scheme="http://www.itkazan.com/blogs/dvk/archive/tags/Open+Office/default.aspx" /></entry><entry><title>Сопрограммы на C и C++</title><link rel="alternate" type="text/html" href="http://www.itkazan.com/blogs/dvk/archive/2006/12/08/c-c.aspx" /><id>http://www.itkazan.com/blogs/dvk/archive/2006/12/08/c-c.aspx</id><published>2006-12-09T00:51:00Z</published><updated>2006-12-09T00:51:00Z</updated><content type="html">&lt;p&gt;Сопрограммы — это один из полезных приемов программирования.&lt;/p&gt;
&lt;p&gt;Например, в C# сопрограммы могут быть использованы для создания итераторов (см. ключевое слово yield) (но не более &amp;mdash; область их применения ограничена итераторами).&lt;/p&gt;
&lt;p&gt;Для C и C++ существует интересный способ добавить такую возможность в язык — с помощью макросов.&lt;/p&gt;
&lt;p&gt;Собственно, весь код взят со страницы &lt;a href="http://www.codepost.org/view/104"&gt;http://www.codepost.org/view/104&lt;/a&gt; и содержит всего совсем немного строчек.&lt;/p&gt;
&lt;p&gt;Вот он:&lt;/p&gt;
&lt;blockquote&gt;
&lt;code&gt;
&lt;/code&gt;&lt;pre&gt;#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; 
&lt;/pre&gt;

&lt;/blockquote&gt;
&lt;p&gt;И пример его использования:&lt;/p&gt;
&lt;blockquote&gt;
&lt;code&gt;
&lt;/code&gt;&lt;pre&gt;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 &amp;lt; 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 
&lt;/pre&gt;

&lt;/blockquote&gt;
&lt;p&gt;Возможно, будет полезно...&lt;/p&gt;&lt;img src="http://www.itkazan.com/aggbug.aspx?PostID=500" width="1" height="1"&gt;</content><author><name>dvk</name><uri>http://www.itkazan.com/members/dvk.aspx</uri></author><category term="C++" scheme="http://www.itkazan.com/blogs/dvk/archive/tags/C_2B002B00_/default.aspx" /><category term="preprocessor" scheme="http://www.itkazan.com/blogs/dvk/archive/tags/preprocessor/default.aspx" /><category term="coroutines" scheme="http://www.itkazan.com/blogs/dvk/archive/tags/coroutines/default.aspx" /><category term="macro" scheme="http://www.itkazan.com/blogs/dvk/archive/tags/macro/default.aspx" /><category term="C" scheme="http://www.itkazan.com/blogs/dvk/archive/tags/C/default.aspx" /><category term="C#" scheme="http://www.itkazan.com/blogs/dvk/archive/tags/C_2300_/default.aspx" /><category term="yield" scheme="http://www.itkazan.com/blogs/dvk/archive/tags/yield/default.aspx" /></entry><entry><title>Java + GPL</title><link rel="alternate" type="text/html" href="http://www.itkazan.com/blogs/dvk/archive/2006/11/13/java-gpl.aspx" /><id>http://www.itkazan.com/blogs/dvk/archive/2006/11/13/java-gpl.aspx</id><published>2006-11-14T00:48:00Z</published><updated>2006-11-14T00:48:00Z</updated><content type="html">&lt;p&gt;Sun открывает яву под лицензией GPL (2-й версия с classpath linking exception). Думаю, это начало новой истории явы&lt;img src="http://itkazan.com/emoticons/emotion-1.gif" alt="Smile" /&gt;&lt;/p&gt;
&lt;p&gt;В общем, читайте:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="http://http://weblogs.java.net/blog/editors/archives/2006/11/special_novembe_1.html"&gt;http://weblogs.java.net/blog/editors/archives/2006/11/special_novembe_1.html&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://http://www.sun.com/software/opensource/java/gosling_letter.jsp"&gt;http://www.sun.com/software/opensource/java/gosling_letter.jsp&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://http://www.sun.com/software/opensource/java/faq.jsp"&gt;http://www.sun.com/software/opensource/java/faq.jsp&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;Причина выбора именно GPL, а не собственной CDDL (Community Development and Distribution License) прежде всего в защите собственного труда — код под GPL невозможно украсть; к тому же, это достаточно эффективно устраняет опасность появления форков явы.&lt;/p&gt;
&lt;p&gt;Цитата из &lt;a href="http://www.sun.com/software/opensource/java/faq.jsp#a1"&gt;http://www.sun.com/software/opensource/java/faq.jsp#a1&lt;/a&gt;: &lt;/p&gt;
&lt;blockquote&gt;
 
&lt;p&gt;&lt;strong&gt;Q:&lt;/strong&gt;
What is Sun announcing?&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;A:&lt;/strong&gt;
Sun is open sourcing all of its Java platform implementations under same license (called GPL Version 2) used by the GNU/Linux operating system.&lt;/p&gt;

&lt;p&gt;Specifically Sun is announcing:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;GPL v2 license for Sun's Java SE (JDK) and Java ME implementations, and adding this license to Sun's Java EE implementation.&lt;/li&gt;
&lt;li&gt;First release of code for the JDK and for Sun's Java ME implementation, projects and communities.&lt;/li&gt;
&lt;li&gt;Roadmap for future code releases and community development.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;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.&lt;/p&gt;

&lt;/blockquote&gt;&lt;img src="http://www.itkazan.com/aggbug.aspx?PostID=398" width="1" height="1"&gt;</content><author><name>dvk</name><uri>http://www.itkazan.com/members/dvk.aspx</uri></author><category term="GPL" scheme="http://www.itkazan.com/blogs/dvk/archive/tags/GPL/default.aspx" /><category term="Java" scheme="http://www.itkazan.com/blogs/dvk/archive/tags/Java/default.aspx" /><category term="Sun" scheme="http://www.itkazan.com/blogs/dvk/archive/tags/Sun/default.aspx" /><category term="Open Source" scheme="http://www.itkazan.com/blogs/dvk/archive/tags/Open+Source/default.aspx" /></entry><entry><title>Microsoft Internet Explorer Team поздравила MoCo с выпуском Firefox 2.0</title><link rel="alternate" type="text/html" href="http://www.itkazan.com/blogs/dvk/archive/2006/10/30/Microsoft-Internet-Explorer-Team-_3F043E043704340440043004320438043B043004_-MoCo-_4104_-_32044B043F04430441043A043E043C04_-Firefox-2.0.aspx" /><id>http://www.itkazan.com/blogs/dvk/archive/2006/10/30/Microsoft-Internet-Explorer-Team-_3F043E043704340440043004320438043B043004_-MoCo-_4104_-_32044B043F04430441043A043E043C04_-Firefox-2.0.aspx</id><published>2006-10-30T22:23:00Z</published><updated>2006-10-30T22:23:00Z</updated><content type="html">&lt;p&gt;&lt;a href="http://fredericiana.com/2006/10/24/from-redmond-with-love/"&gt;http://fredericiana.com/2006/10/24/from-redmond-with-love/&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Подразделение Microsoft Internet Explorer Team поздравило мозилловцев, отправив им торт с надписью «Congratulations on shipping! Love, the IE Team».&lt;/p&gt;&lt;p&gt;По-моему, очень интересное событие&lt;img src="http://itkazan.com/emoticons/emotion-1.gif" alt="Smile" /&gt;&lt;/p&gt;&lt;img src="http://www.itkazan.com/aggbug.aspx?PostID=246" width="1" height="1"&gt;</content><author><name>dvk</name><uri>http://www.itkazan.com/members/dvk.aspx</uri></author><category term="Firefox" scheme="http://www.itkazan.com/blogs/dvk/archive/tags/Firefox/default.aspx" /><category term="IE" scheme="http://www.itkazan.com/blogs/dvk/archive/tags/IE/default.aspx" /><category term="Microsoft" scheme="http://www.itkazan.com/blogs/dvk/archive/tags/Microsoft/default.aspx" /><category term="Mozilla" scheme="http://www.itkazan.com/blogs/dvk/archive/tags/Mozilla/default.aspx" /></entry></feed>