IllustratorsLeak
3blue1brown
3blue1brown

patreon


January update

Several times recently I've received update posts from people I support on Patreon that open with something like "I know I've been slow to publish content recently..."  In reading those, I always think to myself "Huh?  I actually hadn't noticed, I just enjoy what you make whenever it comes."  In general, content creators seem to assume their followers follow them more closely than they actually do.

That said, I know that I really have been slow to publish new videos lately, and yet I've been working quite a bit, so I thought you may want to know what's been in the pipeline.

On the probability front, the next two videos are written and just need to be animated (more on this below).  They'll be about the beta distribution, including various prerequisites to understanding it like the binomial distribution and probability density functions, and more generally about how Bayes' rule looks in a continuous context.


A quantum Quanta contribution

I also wrote an article for Quanta about how a quantum computing researcher who watched the videos on block collisions last year noticed that the underlying math is identical to the math behind a famous quantum search algorithm.  You know how you always hear about quantum computing being much faster than normal computing?  There are two algorithms people often point to exemplifying this:  Shor's algorithm for factoring, and Grover's algorithm for searching unsorted lists.  It turns out Grover's algorithm is, in a certain sense, identical to the block collision process.

Do you remember how as the block collision processes computed digits of pi (in base 10), we had to multiply the big mass by 100 to get each new digit, rather than by 10 like you might guess?  If we were working in some other base, say finding the bits of pi in binary, we would have needed to multiply by the square of that base, e.g. 4.  It turns out this squaredness corresponds to why Grover's algorithm is so speedy, in that it finds an element of an unsorted list of N items in around sqrt(N) steps.

In writing this, or more specifically in getting it edited, it dawned on me just how pampered I am with most of what I write, i.e. video scripts.  It's probably healthy to have a little more exposure to being editing according to a different publication's goals and standards, after all, how else do we break out of ruts.  It's also certainly healthy for someone as regularly loquacious as yours truly to be forced to cut things down to a certain size.  But at the same time, I repeatedly felt a desire to go into more detail.  As it was, though, the post had already pushed past the rather draconian wordcount that had been initially allotted.

All that said, I do plan to make a video on Grover's algorithm in more detail sometime this year, and in many ways, I viewed this article as a warmup for doing just that.


Talks and such

I'll be doing a talk for TEDx Berkeley in a few weeks.  This has actually taken more time to prepare than initially anticipated.  I'm treating it a bit like how I'd treat any other video, after all, it will ultimately be a YouTube video, just a slightly less animated and a little more focused on the nature of learning math, rather than any one particular topic.  If you're in the Bay Area and you'd like to come, you can use the code SPEAKER35 to get a discount.

I'm also giving a longer talk at Stanford tomorrow.  Again if you're in the Bay Area you're welcome to join, this one is free.

Usually, I try to keep talks to a minimum so as to stay focused on videos.  These two felt a bit special, though, and seemed worth the preparation.  As with the Quanta article, it's a fun exercise in posting ideas to the internet in an alternate format to people outside my usual audience.

In a similar vein, for those who haven't heard it yet, I was on Lex Fridman's podcast during a visit to MIT several weeks ago.  I certainly had fun, even if things erred a little on the too-philosophical side of things now and then.


Reworking manim

While it may sound like I've been pulled away from 3blue1brown tasks, it remains the case that the vast majority of my time is going towards the channel.

I've decided to take some time to rework the animation tool.  Or perhaps more honestly, in the last week, I've stumbled into a bit of a rabbit hole and I now believe it makes sense to just keep digging.

As many of you know, I create the visuals for videos using a scrappy custom python library, called manim.  For the most part, it's worked well for me, and I think the flexibility and the tight relationship to math that programatically-generated visuals provide has been what gives the channel a unique flare.  But there are some shortcomings that I've long been aware of and have long put off properly addressing.

Many people have requested a "behind the scenes" video about how I create animations, or otherwise for a tutorial on manim.  A big part of why I have yet to do this is that I'm not proud of the tool as it is, or of certain aspects of the workflow.  I would absolutely love for more people to make videos about math, and if the tooling I've made can streamline that process for others, that's fantastic.   But before making that call to action, I'd like to be sure that the tool actually would streamline the process as much as possible.

The first update I'm making is to reimplement some of the back end by more directly talking to the GPU with shaders.  It's new stuff for me, so it's required meaningful learning, but the end result will be faster rendering, and more importantly, dramatically more flexibility in what kinds of visuals can be created.  There are a few projects which I'd like to tackle in the future, ones which will potentially be very beautiful, but which manim is currently just not suited for.

The second main change will involve making the workflow for scene development a little more interactive.  Hopefully, I'll be able to share with you what I mean by that more concretely in a few week's time, but in theory, this should make a big difference on the time it takes to animate videos.

Sometimes it's worth recognizing when you're too busy chopping a tree to sharpen your axe.

Comments

I really appreciate this update.

Jacob Mirra

Whether or not Grant cares about competition (I suspect he doesn't), the quality of the videos isn't remotely just a function of the power of the animation tool. The real meat behind it is Grant's way of thinking and flair for intuitive and visual explanations. This is the sort of thing that no tool will give someone.

I'm a bit curious as to what you're reasoning for releasing your manim module to the public is. Doesn't this only lead to more competition for you? I assume you've seen a bigger picture to it all and were motivated by that. Please share.

Hopefully the core aspects of it won't change that much, but there will be more speed and flexibility on the backend, and the option for more interactivity on the front end. In either case, if it gets to a state I feel pretty good about, I'd probably put a little time into a little tutorial, or at least some well-scaffolded examples. Thanks for everything you've done!

3blue1brown

The though of major overhauls to manim makes me queasy and excited at the same time (excited because I love what you've done with it and queasy because I need to convince myself not to spend another summer learning the ins-and-outs to rewrite my manim tutorial ... again). I think I'm going to pass off the tutorial-writing to someone else for the next round. There are a lot of good resources out there now!

Most certainly, there's a layer of abstraction here. I've long thought about the best way to "bloggify" content like this...perhaps another rabbit hole later this year will yield an answer.

3blue1brown

Exactly!

3blue1brown

Nevermind - just had to Google the right things. For other Bay Area people, info is here: https://www.eventbrite.com/e/animating-math-an-evening-with-grant-sanderson-tickets-89686585993

Where and when is the talk at Stanford? I'm in the area and would love to attend!

Thumbs up to all that :) I happen to like all the things you do

Cole

If you're reworking the rendering pipeline, it might be worthwhile to abstract out a 'renderer' component. Not sure how compatible the shaders would be, but it might be good to preserve a CPU-only renderer as well. In addition, it can be an opportunity for different output formats. The first thing I'm thinking of is a rendering to SVG with Javascript code that provides a step-by-step "storyboard" variant of the animation. Might be nice for reviewing concepts at one's own pace :)

Shaders sound really awesome! One really, really nice consequence of being able to push all rendering to the GPU would be that you could potentially render your scenes in real time. That then means that you could build scenes that react to user input. You could then do things like presentations in Manim, and I guess making the videos would be easier because you could just "click" through the animations while talking.

I'm open to pull requests, but for the moment I find value in making these sorts of changes myself. In part, this is just because I want to learn new ideas and love making new things, so getting my hands dirty feels rewarding. But it's also because if I know how everything work through-and-through, it makes animating weird and different things in the future easier. In general, though, there are some other tasks I could see contracting out for projects less directly relevant to the video-making pipeline.

3blue1brown

I look forward to sharing it. I'm actually not too ashamed of the code itself, I like to think I'm at least halfway clean in the way I implement things. The issue is more with the current speed of the workflow, which I know can be improved.

3blue1brown

Ah yes, I noticed that. Great guy, Matt.

3blue1brown

Almost certainly this will come up in any video hoping to describe quantum computing.

3blue1brown

I love the recent probability direction and hadn't noticed any slowness. It's such a nice surprise when a new video pops up, and it's always worth waiting for. Looking forward to the other projects as well.

Would you perhaps at some time combine the two topics and talk about quantum amplitudes, Born rule etc?

Roman Odaisky

BTW: Matt Parker gave you a funny shout-out in his video about the 100 prisoners problem on standups math. Its near the end regarding Prisoner Number 5's infraction.

Speaking as a programmer, I would LOVE to see some more about manim - and furthermore, I know full well that some of my code is going to be even worse than it :) Possibly the act of describing the code will lead you to some changes that make it "more presentable" (in scare quotes, since I believe that ALL code is presentable), but either way, be proud of your code - it's created a wonderful collection of videos.

Rosuav

Btw Grant, are you potentially looking for help with the Manim project? I see you're open to contributions in the repo, but doesn't look like you're thinking of specifically delegating certain things to other people. I ask both as someone who might potentially want to help, but also because this is the kind of work you can contract out, at least somewhat, which you decided you don't want to do for the actual video creation.

Edan Maor

Super exciting updates Grant, looking forward to reading your Quanta piece. I've finally signed up to learn an actual math class next semester in University (Linear Algebra 2). It's a first step in doing something I've wanted to do for a while - get a math degree (this is almost 10 years after I completed my BSC in Computer Science).

Edan Maor

That “ Sometimes it's worth recognizing when you're too busy chopping a tree to sharpen your axe.” could be a useful standalone meme. ;-)


More Creators