[Tutor] Intermediate/advanced concepts

Eric Abrahamsen eric at ericabrahamsen.net
Fri Nov 7 11:12:29 CET 2008


On Nov 7, 2008, at 12:14 PM, btkuhn at email.unc.edu wrote:

> Hi everyone,
>
> I've been teaching myself python for a few months and I'm becoming  
> frustrated because I've kind of hit a wall in terms of learning new  
> information. In an effort to continue to learn I've found some  
> material on more intermediate/advanced topics like linked lists,  
> nodes, trees, etc. However, it's kind of like reading a math  
> textbook - the tutorials do a decent job of explaining the material  
> but it's all kind of theoretical, and I'm not sure how I'd apply  
> these concepts in real world applications, or incorporate them into  
> my code. Does anyone have any suggestions for learning about real  
> world application of more advanced concepts?

Are you writing real-world applications and using them? My (admittedly  
limited) experience has taught me that the real complexities of  
programming don't lie in obscure data structures or rarely-used  
functions, but in the practical, real-world issues that arise from  
creating actual applications: OOP best practices, application  
architecture, programming paradigms, recurring patterns, even just  
plain-old programming gotchas (though there are fewer of these in  
Python than other languages, thankfully). In other words, stuff that  
isn't necessarily described in the manuals, but that becomes evident  
once you've made the same mistakes two or three times, and start  
thinking about modifying your approach to programming. I've never used  
a tree, and a heap only once, but I feel like I've dipped into some  
pretty mind-bending stuff in terms of how I've arranged programs. Take  
metaclasses, for instance: no description of metaclasses I've read  
ever made sense to me; it only started to come clear after I'd looked  
at a module I was writing, realized that there was something really  
fundamentally wrong with it, and then slowly realized that the answer  
was metaclasses. About eleven lines of metaclass programming, as it  
turned out, but those seven lines turned my brain inside out for a  
bit. Not boring in the least!

Yrs,
Eric


> Also, are there other concepts that I should focus on? Frankly, I'm  
> a bit bored because I've hit this ceiling, and I'm not really sure  
> where to go to next.
>
> Thanks,
> Ben
> _______________________________________________
> Tutor maillist  -  Tutor at python.org
> http://mail.python.org/mailman/listinfo/tutor



More information about the Tutor mailing list