It is generally recognized that girls are generally ahead of boys on language and social studies. This is natural. If creating language schools for boys is a solution, it should have been there years ago.

What I see is that technology and STEM educations in lower grades are boring. Girls are already advanced so much and they do not like those boring stuff.

Personally, I am convinced that software programming skill can be taught effectively in elementary school with proper curriculum. In addition, it is really necessary for anyone to go through universities to become a good coder.

For elementary level education, it is a SIN to have any curriculum that only super/excellent/great teachers can teach kids well. My observation as a PTA board member now is that poorly a designed curriculum package make both teachers and students suffer.

I have to say that STEM education in US is not good enough. For instance, kids start to use calculators too early. Using calculator is a great way to simplify many computation tasks. However, it deprives kids the opportunities to THINK and ESTIMATE. Both are crucial for STEM jobs.

In universities, I have encountered engineering students who did not know what they should really know. Well, they eventually got their degrees. In my opinion, it is much better off for them to pursue jobs in areas other than STEM.