# Blog

A Huffman compressor is a compressor based on the Huffman Codification. This algorithm examines the text counting the frequences of each character. Then, it makes a new codification using that frequences. For example, in order to reduce the space, it`s easy to see that if we store 'C' letter 5 times as 0, 'A' letter 2 times as 10 and 'B' letter 3 times as 11 we achieve reducing the size compared with binary codification:

When a browser is trying to download a webpage it is necessary to perform, at least, these steps before it gets the content:

- Resolve the host name, i.e., obtain the IP associated to that domain
- Connect a socket to the IP
- Write on the socket the request
- Read the socket data

In this article I will try to decribe some of them using both Qt and clib sockets.

From long time ago threads are needed in programming to overlap operations which don't depend between them. Nowadays, with the multi-cores is something basic for every application if you want to achieve a good performance. This introduce some problems like accessing shared variables at the same time by several threads or synchronize tasks on the code. I will try to cover how to deal with these topics on C++11 analyzing the executions with helgrind, a Valgrind tool.

LU factorization is a popular method to decompose a matrix as the product of a Lower triangle and an Upper triangle matrices. Lot of simulations perform the solving of a given system of linear equations. In general, the resolution of these systems is quite hard so matrix decomposition method is frequently used to subdivide the problem. As it's easier to solve a triangular matrix than a standard matrix, this is usually the first step on many simulations.