When a programmer says that he is ‘in a flow’, it means that he is fully focused and involved in the activity. It’s a state where you feel your best and you perform your best. The task is clear, you know what needs to be done, you know how to do it, and you get immediate feedback on how well you’re doing.
Sometimes the feeling goes beyond performance means. There can also be a sense of being outside of everyday reality. Sometimes you lose your sense of self and all of your worries and concerns drift away. You lose track of time and you’re completely focused on the present moment.
I work as a web developer, and what I have found is that the right music allows me to catch the flow more easily. What works for me is music with light, gentle, atmospheric, relaxing sounds. The number one YouTube channel with focus and programming music is ‘Reality Experienced’.
Another source that I sometimes use is Code Radio, from freecodecamp.org, which plays 24/7 music designed for coding.
Worth mentioning is a site https://www.programmersmusic.com/, which picks particular YouTube tracks, sorts them in genres and allows you to set the session and break duration (Pomodoro Technique).