Firstly, decide what filling you want to use and prepare it so it can cool down before filling if needed.
Then, mill the flour (I love to use half soft white wheat and half Kamut)
In a large saucepan, combine water, butter, sugar, and salt. Heat on medium-high heat until melted and starting to boil.
Take the pan off the heat, and pour in the flour all at once. Stir quickly with a sturdy spoon until combined, and a paste forms.
Place the pan back on the heat, now at medium, Stir the dough until it looks smooth, and you start to see steam coming from the dough. This will take about a minute or less. The dough should have thickened and appear somewhat shinier now.
Remove the pan from the heat, and let the dough cool until it reaches below 125*F. You can stir it occasionally to help cool. Don't put it in the fridge, you still want it warm. If you don't have a thermometer, just make sure it has cooled so you can hold your finger on it for a second or two, but still be hot.
While the dough cools, prepare your baking sheets with parchment paper.
Preheat the oven to 425*F. (These bake at 425 initially, then decrease later.)
Then, when the dough has cooled to below that 125*F temperature, it is time to add in the eggs one at a time. (You want to make sure the mixture cooled enough that the eggs don't scramble when you add them.)
Add eggs one at a time, and make sure to mix completely before adding in the next egg. (This can be done by hand, but to make the process easier, you can use a mixer.) The eggs & dough will slosh around, but eventually come together.
Once all the eggs are added, mix for a couple minutes ensuring an even mix. The dough should now be a bit looser, and be a smooth and shiny paste.
Now it is time to pipe the pastry. Using a piping bag, and a 1/2 inch round piping tip (or cut a 1/2 inch circle in the bag.) pipe the choux dough on the prepared baking pans 1 inch apart from each other allowing room to expand. Pipe each cream puff straight up from the bottom at 1&1/2 inch diameter and about 1/2 - 3/4 inch tall.
Wet your finger, and lightly flatten the tops of the cream puff batter. You want a smooth top, not a peak.
Bake at 425*F for 10 minutes, then without opening the oven - Decrease the temperature to 325*F and bake for 20-30 more minutes. (This time will vary on your oven.) Bake until they are a dark golden brown color. If they are not completely baked, they will deflate as they cool. See troubleshooting above in my blog.
After the cream puffs are finished baking, pull them out of the oven, and let them cool on the pan.
Then, when they are completely cooled, you can either pipe the filling in the middle, or cut them in half and fill that way.
Once filled, you can choose if you want to leave plain, dust with powdered sugar, or dip/drizzle with chocolate or caramel.