O čem je programování v praxi, co programovat? To je různé. Programovat lze od úrovně obsluhy buněk paměti a vykonávání počítačové instrukce (specializované mikropočítače, robotika; typicky C) po nejvyšší level "lepiče" funkčních komponent (typicky informační systémy - OOP a návrhové vzory a práce s nějakým frameworkem a knihovnami; PHP, Java). Pak tu jsou samozřejmě programátoři oněch frameworků, komponent, knihoven, programátoři, co se věnují složitějším algoritmům, lidé, co se věnují 3D grafice, skriptaři (co ti říká bash?) atd. atd.
Pravý programátor by měl vědět, jak to funguje na nižší úrovni, znát obecné základy. Tzn. strávit pár hodin s C, zjistit, jak funguje DFS/BFS, řadící algoritmy, ... (doporučuji navštívit např.
http://www.algoritmy.net)
High-level programování je však o něčem trochu jiném. Správně pochopit a naučit se používat OOP, zvlášť pro člověka, co delší dobu programuje v neobjektovém jazyce, zabere nějaký čas. Samozřemě, že by tomu tak mělo být všude, ale při výuce OOP se velmi dbá na to, aby výsledný kód byl správně strukturovaný, neb správný programátor nepíše kód, který funguje, ale především kód, ve kterém se snadno vyznají ostatní (ono když náhodou nefunguje, tak ho pak snadno kdokoli může opravit). OOP také přichází s pojmem návrhové vzory. Pak je to o studování frameworků, hledání knihoven.
Vyhrazuji si právo na nepřesnosti a gramatické chyby, už je po půlnoci 