Programming. Javascript Supports Oop With Prototypal Inheritance. Good To Hear
Programming. Javascript Supports Oop With Prototypal Inheritance. Good To Hear
really matters:
Good to hear:
Red flags:
Learn More:
Good to hear:
Avoid side-effects.
Red flags:
Learn More:
Composing Software.
Good to hear:
Red Flags:
FP has a much steeper learning curve than OOP because the broad
popularity of OOP has allowed the language and learning
materials of OOP to become more conversational, whereas the
language of FP tends to be much more academic and formal. FP
concepts are frequently written about using idioms and notations
from lambda calculus, algebras, and category theory, all of which
requires a prior knowledge foundation in those domains to be
understood.
Good to hear:
Red flags:
Learn More:
Good to hear:
Learn More:
Concatenative (i.e. mixins, `Object.assign()`).
Good to hear:
Red flags:
Learn More:
Good to hear:
Red Flags:
Fail to mention any of the problems above.
Learn More:
8. What are two-way data binding and one-way data flow, and
how are they different?
Two way data binding means that UI fields are bound to model
data dynamically such that when a UI field changes, the model
data changes with it and vice-versa.
One way data flow means that the model is the single source of
truth. Changes in the UI trigger messages that signal user intent to
the model (or “store” in React). Only the model has the access to
change the app’s state. The effect is that data always flows in a
single direction, which makes it easier to understand.
Good to hear:
React is the new canonical example of one-way data
flow, so mentions of React are a good signal. Cycle.js is
another popular implementation of uni-directional data
flow.
Red flags:
Learn more:
Good to hear:
Positive attitudes toward microservices, despite the
higher initial cost vs monolthic apps. Aware that
microservices tend to perform and scale better in the
long run.
Red flags:
Good to hear:
Red flags:
Conclusion
Stick to high-level topics. If they can answer these questions, that
typically means that they have enough programming experience to
pick up language quirks & syntax in a few weeks, even if they don’t
have a lot of JavaScript experience.
Don’t disqualify candidates based on stuff that’s easy to learn
(including classic CS-101 algorithms, or any type of puzzle
problem).
What you really need to know is, “does this candidate understand
how to put an application together?”