My plan is to program some big stuff myself, so as to learn about design; read the code of some open source software, to learn how others design; and program something from scratch with someone else and submit patches to an OS software, to learn how to work with other hackers. I hope that teaches me what I need.