Here's the easiest solution: stop grading homework Why judge student performance on something that they are using _to learn_? It doesn't make any sense. Every student is basically competing with one another to get the highest GPA possible - if you're going to give them cookie cutter homework with solutions can be easily searched for on the internet _and_ can only bring their GPA down, then they're going to cheat. Pla…
It's to get students to retain just enough information to get placed in a job after graduation to boost placement rates, earn good salaries, and donate back to their alma mater for the "opportunity it provided".
Students aren't the customers, they're the products.
Unfortunately, companies that propagate hiring based on GPAs, # of internships, and whiteboarding skills are only hurting themselves in the long run. When you need a 3.9 GPA and be able to recite all of LC and CTCI from memory just to get an entry level position, you aren't being encouraged to learn, only to graduate with the best possible resume you can get. That means doing whatever it takes to boost metrics that are completely meaningless for creating value for a business.
Ya'll mad that you can't find 'good' engineers, but put all the focus on cheap memorization and circle-jerking Big N style interviews. Want better workers? Put more focus on workforce training and hold colleges responsible for providing it.