An article in The New York Times about programs that teach coding and programming to children as young as 2 years old also teaches a variety of other invaluable life skills. When children are given the freedom to use their curiosity to explore and make things, they learn how to solve problems through making mistakes. These skills help children in coping with frustration and empathizing and collaborating with others, something that has proven to be important for success in adulthood. “If you raise and educate kids to be flexible, problem solvers and good communicators, they can adapt to a world that is new,” says Harvard Professor Stephanie M. Jones.