Co řešíš?
Odjakživa se takové věci dělí na fyzickou, ovladačovou a aplikační vrstvu.
Jestli chceš, tak si udělej těch vrstev kolik chceš.
Ale jednoznačně je to tak, že nějaká ucelená teorie je prostě jen teorie.
20 let programuju profesionálně (za peníze) a cca 30 celkem. Začínal jsem, jak jinak, basicem na ZX spectru v kroužku přidruženém Svazarmu - jinak to tehdy ani nešlo. Tam jsem se seznámil s několika borcy, co ty spectra i opravovali atd. Od nich jsem se naučil samozřejmě assembler a hacky životů ve hrách. Pak už to jelo. Assember a viry na prvních PC, Pascal, C, C++, nyní C#.
VŠ jsem dodělával až celkem nedávno a mohu zodpovědně říct, že po tolika letech praxe, to co nás tam učili, byly krásné teorie, ale s praxí to nemělo vůbec nic společného.
Předělávat funkce a přendavat budeš vždycky. V tom ti žádný akademický aparát nikdy nepomůže.