Here’s part of the issue, imo, and some may disagree: in many ways learning a language and learning CS, programming or IT require the same sorts of thinking and logic skills. You have pieces, you learn the rules and how they fit together, you apply them- and hope to end up with something that functions and makes sense. That’s a lot of what the first two years of lang study bring. It’s not analyzing lit or writing heavy papers.
Over time on CC, we see a number of kids who missed something and want to grad on time, so they push. For some, it’s a natural. For others, it’s one challenge on top of another. Imo, what we want is whatever helps our kids get through the next phase (be prepped, be able to keep growing, not just catch up, be confident.) Sometimes, for some kids with some circumstances, breathing room today pays off tomorrow.
I would have advocated online, too. It would show he recognized the expectation and did what he could. In some cases, it also gives parents a chance to help and it can often be self-scheduled.
If he does go back to language, forget Arabic or Chinese or Russian, with their separate alphabets. Keep it simple. Best wishes.