Как придумать себе проект для прокачки конкретных скиллов?
Традиционное решение — найти задачу, которые тебе надо решить, и попытаться решить ее с помощью нужного скила. Например, недавно я попробовал написать один скрипт на Python вместо обычно используемого Perl. До этого на пайтоне не писал.
В некоторых случаях можно просто написать демонстрационный пример. Но вот сейчас мне хочется прокачать C++, в первую очередь STL и Boost. Но проблема в том, что задач подходящих нет (на работе C++ вообще не используем), а демонстрационные примеры в стиле «ну, тут мы сортируем элементы списка» — это как-то уж совсем убого.
Насчет анализа и прокачки скиллов:
Для геймдевелопера видел совет попробовать написать простые игры (вроде Тетриса), но самому с нуля и до победного конца.
Намекали, что после этого всякие эпические планы по созданию мегаММО куда-то деваются.
Насчет STL, в начале освоения C++ пробовал писать велосипеды и сравнивать потребление памяти и скорость с реализацией в STL.
Да, пожалуй, самая полезная идея. Всё-таки нужно получать навыки для решения задач, а не наоборот.
Можно просто попробовать ту задачу, которую раньше решали бы на Перле (или чем пользовались раньше) решить на C++. Незачем специально придумывать сложные задачи без приложений.
Умеете писать на Питоне? Хотите юзать boost?
Есть решение: напишите построение социального графа вконтакте(ну или хабра для начала). В бусте как раз есть библиотека работы с графами.
Если будет мало — сделайте связывание соц.графа твиттера/фейсбука/хабра с графом вконтакте. Причем не просто есть ссылка на странице — значит связывание, а полноценное идентефицирование узла по ребрамю.
Возможностей саморазвития кучу.