University is focused on covering the theoretical aspect of computers with a lesser focus on practical applications - although they are thought to some extent - while FH is more focused on building applications and real-life systems with a smaller focus on theoretical aspects.
The only problem is that FH has long been considered second class and everyone wants to attend university. but in my opinion and based on my experience, many people would be a better fit for FH.
For someone deciding whether to attend Uni or FH, it is often not easy because you cannot guess what you are going to do in your work-life and whether you might enjoy research or you would rather go into industry directly.
Aside from that though, I think it is great that we have different institutions for different audiences with differing goals. Does something like that exist in the United States or somewhere else in the world?
Often universities will have separate computer science and software engineering degrees. The first is more academically oriented (for those who want to get a PhD in computer science) and the other for people who want a job as a developer.
This is not true. Students can get accredited Master's degrees at a University of Applied Science. Some of the Universities even do research.
https://en.m.wikipedia.org/wiki/Fachhochschule
I'm not aware of any trade school in the US where students can get higher credentials than a certificate or associates degree.
As an example, in San Diego, the two top universities are UCSD and SDSU. UCSD is much more prestigious but SDSU teaches more practical skills, for example while SDSU biology students have 3 years of laboratory experience, UCSD students will have 2/3rds of one year of laboratory experience. Actually labs will not even consider UCSD students when hiring because they have so little practical knowledge. UCSD students are expected to go on to get professional degrees or higher academic degrees.
In general, in California, "University of California" schools are known to be academic while "California State Universities" are known to be practical. This was somewhat codified in the California Master Plan for Higher Education, where the top eighth of students would go to the UC schools and the top third would go to CSU schools[0].
I don't know if other states are the same.
[0]: https://en.wikipedia.org/wiki/California_Master_Plan_for_Hig...
Edit: what koube said. I went to a CSU school.
The equivalence of credentials matters for example once you get into the realm of government jobs with strict requirements, or getting accepted into Master or PHD programs.
From Wikipedia, "There is another type of university in Germany: the Fachhochschulen (Universities of Applied Sciences), which offer mostly the same degrees as Universitäten, but often concentrate on applied science (as the English name suggests) and usually have no power to award PhD-level degrees, at least not in their own right... The FH Diploma is roughly equivalent to a bachelor's degree."[0]
There doesn't seem to be a community college equivalent in continental Europe [1].
I think it comes down to the age old debate as to whether a degree is supposed to prepare a student to roll into an industry job or whether it is supposed to be an introduction to academia. An academic purist might argue that these should all be separate degrees because they are different intellectual pursuits, while a company would likely much prefer to take on a graduate with some understanding of all of the above.
The people who write compilers still have to learn a lot on the job because writing a good compiler is a lot harder than writing a basic one. It's turtles all the way down.
Ultimately I think teaching you how to write a compiler will put you in much better stead than teaching you just how to use one.
On one hand (1) we have people who write OS, compilers etc., On the other (2) we have folks use them and build applications for businesses. The school teaches us for (1). We learn (2) ourselves at work. I wish schools taught us for (2) as well along with all the necessary soft skills to deal with.