Я всегда считал, что при начале изучения нового языка программирования программист должен создавать определенные проекты, чтобы лучше понять язык и / или фреймворки. Лично для меня это были php (гостевая книга, абстракция БД, движок шаблонов), ruby (на рельсах, твиттер-подобный веб-сайт, плагин активной записи, простой gem) и target-c (какао, список задач, клиент twitter).
Мне интересно, какие проекты должны быть запрограммированы для других языков программирования, таких как Java, C ++, Python и т. Д.? Может быть, у вас были другие пути изучения языков?