[HN Gopher] Python Expertise Level - Self-Assessment ___________________________________________________________________ Python Expertise Level - Self-Assessment Author : saeedesmaili Score : 6 points Date : 2023-10-26 21:44 UTC (1 hours ago) (HTM) web link (safjan.com) (TXT) w3m dump (safjan.com) | Waterluvian wrote: | "Can use advanced Python libraries like numpy, pandas, | matplotlib." | | Interestingly in my 15 years of Python I've used numpy sparingly | for image processing and haven't used the others ever. I | appreciate this isn't meant to be an exhaustive checklist but it | reminds me how two advanced coders could live in two entirely | different drawers of the tool chest. | kstrauser wrote: | Eh. | | Advanced.9: "Can use Python's built-in functions like map(), | filter(), reduce()." | | ...and knows why you should probably used comprehensions instead. | | Experts.4: "Can use Python's C API to extend Python with C/C++ | code." | | I've written Python professionally for 20+ years. I've extended | Python with C for funsies, but have never, not once, needed to do | it at work. I'm glad other people have used C (and now Rust) to | speed up the Python modules I want to use. I'm equally glad I've | been able to use those modules, not have to enhance them with C. | | Experts.7: "Understands and uses Python's garbage collection | system." | | 99% of what you need to know is "don't write circular | references". | | Experts.10: "Have a good understanding of Python's internals, | such as bytecode, the Python interpreter's execution model, and | how Python's data types are implemented at the C level." | | See Experts.4. I've had a nice career writing code _in_ Python, | but haven 't had to hack on the CPython codebase. I bet there are | lots of people who are experts in C who've never written a line | in the GCC or Clang codebases. | drbig wrote: | Cool and overall sane, so lemme just pitch in from my perch on | the critical side: | | *Advanced* | | > Can use advanced Python libraries like numpy, pandas, | matplotlib. | | You're a data scientist and this is not "Python". | | > Can use regular expressions for pattern matching in strings. | | Not Python really again. | | > Understands and uses Python's memory management and | optimization techniques. | | Wait, like thinking about how a `list()` looks like from the | (false) C-level perspective? Can you fix my CPU transistors while | you're at it? (yes, /s) | | *Experts* | | > Can use Python's C API to extend Python with C/C++ code. | | Do you mean whatever FFI Python has? Otherwise this is like | asking your mechanic to also make it a plane, and a submarine. | After all these are all just vehicles. | | > Understands and uses Python's garbage collection system. | | Ref counting? Wait what? | | > Have a good understanding of Python's internals, such as | bytecode, the Python interpreter's execution model, and how | Python's data types are implemented at the C level. | | Submarine :D | | My perch also lets me see here the aspects I usually don't care | about. Thank you! ___________________________________________________________________ (page generated 2023-10-26 23:00 UTC)