On Tue, Feb 2, 2016 at 6:24 AM, Juliano <julianofisc...@gmail.com> wrote:
> Hello, everybody! > > Taking advantage of the semantic redundancy =) > > It is common for Python programmers try to adapt Python to patterns > learned in other languages. This can prevent them from learning powerful > features available in the Python language. > > There is a very good book, called Fluent Python, written by Brazilian > Luciano Ramalho, which addresses these issues. > > Yes, totally a good book, I've been studying it quite a bit! I second your opinion. I used a tilde ~ to mean something like "not fluent" or "the opposite of fluent" but that was maybe too cryptic. What comes up for code school / night school teachers like me is who to package Python-the-language into learnable chunks. I'm thinking of going with a martial arts schema where one has "belts" of different color: http://www.wmacenter.com/index.cfm?page=17 So what would that look like? I'm thinking maybe something like: White Belt: using Python as a calculator. Naming objects for later use. print("Hello World") Yellow Belt: installing Python, using an IDE. str, int, if / elif / else; loops Some understanding of big picture use of __ribs__ (special names) Writing functions, a reading knowledge of classes. Some file i/o. Orange: generator functions and expressions, itertools and iter( ) Designing / writing classes. Overloading such as __getitem__ or __setattr__ Full understanding of __call__ API i.e. **dict and *sequence parameters. Green: decorators, context managers, descriptors, properties, class and static methods using decorator syntax, better understanding of MRO (method resolution order). [ skipping Blue and Purple but adding more from collections module and other standard library goodies ] Brown: numpy, pandas, web frameworks, more awareness of 3rd party world, metaclasses Black: event loops, threading, multi-processing, concurrency, extending Python in other languages (e.g. C) Note that "Black" does not connote high level mastery so much as a complete understanding with experience. I.E. black belt = what's in Fluent Python (the book). To quote that martial arts site above: Another common misbelief that needs to be clarified is the "black belt as master" stereotype,. In reality, a black belt indicates the wearer is competent in a style's basic technique.... and them come several levels of "Black". Kirby > > Juliano Fischer Naves > Informatics Professor - IFRO > D.Sc. Student - IC/UFF/Brazil > <https://mail.python.org/mailman/listinfo/edu-sig>
_______________________________________________ Edu-sig mailing list Edu-sig@python.org https://mail.python.org/mailman/listinfo/edu-sig