> A formal apprenticeship model would be great for programming
It exists since 1997-1999, varying on the country. An apprenticeship takes nominally between 3 and 3½ years, concludes with a level 4 EQR and the rules and by-laws are determined by the chamber of commerce, who also holds the examinations. It is treated as a trade, similar to blue collar professions like heating installer, lathe operator etc.