from typing import List
from typing import Any


def shard_list(alist: List[Any], shard_count: int) -> List[List[Any]]:
    """Breaks the list up into roughly-equally sized shards.

    Args:
        alist: A list of things.
        shard_count (int): The total number of shards.

    Returns:
        List[List[Any]]: The shards.
    """
    shard_size = len(alist) / shard_count
    shard_start = 0.0
    shards = []
    for i in range(shard_count - 1):
        shard_end = shard_start + shard_size
        shards.append(alist[int(shard_start) : int(shard_end)])  # noqa: E203
        shard_start = shard_end
    shards.append(alist[int(shard_start) :])  # noqa: E203
    return shards