Skip to main content

The End of Streamlit & After Effects: will GenAI destroy my tools? [Commented Opus 4.7 essay]

This note was generated as a summary of multiple Opus 4.6/4.7 conversations spanning dozens of prompts around revolution theory, Streamlit and After Effects. It is not 100% result of my thinking, and there are small parts I wouldn't agree as much as the piece does, which I will comment in those callouts. Those GenAI notes do serve as inspiration for future Youtube scripts.

Table of Contents


Every technology revolution arrives with the same rhetoric. Existing tools are dead. Old skills are obsolete. The new paradigm replaces everything. We've heard this from steam evangelists in the 1830s, electricity boosters in the 1890s, computing prophets in the 1970s, web evangelists in the 1990s, mobile-first preachers in the 2010s, and now agentic AI advocates in the 2020s. The remarkable thing is that the rhetoric is almost always wrong in its specifics, almost always right in its broad sweep, and almost always misleading about what individual practitioners should actually do.

The problem is that "should I worry about my career?" is a different question from "is this a real revolution?" The first question requires a finer-grained analysis than the macro narratives provide. A revolution can be entirely real and still leave your specific skill stack untouched, or it can be modest in macroeconomic terms and completely demolish your professional category. Whether you survive depends on which layer of the ecosystem you're standing on, not on whether the revolution is "real."

This piece draws on the major frameworks economists and historians have developed to understand technology revolutions, applies them to two specific ecosystems currently feeling the GenAI pressure — the Python data stack (with Streamlit as the canonical application layer) and Adobe After Effects — and then offers concrete advice for practitioners in each. The goal is not to predict the future, which none of these frameworks does well, but to give you better mental models for thinking about your own position than the "everything is dead" or "nothing will change" defaults most discourse offers.

A note on what these frameworks are and aren't. Each was developed from historical cases and works best when the new revolution rhymes with past ones. They're useful lenses, but each has been contested in its field. The argument that GenAI is genuinely different — because it automates cognition rather than physical labor, or because the technology can accelerate its own development — is not unreasonable, and it's a reason to hold these frameworks loosely. Treat what follows as analytical scaffolding, not prophecy.

Section 1: The Revolution Theories and What They Say About GenAI

Six frameworks earn their keep when applied to information technology revolutions. Each illuminates a different facet of what's happening, and stacking them produces a coherent picture of where GenAI sits today.

Carlota Perez — Installation & Deployment

Tech revolutions follow a 50-60 year arc with an installation period (financial speculation, bubble) and a deployment period (productive integration), separated by a crash.

Clayton Christensen — Disruptive Innovation

Incumbents lose to "worse-but-good-enough" entrants that take root in low-end niches the incumbent ignores, then improve until they overtake the mainstream.

Brian Arthur — Increasing Returns

In knowledge and network markets, early leads compound through learning, network effects, and lock-in — the "best" technology doesn't always win.

General Purpose Technology Theory

GPTs (steam, electricity, computing) deliver disappointing productivity for 20-30 years while the economy reorganizes around them — the J-curve before the payoff.

Rogers & Moore — Diffusion & the Chasm

Adoption follows an S-curve from innovators to laggards, with a wide "chasm" between early adopters and the early majority where many technologies die.

Cohen & Levinthal — Absorptive Capacity

A firm's ability to benefit from new tech depends on its existing knowledge base — GenAI is likely to widen the gap between firms that can absorb it and those that can't.

Probably worth reading the 6 books. Another Opus conversation retrieved 5 additional books from different lenses I didn't integrate in this essay:
  • The Craftsman (Sennett) — philosophical
  • The Glass Cage (Carr) — historical-automation
  • Blood in the Machine (Merchant) — political-economic framing with explicit AI-Luddite parallels
  • Co-Intelligence (Mollick) — the pragmatic working framework
  • The Uncanny Muse (Hajdu) — creative-industries-specific history

Carlota Perez and the installation/deployment arc

Perez, a Venezuelan economist, developed her framework most fully in Technological Revolutions and Financial Capital (2002). Her core claim is that the last 250 years of capitalism contain five distinct technological revolutions — the Industrial Revolution (1771), steam and railways (1829), steel and heavy engineering (1875), oil and mass production (1908), and information and telecommunications (1971) — each following the same 50-60 year arc.

Each revolution unfolds in two great periods, separated by what she calls a "turning point," usually a financial crash. The installation period is when financial capital goes wild. Speculation runs ahead of real productive use. Old industries are declared dead. A bubble forms — railway mania in the 1840s, the dotcom bubble in the late 1990s. The bubble eventually bursts, which Perez thinks is structurally necessary because it forces capital to stop chasing speculation and start funding actual productive deployment. The deployment period that follows is where the technology gets absorbed into the broader economy, integrates with existing institutions, and produces a "golden age" of widespread productivity gains.

Perez emphasizes that revolutions don't just involve new technology. They involve a new "techno-economic paradigm" — a new common sense about how to organize production, what's cheap and what's expensive, what best practice looks like. She also argues that institutions typically lag the technology by decades, and that deployment requires institutional catch-up to actually happen.

Applied to GenAI, Perez's framework places us late in the installation period. The capital flood, the "everything is dead" rhetoric, and the speculation-outrunning-deployment pattern all fit. She'd predict a financial correction before deployment begins in earnest — and she's actually said this explicitly, drawing the parallel to the dotcom crash of 2000-2002, which she sees as the turning point of the broader ICT revolution. Whether AI is the deployment phase of that longer revolution or the beginning of a sixth revolution is a live debate she herself hasn't resolved.

Clayton Christensen and disruptive innovation

Christensen laid out his framework in The Innovator's Dilemma (1997). The central puzzle: why do well-managed, successful incumbents repeatedly lose to smaller entrants, even when the incumbents see the threat coming?

His answer distinguishes sustaining innovations, which improve products along the dimensions existing customers already care about, from disruptive innovations, which introduce a product that is worse on the dimensions mainstream customers care about but better on some new dimension — usually cheaper, simpler, or more accessible. Because it's worse on the mainstream metrics, incumbents rationally ignore it. Their best customers don't want it; the margins are lower. The disruptor takes root in a low-end or new-market niche the incumbent is happy to cede, then improves over time, eventually becoming good enough on the mainstream dimensions while retaining its advantages on the new one. By the time the incumbent notices, the disruptor has the ecosystem, the cost structure, and the momentum.

The framework's sharpest insight is that incumbents fail because they're well-managed. Listening to your best customers, protecting your margins, and investing in your strongest products are all rational behaviors that systematically blind you to disruption from below.

The framework has been criticized — Jill Lepore's 2014 New Yorker essay argued the historical case studies don't hold up, and "disruption" has become so loose it's lost analytical content. The rigorous version is narrower than the pop-business version: it's specifically about low-end or new-market entrants with a different performance profile, not just any new competitor.

For GenAI, the relevant question is which existing tools are vulnerable to a worse-but-good-enough AI substitute that improves over time. The answer differs sharply by domain, which is why the Python and After Effects cases below diverge.

Brian Arthur and increasing returns to adoption

Arthur, an economist associated with the Santa Fe Institute, developed this idea through the 1980s and a 1994 book, Increasing Returns and Path Dependence in the Economy. The argument challenges classical economics' assumption of diminishing returns and convergence to optimal outcomes.

Arthur argued that knowledge-intensive and network-based technologies work the opposite way. They exhibit increasing returns: the more a technology is adopted, the more valuable it becomes, and the more likely the next adopter is to choose it. Several mechanisms produce this — learning effects, network effects, adaptive expectations, and complementary investments. The consequence is that markets with increasing returns don't converge to the "best" technology. They converge to whichever technology got an early lead, often for contingent historical reasons. This is path dependence.

The framework has two important implications. First, in increasing-returns markets, early leads become self-reinforcing, and "better" products can lose permanently. Second, which technology wins is partly unpredictable — small early events get amplified into large outcomes.

For GenAI, increasing returns explain why Python's dominance in machine learning and data science is self-reinforcing in ways that resist disruption: more researchers publish Python → more training data for LLMs in Python → LLMs generate Python more fluently → more researchers stay on Python. The same logic explains why JavaScript dominates web development and why neither ecosystem easily absorbs the other.

General Purpose Technology theory

GPT theory, from economists Timothy Bresnahan and Manuel Trajtenberg (1995) and developed further by Lipsey, Carlaw, and Bekar, identifies technologies that spread across most sectors, improve over time, and enable complementary innovation. Steam, electricity, and computing are the canonical examples.

The key insight is the productivity paradox: GPTs typically show disappointing productivity gains for 20-30 years after introduction because the economy has to reorganize around them. Factories didn't get productivity gains from electricity until they were redesigned around distributed motors, roughly 1890s-1920s. Computing showed the same lag — Robert Solow's 1987 quip that "you can see the computer age everywhere except in the productivity statistics" was resolved only in the late 1990s.

Erik Brynjolfsson has argued we're in the same J-curve with AI now. The macroeconomic productivity gains look small because we're still in the reorganization phase. The framework predicts disappointment in the next several years even if the underlying technology is genuinely transformative. The boring outcome — modest measured productivity gains while the economy slowly restructures — is what GPT theory expects.

Diffusion of innovations and the chasm

Everett Rogers' 1962 framework describes adoption as an S-curve through innovators (2.5%), early adopters (13.5%), early majority (34%), late majority (34%), and laggards (16%). Rogers identified five attributes that predict adoption speed: relative advantage, compatibility with existing practices, complexity, trialability, and observability.

Geoffrey Moore's Crossing the Chasm (1991) is the tech-industry adaptation: the gap between early adopters and early majority is wider than Rogers suggested, and many technologies die in that chasm.

Applied to GenAI, this explains differential adoption. Developers adopted fast — high trialability, high observability, clear relative advantage. Legal and medical practice are adopting slowly — low compatibility with existing workflows, high complexity of integration, poor observability of quality. The question for GenAI is whether it crosses the chasm into the early majority for most knowledge work, or whether it remains a power-user tool. The current evidence is mixed.

Absorptive capacity and platform economics

Two further frameworks fill out the picture. Wesley Cohen and Daniel Levinthal's 1990 work on absorptive capacity argues that a firm's ability to benefit from a new technology depends on its existing knowledge base and organizational capacity to integrate novelty. This explains the distribution of GenAI benefits remarkably well: firms with strong data infrastructure, ML teams, and iteration cultures are pulling ahead; firms without them are buying GenAI tools and seeing little impact. The framework predicts that GenAI will increase inequality between firms in the short term.

Platform economics — from Jean Tirole, Jean-Charles Rochet, and others — matters because modern IT shifts tend to produce platform winners rather than product winners. The smartphone revolution didn't just produce better phones; it produced iOS and Android as two-sided markets that captured most of the value. For GenAI, the live question is where the platform layer crystallizes. Foundation models? Application layer? Orchestration? Agent layer? In mobile, it took 3-4 years for the duopoly to settle. GenAI is roughly at the equivalent of 2009.1

Where GenAI sits when you stack the frameworks

Putting these together produces a reasonably coherent picture. Perez says we're late in the installation period and a correction is structurally likely. GPT theory says expect a productivity J-curve, with macroeconomic disappointment for years even if the technology is real. The hype cycle and diffusion models say we're past the peak of inflated expectations and heading into a trough where many current startups die and survivors figure out what works. Platform economics says the shape of the platform layer is visible but not settled. Absorptive capacity explains the weird unevenness of adoption — the same tool is transformative at one company and useless at another, and it's not because of the tool. Increasing returns explain why some ecosystems will resist absorption while others won't.

This is a more nuanced picture than either "everything changes" or "nothing changes." It says the revolution is real, the timeline is longer than the discourse suggests, and the distribution of effects across ecosystems and firms will be very uneven.

My takes after re-reading the six frameworks:
  • Perez: I do believe we are late in this installation phase, waiting for 90% of the wave of vibecoded web apps in production to fail miserably and the end of those subsidized 20$/month agentic development subscriptions as my markers for the financial crash 🤔
  • Christensen: The interesting part I wasn't aware of: if new tools are disruptive, even if they are worse in some aspects, they can still replace the champion. Early digital cameras had terrible resolution, poor color, and short battery life, clearly inferior to film photography. But they eventually got good enough for mainstream use and disrupted the film photography industry. Tailwind generated UIs / Agentic HTML videos only look like glorified templates right now, but they may still disrupt Reflex/After Effects in 1-2 years so keep an eye on it.
  • Arthur: This paragraph is not 100% aligned with the following thought but something I think will stay true: Software engineers and motion designers won't disappear, but they need to translate their skills and workflows to the new tools early.
  • GPT: Is this the theory where people want to make AI the new electricity? Are we looking to a 10-20 years timeline?
  • Diffusion: How do I measure this? Check up into legal / healthcare AI startups? I don't have time to study impact of agentic development on each business vertical, it's already painful to follow agentic disruptions and effects on users in the CX domain 😅.

Section 2: Impacts on the Python/Streamlit and After Effects Landscapes

The Streamlit / Python UI landscape and Adobe After Effects sit in structurally different positions relative to the agentic AI wave, and the frameworks above predict materially different fates for each. Understanding why requires looking at what each ecosystem actually is, beneath the visible tooling.

Streamlit & Python UI

Streamlit, Dash, Gradio and friends sit next to a compute stack agents can't replace. Framework choice gets commoditized; proximity to the Python compute is the moat that holds, and Streamlit is the tool that bet hardest on it.

After Effects

AI video can't handle "move the camera 15° less" without breaking everything else, so client work stays safe for now. The bigger threat is web tools like Lottie, Rive, and GSAP that keep the precise frame-level control motion designers actually need.

The Deeper Pattern

Tools survive when you can tweak one knob without breaking the rest. NumPy, After Effects, TeX, and SQL all share this property. Judge a tool by how work flows through it under iteration, not by what its final output happens to look like.

Streamlit and the Python UI landscape

Streamlit and the broader Python UI landscape — Dash, Gradio, Panel, Reflex, Marimo, Solara — are the application layer between Python's compute stack and the people who need to use it. Each tool makes a different bet about how to expose Python's numerical capability: Streamlit on rerun-the-script simplicity, Dash on reactive callbacks, Gradio on ML demo ergonomics, Panel on notebook integration, Reflex on full-stack Python with React under the hood. The question agentic coding raises isn't whether HTML can replace the underlying compute (NumPy, pandas, PyTorch — that's 30-40 years of numerical methods, much of it Fortran underneath, and the lock-in there is decades deep). The question is whether this UI layer survives when an agent can write you a polished React dashboard on demand.

Three scenarios are worth distinguishing.

The most likely is that the Python UI tools hold their seat next to the compute while HTML/JavaScript handles the polished, customer-facing frontend. Agents generate React/Tailwind frontends that call Python backends via APIs, WebAssembly through Pyodide, or server-side execution. Streamlit, Dash, and Gradio don't disappear — they stay where they're already strongest: internal tools, ML demos, and exploratory data apps where the user is themselves a data person, where time-to-running-app matters more than visual polish, and where the UI lives a few feet from the compute. What gets eaten is the bespoke customer-facing dashboard work, where agent-generated React beats a Streamlit theme hack.

The second scenario, JavaScript absorbing the data work outright and making the Python UI layer redundant, would require JavaScript equivalents of the scientific Python stack to reach feature parity. The gap is wide and widening — TensorFlow.js, Danfo.js, Observable's Plot, D3 are real but nowhere near NumPy/pandas/scikit-learn parity, and most ML research keeps publishing in Python. Brian Arthur's increasing returns work against this scenario. Python's lead in scientific computing is self-reinforcing, which means the Python UI tools have a structural reason to exist: they're the path of least resistance from a Python compute layer to a working interface. As long as the compute lives in Python, something will play the role Streamlit plays today.

The third scenario is genuinely disruptive but self-undermining: agents make the framework choice irrelevant because they translate fluently between Streamlit, Dash, Gradio, and a hand-rolled React frontend. In that world, the Python UI tools become substitutable wrappers — and so does whatever JavaScript stack would replace them. Value moves up the stack to whoever controls the agent layer, the data, or the domain expertise. This is the Perez "new paradigm absorbs old infrastructure" pattern: the choice of UI framework gets commoditized, and platform competition happens at a higher layer.

The historical analog that fits best is what happened to relational databases when web frameworks emerged. SQL didn't die. Oracle and Postgres didn't get disrupted. But the SQL ecosystem became a layer that web developers used through ORMs without thinking about, rather than a profession people built careers around. The number of people writing SQL went up; the number of people whose primary identity was "SQL developer" went down. The Python UI landscape could plausibly follow the same trajectory — more people shipping data interfaces through agent-generated wrappers, fewer people whose identity is "Streamlit developer" or "Dash specialist."

I like the SQL layer disruption more than the film vs digital photography analogy. But I wonder how many people use ORMs vs writing SQL queries manually. I feel its closer to 50/50 than 85/15.

I also remember the NoSQL craze, everyone was saying SQL was dead. And now we have SQL abstractions over NoSQL.

So I'd push back a little. We could get agentic abstractions over Python UI frameworks, ala ORMs over SQL. But the specialist role doesn't disappear. We will have Streamlit-to-FastMCP developers like today's SQL developers, whose job is to optimize agents how to use the framework rather than write the app by hand.

The Christensen disruption read of the Python UI landscape is therefore: probably not disrupted in the strict sense, because the underlying numerical libraries don't have a worse-but-good-enough JavaScript replacement, and the Python UI tools inherit that protection by sitting next to the compute. More likely a Perez-style absorption where the choice of Python UI framework matters less because agents handle the framework boilerplate. The people who get hurt aren't the framework maintainers — they're the practitioners whose value-add is mostly framework fluency rather than what runs underneath.

Streamlit specifically holds the most defensible position within this landscape. Its surface value — making the Python ecosystem accessible without writing frontend code — is exactly the kind of "accessibility advantage" that loses weight when agents can write frontend code on demand. But its deeper value — being native to where the compute, the data, and the domain libraries already live — is the moat that doesn't go away. Among the Python UI tools, Streamlit went furthest in optimizing for that proximity (rerun-the-script semantics, sessionless by default, no callback graph to maintain). Dash and Panel made the opposite bet, optimizing for production-grade reactive control at the cost of more boilerplate. Both bets have a future, and the agentic shift sharpens the distinction rather than collapsing it: agents make boilerplate cheap, which weakens "skip the boilerplate" as a unique selling point — but they also make polished React output cheap, which makes "stay closest to the compute" the more durable bet.

The After Effects landscape

After Effects sits in a structurally different position from Python, but the comparison most often drawn — that AE is a vulnerable interface layer while Python's stack is protected by foundational mathematics — picks the wrong layer to compare. The surface analysis is worth walking through, because it's the case the "AE is dead" rhetoric leans on, but it conflates the visible interface conventions with what's actually load-bearing for professional motion work. Once you correct for that, the threat to AE turns out to be narrower than the rhetoric claims and shaped differently — a substrate shift rather than a Christensen disruption.

The surface read has three parts. First, the ecosystem looks shallower than Python's. Python's ecosystem is 30+ years of numerical methods built on older Fortran code. After Effects is roughly 30 years old (released 1993), but its ecosystem is plugins, presets, templates, and tutorial content rather than fundamental computational primitives. The plugins (Trapcode, Element 3D, Optical Flares) are real value, but they're effects libraries, not foundational mathematics. Replicating the capabilities in another medium is more tractable than replicating NumPy.

The visible value reads as a UI paradigm, not a computational substrate. After Effects' most legible moat is the timeline-and-layers interface, the keyframe interpolation system, and the muscle memory of millions of motion designers. From the outside these look like interface conventions rather than irreplaceable mathematics — a new tool that got the interface right could conceivably replace them in a way that nothing can replace NumPy.

The output is rendered video, which is medium-agnostic. A Python dashboard's value is in the live interactivity with data. A motion graphics piece's value is in the final rendered MP4 or animated sequence. The viewer doesn't care what tool produced it. From this angle, HTML/CSS/JS animation, WebGL, Lottie, Rive, and AI video generation all look like legitimate substitute paths to the same output, in a way they aren't for live data work.

Each of these points is partially true, and together they form the case the rhetoric leans on. But the case is incomplete on points two and three: the visible interface isn't what's load-bearing for professional motion work, and the output being medium-agnostic doesn't make the workflow medium-agnostic.

There is a switch here because I pushed back on the narrative that After Effects only serves to output video. Any stakeholder will want to give feedback on "can you make this animation slower/faster or this light more perpendicular". Suddendly because you gave up on mathematical control of the video to generative video, you are crossing fingers GenAI regenerates the video in a deterministic way.

The After Effects moat is deterministic parameter control over a complex video composition, I feel that is what is missed from most people vibecoding HTML videos, they don't have to integrate 100s feedback notes from 10 different stakeholders. Though agentic video with editframe and Hyperframes are working on this.

To be transparent, I had Opus 4.7 take this pushback into account for the next 3 paragraphs

Consider what professional motion graphics work actually looks like. A first cut goes to the creative director, who asks for the logo to enter 200ms later. Then to the client, who wants the camera move less aggressive. Then legal wants a disclaimer at 0:14. Then the client reverts one earlier change but keeps the others. This loop runs 5 to 50 times on a real project. Every iteration requires deterministic, surgical control over specific parameters while leaving everything else identical — a keyframe at frame 47 stays at frame 47 until you move it; a precomp's contents don't change because you adjusted a different precomp.

This deterministic-iteration property isn't a side feature. It's the entire reason professional motion stacks (After Effects, Nuke, Houdini, Cinema 4D) exist as parametric systems rather than as video editors. The keyframe interpolation system, the expression engine, the parenting hierarchy — these aren't UI conventions. They're a formal system for specifying motion that survives iteration without drift. Once you frame it that way, After Effects' moat looks more like NumPy's than the surface read suggests. NumPy's value isn't that it does math; it's that it does math deterministically and composably, so complex pipelines survive being modified piece by piece. After Effects does the same for parametric animation.

This sharpens the disruption analysis. The substitutes split into two categories with very different implications. The first — Lottie, Rive, GSAP, CSS animation, WebGL — preserves the deterministic-control property. They're parametric systems where you specify exact values and get exact outputs. This is the QuarkXPress-to-InDesign pattern. QuarkXPress dominated print design through the 1990s with roughly 95% market share, built on deep muscle memory and a plugin ecosystem. When Adobe launched InDesign in 1999, it was initially worse on the dimensions Quark users cared about — but it preserved the precise-control property that print designers required (kerning to the thousandth of an em, exact baseline grids, deterministic export to PDF) while being better positioned for where the industry was going (digital workflows, integration with Photoshop and Illustrator). Within about a decade, InDesign took roughly 90% of the market. Quark didn't lose to a non-deterministic alternative; it lost to a deterministic alternative better positioned for the new substrate. After Effects' position vis-à-vis Lottie, Rive, and GSAP has the same structural shape: the substitutes are worse on the dimensions professionals care about (effect depth, plugin ecosystem, broadcast-quality render), better on dimensions After Effects can't match (web-native, real-time playback, interactivity), and improving steadily.

The second category — AI video generation — does not preserve the deterministic-control property. You can't currently say "regenerate this exact shot but with the camera 15 degrees more perpendicular and the light 20% warmer, leaving everything else pixel-identical." Even with seed locking and ControlNet-style approaches, you get drift. This is a substitute at the output level only, and it fails the production iteration loop that real client work requires.

This explains an empirical pattern worth noticing: AI video has eaten almost no professional motion graphics work in the categories where iteration matters — brand work, advertising, product launches, anything client-facing. It has eaten work in categories where iteration doesn't happen — stock-style B-roll, social content where one good take is enough, ideation and mood boards, certain VFX background plates. The split isn't about quality of the AI output. It's about whether the workflow tolerates non-determinism. The deterministic web-native substrates have already taken the low end of motion work and are moving upmarket; AI video is a separate threat to a separate slice, real but narrower, operating on a different axis.

Conclusion, 1. don't believe those "After Effects is done" tweets, they mostly generate glorified 10$ After EFfects templates but don't have an idea on how to impact real-world enterprise production. 2. But keep an eye on Remotion, Hyperframes, editframes, Lottie, Rive for smaller motion graphics that integrate in bigger After Effects workflows, this may eventually pop as a viable alternative.

The deeper pattern: what actually survives paradigm shifts

The contrast between these two ecosystems points to a general principle worth naming. What survives paradigm shifts is deterministic, composable specification of complex artifacts. NumPy is one form of this — numerical computation. After Effects is another — parametric animation. TeX is another — typographic specification. SQL is another — relational query. What they share isn't that they do math. It's that they specify outputs in a way that survives iteration without drift, which is what makes them load-bearing in real production workflows. Anything you build on top of them stays built when you modify a piece of it.

After Effects qualifies under this criterion, which is why the threat to it is narrower than the rhetoric claims. The threat from AI video is real but narrow — confined to the categories where iteration doesn't matter much. The threat from web-native deterministic substrates is the bigger one, and it's a substrate-shift threat (Perez-style absorption into a new paradigm) rather than a Christensen-style disruption from a worse-but-good-enough alternative. The substitute preserves the working properties; only the substrate changes.

This is the same distinction that explains why Fortran survived but WordPerfect didn't, why SQL survived but Lotus 1-2-3 didn't, why TeX survived but PageMaker didn't. The pattern isn't about how popular a tool is or how good its UX is. It's about whether the tool provides deterministic composable specification of something that has nowhere else to live in that form. WordPerfect's value was an interface to text; the underlying capability (typing characters into a document) had countless other homes. TeX's value was a precise typographic specification language; nothing else did that the same way, and even today TeX is what scientific publishing runs on.

The substitution threat to a tool depends on whether the substitute preserves the workflow properties the tool's users actually depend on, not whether it produces a similar-looking output. Reasoning from output back to substitution is the wrong direction. You reason from workflow forward. The output is medium-agnostic; the workflow is not.

The photography ecosystem case sharpens this further. When digital photography arrived, the Japanese camera manufacturers — Canon, Nikon, Sony — successfully crossed into digital because their core competence was actually optics, mechanical precision, and image sensors, not film. Film was Kodak and Fuji's business, not theirs. The parts of the ecosystem whose competence was complementary to the new technology survived and often thrived, while the parts whose competence was specific to the old substrate did not. The lesson is that ecosystem survival isn't a single question. Different parts of an ecosystem have different fates based on whether their competence is complementary to or substituted by the new technology — and whether the substitute preserves the workflow properties that mattered.

Which also aligns with my previous thought: learn to translate your Data Analysis/Motion Design skills and workflows to the new tools in case they eat the world up in the next 3 years

Section 3: Advice for Practitioners

The strategic situations facing Python data practitioners and After Effects practitioners diverge from the framework analysis above. The right advice for each group is different in important ways, but the underlying logic — about which skills survive technological transitions — is the same.

For Streamlit & Python UI Practitioners

The compute beneath you isn't going anywhere — but writing Streamlit glue code is. Lean into deep domain expertise and the judgment calls (what to ask, what to trust) that an agent can't make for you.

For After Effects Practitioners

Don't panic about AI video, but do learn Lottie, Rive, or GSAP this year. Move toward direction and interactive work where precise control still wins. Your craft transfers; the tool is just where you practiced it.

The Underlying Logic

AI learns from artifacts on the internet — code on GitHub, videos on Vimeo. The skills that survive live in the messy parts no one writes down: the meetings, the decisions not made, the instincts you only get from years of doing the work.

For Streamlit and Python UI practitioners

The headline is that you sit on top of a structurally protected compute layer, but your specific work — building Python apps for users — is squarely in the exposed application layer. The strategic question is how to move your value-add closer to the protected layer without abandoning the app work that pays the bills now. Streamlit users have a specific advantage here: the same tool that puts you in the exposed layer is also the fastest available instrument for building the deeper skills that aren't exposed.

Start by being precise about what is protected and what isn't. The protected layer is foundational numerical work and the domain judgment that goes into it: the libraries themselves, the algorithms they implement, the performance and numerical-stability work, the hardware integration, plus the human judgment about what to compute and why. The exposed layer is everything that looks like "wire pandas to a Streamlit selectbox and ship a dashboard" — which is most production data app work, regardless of whether you ship it through Streamlit, Dash, Gradio, or a hand-rolled React frontend. Agents are already very good at this and will get better. Be honest with yourself about where your work actually sits on this spectrum. Most people overestimate how foundational their work is because they use foundational tools.

Move toward judgment-heavy work that's hard to specify. The work that survives isn't writing pandas code. It's deciding what question to ask, choosing what data to trust, recognizing when a result is suspicious, knowing what statistical method actually fits the situation versus what looks plausible, and translating between business context and technical implementation. This is the tacit knowledge piece — what economists call knowledge that can't easily be written down or extracted from observation. Concretely: invest in statistical literacy beyond library usage, in causal inference, in experimental design, in the messy parts of data work (data quality, source evaluation, instrumenting collection) that require organizational context. These compound. Library API knowledge depreciates.

Use Streamlit as a tool for building intuition, not just shipping dashboards. The thing Streamlit is uniquely good at — turning a Python computation into something you can poke at with sliders and selectors — is exactly the right shape for developing tacit knowledge. Want to internalize how a t-test actually behaves? Build an app where you control sample size, effect size, and variance and watch the p-value distribution emerge. Want to understand how your forecasting model breaks? Build an app that lets you perturb input assumptions and see which ones matter. The app itself is disposable; the point is that interactive exploration compresses learning that would take months of reading into hours of play. Statisticians used to call this "developing a feel for the data" and did it slowly, by hand — Streamlit lets you do it on the timescale of an afternoon, and the feel you develop is exactly the kind of judgment LLMs can't acquire from public text. Treat some of your Streamlit hours as learning hours rather than delivery hours.

Develop one domain deeply. The most defensible position for an application-layer Python person is "data scientist who deeply understands genomics/finance/supply chain/clinical trials/RF engineering/whatever." Domain expertise is exactly the tacit knowledge LLMs can't easily acquire because the relevant knowledge lives in conversations, internal documents, and lived experience rather than public text. A generalist Python developer is replaceable; a person who has spent five years learning how clinical trial data actually behaves is not, even if an agent writes most of their code. The same Streamlit-as-instrument logic applies here: building exploratory apps for your domain — surfacing the weird edge cases, seasonal effects, and institutional artifacts in your data — is among the fastest ways to develop the intuition that surfaces in meetings as "wait, that number doesn't look right."

Get closer to the foundational layer if you have the inclination. This is a smaller path but a real one. The people who maintain core libraries, who write performance-critical code, who do ML systems work, who build the tools that agents themselves use — these are growing in importance. If you have the temperament for it, contributing to open-source numerical libraries, learning enough systems programming to read CPython internals or PyTorch source, or moving into ML infrastructure roles all move you toward the protected layer.

Build leverage skills that compound with agents rather than compete with them. Skills that make you 5x more productive with agents — knowing how to structure problems, how to verify outputs, how to compose multi-step workflows, how to debug agent failures, how to evaluate model outputs statistically — are appreciating. These skills are roughly the same as what makes a good senior engineer (specification clarity, testing instinct, system thinking) but applied to a new substrate.

Don't bet on a specific Python UI framework. Streamlit, Dash, Gradio, Panel, Reflex — to an agent these are increasingly substitutable, and the framework-fluency moat is the first thing to erode. The protected layer is numerical computation and domain judgment, not the framework either lives in. Your investment should be in computational thinking, numerical literacy, and domain feel — things that travel. "I'm a Streamlit person" is a more fragile identity than "I understand how to think about data and how to build instruments for understanding it." The first depends on a specific tool winning; the second is portable across whatever UI substrate dominates next.

For After Effects practitioners

The strategic situation is more tractable than the discourse suggests, once you separate the two threats. The bigger one is the substrate shift toward deterministic web-native tools (Lottie, Rive, GSAP, WebGL), which are eating the downstream delivery contexts where motion work ends up. The smaller, more famous one is AI video generation — real but narrower, confined to the categories where stakeholder iteration isn't part of the workflow. Conflating the two leads to bad strategy: people either dismiss AI demos because they can't take feedback (true but irrelevant to the bigger threat) or panic about AI video while ignoring the substrate shift that's actually changing where their work runs. What makes the bigger threat tractable is that it preserves the property your craft depends on — precise parametric control over a complex composition — which means the strategic move is portability across substrates rather than reinvention.

Take the substrate threat seriously without panicking. After Effects isn't going to disappear in two years — QuarkXPress took roughly a decade to lose dominance after InDesign launched. But once the shift tips, it moves faster than people expect, and early movers take the senior positions. The strategic mistake isn't switching too early; it's assuming you'll have time to switch when it's clearly necessary.

Diversify into web-native deterministic substrates now. Learn Lottie workflows — you already know After Effects, and Lottie exports from After Effects, so this is the lowest-friction step. Learn Rive for interactive motion. Learn enough HTML/CSS/JS animation to be conversational — GSAP, Framer Motion, CSS keyframes, the Web Animations API. You don't need to become a frontend developer; you need to be the motion designer who can also work in web-native formats. Crucially, these tools preserve the property your skills depend on (precise parametric control), which means your craft transfers — what changes is the substrate, not the way you work.

Agents are what makes this transition tractable. The reason most motion designers haven't already moved to GSAP or Rive isn't taste — it's that becoming a frontend developer wasn't worth it. Agents collapse that barrier: you direct ("200ms ease-out, bounce 8% on the brand mark, stagger by 40ms"), the agent writes the GSAP timeline, the Rive state machine, or the Lottie JSON. Your value moves from muscle memory in the AE timeline to precision in the brief — same shift as the Python section, with motion specs instead of data specs. Iteration also changes shape: "make this 200ms faster across all four hover states and switch the easing" becomes one prompt instead of a manual revision pass.

Use AI video tools where they fit, and don't pretend they fit where they don't. Runway, Pika, Kling, and Sora are useful for ideation, mood boards, stock-style B-roll, and contexts where one good take is enough and stakeholder iteration isn't part of the workflow. They're not currently useful for client-facing brand work that goes through 20 rounds of feedback, because the non-determinism breaks the iteration loop. Treat them as part of your kit for the work where they fit; don't pretend they replace After Effects for iteration-heavy work.

Move upmarket or toward interactivity, away from the exposed middle. The motion graphics profession runs from template-driven explainer videos at the low end to art direction at high-end studios at the top. The low end is exposed to AI generation; the middle is exposed to substrate shift. The defensible moves are upmarket (toward direction, brand, concept work, where the value is taste and craft rather than execution) or sideways into interactivity (UI motion, data-driven animation, real-time graphics — work that requires deterministic control at runtime and can't be AI-generated end-to-end). Staying in the exposed middle and doing the same work better is the riskiest path.

Don't put all your identity into the tool. "Motion designer" is a more durable identity than "After Effects expert." The skills that transfer — timing, easing, composition, hierarchy, narrative pacing, restraint — are the actual craft. The tool is just where you've practiced them. Make this distinction explicit to yourself, because it changes what you protect when the substrate shifts.

The underlying logic for both

What survives revolutions is not your tool, your output, or your title. It's the layer of skill that the new substrate cannot generate from observation.

This is the tacit knowledge point made specific. Skills that are visible in artifacts (code on GitHub, motion graphics on Vimeo, articles online) are skills that LLMs can train on and increasingly reproduce. Skills that live in process — in the choices that didn't get made, in the meetings that shaped the brief, in the iteration that fixed something subtle, in the domain knowledge that told you which approach was wrong before you tried it — are skills that LLMs structurally cannot acquire well. The strategic move in any ecosystem is to recognize which parts of your work are artifact-visible and which are process-embedded, and to consciously shift weight toward the latter.

For Python people, this means more time on the messy non-code parts of data work — the conversations with stakeholders, the data quality investigation, the experimental design, the result interpretation. For After Effects people, it means more time on the parts of motion that aren't in the final render — the brief shaping, the concept work, the direction, the iteration with clients, the choices about what not to animate.

The uncomfortable truth in both cases is that the obvious response (work harder at your current tool) is the wrong response, and the right response (deliberately move some of your time and identity to harder-to-observe skills) feels less productive in the short run because the new skills don't yet pay as much per hour as your existing expertise. The historical pattern is unambiguous about which bet pays off over a 5-10 year horizon, but the discomfort of taking the bet during the transition is what causes most people not to take it.

Conclusion

TL;DR

AI is a real shift, but slower and messier than the headlines say. Where you land depends less on the hype and more on three things:

  • Practice going from raw intent to shipped execution. That bridge has almost no public training data, which is why domain depth, taste, and the ability to steer agents all compound there. Defending only today's skills is the Kodak trap.
  • Judge tools by how work flows through them, not by what comes out. Output similarity is a trap. What matters is whether the new tool survives the iteration, feedback, and edge cases that real production work demands.
  • Bet on the skills AI can't learn from the internet. The messy judgment calls you make in meetings and never write down — that's the layer that compounds while everything else gets automated.

The Kodak executives weren't stupid. They ran the analysis, saw that digital would cannibalize film, and decided to harvest the film business as long as possible. That decision was rational on a 5-year horizon and fatal on a 15-year horizon. The thing worth absorbing from revolution theory is that this is the typical failure mode, not an exception. Incumbents fail because they correctly understand the threat and choose to defend their existing business anyway, for entirely defensible business reasons, and discover the time horizon was shorter than they planned for.

The same trap exists at the individual practitioner level. The rational short-term move is to keep doing what pays you well now. The rational long-term move is to invest deliberately in the skills that survive the transition, which feel less productive in the moment because the transition isn't complete yet. Most people resolve this tension by defaulting to the short-term move and hoping the long-term horizon is longer than it turns out to be. The historical pattern says this is a losing bet, but it's the bet most people make.

The frameworks above don't tell you what to do. They tell you what kind of question to ask. Does your tool provide deterministic, composable specification of something that has nowhere else to live in that form (Python's numerical stack, After Effects' parametric animation system) — or is its value primarily an interface convention plus an output target that other tools can also produce? If it's the former, the threat is substrate shift and the right response is portability across substrates. If it's the latter, the threat is replacement and the right response is finding the layer of your work that isn't reducible to the artifact you ship. Are your skills artifact-visible or process-embedded? Are you in the exposed middle of your profession or at the protected ends? Is your identity tied to a tool or to a craft? The answers determine your strategy more than any general claim about whether GenAI is "real."

The other thing the frameworks tell you is to reason from workflow forward, not from output back. The temptation in any technology transition is to look at the new tool's output, notice it resembles the old tool's output, and conclude substitution is imminent. This is the reasoning that produced years of premature claims about AI replacing programmers, designers, lawyers, and motion graphics artists. The output similarity is real; the workflow substitution often isn't, because real production workflows depend on properties (deterministic iteration, stakeholder feedback loops, regulatory accountability, domain context) that the new tool may not preserve. The substitutes that actually win are the ones that preserve those workflow properties while shifting the substrate underneath. Lottie and Rive are doing this to After Effects. Agentic coding may do it to Python's application layer while leaving the foundational stack intact. AI video, for all the press, is doing something narrower — substituting at the output level for workflows that don't require iteration.

If there's a single thesis, it's this: the revolution is real, the timeline is longer than the discourse suggests, and the distribution of effects is much more uneven than either side of the debate admits. Some ecosystems will be absorbed as infrastructure (Python's foundational layer). Some will face substrate shifts that preserve the craft but change the tool (After Effects to web-native deterministic stacks). Some will be genuinely disrupted at the workflow level (the application-layer middle of both professions). Within each, some practitioners will thrive and some will be displaced, and the difference will be predictable in advance from where they sit on the artifact-visible to process-embedded spectrum, and from whether their tool sits on top of something irreducible or just on top of an interface. The frameworks give you the language to locate yourself on those spectra. What you do with the location is up to you — but doing nothing, while comfortable, is the one strategy the historical record consistently punishes.


Footnotes

  1. A meme I like showing my manager when this comes up: