One of my favorite things to do with my players is to have them join in the world building process by building everything associated with their backstory. I start off by asking them a series of questions about their childhood (click here to read them) and then have them world build anything they mention in their backstory.
So if they say they went to school, they world build that school. If they say they were best friend with the baker's child as kids, they create the NPCs of the baker, their spouse, their children, plus the name of the shop, what they sell, what their specialty is, and how well known or well liked they are.
If their character is a part of a religion, or organization, they need to world-build the organization, it's leaders, it's basic mode of conduct, how wealthy/successful the organization is, and it's reputation locally or within the world.
What I love, is that it gives my players a much better understanding of the amount of time/work it takes to world build. Plus, I have had them get far more into their characters even before we start our first session! It does mean that sometimes I need a one-on-one session with each player before we ever start a session to make everything fit as needed in the world but you'd be amazed how much they will create when given the freedom to do so!
I usually tell my players that they can build whatever they want and after they've created it, I'll either fit the world around it, or adjust it as needed. Rarely do I have to change much to make it work in any homebrewed world. Not to mention that it helps so much when I'm running out of ideas.
Then, whenever we visit a player's home town, my player becomes the DM for those sessions as they give us a tour! I have often had my players prepare a short quest or festival or some sort of events whenever we visit these towns so not only do they get a chance to DM but also, it's fun to see them light up with introducing their family/friends to their party!