Why is match making based on how well you have been doing recently and not based on what your current rank is? That is like taking someone who plays hockey and just got a hat-trick last game, and putting them with people who are all 2 years older and saying: I expect you to do just as well as you were before and if you don't I am going to punish you. Which is exactly what happens when you did well the last game or few games and now you are playing way out of you league but you still lose LP when you lose.
For instance, I just worked my way from S4 to S1, and while in S4 I play mostly against silvers with a few golds here and there; however, for all the games after that up to S1 I played mostly against golds. Not only that but I was the lowest ranking person in the whole game for more than 70% of the games. For the other 30% there was maybe 1-3 people lower than me. Now it's great that I am beating golds and whatnot but I imagine I would probably win more games if I only played against people at my rank. It would just make sense to me if people who are silver 3 played against silver 3 people and gold 2 playing against gold 2. I know the match making system has to find people out of your league a little bit to cut cue times, but if I am silver 2 I shouldn't be playing mostly against high golds.
Similarly in unranked people get matched waaay out of their league. I really shouldn't be silver and often play against plats and diamonds.
Now I know that Riot doesn't care about unranked, but it would be nice to go on a win streak and not suddenly be playing against people who are that far above me.