Thanks for sharing!
As with everything in life, there should be some degree of balance. Extremes are not good, and every single person is different - one might give great results when working uninterrupted, while other might excel at doing various things in & out of the usual-work bubble.
The key to a productive team, in my opinion, is getting to know the people and guiding/leading them to utilize their individual strengths. You'll likely end up with a diverse skill set & way of working for every person in your team. Getting from zero to a very productive team takes time and everyone getting to know each other. It's important not to try to make every single member of your team work in the same way - instead, identify the strengths/weaknesses and adapt accordingly.
When it comes to asking for help when stuck on some problem, the key is to create an encouraging environment where people assist each other. If one team member gets stuck, it hurts the team as a whole. People with lots of knowledge and experience should share it with others and help them become better. It's not a competition on "who's the best developer" or "who can do tasks in the shortest timeframe", it's about evolving your team into a productive unit where people help each other out.
And there is no shame in saying "I'm stuck on this problem, please help me". People eventually get better at what they do. Eventually, there's only one difference between a beginner and a master - the master has failed more times than the beginner has even tried.