Książki. A kiedyś dyskietki były dzielone z informacjami o łamaniu zabezpieczeń i samouczkami, świetne do programowania na niskim poziomie. Czasopisma miały też mnóstwo przykładów kodu źródłowego. Ale tak naprawdę, musiałeś zrobić dużo samodzielnie i to wszystko zrozumieć.