Archive for the ‘Uncategorized’ Category

experience report with TDD

Thursday, November 3rd, 2016

I’ve seriously tried TDD in a real project, writing tests before code and following the red-green-refactor cycle. Short summary:

* I believe in TDD now;
* training and practice are required to learn TDD, reading books is not enough;
* the initial time investment is big.


how to move anything in rviz in ros

Wednesday, October 26th, 2016

Rviz A 3d visualization environment for robots. Sounds intriguing and useful, but the first steps in it are painful. In particular, moving anything is surprisingly a very hard task for a novice who doesn’t know about the right way. Now I have enough experience to describe what to do: Moving things in rviz.

fast-disable css in firefox

Friday, April 17th, 2015

Sometimes I want to read a web page without its design “improvements”. In many case it is enough to switch off css, and in firefox this functionality is built-in. Shift+F7 to get the developer tools. Thanks stackoverflow for the hint.

learn foreign language with Audacity

Thursday, June 6th, 2013

Pauken, a plugin for Audacity, adds silence and multiplies a selected audio fragment. It helps when you learn foreign languages by listening and repeating phrases after a speaker. Download Pauken here or from the audacity forum.

allow filenames with ‘?’ in apache, or retiring a forum

Tuesday, November 2nd, 2010

After I retired a blog, I continued with a forum. Unexpectedly, this step consists of two tasks:
1) convert phpBB2 forum to static pages
2) retain the old URLs


finding deleted files in a subversion repository

Monday, April 26th, 2010

I needed file which was deleted some time ago. Thanks to Subversion, the task is easy as long as you remember the name of the file. Unfortunately, it wasn’t a case. Fortunately, I found a magic spell. In the directory where the file was located, say: svn log --verbose, and the output will contain all the names and the revisions.

converting repository from CVS to subversion

Tuesday, March 9th, 2010

Probably there is no need to switch from CVS to subversion, but I’m starting to forget the options of the cvs command, therefore decided to migrate. Unfortunately, there is no button “convert” on the site, therefore I had to find how to do it manually.


python, win32, odbc, unicode, ascii, I hate it

Friday, September 26th, 2008

I need to get utf-8 (unicode) data instead of 8-bit from a Microsoft Access database (ODBC connection). It seems I’ve finally found the answer:

It’s impossible.


symbolic and hard links under win32

Friday, January 25th, 2008

To my surprise, symbolic and hard links are partially supported even by windows 2000. Here is a small summary:


recording audio under Linux

Sunday, November 11th, 2007

The blog is the place to remember what I always forget. Here is a note how to record a mp3 on my system.


mass-upload to picasaweb from Linux

Friday, September 28th, 2007

Picasaweb is a Google’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’t released even a temporary solution. Fortunately, I managed to find a workaround:

literate programming failed

Friday, September 7th, 2007

Those who
* know what is literate programming,
* the ideas and the technical implementation behind it, and
* think this metodology doesn’t work,
can find this fragment funny (Documented LaTeX sources (.dtx files), emphasis by me):

the real need of LinkedIn

Sunday, July 29th, 2007

Many conferences create and share the list off all the participants. Before, I had a problem: I was not able to make an use of this list, and was not able to through it away (too valuable resource). And now I know what to do. I scan the list, find those who communicated with me, and create connections on linkedin. Fine. By the way, here is my profile.

webcam under linux

Tuesday, July 24th, 2007

After lots of trials and errors, found: to capture from webcam:


To get a video:

mencoder -fps 6 tv:// -tv driver=v4l:width=320:height=240:\
fps=6:device=/dev/video0:hue=-40:saturation=-40:contrast=-40 \
-ovc lavc -o test.mpg

To view the result:

mplayer -fps 3 test.mpg

I still have to find how to set correct fps on input and output, and to tune brightness parameters.

getting /dev/dsp

Tuesday, July 24th, 2007

After spending a lot of time to make sound working, I found how to create /dev/dsp. In my case (00:1b.0 Audio device: Intel Corporation 82801H (ICH8 Family) HD Audio Controller (rev 02)), it’s just:

modprobe snd-hda-intel

updated conference checklist

Saturday, July 21st, 2007

Based on experience of XML Prague 2007 and GTTSE’2007, I’ve updated conference checklist. The main addition is the section “before departure” and especially the item “switch off all the alarm clocks”.

GMail rejects mail from Hotmail

Friday, July 20th, 2007

For a few days, has a bad SSL certificate. As result, some well-behaved mail clients and transfer agents can’t send mail to and from GMail. Quite possible, it’s the answer for a report that messages from HotMail to GMail are not delivered.

exponential serie on updating a string

Monday, July 16th, 2007

First, I was going to increment a string using this construction:

s = s + ""

Then the addition became more complex, and I decided to re-write updating as:
s = "" % (s, ...)

I run the program and found my Linux in a deep swap freeze. Fortunately, the system recovered, and I had a chance to find what happened.


surprises from windows

Wednesday, June 27th, 2007

I’ve spent at least an hour tracking down an error in integration of my software with another software. Finally, I’ve found that Windows (ok, command chdir isn’t so easy. If one wants to go to a directory on another drive, the flag /D must be used, otherwise nothing happens. Did you know it?

buggy rss-generators

Tuesday, June 26th, 2007

Just like the most of pseudo-XML tools, many RSS generators are buggy. For example, many just put the text into a CDATA section, without checking if it contains the sequence “]]>”. As result, the feed might become invalid.