The educational system in which I have studied focuses on teaching the theory/abstract theoretical courses before the applications.
For example, I spent the first 1-2 years of a 5-year engineering program only studying Mathematics, Physics and other basic courses before even getting any hint what the applied problems we will eventually try to solve are. In terms of tools, I first learned and programmed the individual methods and then I used "real-life" software for the first time.
Now, having seen applications, I look back to my basic courses and I think "that abstract topic was actually much simpler than I originally thought!". It feels like I was just stupid to not be able to fully understand or get interested enough into the abstract topics.
I would feel much better if my university has made me first work on some easy applications, trying to understand the context, the difficulties and the possibilities, then dive into theory and then have the advanced applications that require advanced theory. A kind of "iterative model". I understand that this would probably take more time.
However, I see that university education keeps being like this in the universities I have studied into (Greece and Germany). Strong theory first, applications later. Traditional, "sequential" model.
Does my "iterative model" observation, as a student, make sense from a teaching perspective? What is the current situation and trend in more "progressive" educational systems? If it is not already applied, why not?