This is interresting and I think you'll learn lot of good things there.
But I'd say at least the language solve only part of the problem. It solve the problem of ensuring that the program you wrote actually does what you told the machine.
It doesn't ensure that you told the machine the right thing about what the program shall be doing from the specifications. It doesn't ensure neither that you understood the real problem you are trying to solve and managed to correctly translate the real world problem into a correct set of specifications...
That last one thing is responsible of 30-45% of all defects in a software and theses kind of defect, actually design defects are among the most costly to solve. In many places people don't even want to accept them as defects... But the real thing stil doesn't solve the real world problem even if it conform to the specs.
I totally agree.
The NASA study I mentioned in the post (also here) shows that the cost of missing or incorrect requirements can be devastating to a project because the costs rise exponentially the longer the defect is in the system.
I restricted my post to coding concerns but getting requirements right is super important too. I'm reading "Software Requirements" by Karl E Wiegers right now and I might write a post on that when I'm done.
We're a place where coders share, stay up-to-date and grow their careers.
We strive for transparency and don't collect excess data.