Steve Krouse 2022-05-09 16:08:11 For a couple years, I keep returning to ideas of composability, remix-ability, coding in small pieces, getting to snap them together and apart fluidly, like legos, and with lots of collaborators. This is what excites me about functional programming, how it lends itself to abstractions that compose really well. However I was recently inspired by @JP Posma to throw elegant composability out of the window and simply enable coding in the small by appending small programs together...
...and what we came up with is called twittereval. The idea is you add the words "eval" to a tweet's URL and then we evaluate it (and all the tweets above it or referenced) as JavaScript. It's obviously silly but also kinda neat, and I thought it would be thought provoking to this community. Excited to hear what ideas and suggestions you guys have! I'd also really love it if anyone tried it out and made anything cool :)
https://twitter.com/stevekrouse/status/1523449402009948160
🐦 Steve Krouse: I rebuilt my personal website entirely on Twitter, in a series of tweets, & evaluated with a silly ✨ new service ✨ @JanPaul123 & I hacked together to play with "coding in the small" or "micro coding"...
Introducing twittereval!
David Brooks 2022-05-09 16:11:41 just in case you haven't heard of it (you probably have), check out "flow-based programming"
Steve Krouse 2022-05-09 16:15:38 Thanks! Quite familiar with that kind of thing. I normally refer a similar but slightly different category of things as "node and wire" programming. I'm somewhat into it, but not really for reasons of modularity & composability. I normally think of node-and-wire environments as a UI that's an alternative to text, so the semantics aren't as relevant
David Brooks 2022-05-09 16:23:11 It does get a bit mixed up with all the similar-looking tools out there, but Morrison's original idea definitely puts modularity and composability front and center. An "old school" flow-based programming program can be put together in text, for instance.
Paul Tarvydas 2022-05-09 18:15:28 a) I want to know more, but I don’t use Twitter much. Where should I look?
b) Knee-jerk thoughts about composition, FBP, etc.: <to come>
Paul Tarvydas 2022-05-09 21:33:17 The secret sauce of composition is - independence (AKA concurrency[^parallelism] (I have begun to call it 0D (zero dependencies))).
The secret sauce of FBP is concurrency.
Once you have 0D, you can draw diagrams (if you wish), incl. node-and-wire diagrams.
Trying to draw diagrams in a sync-based paradigm (i.e. just about every existing programming language) meets with resistance, and, eventually, hopelessness and bloatware.
[^parallelism]: Parallelism is often conflated with concurrency, but is only a subset of concurrency. Rob Pike’s talk (“Concurrency is not Parallelism, It’s Better”) gave me the words for dividing-and-conquering these concepts ...
David Brooks 2022-05-09 21:35:14 oh wow I didn't even know about the discord. thanks! :thumbsup_all:
Kartik Agaram 2022-05-11 17:18:51 No, my question was for Steve. Eval open to the internet is a bit nerve-wracking 😄
Steve Krouse 2022-05-11 17:20:24 You may have to join the Twitter community to see those tweets. I didn't think so but things about Twitter communities can be buggy
David Brooks 2022-05-11 21:56:47
🐦 Steve Krouse: I rebuilt my personal website entirely on Twitter, in a series of tweets, & evaluated with a silly ✨ new service ✨ @JanPaul123 & I hacked together to play with "coding in the small" or "micro coding"...
Introducing twittereval!
Ryo Hirayama 2022-05-11 10:37:22 Within this week, I’d like to share a first demo of a future coding environment for the next 100 years I’m working, called Desk. This is what I am aiming for:
- 🎮 Intuitive like games
- 🥼 Pragmatic like professional tools
- 🗺️ Versatile like spreadsheet
- 💗 Accessible to everyone
- 🛹 Minimalist design
Here is the repository and I would be happy to have your ⭐!
https://github.com/Hihaheho/Desk
Ryo Hirayama 2022-05-12 00:26:41 I'm so glad this interests you!
I haven't figured out how to do anything interesting at https://desk-x.com/ so far.
First, I will add a UI here like vscode's command palette (I call it a "terminal"). We can use it to generate AST nodes on the screen, or do other interactions with the kernel of desk.
Don't really know where to start either...
I plan to write an archiecture document and contribution guide some day soon after the release of the demo. If I could say one thing, it would be that the crates/systems/dkernel source code is interesting. It is the file system and core of the desk.
I can move the window with top and left (and topleft), but not resize it.
Yeah, it's a default behavior of egui.rs. We can probably customize it with a little bit of writing.
William Taysom 2022-05-12 01:54:09 The thing to demo @Ryo Hirayama is one situation where Desk really shines.
Ryo Hirayama 2022-05-12 02:36:36 Thanks. I'm not sure if this really shines, but I will try to get it work for placing numbers and adding or subtracting the numbers. Any other recommendations would be helpful.
Ryo Hirayama 2022-05-12 02:46:30 Planned for subsequent demos are: a function to note and connect notes like kinopio.club, a function for generative art like Processing, a function for moving sprites like Scratch, etc.
James Haliburton 🕰️ 2022-05-06 09:34:12 Hi all - there’s a live stream of Noodl (visual programming for web) right now with an internal build of the next release. Stream is open for the next couple hours, feel free to check it out.
https://www.twitch.tv/getnoodl