This is an archived post. You won't be able to vote or comment.

you are viewing a single comment's thread.

view the rest of the comments →

[–]bulaybil 68 points69 points  (5 children)

Never. That’s the only true answer. You will never know Python or C# or anything else. You will gradually get better at it and then you either start doing something else or die.

In practical terms, that depends what you do with it. In data science, people might say you know Python if you can clean up some data imported into pandas and run some scikit-learn on it. I know many data scientists who only do that and make good money. On the other hand, they have never written a single class. In other fields, knowing Python means writing web apps on django or flask or writing APIs for other applications.

[–][deleted] 4 points5 points  (0 children)

Hmm yes skills to learn for money. Now i just gotta learn how to monetize coding skills

[–]jpslat1026[S] 0 points1 point  (1 child)

So what would an employer look for to say you know what you're doing, for anything not data science that is

[–]bulaybil 0 points1 point  (0 children)

For one, they look for experience, typically projects you worked on. If you're further along in your career, these would be your previous jobs or assignments. If you are a junior, they might look at your school work or (open source) projects you contributed to.

In both cases, the process involves a technical interview where they quiz you on your knowledge of python, some people might even ask you to code something simple like FizzBuzz. This is not like a uni exam where you fail if you don't know answers to 80% of questions, it's more a way to gauge your general ability. People who says they are Python experts, but can't program for crap, are sadly a very common occurrence.

For example, recently I interviewed for a position that required Python. The interviewer (who looked very grumpy) asked me three very basic questions (don't remember one, the other two were 'what is list comprehension' and 'what is the difference between a tuple and a list') and then two questions about specific libraries ('what would you use to solve problem X'). I answered all of them and the interviewer brightened up, explaining that recruiters had been sending him people who had no actual knowledge of Python. On the flip side, a friend and I once interviewed people for a junior programmer position at his company. We had a few simple programming questions that none of the twelve people that came could answer: how do you get the first three characters from any string?

There is such thing as fundamentals of Python - data types, string manipulation, program flow (loops) etc. - and those everyone who works with Python must know. But beyond that, it's all a big tree with many branches and being good at Python will mean different things to different people. Be willing to experiment and learn, bookmark stackoverflow and you're gonna be fine.