def produce_inter_times(timestamps, max_filter=None):
    """
    Produces a list of the ordered timespans in seconds between epoch
    timestamps.
    
    Args:
        timestamps: list of positive numbers representing epoch time
            stamps in seconds.
        
    Returns:
        inter_times: list of time invervals (in seconds) between the
            values in timestamps.
    """
    inter_times  = []
    last_t=None
    for t in timestamps:
        if (not last_t is None) and (not t is None):
            if t<last_t:
                raise ValueError("Timestamps are not increasing!")
            if t!=0 and last_t!=0:
                if max_filter is None or t-last_t<=max_filter:
                    inter_times.append((t-last_t))
        last_t=t
    return inter_times