How do you program? I feel like there is a lot of advice out there, but most of it focuses on the micro level rather than on the macro level. That’s why decided to think about what makes one an efficient programmer on a macro level. Think long-term Spend time on improving your skills that help you becoming more productive in the long run. For example, it’s a fact that git is the version control system of choice.