I’ll never understand how Sopranos, Dexter, Game of Thrones (Jaimie), LOTR (Thorin) and other shows celebrate morally ambiguous characters but HP fans can’t get over the fact that Snape doesn’t fit clearly into the good or evil column and therefore I must force him into one side or the other.
Remember when Sirius said the world isn’t divided into good guys and death eaters? Well it’s true. Snape is an awesome and fascinating character precisely because of his grey areas and his attempts at redemption. He’s one of my favorites because of how conflicted he is. We literally don’t know for sure if he is on our side or Voldemort’s until the very end.
Would you have honestly believed he killed dumbledore if he hadn’t been sort of horrible? Or what if he had been pure evil the whole time? Would you have accepted his role in the end? In either scenario he would have just been another bland evil or good character. These books had enough of those.
If you really want to get to know Snape, read “Snape”. It’s a really deep read into every scene Snape is a part of. And it doesn’t argue that he is good or bad.
https://www.amazon.com/Snape-Definitive-Reading-Lorrie-Kim/dp/1940699134