Breaking down some numbers:
-Ash turns 10 years old in the beginning of episode 1.
-Ash is still 10 as-of the first episode of Pokemon Black and White.
-That's episode 654, US numbering, 658 Japanese.
-If we posit that Ash has been on his Pokemon journey for at least close to a year, this means that he's had almost two complete, crazy, usually life threatening misadventures every day.
-Team Rocket has to think up at least two different mottos a day.
-Misty only hung out with them for a couple months.
-Ash has discovered tons of Pokemon species - perhaps even tripled the known amount in less than a year.
-Think about how unfair it is to tell a kid there's only 150 Pokemon and then keep adding in Pokemon every few months to make the goal unattainable.
-This isn't even thinking about the episodes which happen over the span of more than one day.
-The amount of stuff Ash does in a single day only grows as the show continues.
If you think about it from this perspective, he's not quite a shitty trainer after all.
Someone should try to extrapolate a year tmeline off of this. Hahaha.