start to learn socket