С задачами, но почти без теории - checkio. Зато там система рейтингования решений: решив задачу, получаешь доступ к чужим решениям, отсортированым по рейтингу, и набираешься опыта.
Лучше всего делать это в первой половине дня - когда голова лучше варит.
Садишься, читаешь и все замеченые ошибки/глупости аккуратно заносишь в общую тетрадь на 96 листов.
Когда она будет полностью заполнена - считай, ты постиг программирование.
Если вы хоть немного не научитесь программировать, словосочетание "архитектура ПО" в ваших устах время от времени будет вызывать (в лучшем случае) гомерический хохот.
Выбор невелик: либо избегать трепаться на эти темы, либо учиться. А учиться не начинают с архитектуры.
Natural Language Processing with Python - Steven Bird 2009
Python 2.6 Text Processing Jeff McNeil 2010
Python Text Processing with NLTK 2.0 Cookbook Jacob Perkins 2010
Perkins J - Python 3 Text Processing with NLTK 3 Cookbook - 2014
Deepti Chopra, Nisheeth Joshi, Iti Mathur - Mastering Natural Language Processing with Python - 2016
Hardeniya N et al - Natural Language Processing Python and NLTK - 2016
Sarkar D - Text Analytics with Python - 2016
Ryan Mitchell - Web Scraping with Python Collecting Data from the Modern Web - 2015