I have experience with Shell scripting, PHP and Perl, but no experience with Python or x86 Assembly which I've read are both useful items to brush up on.
I've started to work on Grey Hat Python and realized that this is focused on the now depreciated Python 2 as opposed to the new standard of Python 3. I've had read the same is true for Violent Python. Needless to say I would rather not waste time learning a language that will not serve me well in the field and I'd like to focus on what's practical.
While Grey Hat Python was written in 2009 (before Python 2 was officially depreciated from what I gather), Violent Python is from 2012 and still uses 2. It seems counter productive to me to focus efforts on a legacy language, however I have not found any resources directed at penetration testing in Python 3.
My question is should I focus on Python 2 or is there a viable reason / resources for me to focus on 3? I have read that the external library support for 3 is limited and porting from 2 to 3 can be an onerous task.