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

Kartik Agaram 2022-08-23 04:40:05

I'm not sure who else to ask, but: does anybody have a pointer to a picture/meme that looked something like this? Basically the idea is that as you practice something you get better at doing it and better at assessing the quality of artifacts (music maybe? Or painting? I don't recall.) Both improve in discrete steps, but the steps are staggered, which results in happiness following a sinusoidal wave. When you can see what's wrong with your creations you're unhappy until your making skill catches up with your level of discernment. Then your discernment has another step improvement and the cycle repeats.

Does this ring any bells?

📷 x.png

Personal Dynamic Media 2022-08-23 04:41:59

I've never heard of this before, but boy is it thought-provoking.

Andrew F 2022-08-23 06:09:41

I've heard similar ideas from artists, but not as far as visualizing it that way...

Sergej Koščejev 2022-08-23 07:24:08

Jerry Weinberg had a similar graph (though not exactly this idea) in one of his books, reproduced online e.g. here: danlebrero.com/2019/11/27/becoming-a-technical-leader-book-notes

Also, there was a speech by Ira Glass on creative process which touched on this, AFAIK. But no graphs in it 🙂

James Scott-Brown 2022-08-23 08:22:51

Many people have expressed similar thoughts in words, rather than a diagram.

I think a particularly famous phrasing is by Ira Glass, which I think is what @Sergej Koščejev was referring to: driverlesscrocodile.com/starting-out/ira-glass-on-the-skill-taste-gap-1

Nobody tells people who are beginners – and I really wish someone had told this to me – is that… all of us who do creative work we get into it, and we get into it because we have good taste. Like, you want to make TV because you love TV. Because there’s stuff that you just love .

So you’ve got really good taste, and you get into this thing, that – I don’t even know how to describe it – it’s like there’s a gap. That for the first couple of years that you’re making stuff, what you’re making isn’t so good. It’s not that great. It’s trying to be good, it has ambition to be good, but it’s not that good. But your taste is still killer.

And your taste is good enough that you can tell that what you’re making is kind of a disappointment to you… you can tell that it’s still sort of crappy. A lot of people never get past that phase. A lot of people at that point, they quit.

And the thing that I would like to say to you with all my heart is that most everybody I know who does interesting creative work, they went through a phase of years where they had really good taste and they could tell that what they were making wasn’t as good as they wanted it to be. They knew that it fell short… that it didn’t have the special thing that we wanted it to have.

And the thing I would say to you is, everybody goes through that. And for you to go through it, if you’re going through it right now, if you’re just getting out that phase, or you’re just starting off and you’re entering into that phase, you’ve got to know that it’s totally normal, and the most important possible thing that you can do is do a lot of work, do a huge volume of work… [Put yourself] in a situation where you have to churn out the work, because it’s only by actually going through a volume of work that you actually then catch up and close that gap, and the work that you’re making will be as good as our ambitions.

Nilesh Trivedi 2022-08-23 11:08:38

📷 image.png

Kartik Agaram 2022-08-23 13:30:12

Thank you! And for the citations everyone.

Arvind Thyagarajan 2022-08-24 15:40:57

This is very cool!

fuzzmap.io/?welcome=1

We work a lot with visual state-machines (creating/defining state-machines visually to drive system state in the visual programme -- think xstate js but you're constructing the diagramme rather than having it rendered for you from code you write) and this fuzzer demo is exciting because it's an auto-state-machine, derived from real system states -- I can imagine this delightfully integrated with a testing framework.

I'm picturing a (dastardly? 😆) node-and-wire programme that runs through this fuzzer. If the run through emerges an unaccounted state, it's materialised in the state-machine embedded in the node-wire-nest, and the programmer can now create downstream logic to address this unexpected case.

could something like that work?

Nilesh Trivedi 2022-08-25 12:09:54

Speaking of automatically testing state machines, I wrote about my approach a few years ago: medium.com/cleartax-engineering/enumerating-test-cases-by-multiplying-state-machines-c1bedbf0e8e6

Ivan Lugo 2022-08-24 17:17:33

Heya folks, we’re live now and doing some thinkin’ chats!

[August 24th, 2022 10:11 AM] gushogg-blake: we're on now - https://whereby.com/the-mob-foc

Tony Worm 2022-08-26 02:35:49

Ask FoC: What are your favorite Lisps? Which ones are good for typical engineering work vs which are good for thinking and creativity?

Personal Dynamic Media 2022-08-26 03:13:27

So hard to pick!

Logo, Scheme, elisp, Lisp 1.5, MAClisp, RPL. I've had so much fun and learned so much over the years from all of them!

yeT 2022-08-26 03:30:38

Racket is always my go to

Tony Worm 2022-08-26 04:45:25

Which ones are usable from any editor? iirc, some of those have a much better experience from their custom IDE, but I have a hard time giving up my vim bindings

Personal Dynamic Media 2022-08-26 04:48:23

Elisp is emacs only. Lisp 1.5 and MAClisp I played with in emulators. RPL is on HP calculators.

So Scheme and Logo are the ones you can use in any editor.

Konrad Hinsen 2022-08-26 07:20:42

I have three favorites: Common Lisp, Racket, and Clojure.

Common Lisp is standardized, with several implementations optimized for different scenarios. You can even run it interactively on Android. Some implementations provide a decent live programming experience, in combination with a suitable IDE (Emacs + Sly for me).

Racket and Clojure are where innovation in the Lisp universe happens. And yet, both have solid and very usable implementations. Racket is the platform to choose for experimenting with language design (inclusing DSLs), and for access to pretty much all ideas in CS in the form of a huge standard library. Clojure (and ClojureScript) let you use Lisp in contexts where other languages (Java/JavaScript) are dominant players you have to arrange yourself with.

Tony Worm 2022-08-26 08:52:30

Thanks for the detailed overviews Konrad Hinsen

Justin Deal 2022-08-26 19:21:41

I feel like with LAMBDA , spreadsheet formulas are pretty much a Lisp? Which would make them my favorite simply because they also happen to be the most inclusive. Add in Coda’s chaining sugar, and that would be pretty much a, uh, sweet spot, IMO, of language expressiveness and readability/writability.

William Taysom 2022-08-27 11:16:25

The best Lisp is always your own! Common Lisp’s ~_*setf*_~ feels overly elaborate. Scheme is so cleverly non-dynamic and has some weird cons immutability rules. I guess my dislike of a Lisp is proportional to how well I know it!

Konrad Hinsen 2022-08-27 11:51:47

@William Taysom Well, then... the best Lisp, the one you make yourself, is also the one you know best and the one you dislike most.

William Taysom 2022-08-27 12:08:29

Checkmate! 😂

Tony Worm 2022-08-28 19:16:21

Something with a solid stdlib or ecosystem would be nice. I'd like to be production IRL without needing to rewrite the world