def is_palindrome(n):
    """Tests if a number is a palindrome
    
    Args:
        n (Integer): Integer to test palindromomity
    
    Returns:
        Boolean: True if n is a palindrome, false otherwise
    """
    # Turn the integer into a list of characters
    chars = list(str(n))
    length = len(chars)
    # For the first half of characters and check for palindrome quality
    # Important: I know that I said half, and normally would have done that,
    #            except that the division operation AND bit shifting 
    #            is more expensive than simply checking each character (for small n)
    for i in range(length):
        if chars[i] != chars[length - i - 1]:
            return False
    return True