Hamming error correction with non-uniform error correction capability If I understood correctly, Hamming codes assume the uniform correction among all the bits. This means all the bits have the same weight in terms of correction.

Are there any error correcting codes out there that assume non-uniform error correction probability among the bits? For example, I want a error correcting code that corrects the first bit all the time, but it is fine to correct the second bit 90% of the time.
The topic you want is Unequal Error Protection (UEP) codes. There are a number of constructions in this area and a google scholar search yields quite a few hits.

Intuitively, imagine partitioning your code into disjoint point clouds, where cloud centres are chosen by the more important bits, thus intra-centre distance is high, hence those bits are more robust to noise.

Some references:

On linear unequal error protection codes, B Masnick, J Wolf - IEEE Transactions on Information Theory, 1967. 

Multilevel codes for unequal error protection
AR Calderbank, N Seshadri - IEEE Transactions on Information Theory,  1993.

A more information theoretic perspective is the Borade et al paper here on the arXiV.

Lastly, Prof. Lloyd Welch published a nice paper on "Codes correcting selected error patterns", which I can't seem to find a reference to.