Just came across OpenMusic, a visual programming language based on Lisp, developed for musical composition but not limited to it: openmusic-project.github.io/openmusic
a channel i follow on youtube (Creativity Labs) just released three absolutely banger prototype videos in the last hour
Are they members of this slack (no idea how i found the channel otherwise)?? If so, I’d love to get in touch!
🎥 DataParticles: Block-based and Language-oriented Authoring ofAnimated Unit Visualizations
🎥 CrossCode: Multi-level Visualization of Program Execution
🎥 Log-it: Supporting Programming with Interactive, Contextual, Structured, and Visual Logs
Good stuff! This is coming out of Haijun Jia's lab at UCSD. They have been publishing good work for around ten years, an archive of which is here: creativity.ucsd.edu
[After watching the first video]
This is fascinating stuff. I've been working on similar tooling, but with a totally different approach/perspective, since my team isn't at all interested in sequential data visualization, but rather sequential technical illustration. So it's fun to see what sorts of things are easier/harder about making this stuff approachable to non-coders when you design it around some expectation of data/stats literacy VS arts/visual communication proficiency.
[After watching the second video]
This is really neat. I feel like I'll have to watch this one a few times at least to really appreciate what they've done. Immediately, though, I love the attention to graphic design.
[Third video]
Not so hot on this one.
[Meta-point]
Garth, this YT channel slaps bumps grinds and rips so hard.
Log-it looks really interesting, I’ll watch the video later.
The ad-hoc object exploration reminds me of dynamic tracing tools, like Erlang tracing or “production safe debuggers” like rookout.com (roughly speaking: query languages to select variables or properties to export into log stream ~during~ program execution, without any interruption).
The context bits - while not exactly the same - make me think of honeycomb.io, where you ditch traditional logs in favor of emitting one big JSON object per “unit of work” (often, web request) and you pile fields into that object. The result is a lot of power to cross reference different parts of execution. Honeycomb in particular pairs it with some really smart visualization / interactive visual outlier identification tools.
the second one reminded me of Hest when they had the assignment value travel down the wire into the variable
Good stuff!
I found the first one most interesting. Quite similar to some other stuff I've seen for mixing text and interactive visualizations. What was the name of Bret Victor's project before dynamic land? (play.witheve.com, and maybe not so similar after all..). And wasn't someone here working on something similar as well?
Not so sure about the second one. Seems maybe too disconnected from the code. I've seen a similar design that draws the control flow on top of code and liked it better.
As about the third: Printing to csv and loading it up in Excel (as a data source) is underrated 🙂.
(ftr I don't think bret worked on eve, that was chris granger chris-granger.com/resume)
Well no wonder I was having so difficult time googling the project 😅
Data Particles looks 🔥 . Really interested in language-oriented authoring tools.
today found this on twitter about the CrossCode project
twitter.com/devamarh/status/1633883490151464963?t=zfhcE7_x7VP21ff_p3QEKg&s=35
🐦 Devamardeep Hayatpur: My #CHI2023 paper :)
Debugging code doesn't have to be a headache. CrossCode visualizes your JavaScript code at multiple levels of abstraction – so you can easily find key steps without being overwhelmed by all the execution details. (1/5)
...
I am beginning to believe that with AI, it might be possible to let non-programmers make software. Until now, most software was imperative and needed to be managed by knowledgable human. With what I am seeing with LLM such as chatGPT, we might be entering declarative software building and not worry about the internals. In fact, I am going to experiment if I can create few ideas I have in my mind using declarative approach. Would love if anyone can share examples of such attempts already.
Declarative approach with AI to me is significantly different than no-coding platform, because no-coding platforms have pre-built lego pieces and will have limited configuration potential. But with AI based system what if we can build the lego pieces to our description on demand?