learning socket.io changes