Worth learning from scratch and how?