Ruby Conf 12 - Y Not- Adventures in Functional Programming by Jim Weirich
Confreaks17 HN recommenders · 2013–2026
65K views · talk · evergreen · Uploaded 2012-11-11
Jim Weirich's RubyConf 2012 talk derives the Y combinator step by step, live-coding in Ruby lambdas. It builds up an understanding of functional programming and lambda calculus from first principles.
HN recommends it repeatedly as one of the best and most entertaining programming talks, and as the talk that makes the Y combinator click, even for people who do not use Ruby.
2:25:52The spelled-out intro to neural networks and backpropagation: building micrograd
Andrej Karpathy
49:55How Python was Shaped by leaky Internals, Armin Ronacher, Flask framework
Видео с мероприятий {speach!
38:47RailsConf 2014 - All the Little Things by Sandi Metz
Confreaks
42:03The Soul of Erlang and Elixir • Sasa Juric • GOTO 2019
GOTO Conferences
1:01:39"Simple Made Easy" - Rich Hickey (2011)
Strange Loop Conference
26:53What the heck is the event loop anyway? | Philip Roberts | JSConf EU
JSConf
25:06"Making Impossible States Impossible" by Richard Feldman
elm-conf
1:31:06William Byrd on "The Most Beautiful Program Ever Written" [PWL NYC]
PapersWeLove
20 comments from Hacker News
Jim Weirich derives the Y combinator in pure Ruby here: [LINK] EDIT: Correct video [VIDEO] It is some of the ugliest ruby code I have ever seen, but it was something amazing to watch happen live.
If you are curious about the topic, I strongly recommend watching these videos: Y Not- Adventures in Functional Programming by Jim Weirich [VIDEO] Programming with Nothing by Tom Stuart [LINK]
+1 on the lambda calculus stuff. Here's a related talk about deriving the Y combinator in Ruby by Jim Weirich: [VIDEO] (skip to about 28:00 if you're impatient) There are additional versions of this same presentation circulating with the code in Javascript and (I believe) Clojure. Full disclosure: Jim is a co-worker of mine.
[VIDEO] This talk is a must-see, really shows off Jim Weirich's craft and overall ability to be a great pedagogue.
Confreaks.com seems to be having some troubles, I'm guessing this is the same talk: Ruby Conf 12 - Y Not- Adventures in Functional Programming by Jim Weirich (uploaded by Confreaks): [VIDEO]
Since it is not readme based, I suggest including Y-Not[1] - an excellent talk about functional programming and lambda calculus [1]: [VIDEO]
I mean, sure, it's going to be turtles the whole way down if you're looking to define the universe without resorting to physical quantities (that is, dimensioned units). We don't have anything like a Grand Unified Theory yet, wherein we define Physics by means of some elemental mathematics (in the form that we can bootstrap computation from lambda calculus via things like the Y Combinator [0]). Besides, we occasionally give dimensional names to dimensionless quantities (my favorite being the engineering unit the inverse radian) [1]. It's a useful abstraction, and it seems confusing to complain about it. So we resort to what we know, which is what we see. We can't see more than the surrounding universe, but we can try extrapolating from what seems to work. Attempting to stifle that inquiry seems a bit... I dunno, pointlessly antagonistic. This article shows science in action, doing what it does best: taking observations and reconciling them with other observations via theory, and then fixing theory to match. It seems our universe follows certain equations which are themselves dimensionful, so I'm not sure why we wouldn't attempt to benchmark the universe against itself - we don't have much else to use. Even dimensionless numbers are only marginally useful, like alpha; it may "exist" and manifest as our universe, but it's not especially predictive. [0] [VIDEO] (one of my favorite videos - I still don't grok it, but I'm getting closer!) [1] [LINK]
Reading this, I was struck by how it reminded me of a talk that slowly warped and wrapped a statement to build up the Y-combinator. The process takes a self-referential function and slowly works the self out of it. Honestly, I'm not at all sure turning a function anonymous is actually similar to making a sentence passive, but maybe re-watching that video now I'll have that je ne sais quoi that'll let me actually grok the process. [0] [VIDEO]
Jim Weirich's "Y Not - Adventures in Functional Programming"[1] is perhaps the most entertaining and interesting technical talk I've ever seen. It would absolutely not be as cool or as fun without the live coding. Additionally, the incremental process by which he arrives at the conclusion makes the topic much more approachable. 1. [VIDEO]
Y Not - Adventures in Functional Programming by Jim Weirich [VIDEO] The Coming Civil War over General Purpose Computing by Cory Doctorow [LINK] Cybersecurity as Realpolitik by Dan Geer [LINK] [LINK]
For those (like me) that prefer learning through talks and demonstrations, Jim Wierich gave an incredible talk on the Y Combinator at RubyConf 2012. Video: [VIDEO] Code: [LINK]
Finally made an account to post in this thread. I'm rather early in my career doing mostly Ruby, Python and JavaScript things. As you might expect, I consume mainly Ruby, Python and JavaScript related talks. The first two talks that really blew my mind are: - K Lars Lohn's PyCon Keynote from 2016: [LINK] - Jim Weirich's (RIP) "Y Not" talk from RubyConf 2012: [VIDEO] There are many other presenters who I have a good opinion of: - Raymond Hettinger: his presentation/teaching style is something I'd like to model my own after, also he gave the first talk on writing proper threaded/concurrent python that I was able to understand and make use of. - Brandon Rhoades: another speaker with a presentation style that I've found easy to follow, also he takes a little shot at the dd utility about 18 minutes into [LINK] ) - Sandi Metz: I started out in Python land and moved to Ruby land, where I was introduced to Sandi's talks. She doesn't talk about incredibly complex topics, but she's got insight into some really basic things that's helpful to new people who can't see the forest through the trees. - Robert Martin: I gather that his OO principles are not universally revered, but I find his talks useful. - Gary Bernhardt: his talks are interesting and entertaining in ways that most are not The list goes on, but I can't think of them all right now.
This video (similar lecture, different audience) has the slides alongside the talk: [VIDEO] Still one of the best programming talks I've ever seen.
Jim Weirich's 2012 Ruby Conf talk is also a great introduction to the Y Combinator and Lambda Calculus. [VIDEO]
Here is a good one that come to mind: 1. This one is alive demo where the speaker derives the Y Combinator from first principles. A really interesting exposition of functional programming at its finest. Link: [VIDEO]
On the same topic, Jim Weirich's 2012 talk "Y Not - Adventures in Functional Programming" on lambda calculus and the (little 'c') Y combinator is fantastic. [VIDEO]
A good video that made it click for me is the following, which derives the ycombinator from 1st principles: [VIDEO]
Well, .NET's garbage collector certainly springs to mind. Not exactly in a good way. You know you have something special on your hands when GitHub refuses to show you a highlighted version of a hand written C++ file ( [LINK] ). Other than that, I remember my mind was blown a few times while watching Jim Weirich's presentation on functional programming all those years ago ( [VIDEO] ).
If anyone wants this in a humorous 1 hour format, watch the legendary Jim Weirich (rip) explain it here: [VIDEO] Don't be discouraged that it is in Ruby as the concepts are completely general. Great watch even though I never coded a line of Ruby.
Reminds me a bit of the coolest talk I ever got to see in person: [VIDEO] It’s a derivation of the Y combinator from ruby lambdas