HackerTubewatch
Surprise me
Frame from Cheng Lou - On the Spectrum of Abstraction at react-europe 2016 Plays via YouTube's privacy-enhanced embed

Cheng Lou - On the Spectrum of Abstraction at react-europe 2016

ReactEurope
Talks
YouTube
5 HN users recommended this talk5 months2016–2022 score 5.5
Years with an HN recommendation, 2007–2026

HN points to it as thought-provoking material on the tradeoffs and costs of abstraction, especially in frontend tooling debates.

Cheng Lou's react-europe 2016 talk lays out a mental framework for thinking about abstraction levels in JavaScript tooling, from Angular and Grunt to Webpack and React. It uses that framework to reason about the cost of abstractions and how to choose between competing solutions.

“This talk is incredible food for thought” (HN, 2017)

1 strong recommendations · 4 recommendations · 1 citations · Talks · intermediate

6 Hacker News comments

From the HN archive; up to 20 kept per video, favoring different commenters. Recommendations first.

@K0SM0S Mar 2017 Strongly recommends
on HN thread Next.js 2.0
This talk is incredible food for thought: On the spectrum of abstraction by Cheng Lou (react-europe 2016) [1] If you've read some of the classics, such as Structure and Interpretation of Computer Programs (1979, Gerald Jay Sussman and Hal Abelson) [2], this talk is a really interesting look at the state of affairs on abstraction circa 2016. [1]: [this video] [2]: [link]
Thought-provoking look at abstraction state of affairs circa 2016.
@rk06 Apr 2018 Recommends
on HN thread Ask HN: What is your favourite tech talk?
The spectrum of abstraction: [this video] This is an high level talk. it guides on how to choose between competing solutions to a problem when the commonly accepted answer is "it depends"
Guides choosing between competing solutions when the answer is it depends.
@namelosw May 2019 Recommends
on HN thread Virtual DOM is pure overhead (2018)
Read more
React is more like 'Lambda the Ultimate Web Component'. A component is almost a function returns element. Expanding a component is like calling a function and give it the property. So you can have some abstract common behavior in HOC f and g, then you can have HOC `h = compose(f(g))`. A quick comparison with Angular: @Component({template, style}) seems composable if we stretch a lot. But why make template and style in the decorator... They are not something we consider most abstract at all. The function is the simplest yet composable abstraction over the template, Cheng Lou also has a really excellent talk on the topic: [this video]
Excellent talk on function composition as abstraction.
@hnbad Oct 2022 Recommends
on HN thread Moving from React to htmx
Read more
I know, this isn't a novel concept. There was a good talk about the spectrum of abstractions and the tradeoffs of template languages vs React's approach at React Europe a couple of years ago (in fact, he goes into that this means there are some optimizations that are simply unavailable to React): [this video] The question isn't whether DSLs or "just JS" are more powerful, the question is which tradeoffs they represent and which tradeoffs you prefer. It seems that HTMX is primarily based in the Python ecosystem and as a former Pythonista I see the advantage of having a DSL over having to write JS, especially that the former is much narrower, which is what you want in this situation.
Tradeoffs of template languages versus React's approach.

Citations, criticism and jokes

@YuukiRey Jul 2018 Cites it
on HN thread Webpack 4 course: What is Webpack?
Interesting that you should mention it. This talk [this video] mentions some arguments why a DSL would not be a good approach for frontend/JS build tools. Namely that a DSL isn't adequate if the underlying best practices or requirements change a lot. That's why operating at a higher level of abstraction (function chaining/piping/composition) would make more sense. Now... that doesn't really favor Webpack. And I still don't quite understand why that tool is so popular.
Argues DSLs are inadequate when requirements change; higher-level abstraction preferable.

Video list and Hacker News comment labels from HackerTube (prompted by @karpathy), released under ODC-By 1.0, built on the open-index/hacker-news archive. Hacker News data is provided by Y Combinator; comments remain the work of their authors. Video titles, channel names and thumbnails belong to their creators and are shown via YouTube. HackerTube Watch is an unofficial edition. Data export of 2026-10-31.

Keyboard shortcuts

/
Search
j k
Next / previous video
r
Surprise me
l
Like (video page)
w
Watch later (video page)
?
This help
Esc
Close