Cada vez que quiero aprender un nuevo marco / lenguaje, generalmente preparo un pequeño proyecto que lo usa. Para un marco web, tengo una aplicación web común que escribo con él. Es simple y no hace mucho, pero tiene suficientes características que necesito para aprovechar las partes más comunes del marco (base de datos, trabajos en segundo plano, mvc o lo que sea similar). De hecho, no hace mucho tiempo asumí la tarea de aprender Spring / MVC + Hibernate. No lo sé todo, sin duda, pero me dio suficientes antecedentes que, cuando no sé algo, sé qué preguntas hacer y cómo pedirles que obtengan más información.
Para los frameworks web, generalmente comienzo con el sencillo ejemplo de "hola mundo" proporcionado para la mayoría de los frameworks. Si tiene un ejemplo de "libro de visitas" (es decir, para mostrar el uso de la base de datos), le doy seguimiento. A partir de ahí, empiezo a agregar la funcionalidad que quiero en mi aplicación de aprendizaje, comenzando por la más simple. La idea es que puedo descubrir cómo hacer las preguntas correctas para las cosas simples. Después de hacer algunas cosas simples, puedo ver las cosas más complejas y, con la información que ya he aprendido, espero poder formular las preguntas correctas para hacerlas.
Recientemente comencé a poner el código para tales proyectos de aprendizaje en sourceforge , si estás interesado.
Editar: el comentario de Donal hizo que quisiéramos agregar ... No puse el enlace como un ejemplo para que aprendas. Más bien, solo como un ejemplo de mí poniendo mi código ahí afuera. Si realmente quieres aprender, debes escribir el código tú mismo, no solo leer el de otra persona (en mi opinión, al menos)