четверг, 5 августа 2010 г.

Twisted Python Tutorials

I heard many times about Twisted networking library for Python.
But haven't looked on it until now, because I got a task to make a simple server.
I'm getting really sick of C++ these days, so decided to use Python.
And twisted seems to be the way to go. But there's one problem, I've never used it.

I started to search the web for some tutorials, and found really great tutorial series here.

I don't know who is this guy, but it's the best tutorial series I've ever read, despite it was just written in blog.
The author first gives good foundation, and then incrementally describes what is Twisted, how to use it, and what design decisions are behind it.

Material is supplied with bunch of diagrams, which makes really helps understanding.
Each part is ended by conclusion followed by several exercises for practice.
All the source code is stored on GitHub, so everybody can easily access it.
Author is also quickly responding to any comment.
Very good quality.

Recommend to anyone, who would like to study Twisted.

P.S. After reading these tutorials I finally understood why server side of EVE online got great performance boost after implementing server logic using Stackless Python (slides, video). And why multi-tasking single-threaded application, can run faster than single-tasking single-threaded one.

Instead of waiting for completion of some blocking operation (I/O, networking, ...), we can switch to some other task.

понедельник, 2 августа 2010 г.

HP Mini and Ubuntu

Last weekend I purchased HP Mini 210 netbook.
I really like the model, and recommend it to anyone.
Small size, good design and really great keyboard.

It cost me around 320$ with preinstalled slow running windows xp sp3.
For a long time, I wanted to test Linux OS (My debian server does not count:), so before buying the netbook, I decided to install some linux distribution on it.

My first try was Kubuntu Netbook Edition. But nothing good came from it.
It appeared to be slow for my netbook hardware. Especially when I tried to customize my panel with some widgets. Some random crashes. Well apparently something was not right.

So today I installed Ubuntu Desktop Edition, and was really fascinated with it.
It automatically installed all the drivers, except for wireless adapter.
But there was no problem to fix it. Ubuntu will find everything it need from the web.

I was surprised with the way I could customize menus and shortcuts.
I have assigned a dozen of shortcuts on combination of 'windows' button + other key.
Since the key is there, why shouldn't it be utilized? :)

Right now everything runs smooth. Let's see what will happen next.
I should also note that the installation process was really easy.
Even with windows dual-booting (in case I need to run some windows apps, I will)