Posts

DNA and the fabric of the Universe

Image
The genetic code seems to not be enough to describe the complexity of a human being . In fact, it seems too small to describe most of the life forms. We could assume that the genetic code has all the information very compressed, but still... I will approach the problem of describing life complexity based of information theory.

Genetic code (DNA) is not enough

Image
Photo: wikipedia.org Genetic code (DNA) could be seen as the best compression algorithm that we have ever seen . Just think about it: in only around 1 GBytes, DNA could store the information to create a human being, with all the general and specific characteristics and many non-educated behaviors. In 1 GBytes, the current technology could barely store a 1.5 hour movie at rather low quality, but human DNA is able to encode everything that is human in a lifetime.

Is Your God so small?

Image
When I see the continuous fighting over Jerusalem... I would ask the people that are killing each other for a piece of "saint" land: "Is your God so small that He only lives on that little piece of land?"

The meaning of music

The meaning of music is hard to capture in words. Let's try some ideas anyway! The brain bug The brain has a natural ability to extract patterns from all the stimulus. It's a fact that we like the music that has some patterns: that is not very monotonic (boring) but not very random either, so we can continuously learn some new patterns. Somehow the brain has the illusion that it continuously learns in an accelerated rate by listening music. So music could be considered a small addiction at the first analysis.

Audiophile music - 10 conclusions

I am passionate about sound quality lately. Here are my early conclusions from the research and experiments I did. This is the order of sound optimizations that you could try in order to improve the music experience. 1. Live music sounds better than recorded music 2. Un-amplified live music sounds better than amplified music 3. Recorded music sounds better on loud speakers than on headphones 4. Expensive headphones (>100$) sounds better than cheap ones 5. Open-air headphones sounds better than closed enclosure ones 6. Loss-less music (like FLAC) sounds better than MP3 7. High bitrate MP3 (>128kbps) sounds better than low bitrate 8. A professional DAC (or sound card) sounds better than a cheap one 9. High sample rate music (>44KHz) could sound better than 44KHz (or not) 10. Music encoded at 24bits could sound better than 16bits music (or not)  I will say a few words about each, from my limited experience and research:

Mathematical incompletness and life

A friend told me once that we are living in an Universe full of unprovable truths. He was referring to the Gödel's incompleteness theorems . Without being very formal, this says that there are many mathematical propositions that might be true but we cannot prove them using a computer program or any predictive way of checking, no matter how huge amount of time we can spend. We can find the proof for some, by luck, but for most of them we cannot find either a proof or disproof. In fact this "unprovable" propositions are way more many than the provable propositions. The provable propositions are like the set of natural numbers "N" and the unprovable propositions are like the set of real numbers (R).

When float does not change when incrementing - C/C++ programming

Better read: Data Consistency in Distributed System - CAP, PACELC Morality series - a heptalogy This blog is mainly focused on my Philosophical and theoretical ideas. From time to time I have practical posts that are too few to deserve a blog by themselves. I still hope my other work (like above) is even more valuable than such practical article as below. * * *   What would you expect if you increment 20 millions as float? Do you expect that it will not change at all? Check the output of the simple program below. You may know the explanation, but did you expect it to happen to such relatively small values? Output: user@ubuntu$ gcc float_inc.c ; ./a.out float has 32 bits a=20000000.000000 a+1=20000000.000000 a=16777216.000000 a+1=16777216.000000 a=16777218.000000 a+1=16777220.000000 a=16777220.000000 a+1=16777220.000000 a=16777220.000000 a+1=16777220.000000 a=16777220.000000 a+1=16777220.000000 a=16777222.000000 a+1=16777224.000000