Here’s my 2 minutes intro of Lamdu!
# two-minute-week
y
Here’s my 2 minutes intro of Lamdu!
❤️ 10
👏🏽 1
👏 1
👍 6
i
Lamdu is extremely cool. Good to hear you're still working on it after all these years.
❤️ 1
v
This language switch feature looks really cool
👍 5
c
The editor is so beautiful! I hope you are planning more videos each week on different aspects that go a bit slower and into more depth. The only feedback I can think of at the moment is that I feel like it only took 5 initially. I would have expected it to be counting each (cur, prev) pair as 1. I am not familiar with functional languages so might be a stupid comment but as a noob that is what I expected to happen.
👍 1
y
@Chris Knott The two minutes format kind of doesn’t allow to go in much depth, but on our youtube channel we have some slower and more informative videos. Regarding seeing only 5 rows, this is a good question. Indeed I didn’t explain it in the video due to the time constraint, but the evaluation actually does take 10 items but in the evaluation result annotation only the first 5 rows are displayed. Sometime in the future we’ll allow to scroll over the complete value rather than seeing a truncated one.
@Vladimir Gordeev Thanks! I intend to create a more in-depth video specifically about that after we finish the UX changes we’re currently working on
c
Really interesting video; the editor does indeed look beautiful! I will chase down the other videos tomorrow!
👍 1
l
Cool! Re ui: animations can help us follow what's happening, or make us confused. Usually, it's good to only move what we're already focused at. The "fluidity" of the interface looks really cool, though I imagine refining it could make it nicer/less jarring to work with :) Though it looks really cool.
👍 1
y
@Leonard Pauli Yeah animations is something I discovered is important many years ago. When I was experimenting with visual programming, I made an experiment with automatic layout, see https://github.com/yairchu/old-lang-demo-0 and before adding animations I found that I could not demo it to anyone because people just couldn’t follow the changes when everything’s layed out differently. We kept this lesson in Lamdu even though it’s a much layout with simpler changes. But it’s nice for structural refactorings like extracting a function where you can follow what moves where etc. As for making it move only on what you’re focused at, how could the system know what you are focusing at?
l
focus=>the currently "selected" area; One initial thing I would try: reduce "bouncy" motion, eg. from expand quickly followed by contract; eg. 020 the "hole" shows an "a" underneath it, the gets removed when entering "1" into the hole, quickly followed by enter, which again expands the box (leading to a "bouncy" motion) - try a "debounce" on size change, to smooth it out, eg. the boxes only ever expands during writing, only shrinks when no key has been pressed for x ms (eg. 350 ms). Also, on 0:21, instead of moving all the characters, only "add" new characters, then, after delay, contract down/translate the text back in.
👍 1
y
@Leonard Pauli delaying contractions is a really good idea, thanks. Will definitely consider it 🙂 We are aware that things are changing too much and something else we’re going to do is UX changes which will make things more insertion oriented
l
Ah, that sounds great! A couple other observations: 0:23, the "result preview" box content is centered, making it move unnecessarily during editing, keeping it aligned to the "root"/fixed point of the tree (eg. left for ltr, right for rtl, etc) would avoid that. Also, because its content is bright, it makes it even more attention-grabbing. Alt: instead of collapsing on write-pause, collapse on de-focus-up (eg. when selecting parent node) - this would make each animation "expected". Make each animation intentional: eg. 0:31 seems to do multiple things with the "result box"; the text changes color, and relative pos to box, and scales (what about treating it as one thing and just fading it away). Moments later, it pops back up again (debounce it?). At 0:32, the suggestion box moves back and fourth once, accident or intentional? Anyhow, neat project! Looking forward to see how it develops 🙂