The beauty of programming is, you enjoy it when you are completely in it. It is like diving into the ocean and enjoying the ride. You can’t enjoy the ride if you are watching it from sea shore. Some issues take hours to solve, some badly written code takes weeks to refactor, some apps take months to get stabilized and some products take years to take off. At the end it is the journey from one programming state to another state that matters most.