We can't find the internet
Attempting to reconnect
Something went wrong!
Hang in there while we get back on track
The Mother of all Programming Languages Demos • Sean McDirmid • YOW! 2015
Explore how programming environments can evolve from discrete, archery-like interactions to continuous feedback loops, with insights on live coding, visual tools & the future of development.
-
Programming environments need to move from discrete, archery-like interactions (aim, shoot, miss, repeat) to continuous, water hose-like feedback loops where small input changes yield immediate visual feedback
-
“Holy terms” allow for flexible placeholders that can be manipulated directly in the UI and automatically propagate changes throughout the code without explicit type annotations
-
Live programming with continuous execution enables seeing program state and behavior without setting breakpoints or print statements, making the development process more fluid
-
Visual programming interfaces that combine sketching, direct manipulation, and code should allow seamless transitions between concrete examples and abstractions
-
“Scrubbing” values and parameters provides immediate visual feedback and helps explore the solution space more intuitively than typing exact numbers
-
Programming tools should focus on the programming experience and execution feedback loops rather than just language expressiveness
-
Future programming environments need to support more fluid experiences where changes are incrementally incorporated into running programs rather than requiring full restarts
-
Machine learning and AI advancements mean programmers need better tools to stay competitive and become “human-machine learners”
-
The ideal programming experience should feel like using a water hose - continuous, immediate feedback rather than the current archery-like experience of aim, shoot, evaluate, repeat
-
Layouts and UI can be sketched and parameterized without writing code directly, automatically inferring relationships and constraints between elements