Generics e Implementación de IComparable

Soy muy nuevo en genéricos y estoy tratando de escribir una clase simple que sea genérica pero que también permita ordenar alguna descripción en una variable de miembro de cadena.

En este momento tengo una clase básica pero cuando intento implementar el miembro de interfaz CompareTo () aparece un error en la parte superior que me dice que no está implementado. ¿Cuál es el problema aquí

using System;

namespace GenericsPracticeConsole.Types
{
    class SortableGenericType<T> : IComparable
    {
        private T t;
        private string stringName;

        public T name
        {
            get { return t; }
            set { t = value; }
        }

        public int CompareTo(SortableGenericType<T> ourObject)
        {
            return stringName.CompareTo(ourObject.stringName);
        }
    }
}