{"id":3256,"date":"2020-12-23T12:07:13","date_gmt":"2020-12-23T11:07:13","guid":{"rendered":"https:\/\/www.wbscodingschool.com\/?p=3256"},"modified":"2020-12-23T12:07:13","modified_gmt":"2020-12-23T11:07:13","slug":"when-to-say-i-know-a-programming-language-and-how","status":"publish","type":"post","link":"https:\/\/www.wbscodingschool.com\/blog\/when-to-say-i-know-a-programming-language-and-how\/","title":{"rendered":"When to say \u2018I know a programming language\u2019 \u2013 and how"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\" id=\"when-say-know-programming-language\">An ability to work with a variety of programming languages is practically mandatory for a modern web developer. But when is it appropriate to say things like \u2018<em>I know Java<\/em>\u2019, or \u2018<em>I can do C++<\/em>\u2019?<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">It may surprise you to learn that the answer to that question depends not exclusively, and perhaps not even primarily, on your level of mastery. Rather, it depends on the person you are talking to.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">When someone asks if you know a programming language, what they are doing is trying to extract a specific type of information from you \u2013 a type that is not necessarily and not always about your skills. These are a few quick tips on how to make sure you know what\u2019s being asked of you.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">How to answer the question\u2026<\/h2>\n\n\n\n<h2 class=\"wp-block-heading\">\u2026if you\u2019re in a coding interview<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Rest assured, your future manager is not going to care a jot about how \u2018accurate\u2019 your answer is, much less about the more airy aspects of what it really means to \u2018know\u2019 a coding language. For him\/her, there is only one thing that matters: whether you can deliver results on their project.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">This is not the time to be humble: as long as your code compiles and you can write it in a reasonably timely manner, you <em>know <\/em>that language, and it doesn\u2019t matter how many references you\u2019ve got to Google. If you\u2019re unsure, then bear in mind that the interview will include a coding challenge\/exercise which will reveal your precise level of skill anyway. Just don\u2019t disqualify yourself in advance by subcommunicating that you can\u2019t do something you\u2019re perfectly capable of.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">\u2026if you\u2019re talking to a fellow programmer<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">The opposite of the above applies when you\u2019re dealing with other people in the broader tech community. Most programmers know that you never truly finish learning, and that it\u2019s impossible to know every last feature of a language. Thus, they are likely to be suspicious of unqualified statements like \u2018I know JavaScript\u2019. A handful of not-so-friendly people may even attempt to bait you into saying that just to make sure you aren\u2019t too full of yourself.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">When engaging with the tech community, make it a habit of foregrounding not your knowledge but your <em>level<\/em> of knowledge: \u2018I am very proficient in JavaScript, quite handy with C++, and I can handle the basics of Python\u2019. This will go down much better than \u2018I know JavaScript, C++ and Python\u2019.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">\u2026if you\u2019re teaching or presenting<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">This isn\u2019t a situation you will necessarily find yourself in very often, especially if you\u2019re a junior developer, but it\u2019s the one where the standards are probably the highest. If you\u2019re holding a product presentation with your clients, or if you are filming a coding lesson on YouTube, then \u2018knowing a language\u2019 doesn\u2019t just mean that you can write functional programs in it \u2013 it means <em>that you\u2019re ready to take questions on it<\/em>, including fairly sophisticated ones.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Bear in mind, if you\u2019re teaching or presenting, people asking you questions is exactly what is going to happen. And because your credibility will depend on your ability to answer them, you had better be very well prepared before saying you \u2018know\u2019 this or that language.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">\u2026if you\u2019re talking to a colleague in your own team<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">As with the tech community in general, this is a case where it\u2019s best to veer on the humble side, but this time for different reasons. If you\u2019re new to a job, your colleagues will want to know where you fit in the team, and how you can be useful.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">You don\u2019t want to downplay or hide your value, of course, but at the same time, it will be more helpful to highlight the two languages you know best and let your colleagues know you can be their specialist with them, than to say you know 8 different languages. If you do that, they won\u2019t be sure how to use you, and you may end up being given tasks which aren\u2019t your strongest suit.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">\u2026if you are assessing yourself<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">If you are not interacting with anyone, and are merely trying to figure out what it means to know a programming language and whether you can say that for yourself, then the question becomes almost purely subjective, and the answer will probably say more about you than it will about your programming skills.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">For what it\u2019s worth, though, there are two things you should probably keep in mind. Firstly, as we mentioned, it\u2019s not possible to know everything about a programming language (any more than it is for a natural language), so don\u2019t let that be your standard. Don\u2019t tell yourself that you don\u2019t \u2018know\u2019 something just because you haven\u2019t reached that impossible level.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Secondly, let your own comfort guide you: regardless of what specific skills you may or may not possess, what is probably the most important yardstick is how well you\u2019re able to <em>think<\/em> in a language. The ideal level for any programmer is that in which you can think of a problem and its solution on their own terms, rather than thinking of how to negotiate the language as an additional problem on top of that. While there are different levels for this concept too, it is a useful yardstick: whenever you instinctively, naturally see a programming language as the tool to solve the problem and not as part of the problem itself \u2013 that\u2019s when you can finally, really say you know it.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>A few things you should really understand before answering the question \u2018Do you know a programming language?\u2019<\/p>\n","protected":false},"author":17,"featured_media":3255,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"content-type":"","footnotes":""},"categories":[42],"tags":[],"class_list":["post-3256","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-coding"],"acf":[],"_links":{"self":[{"href":"https:\/\/www.wbscodingschool.com\/de\/wp-json\/wp\/v2\/posts\/3256","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.wbscodingschool.com\/de\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.wbscodingschool.com\/de\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.wbscodingschool.com\/de\/wp-json\/wp\/v2\/users\/17"}],"replies":[{"embeddable":true,"href":"https:\/\/www.wbscodingschool.com\/de\/wp-json\/wp\/v2\/comments?post=3256"}],"version-history":[{"count":1,"href":"https:\/\/www.wbscodingschool.com\/de\/wp-json\/wp\/v2\/posts\/3256\/revisions"}],"predecessor-version":[{"id":62638,"href":"https:\/\/www.wbscodingschool.com\/de\/wp-json\/wp\/v2\/posts\/3256\/revisions\/62638"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.wbscodingschool.com\/de\/wp-json\/wp\/v2\/media\/3255"}],"wp:attachment":[{"href":"https:\/\/www.wbscodingschool.com\/de\/wp-json\/wp\/v2\/media?parent=3256"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.wbscodingschool.com\/de\/wp-json\/wp\/v2\/categories?post=3256"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.wbscodingschool.com\/de\/wp-json\/wp\/v2\/tags?post=3256"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}