While trying to add new features to my engine, I often end up looking at tutorials, articles, and other engines and demos to get ideas, or usually to figure out why what i've done dosen't work.
However, when looking at source examples, the first thing I usually notice is how much better the programming seems to be in comparison to my own code. It dosen't necessarily run better, but I always wonder if the way my engine is written is really the best, or the proper way to do things. I often find myself thinking "if only my engine was structured this way, then implementing this would be ten times easier".
So, my question is this: is there a right and a wrong way to structure and write an engine?