"小王" 和 "老王" how to determine which to use? This is something I still haven't mastered and still just go with the flow.

If I wanted to call someone a nickname, say for Mr. Wang, which one should I choose? What defines whether I should call him Xiao Wang or Lao Wang. Is it age, social status etc?

My wife has an Uncle who is older than both of us, but the family refers to him as 小居 including my wife (when talking with her parents about the uncle, not when talking directly to him), so I'm not sure if this is how I should be mentioning him when talking to others.
Just as @Flake said:


  In general, "小X" should be used to a person who is younger than you while "老X" to an older person.


And here is some additional usages:


Generally speaking, 老X is often used to address a male, and 小X can be used for both male &amp; female.
老X can be used to a person who is an acquaintance to you(usually both of you have almost the same age), for example, a close friend at school. However, in some cases, close friends will use 老X as nickname without obvious distinction between ages(this rarely occurs, but exists).
You should not call a person who is much older than you 老X, it's impolite. You can call him/her X哥/X姐, and if they are older still X叔/X姨, etc.
In companies, superiors might call their subordinates 小X.
And in the family, elder ones might call the younger 小X.


Your uncle is older than both of you, so I think you'd better call him X哥(or just the given name, but should not use 小X as his parents used) when talking to others. :)