HackerTubewatch
Surprise me
Frame from Bret Victor - Inventing on Principle Plays via YouTube's privacy-enhanced embed

Bret Victor - Inventing on Principle

Rui Oliveira
Talks
YouTube
12 HN users recommended this talk11 months2013–2025 score 13.5
Years with an HN recommendation, 2007–2026

It is HN's go-to recommendation for the case that programming environments should give instant feedback, and it appears in nearly every thread on live coding, visual programming or developer tools.

Bret Victor's talk at CUSEC 2012 in which he argues that creators need immediate feedback and should organize their work around a guiding principle. He demonstrates live-coding and animation tools that show results as you type, and describes his own principle that creators must see what they are making.

“My mind was blown when I saw this video 2 years ago” (HN, 2014)

5 strong recommendations · 7 recommendations · 8 citations · Talks

20 Hacker News comments

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

@bigsassy Jun 2014 Strongly recommends
on HN thread Introducing Swift
Is this related to Bret Victor's stuff? My mind was blown when I saw this video 2 years ago, and I can't help but see similarities here: [this video]
Mind-blowing talk on live programming feedback.
@productionQA Jul 2014 Strongly recommends
on HN thread Ask HN: Favorite talks [video] on software development?
Probably not exactly what you need, but as far as inspiration is concerned, it doesn't get much better than this: [this video] Check out Bret Victor's talks in general (worrydream.com). He is quite interesting.
Top inspirational talk about software development.
@rpeden Feb 2018 Strongly recommends
on HN thread Ask HN: What's your favorite tech talk?
Read more
I think most here have already seen it, but I find that Bret Victor's Inventing on Principle talk[1] is one of the best I've seen. I re-watch it every so often to help prevent my thinking from falling into a rut. When developing software as a career, it's so easy to just fall into a pattern where you use the same tools and techniques over and over again. Watching this talk this talk inspires me to investigate alternate approaches to developing and delivering software. It's easy to think of software development as something that always need to involve code, and nothing but code. But watching this talk inspires me to go and try things like Node Red and Unreal Blueprints. In both cases, code is usually still involved, but they both offer a visual way of connecting components. I find it helpful to be able to visualize software this way so I can immediate understand how data flows through the application. [1] [this video]
Inspires rethinking development tools and approaches.
@pedrovhb Jan 2024 Strongly recommends
on HN thread What I've learned about flow fields so far
Nice! Playing around with the widget under the section "Experimenting with lines" I'm reminded of Bret Victor's Inventing on Principle talk [0] (an absolute must watch, if anyone hasn't yet). In particular, changing the smoothness reveals a sort of scaling effect that I'd probably never know about if not playing around with sliders and having it update in real time rather than setting individual values. Very interesting and beautiful! [0] [this video]
Real-time feedback on parameters reveals hidden behavior.
@DanielRibeiro Nov 2015 Recommends
on HN thread The Utopian UI Architect
You may not consider him a genius. But Bret does have some pretty innovate ideas on Programming and Design (and more). Good examples: Inventing on Principle: [this video] The Humane Representation of Thought: [link]
Innovative ideas on programming and design.
@bch Apr 2019 Recommends
on HN thread Panic’s Next Editor
Nice, but I think I can raise you. That talk mostly seemed pretty predictable (though I incorrectly guessed gfx via sixels[0], not a(nother) terminal emulator). If your interest was piqued with that parent video though, prepare to have your mind blown with this[1], who’s thesis maybe similar in the sense of “stop _just_ simply working”. Bernhardt seems to be saying don’t be afraid to take time and think deeply and “go deep”, while Victor is explicitly saying make it count by way of targeting with intention what’s important to you. A sort of “fight the good fight.” [0] [link] [1] [this video]
Victor urges targeting what is important with intention.
@gervwyk May 2020 Recommends
on HN thread Ask HN: Are React-like UI frameworks a fad or a genuine step forward?
Bringing two concepts closer, especially visually will result in a better developer experience - Thus merging html and js into a single file, component, class / object and sequential logic was really the turning point to build more complex web apps. This reminds me of the excellent talk by bret victor [this video]
@fossuser May 2020 Recommends
on HN thread Ask HN: Why isn’t visual programming a bigger thing?
You’d probably like Bret Victor’s inventing on principle talk: [this video] He demonstrates some good examples. I’m not quite sure it’s what you mean by visual, but it seems obviously valuable and tools that enabled some of what he shows would be really useful. I’m not sure why we don’t have these things - I think Alan Kay would say it’s because we stopped doing real research to improve what our tools can be. We’re just relying on old paradigms (I just watched this earlier today: [link] )
Good examples of valuable visual programming tools.
@bhntr3 Jul 2020 Recommends
on HN thread Ask HN: Did you take any fresh MOOCs as of 2020?
In terms of mind-expanding or intellectually stimulating, I find it's easier to get that from Youtube. I recommend: 3blue1brown for math ( [link] ) Everyday Astronaut if you are casually interested in rockets ( [link] ) Bret Victor ( [this video] ) or Rich Hickey ( [link] ) for programming and design. Doing a full college course is such a time investment and it usually takes a few weeks to start proving the interesting stuff. I find it more fun to look to shorter content for inspiration. I might realize I don't understand the fundamentals of the topic and then seek out a way to study it.
Mind-expanding content for programming and design.
@ryanmentor Feb 2021 Recommends
on HN thread Ask HN: How do you generate higher-quality ideas?
Time and Time and Space and Space are necessary for high quality creativity : [link] and working with solid principles, from first principles, is how you reach durable new understandings. IMO. The Seven Habits of Highly Effective People has some great material about the use of principles in being personally creative. Inventing on Principle: [this video] I serve as a creativity coach to builders, innovators, and founders. Sometimes what a thinker needs more than anything else is a BREAK to BATHE! and then... EUREKA! [link]
On working from principles to reach new ideas.
@anon35 Jul 2023 Recommends
on HN thread MDN Playground
Read more
Great to see. More generally: I feel like playgrounds are grossly underused in our industry. It's possible the issue is in the name -- it immediately connotes that whatever you're doing isn't real work, it's just a place to, well, "play". But really these kind of playgrounds are at least a cousin, if not a direct descendant, of the immediate feedback principle that underlies everything from a REPL to the kind of systems (Symbolics, etc) that allow you to edit running code. Their potential is beautifully illustrated in Brett Victor's famous 'Inventing on Principle' talk: [this video] Three areas that I'd love to see playgrounds mature beyond teaching beginners CSS: 1) Integrated directly into developer documentation. You can see some of that in systems that are documenting services -- for example, the Google Sheets API documentation has a 'Try this Method' box that lets you post a request to the service on the same page that describes it, but what I really want is something like that when I'm reading the man page of a destructive disk command, or a complex database query, or a low-level C graphics library. That'll require a playground wired to something as big as a VM, maybe. 2) Integrated into textbooks: for the last couple years the astonishing posts from Bartosz Ciechanowski ([Sound]( [link] ), [Bicyle]( [link] )) have demonstrated just how much better a textbook could be if you could interactively play with the concepts you're reading about. Unlike dev docs, the thing you're in
Illustrates the potential of immediate feedback in programming.

Citations, criticism and jokes

@joeblau Aug 2013 Cites it
on HN thread Webflow (YC S13) Lets You Design Responsive Websites Visually, Publish Instantly
Read more
I love the design and the concept of the site as well as others in this space like jetstrap, easel, and divshot. To be honest, I've tried a few of these offerings and as a web developer this is not what I want, I'm looking for two things: 1. An editor like the one Bret Victor talked about in his "Inventing on Principle" talk[1]. I want to edit HTML and CSS and see updates reflected in real time[2]. 2. A way to hook this into a DVCS (Or better yet, a desktop application/desktop plugin). My development workflow relies heavily on Git and I don't think I'm going to download a zip payload and extract it every time I need to do a commit. [1] - [this video] [2] - [link]
Bret Victor's real-time feedback editor idea.
@DonaldFisk Feb 2017 Cites it
on HN thread Show HN: DeepUI Programming Studio – A different approach to programming
Read more
No, they explain that LabVIEW and other visual languages are just different ways of representing the code. The idea here, I think, is that there's far greater coupling between the output of the program and the program itself. It's similar to some of Bret Victor's ideas: [this video] I'd like to incorporate this coupling idea into my own visual dataflow language ( [link] ), but haven't yet decided how to implement it. My approach has been to design the language from the bottom-up, so that simple programs can be simply drawn, and there are higher level programming constructs which simplify more complex code, avoiding the complexity problem (the Deutsch limit) you've seen with LabVIEW.
Tight coupling between program and its output.
@hchasestevens Sep 2017 Cites it
on HN thread Artificial Intelligence Uses Videogame Footage to Recreate Game Engine
Imagine this paired with a system like the one Bret Victor demos in "Inventing on Principle" [0] or in "Stop Drawing Dead Fish" [1], in which the user hand-animates what they want the game movement/overall gameplay to look like, adjusting as necessary. The system described in this paper could get you a decent way from that hand-animated mockup to a working game that looks and feels first and foremost like you intended, rather than working from a playable-but-bad-feeling prototype game engine and having to endlessly adjust to get the game feel "right". [0]. [this video] [1]. [link]
Hand-animated interactive authoring demo.
@borplk Jan 2018 Cites it
on HN thread Ask HN: What would your ideal programming language be like?
Read more
I think the next game-changing evolution in programming languages is moving beyond plaintext. Our basic building blocks of programming has not changed essentially since the beginning of programming. We still treat programs as nothing but a bunch of files and folders edited with the same tools that writers use to write romance novels (yeah yeah "intellisense" is not so intelli at the end of the day). We don't create beautiful images by writing RGB values in a text editor. We shouldn't be creating highly complex software systems with them either. We need model based editing environments that will allow us to have a much richer set of software building blocks. We have to allow software to be more than just characters in files. Software "source" is not a book. It's the blueprint for a system that has metadata and constraints attached to it. It can't comfortably and forever exist in a flat plaintext structure for human consumption. If you are interested go dig up my old comments I have written more elaborate rants about it before. And yes I'm ready for the inevitable and customary "NO IT AINT GON WORK WE TRIED BEFORE AND IT AINT WORTH TRYIN EVER EVER AGAIN" replies. Also relevant: [link] (I actually somewhat accidentally and indirectly caused the creation of the subreddit as a result of a discussion here on HN before) [link] [link] [link] [this video]
@mredigonda May 2022 Cites it
on HN thread Ask HN: What developer tools would you like to see?
This video [0] is from February 2012, but as far as I know this tool is not yet implemented (or at least it is not widely used). Basically as you are writing a function, you can write sample input for it, and it tells you the intermediate value of each variable inside this function, which lets you reason about the code, makes it trivial to know you've done something wrong, and would make developing a much more interactive experience overall. In my experience, this is done by hand when writing a function, but a tool like this would make it automatic. [0] [this video]
Demo of live variable values while writing functions.
@sitkack Mar 2025 Cites it
on HN thread How Flash games shaped the video game industry (2020)
Having never used the authoring tool, can you point me towards something to model it after? I think a Bret Victor, "Inventing on Principal" style editor would be perfect, combined with some sort of scratch like Python IDE where each element is defined in terms of its reactive behaviors with other elements on a timeline. I didn't say easy, I said not too difficult. Order of magnitude difference. :) [this video] With some [link]

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