Whisk together the warm water, dry active yeast, honey or sugar, vegetable oil, and eggs in a medium size mixing bowl. Let sit for 5 to 10 minutes until the yeast is all bubbly on the surface.
Mix the beaten eggs and oil into the proofed and bubbly yeast mixture.
Combine the flour and salt in a large mixing bowl, and add the previously combined wet ingredients. Mix well with your hands or a dough mixer.
Knead the dough (or let the dough machine do it) until smooth textured. Cover with a cloth, plastic wrap, or the lid of the dough kneader.
Let the dough bulk proof for about 1 hour. My dough kneader refers to this stage as the 'ferment'. This is bulk proofing, or rising is where the yeast multiplies for your dough to be soft and fluffy later.
Punch the dough down after the bulk proof stage, and knead it into a ball. Divide it into twelve equal sized balls.
Divide each of the 12 balls into three smaller segments of dough and roll each segment into a noodle shape about 7 inches long.
Pinch three dough strip ends together just at one end and braid, pinching the ends together at the other end to secure.
Tuck both end pieces of the braid underneath the braided roll, pinching the two ends together securely.
Preheat your oven to 350F, and line a rimmed baking sheet with parchment paper, or spray with non stick cooking spray.
Place the braided dough rolls on the prepared baking sheet, and brush each challah bun with beaten egg. Sprinkle poppy seeds, nigella seeds, or sesame seeds on the top of each roll.
Cover lightly with a cloth or loose plastic film and set aside for the second proofing, about 1 hour. When doubled in size, place in the preheated oven and bake for 25 - 30 minutes until golden brown. Serve while hot!