Recent blog entries for const

18 Jan 2003 (updated 18 Jan 2003 at 00:25 UTC) »

The great day -- finally, today I've managed to answer all of my pending personal e-mail. More than for half-year there always were some unanswered personal messages pending (20-50 on average), and new ones arrived each day (not counting spam, most of my e-mail contains questions related to my TightVNC project). Answering e-mail has become a real pain.

I'm interested -- how other people solve this problem...

Worked on preparing new 1.2.7 version of TightVNC. Unix and Java viewer parts have been finished...

Could not sleep for some reason and was spending time learneing the concepts behind Wiki. Now I'm considering using Wiki to start a sort of TightVNC Documentation Project.

I was pleased to see that the TightVNC project on the site now appears in Top 20 lists, in both Rating and Popularity sections.

Finally found the time to create the TightVNC project page at Is there a way to remove obsolete projects here (VNC Tight Encoder)?

Just announced VNC Tight Encoder 1.1. Now I'm watching at amazing number of hits to the project homepage. I did not expect such interest. It's seems like everybody out there needs binaries which are absent for now. :-)

Last two weeks I was too busy to write into the diary at Now the official part of VNC compression project is finished. The source is available to download from the project homepage. New encoder shows compression ratios 5..30% higher compared to zlib compression and it's faster than zlib encoder. The latter fact has surprised me a lot as I have not thought about speed optimisations yet and there are many places in the code where such optimisations are possible.

Just finished with small separate part of the VNC compression project: automatic SSH tunneling for unix vncviewer is finished. Everybody is invited to try/test the code: the patch and brief instructions will be available at the project homepage shortly.

Night, 4:10. The day was lost. Did not work today for no reason. That's bad. Main part of plans for tommorrow is drinking some beer with a friend. I haven't seen him for monthes.


Worked hard on the VNC compression project. First result is that subset of new "tight" encoding has been implemented in the vncviewer and in a standalone VNC proxy. Currently compression is equivalent to pure zlib encoding as implemented in the TridiaVNC (by the way, I was mistaken saying that zlib compression is implemented inefficiently in the TridiaVNC).

Now it's time to actually improve compression. I see two primary directions to do that:

  1. There should be a way to split screen updates into smaller rectangles representing different types of screen data: full-color areas, bi-level drawings, solid areas etc.). Each subrectangle should be compressed in a separate zlib stream and different filters should be applied for each type of data.
  2. Efficient filters (predictors) should be designed to handle data types which usualy compose typical screen contents.

And there are other problems with VNC that interfere with good compression: server sends many unnecessary screen updates (even when screen contents is untouched), potentially large updates frequently being split into many small pieces, etc.


My girlfriend dislikes the way I work. I sleep huge part of day and I work the whole night. And I'm tired of smoking: it's time to quit.

6 older entries...

New Advogato Features

New HTML Parser: The long-awaited libxml2 based HTML parser code is live. It needs further work but already handles most markup better than the original parser.

Keep up with the latest Advogato features by reading the Advogato status blog.

If you're a C programmer with some spare time, take a look at the mod_virgule project page and help us with one of the tasks on the ToDo list!