You are viewing archived messages.
Go here to search the history.

Jack Rusher 2023-06-11 09:38:16

“The first version of what would evolve into the world-renowned block-based Scratch programming language.” Mid-90s code base created at MIT using Macintosh Common Lisp 2.0.

macintoshrepository.org/54176-tiles421-lisp

📝 tiles421.lisp - Macintosh Repository

The first version of what would evolve into the world-renowned block-based Scratch programming language. Like Scratch, it was developed at MIT...

Kartik Agaram 2023-06-13 17:29:36

Are people here aware of Super Mario Maker 2 ? I somehow totally missed the memo that one part of Bret Victor's Inventing on Principle has been productionized.

Screenshots from:

📷 iop.png

📷 smm2.png

Ivan Reese 2023-06-13 19:06:32

Good catch! But I'm not sure it's far to say that the thing Bret was demoing is what has been productized here. See where a character's jump will land is but one of the many kinds of debug visualization that have always been ubiquitous in game dev, and Mario Maker is quite literally just game dev as a product . Pretty much every platformer game will have dev tooling to help visually quantify whether or not the player can readily make a given jump. And yes, some of them do it with an onion-skin effect, like Bret and Mario Maker 2, because that's a classic visualization technique when working with frame-based animation. (Eg: Flash had it built-in to the editor.) Here's another example of visualization to debug character movement.

But the more general point Bret was trying to make with this example — that you should have an immediate preview of what your code is doing, and you should be able to abstract that preview across a range of system configurations (see also Ladder of Abstraction, of course) — is not quite what this particular feature in game dev tools achieves. For instance, I'm not sure how common it is for games to have the sort of deterministic time-travel bret was playing with. Rather, they tend to just forward-project from a chosen starting configuration. That's why the Tomorrow Corp Tech Demo was so impressive. The deeper interpretation of Bret's stuff is still on the fringes.

Ivan Reese 2023-06-13 19:07:36

Speaking of Inventing on Principle — just the other day, I once again tried to link someone to the page and was reminded that the original video (and thus Bret's embed of it) is dead. Deep sigh.

Kartik Agaram 2023-06-13 19:37:05

Wait, so that was a well known effect when Bret demoed it?!

Ivan Reese 2023-06-13 19:54:40

The visual effect? Yes.

en.wikipedia.org/wiki/Onion_skinning

Ivan Reese 2023-06-13 19:58:00

The idea of using onion skinning to show a bunch successive frames in a game? Yes — it's even a common (albeit naive) technique for doing motion blur.

Ivan Reese 2023-06-13 19:59:35

The idea of moving backward and forward through time to show how small changes lead to different outcomes? Yes — that's why Bret used Tim (the main character from Braid) in his little 2d platformer example.

Ivan Reese 2023-06-13 20:00:36

But the combination of time travel and onion skinning to make a deeper point about abstraction and the general weakness of programming tools (especially outside gamedev)? That's the novelty in Bret's presentation — at least, in my read of it.

Chris Knott 2023-06-14 14:42:39

Bret's demo included an interaction with an enemy i.e. it required the genuine time travel debugging of the whole engine. Does Mario Maker do that?

The limited forward projection of jumps etc is quite common and you see it with grenade projection markers etc in game

Chris Knott 2023-06-14 14:46:42

But yes game dev has always been way ahead of the curve with making the intangible tangible through visualization. Even things like colouring models based on their internal AI or pathfinding state. This type of thing comes easily because you have a canvas right there to output to, it's actually much easier than print debugging. If every computer program came with a canvas you would see this type of thing for abstract business logic programs as well.

Ivan Reese 2023-06-15 00:00:58

This type of thing comes easily because you have a canvas right there to output to, it's actually much easier than print debugging. If every computer program came with a canvas you would see this type of thing for abstract business logic programs as well.

I cannot 💯 this hard enough. 💯 💯 💯

Ibro C. 2023-06-15 06:32:11

A look at Folk Computer (ofshoot from Dynamicland by Omar Rizwan and Andrés Cuervo) through Emily Dickinson’s poetry spikeartmagazine.com/?q=articles/discourse-emily-dickinson-apple-computer-house

📝 Emily Dickinson’s Apple Computer House

The 19th-century poet, whose verse still resonates with its open-ended sense of how language produces meaning, is a model for a group of Brooklyn coders inventing a more humane computer.

Josh Justice 2023-06-15 12:18:52

Coworker just shared this book and I was surprised not to see it in the search history here (maybe I missed it). I thought this group would be interested: livecodingbook.toplap.org/book/#

To give some scope:

In asking “What is live coding?,” our intention is not to fix or define but rather to explore how live coding opens up . Live coding is about people interacting with the world, and each other, in real time, via code. Live coding is about making software live .

The first part is more practice focused, offering an account of the origins, development, and aspirations associated with the evolution of live coding alongside presenting documentation and examples of live coding practice. The second part is more speculative and conceptual in its register, allowing space for discussion of the many ways live coding reflects and informs wider cultural and political concerns.

📝 Live Coding: A User's Manual

Live Coding: A User's Manual, published by MIT Press

Eli Mellen 2023-06-15 18:30:40

is good book! big recommend!

Chris Maughan 2023-06-19 16:10:23

Haven’t seen that before, thanks!