My take on the calculateForNextOrderingPosition method implementation