There are levels of "knowing" a language. I've been writing Java since I was 14 (for 11 years now). I write Java on a daily basis for work, and I can't remember the last time I had to consult a reference on syntax. I would consider that "fluent", to use an analog from spoken/written languages, and I'd obviously put any languages in which I'm "fluent" on my resume. I've written a lot of Python in my personal time over…
Ask HN: At what proficiency do you consider 'knowing' a language?
11–19 of 19 posts
Re: Ask HN: At what proficiency do you consider 'knowing' a language?
#12I think it is a good indicator of how comfortable you are in your chosen language.
Re: Ask HN: At what proficiency do you consider 'knowing' a language?
#13There are levels of "knowing" a language. I've been writing Java since I was 14 (for 11 years now). I write Java on a daily basis for work, and I can't remember the last time I had to consult a reference on syntax. I would consider that "fluent", to use an analog from spoken/written languages, and I'd obviously put any languages in which I'm "fluent" on my resume. I've written a lot of Python in my personal time over…
Whoa, hold on, since when is 'is' preferred over '=='? What kind of python are you writing over there? Those are for totally different purposes. One tests equality while the other tests identity.
Re: Ask HN: At what proficiency do you consider 'knowing' a language?
#14I feel that that is a downfall of being a polyglot. I have no qualms about keeping documentation at the ready. Especially for myself, as I regularly switch between javascript(5 and 6, and various frameworks),xml,html,python,bash,c in my day to day. I feel its much more important to have general knowledge/skills than specific details. The fact that I have to look it up to know if I need to use .toUpperCase() on a string, or just .toUpper(), or if it is an instance method, or a global function, should be of no consequence. If I am regularly having to look up how to USE 'if' statements (as opposed to just syntax: [does this language use && or 'and]) that should be concerning. I think a better test would be "Here's a method from our codebase, but I broke it. How do I fix it" Just be sure to break the logic of the code, instead of the syntax. I may or may not find the syntax error, but I damn better be able to identify a non terminating while loop.
Re: Ask HN: At what proficiency do you consider 'knowing' a language?
#15I put a section on my resume under education with relevant coursework. I noted there that I had taken a database course as part of my CS cousework and put "Databases (primarily MySQL with interfaces in PHP and JS)," as about 90% of the project-related courework involved using MySQL databases with web-based interfaces.
In the inital phone interview, I had a nice chat and talked about some of my former projects, familiarity with other languages, where I made it known I was fairly comfortable in JavaScript and Python and some other language, and most of my professional/educational experience was in .NET and Java. He asked about the databases course and I explained what the curriculum went over and the final project. I explained all I had used PHP for was a few database calls and that I wasn't very experienced with it.
Then, at the first technical interview, it was entirely in PHP. The interviewer mentioned it at the start, and I explained my level of familiarity (very little). It was asking about how specific data types behave in PHP, global variables, differences in PHP 4 and 5, and was entirely about PHP. I did my best, assuming wrongly about things like global variables, and so on. I never got a call back.
I removed PHP and have since only listed the technologies in any way that I am ready to interview in.
Re: Ask HN: At what proficiency do you consider 'knowing' a language?
#16Earlier quoted context omitted.
I've been doing iOS development for 2 years. As an employee around 9 months, freelancing over a year and so on. If someone asked me what is some pros and cons about Objective-C I really don't know what to answer. I am not really fuzzed about language details, if someone gives me python - I will use it, perl - sure, bash? why not, c++ - sounds like fun and so on. I just don't care, if the language can solve the proble…
I assume (perhaps wrongly) that the interviewer is less interested in your opinions of the language and more interested in your ability to talk competently about the language for a few minutes.
Re: Ask HN: At what proficiency do you consider 'knowing' a language?
#17Earlier quoted context omitted.
Of course, the OP probably isn't sure how to differentiate between even those categories, because he feels he could use any of them at his general level of programming expertise as long as he had a syntax reference.
Yes, I think the reason I didn't include skill levels was because at some point I saw a post talking about the uselessness that comes with some of that. It may have been a bit extreme but what does PHP [Ninja] or Ruby [Tadpole] really indicate? Although [Beginner] is pretty different from [Expert] no matter what, the expectation of a beginner or expert may vary widely from person to person.
Although the difference between levels may vary from person to person - your projects section should also reflect your listed skills.
Re: Ask HN: At what proficiency do you consider 'knowing' a language?
#18Then, for each job, list the languages used in the order of how much you use them (or know them).
For example: If I see Ruby on your list, but it's after Java and C++, and then I look down the list of jobs and see that your current job is in Java, and the one from 3 years ago was in ruby -- I know what to expect.
If you still want a job with ruby (and the above matches your situation), then bring it up in the cover-letter -- explain why you would be a good choice (and probably you should practice ruby before any interview)
I've see people do "Proficient in" and "Familiar with" lists -- but really -- all I want to know is: will you be productive on day one with this technology, or do you need a refresher (and then I can decide based on my needs)
Re: Ask HN: At what proficiency do you consider 'knowing' a language?
#19Earlier quoted context omitted.
Whoa, hold on, since when is 'is' preferred over '=='? What kind of python are you writing over there? Those are for totally different purposes. One tests equality while the other tests identity.
For example, 'if x == None' versus 'if x is None'. The latter is to be preferred (since identity is faster and more clear than comparison), but you see the former sometimes.