Genel fikir birliği, kabul ettiğim "daha fazla kod yaz" dır, ancak bu tavsiyeye, birçok farklı türde kod yazmanız gerektiğini ekleyeceğim. Java, dillere gelince gayet iyi, ancak kesinlikle güç spektrumunda hem aşağı hem de yukarı kod yazmalısınız. Java'ya ek olarak, birkaç küçük projeyi daha düşük bir dilde (C bunun için iyi bir seçimdir), bir betik dili (perl'i tercih ederim, ancak python da iyi bir seçimdir), işlevsel bir dilde yapmayı öneririm. lisp buradaki genel öneridir, ancak OCaml ve Haskell de iyi seçimlerdir) ve en azından bir meclis dili okumakta rahatlarlar.
Ayrıca, uyguladığınız program türlerinde biraz çeşitlilik seçin. En azından bir Masaüstü GUI'si, zengin bir web uygulaması, bir ağ istemcisi ve sunucusu, bir sürücü, bir veri munging yardımcı programı, bir ışın izleme ve bir fizik simülasyonu uygulamaya bakın.
Projelerin tamamı kapsam bakımından nispeten küçük olmalıdır, amaç özellikli bir programa sahip olmak değildir, ancak karşılaşabileceğiniz farklı alanlarda geniş bir tecrübe edinmek, her biri için gereken farklı düşünce türlerini öğrenmek, ve çıkarların nerede olduğunu bulmak için.
Bunu yaptıktan sonra, en çok hangi programla ilgilendiğinize dair iyi bir fikre sahip olacaksınız ve uzun kodlarla başa çıkarak büyük kod tabanlı çalışmalarda deneyim sahibi olmak için açık kaynaklı bir proje bulabilir veya başlatabilirsiniz. projeler geliştirmek ve diğer geliştiricilerle çalışmak.