[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)