Writing code is a skill that everyone can benefit from. Programming is in its essence problem solving. It teaches the programmer to persevere when given a difficult or complex problem and encourages him/her to search for creative solutions. Developers and Software engineers use code as a tool to solve complex problems. They have spent years honing their craft and gathering experience with a variety of languages, systems and architectures. Each time they learn something new they are adding a new tool to their tool belts. In this section we will start building up the tool belt you need to start programming.