Article development led by
Conditional dependency resolution.
BY ALEX LIU
has become the de facto official language of the Web.
to the number of runtime environments in the wild.
Nearly every consumer hardware device on the market
today supports the language in some way. While this
is done most commonly through the
integration of a Web browser application, many devices now also support Web views natively as part of the
operating system user interface (UI).
Across most platforms (phones, tablets, TVs, game consoles), the Netflix
Despite its humble beginnings as
a language intended to be Java’s “silly
became a key component in enabling
the Web 2.0 evolution. Via the intro-
duction of Ajax, this evolution added
an element of dynamism to the Web,
creating the concept of a living and so-
cial Web that is now taken for granted.
Today the language’s influence contin-
ues to grow as it makes its way into the
server landscape via Node.js. For all of
has more than successfully achieved
the “write once, run anywhere” motto
that Sun Microsystems often used to
tout as one of the benefits of Java.
With increasingly more application logic being shifted to the browser,
developers have begun to push the
originally intended for. Entire desktop
office suite is one example. Such large
applications require creative solutions
to manage the complexity of loading
dependencies. The problem can be
compounded when introducing multivariate A/B testing, a concept that is
at the core of the Netflix DNA. Multivariate testing introduces a number
handle using native constructs, one of
which is the focus of this article: managing conditional dependencies. Despite this, engineering ingenuity has
enabled Netflix to build highly com-
and the Netflix