А чем конкретно Вы хотите заниматься в перспективе? Веб в общем и целом, или ближе к бэк-енду, или наоборот — поближе к фронт-енду?
1) Если выбор — фронт, то конечно же имеет смысл придумать «какой-нибудь веб-сайт» и сделать его.
2) Для бэк-енда — пробуйте мыслить сервисами, решайте абстрактные задачи типа «написать сервис который будет складывать входящие запросы (урлы) в очередь + скрипт-разгребальщик этой очереди, забирающий страницы с серверов и делающий какую-то их обработку, результат складывать в бд». Тут с одной стороны проще (задачи как правило четче), с другой — важна производительность, возможно, возникнет желание сделать сначала параллельный разбор очереди, потом заюзать асинхронный ввод-вывод через какой-нибудь libev… У меня например есть задача до которой не доходят руки — запустить на медиацентре сайт-надстройку над поисковым сайтом локальной сети провайдера, чтобы там около найденных результатов была кнопка «скачать к себе», дать себе доступ к этой системе из интернета, и сделать очередь из заявок на скачивание. Уверен, вы тоже можете придумать подобную полезную в быту задачу.
3.1) Если хочется всего понемногу — хорошим способом осознать теорию будет велосипедостроение. Напишите простейшую CMS для управления вебсайтом, имеющим древовидную структуру. Полностью сами, используя как можно меньше сторонних модулей и фреймворков (это не поможет Вам научиться работать с теми библиотеками, которые востребованы на рынке, но даст внутреннее понимание их работы). Попробуйте ее разогнать, оптимизировать, улучшить. На выходе получится свой небольшой фреймворк и система, вполне пригодная для клепания сайтов-визиток. Самое главное что получится — понимание внутреннего устройства систем, которые делают то же самое, что и Ваша. Пробуйте их сравнить, радуйтесь там, где будет лучше Ваша, и допиливайте ее там, где она будет отставать. Не стесняйтесь изучать чужой код и не задавайте на форумах вопросов про то, «как это работает», пока не будете уверены в том, что сами уже не сможете разобраться.
3.2) альтернативный вариант для «всего понемногу» — строить велосипед не с нуля, вытачивая руками гайки, а из готовых узлов (библиотеки, фреймворки). Этот путь быстрее поднимет Вам цену на рынке и будет более полезен в краткосрочной перспективе, но даст ли он такое же глубокое понимание как в пункте 3.1 — не уверен. Я в свое время шел другим путем :)