<?xml version="1.0" encoding="UTF-8"?>
<!-- generator="wordpress/2.2.3" -->
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	>

<channel>
	<title>olpa, OSS developer</title>
	<link>http://uucode.com/blog</link>
	<description>advocating olpa's open source developments</description>
	<pubDate>Thu, 10 Apr 2008 04:11:30 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.2.3</generator>
	<language>en</language>
			<item>
		<title>TeXML is alive and well</title>
		<link>http://uucode.com/blog/2008/04/10/texml-is-alive-and-well/</link>
		<comments>http://uucode.com/blog/2008/04/10/texml-is-alive-and-well/#comments</comments>
		<pubDate>Thu, 10 Apr 2008 04:11:30 +0000</pubDate>
		<dc:creator>olpa</dc:creator>
		
		<category><![CDATA[TeXML]]></category>

		<guid isPermaLink="false">http://uucode.com/blog/2008/04/10/texml-is-alive-and-well/</guid>
		<description><![CDATA[Due to a long period of inactivity in TeXML project, I&#8217;ve just been asked if the project is still supported. The answer is yes!
I use TeXML in production, it&#8217;s an important part of our new publishing process.
Why the project is inactive? Because no bugs are reported for the version 2.0.1, released on 19 July 2006 [...]]]></description>
			<content:encoded><![CDATA[<p>Due to a long period of inactivity in TeXML project, I&#8217;ve just been asked if the project is still supported. The answer is <b>yes</b>!</p>
<p>I use TeXML in production, it&#8217;s an important part of our new publishing process.</p>
<p>Why the project is inactive? Because no bugs are reported for the version 2.0.1, released on 19 July 2006 (today is 10 April 2008). If it works well, why bother to change anything?</p>
]]></content:encoded>
			<wfw:commentRss>http://uucode.com/blog/2008/04/10/texml-is-alive-and-well/feed/</wfw:commentRss>
		</item>
		<item>
		<title>DocBook XML publishing service</title>
		<link>http://uucode.com/blog/2008/02/04/docbook-xml-publishing-service/</link>
		<comments>http://uucode.com/blog/2008/02/04/docbook-xml-publishing-service/#comments</comments>
		<pubDate>Mon, 04 Feb 2008 03:19:59 +0000</pubDate>
		<dc:creator>olpa</dc:creator>
		
		<category><![CDATA[publishing]]></category>

		<guid isPermaLink="false">http://uucode.com/blog/2008/02/04/docbook-xml-publishing-service/</guid>
		<description><![CDATA[I&#8217;m not the only one who works on a publishing server. Steve Whitlatch announced recently Mr. XML Publisher for DocBook, a free online publishing server. You feed a DocBook to the service, and the service returns back the corresponding PDF.
]]></description>
			<content:encoded><![CDATA[<p>I&#8217;m not the only one who works on a publishing server. Steve Whitlatch <a href="http://lists.oasis-open.org/archives/docbook-apps/200802/msg00021.html">announced</a> recently <a href="http://swhitlat.com/XML_Publisher/">Mr. XML Publisher for DocBook</a>, a free online publishing server. You feed a DocBook to the service, and the service returns back the corresponding PDF.</p>
]]></content:encoded>
			<wfw:commentRss>http://uucode.com/blog/2008/02/04/docbook-xml-publishing-service/feed/</wfw:commentRss>
		</item>
		<item>
		<title>workaround for mac os x lost wifi connection</title>
		<link>http://uucode.com/blog/2008/01/30/workaround-for-mac-os-x-lost-wifi-connection/</link>
		<comments>http://uucode.com/blog/2008/01/30/workaround-for-mac-os-x-lost-wifi-connection/#comments</comments>
		<pubDate>Wed, 30 Jan 2008 03:12:56 +0000</pubDate>
		<dc:creator>olpa</dc:creator>
		
		<category><![CDATA[Mac]]></category>

		<guid isPermaLink="false">http://uucode.com/blog/2008/01/30/workaround-for-mac-os-x-lost-wifi-connection/</guid>
		<description><![CDATA[Update from 10.4 to 10.5 introduced a pain. After sleep and wake up, Mac losts connection to the wireless network. To reconnect, I have to specify SID and the WEP key manually. I hate it.
As a temporary solution, I found how to re-connect from a command line, thanks to the blog article &#8220;airport - the [...]]]></description>
			<content:encoded><![CDATA[<p>Update from 10.4 to 10.5 introduced a pain. After sleep and wake up, Mac losts connection to the wireless network. To reconnect, I have to specify SID and the WEP key manually. I hate it.</p>
<p>As a temporary solution, I found how to re-connect from a command line, thanks to the blog article &#8220;<a href="http://osxdaily.com/2007/01/18/airport-the-little-known-command-line-wireless-utility/">airport - the Little Known Command Line Wireless Utility</a>&#8221;. I&#8217;ve created the file <tt>reconnect.sh</tt> and run it when required:</p>
<pre>sudo airport -A<i>SID</i> &#8211;password=&#8217;$<i>WEP_key</i>&#8216;</pre>
]]></content:encoded>
			<wfw:commentRss>http://uucode.com/blog/2008/01/30/workaround-for-mac-os-x-lost-wifi-connection/feed/</wfw:commentRss>
		</item>
		<item>
		<title>symbolic and hard links under win32</title>
		<link>http://uucode.com/blog/2008/01/25/symbolic-and-hard-links-under-win32/</link>
		<comments>http://uucode.com/blog/2008/01/25/symbolic-and-hard-links-under-win32/#comments</comments>
		<pubDate>Fri, 25 Jan 2008 10:47:42 +0000</pubDate>
		<dc:creator>olpa</dc:creator>
		
		<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://uucode.com/blog/2008/01/25/symbolic-and-hard-links-under-win32/</guid>
		<description><![CDATA[To my surprise, symbolic and hard links are partially supported even by windows 2000. Here is a small summary:
&#8220;How to create a symbolic link under Win2K, WinXP, and above?&#8221; &#8212; this google-answers document was my starting point.
My notes:
CreateHardLink function establishes a hard link between an existing file and a new file. This function is only [...]]]></description>
			<content:encoded><![CDATA[<p>To my surprise, symbolic and hard links are partially supported even by windows 2000. Here is a small summary:</p>
<p>&#8220;<a href="http://answers.google.com/answers/threadview?id=341355">How to create a symbolic link under Win2K, WinXP, and above?</a>&#8221; &#8212; this google-answers document was my starting point.</p>
<p>My notes:</p>
<p><b>CreateHardLink</b> function establishes a hard link between an existing file and a new file. This function is only supported on the NTFS file system, and only for files, not directories.</p>
<p><b>CreateSymbolicLink</b> function creates a symbolic link. Requires Windows Vista or Windows Server 2008.</p>
<p>And finally, <b>junctions</b> or <b>reparse points</b> (from <a href="http://msdn.microsoft.com/library/default.asp?url=/library/en-us/fileio/fs/reparse_points.asp">http://msdn.microsoft.com/library/default.asp?url=/library/en-us/fileio/fs/reparse_points.asp</a>):</p>
<blockquote><p>A file or directory can contain a reparse point, which is a collection of user-defined data. The format of this data is understood by the application which stores the data, and a file system filter, which you install to interpret the data and process the file. </p></blockquote>
<p>This feature can be used to create links to directories. It is exactly what I need!</p>
<p>The tool to exploit the feature: <a href="http://www.microsoft.com/technet/sysinternals/FileAndDisk/Junction.mspx">Junction v1.05</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://uucode.com/blog/2008/01/25/symbolic-and-hard-links-under-win32/feed/</wfw:commentRss>
		</item>
		<item>
		<title>printing djvu books under Linux</title>
		<link>http://uucode.com/blog/2008/01/24/printing-djvu-books-under-linux/</link>
		<comments>http://uucode.com/blog/2008/01/24/printing-djvu-books-under-linux/#comments</comments>
		<pubDate>Thu, 24 Jan 2008 03:55:32 +0000</pubDate>
		<dc:creator>olpa</dc:creator>
		
		<category><![CDATA[publishing]]></category>

		<guid isPermaLink="false">http://uucode.com/blog/2008/01/24/printing-djvu-books-under-linux/</guid>
		<description><![CDATA[When I print books, I prefer to have two pages per sheet. With PostScript or PDF books it&#8217;s easy, I just use psnup2.pl. But for djvu format, the procedure is complicated.
The straightforward way &#8212; convert to PostScript and the rest is known &#8212; doesn&#8217;t work:

$ djvups book.djvu book.ps
$ psnup2.pl book.ps >book2.ps

Unfortunately, gv can&#8217;t read the [...]]]></description>
			<content:encoded><![CDATA[<p>When I print books, I prefer to have two pages per sheet. With PostScript or PDF books it&#8217;s easy, I just use <a href="http://consodoc.com/psnup2/">psnup2.pl</a>. But for djvu format, the procedure is complicated.</p>
<p>The straightforward way &#8212; convert to PostScript and the rest is known &#8212; doesn&#8217;t work:</p>
<pre>
$ djvups book.djvu book.ps
$ psnup2.pl book.ps >book2.ps
</pre>
<p>Unfortunately, <tt>gv</tt> can&#8217;t read the output PostScript file. The tool <tt>psnup</tt> works correctly only for a subset of PostScript, and <tt>djvups</tt> generates the code outside this subset.</p>
<p>An usual workaround is to use <tt>ps2pdf</tt> and <tt>pdftops</tt> &#8212; we first convert PostScript to PDF and then convert back from PDF to PostScript. But in this case, the workaround works only partially. The output PostScript is very, very big, and <tt>gv</tt> needs eternity to load it.</p>
<p>After trials and errors, I decided to try TIFF as an intermediate format. And it is the solution.</p>
<p>Well, the simplest way again doesn&#8217;t work:</p>
<pre>
$ ddjvu -format=tiff book.djvu book.tiff
Core dump
</pre>
<p>Instead, I extract page-by-page, ignoring the coredumped ones (fortunately, these pages are not important).</p>
<p>Step 1: get the number of pages</p>
<pre>
$ djvudump book.djvu | head
...
    DIRM [2733]       Document directory (bundled, 354 files <b>350 pages</b>)
&#8230;
</pre>
<p>Step 2: write the page extraction script <tt>gen.pl</tt>.</p>
<pre><code>
foreach my $i (1...<b>350</b>) {
  printf "ddjvu -format=tiff --page=%i book.djvu pages/p%03i.tif\n", $i, $i;
}
</code></pre>
<p>Step 3: extract pages</p>
<pre>
$ mkdir pages
$ perl gen.pl >x.sh
$ sh x.sh
.. ignore core dumps ...
</pre>
<p>Step 4: create PostScript from TIFF</p>
<pre><code>
$ tiff2ps -w 8.27 -h 11.69 -c pages/p???.tif >print.ps
</code></pre>
<p>Step 5: make two pages per sheet:</p>
<pre>
$ psnup2.pl print.ps >print2.ps
</pre>
<p>Step 6: print!</p>
]]></content:encoded>
			<wfw:commentRss>http://uucode.com/blog/2008/01/24/printing-djvu-books-under-linux/feed/</wfw:commentRss>
		</item>
		<item>
		<title>subscribe to comments</title>
		<link>http://uucode.com/blog/2008/01/16/subscribe-to-comments/</link>
		<comments>http://uucode.com/blog/2008/01/16/subscribe-to-comments/#comments</comments>
		<pubDate>Wed, 16 Jan 2008 04:45:48 +0000</pubDate>
		<dc:creator>olpa</dc:creator>
		
		<category><![CDATA[blogging]]></category>

		<guid isPermaLink="false">http://uucode.com/blog/2008/01/16/subscribe-to-comments/</guid>
		<description><![CDATA[Wordpress plugin &#8220;Subscribe to Comments 2.1&#8221; allows readers to receive notifications of new comments that are posted to an entry. I think it improves usability and encourages commenting.
]]></description>
			<content:encoded><![CDATA[<p>Wordpress plugin &#8220;<a href="http://txfx.net/code/wordpress/subscribe-to-comments/">Subscribe to Comments 2.1</a>&#8221; allows readers to receive notifications of new comments that are posted to an entry. I think it improves usability and encourages commenting.</p>
]]></content:encoded>
			<wfw:commentRss>http://uucode.com/blog/2008/01/16/subscribe-to-comments/feed/</wfw:commentRss>
		</item>
		<item>
		<title>decline and fall of the trackbacks; rise and resurrection of the trackbacks</title>
		<link>http://uucode.com/blog/2008/01/15/decline-and-fall-of-the-trackbacks-rise-and-resurrection-of-the-trackbacks/</link>
		<comments>http://uucode.com/blog/2008/01/15/decline-and-fall-of-the-trackbacks-rise-and-resurrection-of-the-trackbacks/#comments</comments>
		<pubDate>Tue, 15 Jan 2008 04:49:29 +0000</pubDate>
		<dc:creator>olpa</dc:creator>
		
		<category><![CDATA[blogging]]></category>

		<guid isPermaLink="false">http://uucode.com/blog/2008/01/15/decline-and-fall-of-the-trackbacks-rise-and-resurrection-of-the-trackbacks/</guid>
		<description><![CDATA[Trackbacks have built the blogosphere. The automatic backlinking was a great idea. The both parties &#8212; the original and the linking blogger &#8212; were making benefit out of a trackback link.
Unfortunately, the trackbacks are extremely vulnerable to spamming. Indeed, trackbacks must work without human intervention (by design). Automatic filters doesn&#8217;t work well for blogs. And [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://en.wikipedia.org/wiki/Trackback">Trackbacks</a> have built the blogosphere. The automatic backlinking was a great idea. The both parties &#8212; the original and the linking blogger &#8212; were making benefit out of a trackback link.</p>
<p>Unfortunately, the trackbacks are extremely vulnerable to spamming. Indeed, trackbacks must work without human intervention (by design). Automatic filters doesn&#8217;t work well for blogs. And adding manual force breaks the design of trackbacks.</p>
<p>Fortunately, there is a simple solution.</p>
<p>We have blog aggregators and blog search engines. These services know about each blog on the planet and they can</p>
<p>1) distinguish the spam blogs from the good blogs,<br />
2) find all the blogs which links to my blog post.</p>
<p>Therefore, a tool can search for the new links to my blog and create trackbacks records in my blog.</p>
<p>Other variations are possible as the main idea is fruitful:</p>
<p><b>Trackbacks should be performed through an intermediate, not directly</b>.</p>
<p>P.S. Waiting for a such tool, I switched off the trackbacks for this blog. But commenting still work.</p>
]]></content:encoded>
			<wfw:commentRss>http://uucode.com/blog/2008/01/15/decline-and-fall-of-the-trackbacks-rise-and-resurrection-of-the-trackbacks/feed/</wfw:commentRss>
		</item>
		<item>
		<title>how to analyze FICS games</title>
		<link>http://uucode.com/blog/2007/12/16/how-to-analyze-fics-games/</link>
		<comments>http://uucode.com/blog/2007/12/16/how-to-analyze-fics-games/#comments</comments>
		<pubDate>Sun, 16 Dec 2007 07:43:13 +0000</pubDate>
		<dc:creator>olpa</dc:creator>
		
		<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://uucode.com/blog/2007/12/16/how-to-analyze-fics-games/</guid>
		<description><![CDATA[I play chess on freechess.org. Sometmes I like how I play. But the sad truth is that my good play is illusion. Thanks computers to reveal me a lot of mistakes.
Here is how I feed the games to the computer.
Step 1: get the game
In FICS console, say (to get the games in the PGN format)
fics% [...]]]></description>
			<content:encoded><![CDATA[<p>I play chess on <a href="http://freechess.org/">freechess.org</a>. Sometmes I like how I play. But the sad truth is that my good play is illusion. Thanks computers to reveal me a lot of mistakes.</p>
<p>Here is how I feed the games to the computer.</p>
<h2>Step 1: get the game</h2>
<p>In FICS console, say (to get the games in the PGN format)</p>
<pre>fics% set pgn 1</pre>
<p>To get the list of recetly played games:</p>
<pre>fics% history olpa</pre>
<p>In the output, the first number is the game number. To get the game by e-mail, say:</p>
<pre>fics% mailstored olpa game_number</pre>
<h2>Step 2: analyze</h2>
<p>Just use your favourite chess program. I use <a href="http://www.craftychess.com/">crafty</a>.</p>
<p>At the moment, I use the command:</p>
<pre>annotate game.pgn wb x-999 .1 10</pre>
<p>Details are in the documentation.</p>
<p>After annotating is finished, I use gvim or XBoard to see crafty comments:</p>
<pre>$ xboard -lgf game.pgn.can</pre>
]]></content:encoded>
			<wfw:commentRss>http://uucode.com/blog/2007/12/16/how-to-analyze-fics-games/feed/</wfw:commentRss>
		</item>
		<item>
		<title>russian (any) language in wordpress</title>
		<link>http://uucode.com/blog/2007/11/25/russian-any-language-in-wordpress/</link>
		<comments>http://uucode.com/blog/2007/11/25/russian-any-language-in-wordpress/#comments</comments>
		<pubDate>Sun, 25 Nov 2007 06:46:31 +0000</pubDate>
		<dc:creator>olpa</dc:creator>
		
		<category><![CDATA[blogging]]></category>

		<guid isPermaLink="false">http://uucode.com/blog/2007/11/25/russian-any-language-in-wordpress/</guid>
		<description><![CDATA[I tried to setup a new wordpress blog. To my unpleasant surprise, I got a problem with cyrillic letters. They just didn&#8217;t work, being displayed as junk or as question marks. I spent some time to find out how to correctly setup WordPress for the utf8 environment. Actually, it&#8217;s very easy:
The Mysql database should be [...]]]></description>
			<content:encoded><![CDATA[<p>I tried to setup a new wordpress blog. To my unpleasant surprise, I got a problem with cyrillic letters. They just didn&#8217;t work, being displayed as junk or as question marks. I spent some time to find out how to correctly setup WordPress for the utf8 environment. Actually, it&#8217;s very easy:</p>
<p>The Mysql database should be created this way:</p>
<pre><code>CREATE DATABASE <i>name</i> CHARACTER SET utf8 COLLATE utf8_general_ci;</code></pre>
<p>The file <tt>wp-config.php</tt> should contain:</p>
<pre><code>define('DB_CHARSET','utf8');</code></pre>
<p>In case of troubles, the database must be revised first. Check the UTF8 options and texts using phpMyAdmin.</p>
]]></content:encoded>
			<wfw:commentRss>http://uucode.com/blog/2007/11/25/russian-any-language-in-wordpress/feed/</wfw:commentRss>
		</item>
		<item>
		<title>feeding 128-bit wep hex key to Mac</title>
		<link>http://uucode.com/blog/2007/11/14/feeding-128-bit-wep-hex-key-to-mac/</link>
		<comments>http://uucode.com/blog/2007/11/14/feeding-128-bit-wep-hex-key-to-mac/#comments</comments>
		<pubDate>Wed, 14 Nov 2007 04:27:59 +0000</pubDate>
		<dc:creator>olpa</dc:creator>
		
		<category><![CDATA[Mac]]></category>

		<guid isPermaLink="false">http://uucode.com/blog/2007/11/14/feeding-128-bit-wep-hex-key-to-mac/</guid>
		<description><![CDATA[For historical reasons, my home wifi router uses a WEP 128-bit HEX key. It caused troubles while installing a Mac. The setup program accepted only 40-bit keys. Fortunately, the workaround is simple. Specify to use WEP with password, and as the password set &#8220;$0123&#8230;012345&#8221; &#8212; the character $ (dollar) followed by the key.
]]></description>
			<content:encoded><![CDATA[<p>For historical reasons, my home wifi router uses a WEP 128-bit HEX key. It caused troubles while installing a Mac. The setup program accepted only 40-bit keys. Fortunately, the workaround is simple. Specify to use WEP with password, and as the password set &#8220;<tt>$0123&#8230;012345</tt>&#8221; &#8212; the character <tt>$</tt> (dollar) followed by the key.</p>
]]></content:encoded>
			<wfw:commentRss>http://uucode.com/blog/2007/11/14/feeding-128-bit-wep-hex-key-to-mac/feed/</wfw:commentRss>
		</item>
		<item>
		<title>recording audio under Linux</title>
		<link>http://uucode.com/blog/2007/11/11/recording-audio-under-linux/</link>
		<comments>http://uucode.com/blog/2007/11/11/recording-audio-under-linux/#comments</comments>
		<pubDate>Sun, 11 Nov 2007 14:44:10 +0000</pubDate>
		<dc:creator>olpa</dc:creator>
		
		<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://uucode.com/blog/2007/11/11/recording-audio-under-linux/</guid>
		<description><![CDATA[The blog is the place to remember what I always forget. Here is a note how to record a mp3 on my system.
0. Plug the microphone jack into the socket on the back side, not on the front panel.
1. Load all the required drivers
# modprobe snd-hda-intel
# modprobe snd_pcm_oss
# modprobe snd_seq_oss
1b. Setup mixer. (aumix)
2. Record
arecord -f [...]]]></description>
			<content:encoded><![CDATA[<p>The blog is the place to remember what I always forget. Here is a note how to record a mp3 on my system.</p>
<p>0. Plug the microphone jack into the socket on the back side, not on the front panel.</p>
<p>1. Load all the required drivers</p>
<pre># modprobe snd-hda-intel
# modprobe snd_pcm_oss
# modprobe snd_seq_oss</pre>
<p>1b. Setup mixer. (<tt>aumix</tt>)</p>
<p>2. Record</p>
<pre>arecord -f cd test.wav</pre>
<p>3. Convert to mp3</p>
<pre>ffmpeg -i test.wav test.mp3</pre>
]]></content:encoded>
			<wfw:commentRss>http://uucode.com/blog/2007/11/11/recording-audio-under-linux/feed/</wfw:commentRss>
		</item>
		<item>
		<title>reversing a string in python</title>
		<link>http://uucode.com/blog/2007/10/15/reversing-a-string-in-python/</link>
		<comments>http://uucode.com/blog/2007/10/15/reversing-a-string-in-python/#comments</comments>
		<pubDate>Mon, 15 Oct 2007 08:51:39 +0000</pubDate>
		<dc:creator>olpa</dc:creator>
		
		<category><![CDATA[python]]></category>

		<guid isPermaLink="false">http://uucode.com/blog/2007/10/15/reversing-a-string-in-python/</guid>
		<description><![CDATA[This beautiful construction was not obvious for me.

&#62;&#62;&#62;  'foo'[::-1]
'oof'
]]></description>
			<content:encoded><![CDATA[<p>This beautiful construction was not obvious for me.</p>
<pre><code>
&gt;&gt;&gt;  'foo'[::-1]
'oof'</code></pre>
]]></content:encoded>
			<wfw:commentRss>http://uucode.com/blog/2007/10/15/reversing-a-string-in-python/feed/</wfw:commentRss>
		</item>
		<item>
		<title>LaTeX to EPS</title>
		<link>http://uucode.com/blog/2007/10/09/latex-to-eps/</link>
		<comments>http://uucode.com/blog/2007/10/09/latex-to-eps/#comments</comments>
		<pubDate>Tue, 09 Oct 2007 11:12:54 +0000</pubDate>
		<dc:creator>olpa</dc:creator>
		
		<category><![CDATA[TeX]]></category>

		<guid isPermaLink="false">http://uucode.com/blog/2007/10/09/latex-to-eps/</guid>
		<description><![CDATA[I&#8217;m a bit furious. I spent a lot of time on getting EPS from LaTeX. Portability of PostScript and PDF is a great myth. This idea works only in theory. But in practice, one has to struggle with buggy software.
Finally, I&#8217;ve found a working sequence of conversion commands.

cp latex/312nn081.tex tmp/312nn081.tex

cd tmp; latex 312nn081.tex

dvips -E -o [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;m a bit furious. I spent a lot of time on getting EPS from LaTeX. Portability of PostScript and PDF is a great myth. This idea works only in theory. But in practice, one has to struggle with buggy software.</p>
<p>Finally, I&#8217;ve found a working sequence of conversion commands.</p>
<pre><code>
cp latex/312nn081.tex tmp/312nn081.tex

cd tmp; latex 312nn081.tex

dvips -E -o tmp/312nn081.eps tmp/312nn081.dvi

pstoedit -f ps -dt tmp/312nn081.eps tmp/312nn081.ps

ps2epsi tmp/312nn081.ps tmp/312nn081_2.eps

../pictures_converter/bin/epstosmth --gsdev=tifflzw \
       tmp/312nn081.eps --outfile=tmp/312nn081.tif

epstool --add-user-preview tmp/312nn081.tif tmp/312nn081_2.eps \
       eps/312nn081.eps
</code></pre>
<p>I already wrote about &#8220;epstosmth&#8221;: <a href="http://uucode.com/blog/2005/09/29/eps-to-something/">http://uucode.com/blog/2005/09/29/eps-to-something/</a></p>
<p>The main feature of EPS files produced this way:</p>
<p>Both Adobe Illustrator and Adobe FrameMaker open the EPS files without complaints.</p>
]]></content:encoded>
			<wfw:commentRss>http://uucode.com/blog/2007/10/09/latex-to-eps/feed/</wfw:commentRss>
		</item>
		<item>
		<title>inplace, a new xslt-based CMS</title>
		<link>http://uucode.com/blog/2007/10/04/inplace-a-new-xslt-based-cms/</link>
		<comments>http://uucode.com/blog/2007/10/04/inplace-a-new-xslt-based-cms/#comments</comments>
		<pubDate>Thu, 04 Oct 2007 04:21:56 +0000</pubDate>
		<dc:creator>olpa</dc:creator>
		
		<category><![CDATA[python]]></category>

		<guid isPermaLink="false">http://uucode.com/blog/2007/10/04/inplace-a-new-xslt-based-cms/</guid>
		<description><![CDATA[I&#8217;ve released a content management system for static pages:

InPlace CMS
http://inplace.sourceforge.net/
Use InPlace CMS to maintain a bundle of HTML pages in an uniform appearance. Adopt the light and agile approach to document a product or to create a mini-site. Target users are the developers of open source projects.

Everything is very simple, this tool is just a [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve released a content management system for static pages:</p>
<blockquote><p>
InPlace CMS<br />
<a href="http://inplace.sourceforge.net/">http://inplace.sourceforge.net/</a></p>
<p>Use InPlace CMS to maintain a bundle of HTML pages in an uniform appearance. Adopt the light and agile approach to document a product or to create a mini-site. Target users are the developers of open source projects.
</p></blockquote>
<p>Everything is very simple, this tool is just a Python wrapper for XSLT, but:</p>
<p>* There is a big difference between &#8220;easy to do&#8221; and &#8220;is done, with documentation&#8221;.<br />
* The main feature is the descritipion of use cases. They highlight why 99.99% of other CMS don&#8217;t fit to the needs of the open source developers.<br />
* Also useful: patterns for simple templating tasks.</p>
<p>I use the tool for my own projects, and I&#8217;m very satisfied.</p>
]]></content:encoded>
			<wfw:commentRss>http://uucode.com/blog/2007/10/04/inplace-a-new-xslt-based-cms/feed/</wfw:commentRss>
		</item>
		<item>
		<title>mass-upload to picasaweb from Linux</title>
		<link>http://uucode.com/blog/2007/09/28/mass-upload-to-picasaweb-from-linux/</link>
		<comments>http://uucode.com/blog/2007/09/28/mass-upload-to-picasaweb-from-linux/#comments</comments>
		<pubDate>Fri, 28 Sep 2007 05:28:35 +0000</pubDate>
		<dc:creator>olpa</dc:creator>
		
		<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://uucode.com/blog/2007/09/28/mass-upload-to-picasaweb-from-linux/</guid>
		<description><![CDATA[Picasaweb is a Google&#8217;s service for publishing web photo albums. The mainA drawback of this service is that under Linux you have to upload each image manually. The evil empire (not microsoft) knows about the problem, but has&#8217;t released even a temporary solution. Fortunately, I managed to find a workaround:
Start a browser, login to picasaweb. [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://picasaweb.google.com/">Picasaweb</a> is a Google&#8217;s service for publishing web photo albums. <strike>The main</strike>A drawback of this service is that under Linux you have to upload each image manually. The evil empire (not microsoft) knows about the problem, but has&#8217;t released even a temporary solution. Fortunately, I managed to find a workaround:</p>
<p>Start a browser, login to picasaweb. Create the album &#8220;incoming&#8221;. Go to the photo upload page. View the page source (or use Web Developer plugin to get form details). Follow the data in the HTML code to create <tt>picasa.sh</tt>. Here is the skeleton:</p>
<pre><code>
curl \
-b /home/olpa/.mozilla/..../cookies.txt \
-F redir='http://picasaweb.google.com/..../Incoming?authkey=....' \
-F uname=.... \
-F aid=.... \
-F num='1' \
-F name='' \
-F file0=@$1 \
'http://picasaweb.google.com/lh/addPhotos?tok=....'
</code></pre>
<p>Option &#8220;<tt>-b</tt>&#8221; is the path to your Firefox cookies file. The value of the form field &#8220;<tt>file0</tt>&#8221; is read from a file. The value &#8220;<tt>num</tt>&#8221; shouldn&#8217;t be empty, but set to &#8220;<tt>1</tt>&#8220;.</p>
<p>Usage:</p>
<pre><code>$ picasa.sh <i>my_photo.jpg</i></code></pre>
<p>If everything is ok, you&#8217;ll get as the response &#8220;Moved Temporarily&#8221;.</p>
<p>To upload all the files in a directory:</p>
<pre><code>$ for i in *jpg; do picasa.sh $i; done</code></pre>
<p><b>evil_empire++</b></p>
<p>I&#8217;ve realized that there is no such feature as password protection of albums. Picasaweb disqualified, I&#8217;m going to search for another web album service.</p>
]]></content:encoded>
			<wfw:commentRss>http://uucode.com/blog/2007/09/28/mass-upload-to-picasaweb-from-linux/feed/</wfw:commentRss>
		</item>
		<item>
		<title>casting WPAds to a widget</title>
		<link>http://uucode.com/blog/2007/09/28/casting-wpads-to-a-widget/</link>
		<comments>http://uucode.com/blog/2007/09/28/casting-wpads-to-a-widget/#comments</comments>
		<pubDate>Fri, 28 Sep 2007 04:29:59 +0000</pubDate>
		<dc:creator>olpa</dc:creator>
		
		<category><![CDATA[blogging]]></category>

		<guid isPermaLink="false">http://uucode.com/blog/2007/09/28/casting-wpads-to-a-widget/</guid>
		<description><![CDATA[Some time ago I discovered that the WordPress blog sidebar can be
* completely dynamic and
* configured through the admin interface.
It&#8217;s very convenient, and I switched to the dynamic sidebar. Or, in another words, started to use widgets. Unfortunately, one important plugin, WPAds doesn&#8217;t support widgeting. Here is how to fix the issue:
Download and install yet [...]]]></description>
			<content:encoded><![CDATA[<p>Some time ago I discovered that the WordPress blog sidebar can be<br />
* completely dynamic and<br />
* configured through the admin interface.<br />
It&#8217;s very convenient, and I switched to the dynamic sidebar. Or, in another words, started to use widgets. Unfortunately, one important plugin, <a href="http://thesandbox.wordpress.com/wpads/">WPAds</a> doesn&#8217;t support widgeting. Here is how to fix the issue:</p>
<p>Download and install yet another plugin, <a href="http://ottodestruct.com/blog/2006/04/09/fun-with-widgets/">Executable PHP widget</a>. Then create a PHP block for the sidebar, and put as the content something like:</p>
<pre style='color:#000000;background:#ffffff;'><code><span style='color:#a65700; background:#ffffe8; '>&lt;?php</span><span style='color:#000000; background:#ffffe8; '> </span><span style='color:#800000; background:#ffffe8; font-weight:bold; '>if</span><span style='color:#000000; background:#ffffe8; '> </span><span style='color:#808030; background:#ffffe8; '>(</span><span style='color:#400000; background:#ffffe8; '>function_exists</span><span style='color:#808030; background:#ffffe8; '>(</span><span style='color:#0000e6; background:#ffffe8; '>'wpads'</span><span style='color:#808030; background:#ffffe8; '>)</span><span style='color:#808030; background:#ffffe8; '>)</span><span style='color:#000000; background:#ffffe8; '> </span><span style='color:#800080; background:#ffffe8; '>{</span><span style='color:#000000; background:#ffffe8; '> wpads</span><span style='color:#808030; background:#ffffe8; '>(</span><span style='color:#0000e6; background:#ffffe8; '>'sidebar'</span><span style='color:#808030; background:#ffffe8; '>)</span><span style='color:#800080; background:#ffffe8; '>;</span><span style='color:#000000; background:#ffffe8; '> </span><span style='color:#800080; background:#ffffe8; '>}</span><span style='color:#000000; background:#ffffe8; '> </span><span style='color:#a65700; background:#ffffe8; '>?></span>
</code></pre>
<p>Don&#8217;t forget to save the changes!</p>
]]></content:encoded>
			<wfw:commentRss>http://uucode.com/blog/2007/09/28/casting-wpads-to-a-widget/feed/</wfw:commentRss>
		</item>
		<item>
		<title>invent categories and tags easily</title>
		<link>http://uucode.com/blog/2007/09/26/invent-categories-and-tags-easily/</link>
		<comments>http://uucode.com/blog/2007/09/26/invent-categories-and-tags-easily/#comments</comments>
		<pubDate>Wed, 26 Sep 2007 04:20:48 +0000</pubDate>
		<dc:creator>olpa</dc:creator>
		
		<category><![CDATA[blogging]]></category>

		<guid isPermaLink="false">http://uucode.com/blog/2007/09/26/invent-categories-and-tags-easily/</guid>
		<description><![CDATA[My antispam blog passed 25+ posts, it was enough introduce the categories. But when I started to categorize the posts, I stuck with it. After inventing four topics, I had no more ideas. I though I&#8217;m not alone in such trouble, searched in Internet for advices what to do.
The best I found is &#8220;Blog Post [...]]]></description>
			<content:encoded><![CDATA[<p>My <a href="http://bbspam.com/">antispam blog</a> passed 25+ posts, it was enough introduce the categories. But when I started to categorize the posts, I stuck with it. After inventing four topics, I had no more ideas. I though I&#8217;m not alone in such trouble, searched in Internet for advices what to do.</p>
<p>The best I found is &#8220;<a href="http://www.blogherald.com/2007/06/29/blog-post-category-trauma-how-to-help-bloggers-with-useless-categories/">Blog Post Category Trauma: How To Help Bloggers With Useless Categories</a>&#8220;. Unfortunately, this text explans only that bloggers have to have good categories, but doesn&#8217;t explain how to achieve this goal.</p>
<p>Finally, I invented an ultimate method. Inventing categories and tags (labels) is no more a problem.</p>
<p>From <a href="http://en.wikipedia.org/wiki/Rudyard_Kipling">Kipling</a>, The Elephant&#8217;s Child:</p>
<blockquote><p><i>I keep six honest serving-men<br />
(They taught me all I knew);<br />
Their names are What and Why and When<br />
And How and Where and Who.<br />
I send them over land and sea,<br />
I send them east and west;<br />
But after they have worked for me,<br />
I give them all a rest.</p>
<p>I let them rest from nine till five,<br />
For I am busy then,<br />
As well as breakfast, lunch, and tea,<br />
For they are hungry men.<br />
But different folk have different views;<br />
I know a person small-<br />
She keeps ten million serving-men,<br />
Who get no rest at all!</p>
<p>She sends&#8217;em abroad on her own affairs,<br />
From the second she opens her eyes-<br />
One million Hows, two million Wheres,<br />
And seven million Whys!<br />
</i></p></blockquote>
<p>This verse inspired me to try this method:</p>
<p>* Print all the post titles.<br />
* Near each title, write a one-word comments about content of the post, answering the questions &#8220;what, why, when, how, where and who&#8221;.<br />
* If the same word or its synonym is used for three posts, it&#8217;s a category.</p>
<p>And yes, this method worked fine. I easily got 11 categories.</p>
<p>What&#8217;s more important is that the method helps to realize categories which can&#8217;t be found by usual thinking. For example, I even didn&#8217;t suspect I have category &#8220;usability&#8221;.</p>
]]></content:encoded>
			<wfw:commentRss>http://uucode.com/blog/2007/09/26/invent-categories-and-tags-easily/feed/</wfw:commentRss>
		</item>
		<item>
		<title>literate programming failed</title>
		<link>http://uucode.com/blog/2007/09/07/literate-programming-failed/</link>
		<comments>http://uucode.com/blog/2007/09/07/literate-programming-failed/#comments</comments>
		<pubDate>Fri, 07 Sep 2007 10:17:21 +0000</pubDate>
		<dc:creator>olpa</dc:creator>
		
		<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://uucode.com/blog/2007/09/07/literate-programming-failed/</guid>
		<description><![CDATA[Those who
* know what is literate programming,
* the ideas and the technical implementation behind it, and
* think this metodology doesn&#8217;t work,
can find this fragment funny (Documented LaTeX sources (.dtx files), emphasis by me):

Another useful way of generating .dtx files is to write the documentation and the code separately, and then to combine them using the [...]]]></description>
			<content:encoded><![CDATA[<p>Those who<br />
* know what is <a href="http://en.wikipedia.org/wiki/Literate_programming">literate programming</a>,<br />
* the ideas and the technical implementation behind it, and<br />
* think this metodology does<b>n&#8217;t</b> work,<br />
can find this fragment funny (<a href="http://www.tex.ac.uk/cgi-bin/texfaq2html?label=dtx">Documented LaTeX sources (.dtx files)</a>, emphasis by me):</p>
<blockquote><p>
Another useful way of generating .dtx files is to write the documentation and the code <i>separately</i>, and then to combine them using the makedtx system. This technique has particular value in that the documentation file can be used separately to generate HTML output; it is often quite difficult to make LaTeX to HTML conversion tools deal with .dtx files, since they use an unusual class file.
</p></blockquote>
]]></content:encoded>
			<wfw:commentRss>http://uucode.com/blog/2007/09/07/literate-programming-failed/feed/</wfw:commentRss>
		</item>
		<item>
		<title>LaTeX paragraphs cheat sheet</title>
		<link>http://uucode.com/blog/2007/09/03/latex-paragraphs-cheat-sheet/</link>
		<comments>http://uucode.com/blog/2007/09/03/latex-paragraphs-cheat-sheet/#comments</comments>
		<pubDate>Mon, 03 Sep 2007 09:23:08 +0000</pubDate>
		<dc:creator>olpa</dc:creator>
		
		<category><![CDATA[TeX]]></category>

		<guid isPermaLink="false">http://uucode.com/blog/2007/09/03/latex-paragraphs-cheat-sheet/</guid>
		<description><![CDATA[* Indents: first, left, right
\parindent, \leftskip, \rightskip
* Space: above, below:
\addvspace
* Align: left, right, center, justified
ragged2e package
\Centering \RaggedRight \RaggedLeft
* Font, linespacing
\selectfont and family
* Keep with next or previous paragraph:
\nobreak or some penalty
]]></description>
			<content:encoded><![CDATA[<p>* Indents: first, left, right<br />
<tt><code>\parindent, \leftskip, \rightskip</code></tt></p>
<p>* Space: above, below:<br />
<tt><code>\addvspace</code></tt></p>
<p>* Align: left, right, center, justified<br />
ragged2e package<br />
<tt><code>\Centering \RaggedRight \RaggedLeft</code></tt></p>
<p>* Font, linespacing<br />
<tt><code>\selectfont</code></tt> and family</p>
<p>* Keep with next or previous paragraph:<br />
<tt><code>\nobreak</code></tt> or some penalty</p>
]]></content:encoded>
			<wfw:commentRss>http://uucode.com/blog/2007/09/03/latex-paragraphs-cheat-sheet/feed/</wfw:commentRss>
		</item>
		<item>
		<title>an evil jump to the Google&#8217;s first page</title>
		<link>http://uucode.com/blog/2007/08/19/an-evil-jump-to-the-googles-first-page/</link>
		<comments>http://uucode.com/blog/2007/08/19/an-evil-jump-to-the-googles-first-page/#comments</comments>
		<pubDate>Sun, 19 Aug 2007 02:56:48 +0000</pubDate>
		<dc:creator>olpa</dc:creator>
		
		<category><![CDATA[blogging]]></category>

		<category><![CDATA[bbAntiSpam]]></category>

		<guid isPermaLink="false">http://uucode.com/blog/2007/08/19/an-evil-jump-to-the-googles-first-page/</guid>
		<description><![CDATA[For my goals, the query &#8220;phpbb spam&#8221; should return Textual Confirmation and Links Rejector tools on the first page. No luck so far, but I managed a nice trick to get there indirectly:
Some time ago, Lauri Harpf (A Promotion Guide) published a nice article &#8220;How to stop spam on your phpBB forum&#8220;, in which he [...]]]></description>
			<content:encoded><![CDATA[<p>For my goals, the query &#8220;phpbb spam&#8221; should return <a href="http://bbantispam.com/tc/">Textual Confirmation</a> and <a href="http://bbantispam.com/lr/">Links Rejector</a> tools on the first page. No luck so far, but I managed a nice trick to get there indirectly:</p>
<p>Some time ago, Lauri Harpf (<a href="http://www.apromotionguide.com/">A Promotion Guide</a>) published a nice article &#8220;<a href="http://www.apromotionguide.com/stopping_phpbb_spam.html">How to stop spam on your phpBB forum</a>&#8220;, in which he pitched the tools.</p>
<p>I <a href="http://bbspam.com/2007/08/01/spam-weary-webmasters-march-on/">announced</a> the article <a href="http://bbantispam.com/forum/viewtopic.php?t=347"> in the bbAntiSpam forum</a> and the blog &#8220;<a href="http://bbspam.com/">Spam Bots and CAPTCHAs</a>&#8220;.</p>
<p>In a week, the article appeared on the Google&#8217;s first page.</p>
]]></content:encoded>
			<wfw:commentRss>http://uucode.com/blog/2007/08/19/an-evil-jump-to-the-googles-first-page/feed/</wfw:commentRss>
		</item>
	</channel>
</rss>
