def METHOD_NAME(numList):
    """
    _getAverageStdDev_
    Given a list, calculate both the average and the
    standard deviation.
    """
    if len(numList) < 0:
        # Nothing to do here
        return 0.0, 0.0
    total   = 0.0
    average = 0.0
    stdBase = 0.0
    # Assemble the average
    skipped = 0
    for value in numList:
        try:
            if math.isnan(value) or math.isinf(value):
                skipped += 1
                continue
            else:
                total += value
        except TypeError:
            msg =  "Attempted to take average of non-numerical values.\n"
            msg += "Expected int or float, got %s: %s" % (value.__class__, value)
            logging.error(msg)
            logging.debug("FullList: %s", numList)
            raise MathAlgoException(msg)
    length = len(numList) - skipped
    if length < 1:
        return average, total
    average = total / length
    for value in numList:
        tmpValue = value - average
        stdBase += (tmpValue * tmpValue)
    stdDev = math.sqrt(stdBase / length)
    if math.isnan(average) or math.isinf(average):
        average = 0.0
    if math.isnan(stdDev) or math.isinf(average) or not decimal.Decimal(str(stdDev)).is_finite():
        stdDev = 0.0
    if not isinstance(stdDev, (int, float)):
        stdDev = 0.0
    return average, stdDev