leaning go by writing go codes