Shaw, that’s a tough quandary to my mind, because in my experience (eg at work all day) programming really does goes better when one exercises and has a social life
At the same time, the eye-tracking that careful code requires has to be extremely taxing on your son despite his awesome capability to overcome his LDs. I know that tracking is difficult for mcson, though at the same time, he’s really loving code. And he isnt dyslexic, but does have slower line tracking related to his cognitive processing gaps. I have a bias that suggests physicality lends grounding to te heady notion of code.
Sometimes the coding gods favor he who walks away for a spell. By that, I mean, I will watch two of the guys try to debug or sleuth out a problem. The harder they try, the more the solution eludes them. They will carry on like this for hours…“brute force” programming ;). And I mean hours.
I, generally not even a programmer, might come at it fresh after going off to do something entirely unrelated, or after my morning snowshoe up the hill. And oddly enough, as often as not, I might come up with the key to the solution. Mcson has noticed this “background processing” phenom of mine, so likes to do a short (eg 3/4 mile) lunch walk to the bank to make the deposit when deep in the weeds. It often works for him. Kinetic infusion is what I might call it.
So, your son is in a place populated I suspect with extreme coders. He can, and to a degree, needs to emulate them, (for the purpose of the course) even though to do so requires a process that I suspect is more biologically challenging/exhausting for him than many. But his real gift is likely that he’s superior in the background processing, the solution, the innovative touch, the seeing of the patterns. And that requires a bit of zen, of balance, a holistic approach or kinetic infusion 
These are all assumptions I’m making from our general discussion here over the years. So I could be in left field. But I will suggest that maybe shawson just needs to give himself permission to take an incomplete to have more time to let the coding breath a bit, percolate, or to consider a lighter course load to allow himself the space to keep himself biologically fresh and engaged. I’m not sure in the end that sacrificing exercise or social outlets serves either him or the work he is doing.
But given his drive, you might have a hard time convincing him of that.
I will say this – mcson took extra time beyond the semester in an engineering programming course that was rigorous and dense…and he’s now better at it than many
(Including our 15-year employee…) so its a marathon, not a sprint as the saying goes…