The best way to learn is to do. A lot of technical books, even ones aimed at beginners, take the form of a lengthy discursive preamble, followed by some abstract example for the reader to digest and understand. The trouble with this is it doesn’t map well onto how we learn technical skills. Learning a technical skill is like teaching a child to ride a bicycle. You can’t really teach someone the theory, and then show them a video of someone else cycling, and then expect them to just pick it up by themselves at some point in the future. A much better way is go out there and then, with a bicycle, plonk them on, give them a push, and help them when they wobble.
Learning a technical skill, or a programming language is very much about immersion. The learning process is reinforced by mistakes, by looking up documentation, by asking other more experienced people, and building up competence ourselves. So, to introduce the fundamental ideas of Chef, we’ll build some real infrastructure, which we’ll actually use later in the book. This chapter and the next are unashamedly influenced by the excellent series of books and courses by Zed Shaw - http://learncodethehardway.org. An approach that focusses on diving in and getting on with real examples, this has been proven to be an excellent method for building confidence and expertise in a technical subject.
The approach, explains http://learncodethehardway.org,
“…emphasizes precision, attention to detail, and persistence ...