Is there a rule for where the origin point should be when modeling?
The Object Origin is the 0,0,0 mark of the local coordinate system of your object. Imagine your object sits inside a glass shoebox and snugly fits in. The three axes (width, length and height) run parallel to the edges of the box. The Object Origin is the ball joint by which the shoebox is fastened to the room.

Here are some general rules of thumb that you can break as soon as you understand their limits:


When you mirror anything, the Object Origin should lie on the mirror plane. If you have a symmetrical creature, it's left ear should be just as far away from the OO as its right ear.
The OO is the point around which your object rotates. When you do simple stuff like a door and you don't need an armature, you can put the OO where the hinges would be. That way you can just rotate your door and it will move correctly.
The OO is also the center for scaling. So if you want something to stay on the ground and only grow upwards, the OO should be on the ground, not in its middle. Think of a bar chart. 
In most cases, object origins should stay close to your mesh. Beginners often move stuff in Edit Mode and forget that the OO stays put and then wonder why rotations don't work as expected.
Some Modifiers make use of the OO. The Mirror Modifier usually uses it to determine where the mirror sits. When modifiers have more than one object to deal with, aligning their OOs can help. Try the Array Modifier with object offset. The Curve Modifier usually cares a great deal about where the OO is.
Since the OO is the pivot point of the mesh, you can think of it as its gravitational center. Rigid body simulations actually treat it that way. So putting it to the visually correct center of gravity can be interesting.
Sometimes it makes sense to not put the OO where the hinge is, maybe because the symmetry of the object has nothing to do with its rotation. Then just parent your object to an empty and you have, in a way, created an in between OO.  


To summarize it all: Stay inside the mesh and or stay on the centerline and or put it where a hinge or COG would be, break those rules whenever the consequences are useful and elegant.