3 ms·
A great example would be to explain differences between bind, call, and apply in JS. Especially when talking about the difference between call and apply you mi
by perpetualcrayon 9y ago
A great example would be to explain differences between bind, call, and apply in JS. Especially when talking about the difference between call and apply you might want to be familiar with the function signatures of each. Object.create. requestAnimationFrame. Promises. Knowing ES6 syntax vs traditional prototypal inheritance in JS.
Can't be said enough, you absolutely must understand scope in JS without the need to reference docs.
Another example, I once had to do a coding challenge in front of a camera recording my coding session where having intimate familiarity with sort, filter, map, etc was useful.
That's not the only language I've dealt with in interviews, but statistically probably the language you could associate w/ most readily.
Finally I'll mention that it's no joke these days when you're interviewing as a developer w/ experience in one of the modern JS frameworks. Especially in places like SF and NY. If you don't have experience in at least one you should start now. If you have "experience" but have never felt the need to dig a little deeper now would be a great time to do so.
- dennis_jeeves 9y ago>If you have "experience" but have never felt the need to dig a little deeper now would be a great time to do so. Talk about getting priorities wrong! How deep does one dig in? How long? Is it time well spent? With software it can be a rabbit hole and it is prudent only to dig deep enough to get the work done reasonably well. One can certainly debate how 'resonable' one should be, but that's besides the point. Now if I were to dig in 'deep' into the chemical contaminants of the water or food that I drink - that in my opinion is time well spent, and takes enormous priority over digging up the innards of JS( one could go right up to the level of what's happening at the CPU level when a line of code executes.). JS - my foot! Sorry to take a dig at you, but if indeed your priorities are digging deep into the things that matter - like the water you drink then I will take back my words and apologize.
- klibertp 9y ago> That's not the only language I've dealt with in interviews, but statistically probably the language you could associate w/ most readily. I have been programming for two decades now and personally, I'm a PL nerd and a fan of polyglot programming, with more than a hundred languages surveyed, a few tens of languages known, and a dozen or so languages used in production. I have a blog (see my profile) on the topic and everything... In other words, you don't need to hold back if you have some more interesting examples just because they're in a "not in the first five on TIOBE" language :-) > explain differences between bind, call, and apply in JS You weren't joking saying the questions were about fundamentals. This is an incredibly basic knowledge to be asking about. I last touched JS probably more than 4 years ago, yet I have no trouble explaining this. How could any active JS developer not know this? Or are we talking about very junior positions? > you might want to be familiar with the function signatures Why should I bother? I know that one of the functions takes a list of values as a single argument and the other takes any number of arguments, just like they do in many other languages which have them both (for example Erlang has apply, but it doesn't have call, because it doesn't support variable arity functions). Let's assume for a moment that I don't remember which is which, and also don't remember the order of other args (obj first and arglist second or the opposite), and also don't remember if they are methods or standalone functions. I can check all of these in 10 s on the web, but my editor displays a function signature while typing, so, in practice, it makes no difference if I remember this or not. In other words: why should I spam my memory with useless trivia? There are more interesting things to remember! > Knowing ES6 syntax vs traditional prototypal inheritance in JS. Again, the prototype inheritance is a fundamental property of JS. I have a side-project in Io lang and I know Lua quite well, not to mention I debugged more than enough CoffeeScript back when source maps weren't universally supported, so I believe I have a good grasp of prototypal inheritance. The exact class declaration syntax, on the other hand, is just a tiny bit of info that I can check in 30 seconds. > If you have "experience" but have never felt the need to dig a little deeper Then you should change the occupation to something else than programming. If you don't have the curiosity to dig deeper, you most probably don't have a desire to learn and improve, which, in the industry where you need to run as fast as you can just to remain where you are, makes you a liability for any team you'd join.
- perpetualcrayon 9y agoI'm really not trying to make this about me. Just trying to help with some tips for someone who self-describes as being a "mediocre" programmer.