I don't have a very good GPA in my undergrad because the teachers available in my undergrad college were not up to the mark. To be honest, they were not properly qualified at all to teach. I think this is quite normal in a third world country where teachers are not paid well and highly skilled people just almost always go to the industries because of better salary and research facilities there. More often than teaching correct things, they would teach incorrect things and expects students to rote learn the concepts -- transcribe the material in the examination exactly as they taught even if it's incorrect sometimes. This made no sense to many of us of course, except the ones who were blindly running behind the grades without trying to gain any practical knowledge. The undergrad GPA was really not the indicator of success in my college; in fact, a higher GPA was almost always the indication that this guy is seriously lacking in the application of the concepts. This led me and many of my friends to lose interest over time in the studies and we started involving ourselves more in project work.
Now my question is that is it okay if I mention this in my SOP? Or is it too harsh to say it? The downside, if I don't say it, is that it weakens my application due to GPA, which colleges take very seriously, as far as I've researched. They will think I lack some serious skills. I can offset the impact with my good project work that I've done in subsequent years, but still, I am confused how to explain the low GPA.