Series on linear algebra: https://www.youtube.com/playlist?list=PLZHQObOWTQDPD3MizzM2x...
Animation engine: https://github.com/3b1b/manim
There's also a loose group of people already doing the visual learners "explainers" thing over here: https://explorabl.es/ (you can scroll down for links to tools they use to make their explainers).
But yes, I also feel this is an important development and that this should be an ongoing way of teaching people things. Formal education has IMO stalled out around the printing press but there are massive opportunities on computers (and especially on globally networked computers) to take that a step further and leverage the capabilities of computers to make education even more engaging and information-dense.
> never thought some simple animation of moving a ball could take a whole night
yeah always surprising (more complexity that expected) when we look under the hood of any operation
> Can you name some example...
https://www.videoscribe.co/en/ is used by a few creators on YT, you must have seen their videos. I wonder who is building the tool itself.
From the the READE:
"Note, there are two versions of manim. This repository began as a personal project by the author of 3Blue1Brown for the purpose of animating those videos, with video-specific code available here. In 2020 a group of developers forked it into what is now the community edition, with a goal of being more stable, better tested, quicker to respond to community contributions, and all around friendlier to get started with. See this page for more details."
https://github.com/ManimCommunity/manim/
According to 3b1b on the original repo:
"Note, there are two versions of manim. This repository began as a personal project by the author of 3Blue1Brown for the purpose of animating those videos, with video-specific code available here. In 2020 a group of developers forked it into what is now the community edition, with a goal of being more stable, better tested, quicker to respond to community contributions, and all around friendlier to get started with."
""" NOTE: This repository is maintained by the Manim Community and is not associated with Grant Sanderson or 3Blue1Brown in any way (although we are definitely indebted to him for providing his work to the world). If you would like to study how Grant makes his videos, head over to his repository (3b1b/manim). This fork is updated more frequently than his, and it's recommended to use this fork if you'd like to use Manim for your own projects. """
See the gallery for it in action [2].
[0] https://www.youtube.com/channel/UCYO_jab_esuFRV4b17AJtAw
It's an awesome python library to create math animations, I would highly recommend it.
- Make a blog post about your situation, where do you work now (it doesn't have to be identifying info, something like a PhD student in Germany), what are your (social & technical) goals with this project, what about financial goals...etc. By "social" I mean why things like "why is this open source?" and "why do you think it ought to be done?"
- If the choice of AGPL is not based on strong political opinions, you might want to reevaluate that if you are planning for some commercial adoption. A lot of companies have policies on the inclusion of GPL code. MIT/BSD might be more viable in the long term.
- Read about people making money from FOSS, check their reports on their situation, and dig down to see how they started.
- I feel more confident donating when I know how much a creator/dev is making per month (via donations) and what their next goal is. (You know, these Patreon progress bars)
- Options are paralyzing. Choose one funding site to be the main one. You could leave the rest under an "other ways to donate" link.
- Be open to doing some freelancing until you can sustain yourself. (Math tutoring, Software gigs, consulting)
- A lot of the time, the thing that ends up actually making money is a side product sold on top of the original code. You could think about videos teaching how to use the library, consulting, feature requests...and such.
- People donate to the things they feel value and potential. The magnitude of your users is going to be a lot less than other projects out there. So, you might need to get more out of your users, deliver more value to them, and/or get researchers to write on how valuable your library was to them, so that non-expert, science enthusiasts understand the value proposition better.
- I don't know much about the field, but you might benefit from writing some bindings/wrappers for your library to be used from Python/Matlab/Fortran considering Julia's current market penetration.
- I know this sucks, but social media is pretty important if you want to be making money from donations. You want to follow people doing research in relevant areas and who might use your library. Join in anytime you can add something useful to the conversation. Get people to get used to your name and build creditability. Go where the users are and build an honest, trustworthy image for yourself there. EDIT: Ok, I see you have been doing that in discourse.julialang. Good job and continue ahead. Maybe after you setup a proper announcement for your open work, you can link to it in your signature that goes along with your posts/comments.
-----------------------
# Things to read (I am posting HN links because comments sometimes have hidden gems):
- I Quit My Job to Live on Donations to Zig (https://news.ycombinator.com/item?id=17256394) [first comment is spot on]
- Why I'm donating $150/month (10% of my income) to the musl libc project https://news.ycombinator.com/item?id=20268087
- I Just Hit $100k/year On GitHub Sponsors (https://news.ycombinator.com/item?id=23613719)
- I'm going to work full-time on free software (https://news.ycombinator.com/item?id=18920604)
- The happinesses and stresses of full-time FOSS work (https://drewdevault.com/2020/01/21/Stress-and-happiness.html)
- The path to sustainably working on FOSS full-time (https://drewdevault.com/2018/02/24/The-road-to-sustainable-F...)
-----------------------
# Off topic:
- If you still want to do YouTube, 3b1b open sourced the library he uses to make his videos.
- Maybe there is a niche for youtube vids for advanced students studying maths at home these days. IDK, that is not really my field.
He has opensourced his animation engine "manim" used in his videos: https://github.com/3b1b/manim
I've written a new blog post (https://rajatvd.github.io/Factor-Graphs/) on an awesome visualization tool that I recently came across -- factor graphs. Initially, I encountered them in the context of message passing on graphical models, but soon realized that they are useful in more general contexts.
This is the first post in a series that covers the basics and mainly focuses on understanding how factor graphs work as a visualization tool, along with a cool example of a visual proof using them. In future posts, I plan to cover algorithms like message passing and belief propagation using this visualization framework.
I made the animations using manim(https://github.com/3b1b/manim/), a math animation tool created by the amazing 3blue1brown. I built a small library, manimnx(https://github.com/rajatvd/manimnx), on top of manim to help interface it with the graph package networkx. You can find the code for the animations in this github repo: https://github.com/rajatvd/FactorGraphs.
Feedback is welcome!
Sources for episodes are included: https://github.com/3b1b/manim/tree/master/active_projects/od...
The composer behind for many of the songs is Vincent Rubinetti: https://vincerubinetti.bandcamp.com/album/the-music-of-3blue...
3b1b interview: https://www.youtube.com/watch?v=A0RH93XvSyU
This is a great point and one I've been thinking about more recently. Tools and/or setups like the one displayed in the post with this level of specificity or complexity seem like they would be almost useless packaged up as a standalone. Much more valuable would be the system on which this was built (vim and the collections of extensions he used, not saying this is anywhere near an idea workflow but as you know if you use vim - it is extensible in its own right). Or, rather than that system, to take inspiration in it and design tools with much more intentional flexibility to allow people to build their experience.
I recently had a great conversation about how science educators might wish to have 3 brown 1 blue style animations or experiments, but such a programming tool would be much too difficult to teach to the educators. I think that is totally true, 3b1b generates his videos programmatically and while I believe some version of his tool is open source, he does not offer any support. But there is something to the idea of having one's own publishing tool and workflow to allow the exploration of ideas in whatever field it may be. For Science teachers, they ought to be able to play in a tool like 3b1b uses, but it can't be his exact one, it seems they'd need some well thought out foundation upon which to express their mental models of physics or geometry or whatever it is.
3b1b about page; first item is his modeling approach: https://www.3blue1brown.com/faq
3b1b animation: https://github.com/3b1b/manim
The animation engine is on GitHub so you can make your own: https://github.com/3b1b/manim
i had high hopes this would be it, but this is just a concise lesson form for the series.. which is great! i am a huge fan of both eater's and sanderson's entire ouvre
what's great is that 3b1b releases the code that generates these videos and i have cloned the manim(o) library a number of times in the past when a video had an idea i wanted to play around with but the effort usually gets a low priority and i get distracted with more pressing projects
i figure a simple localhost python server serving up dynamic frames generated by manim could do the trick, maybe i'll work at it again this weekend
when i want to learn a new mathematical concept i like to write the source myself, which is great for getting at the nuts and bolts but it is usually after i have done this and start to tweak the models or constants that i begin to gain a real intuitive understanding of an underlying concept
[1] https://www.youtube.com/channel/UCYO_jab_esuFRV4b17AJtAw
He makes the software used to create the animations and it's open-source: https://github.com/3b1b/manim
[1] https://www.youtube.com/playlist?list=PLZHQObOWTQDPD3MizzM2x...
Manim: animation engine for explanatory math videos https://github.com/3b1b/manim
Here's where I got to since the README.md is basically empty for the moment.
So far I've got it to do something. It needs at least these python libraries as dependencies.
- cv2 (This is OpenCV and is not easily installable inside virtualenv)
- colour
- progressbar
- tqdm
I'm running everything from the main manim directory, after a git clone. git clone https://github.com/3b1b/manim
cd manim
Its also expecting a `../animation_file/images` directory to exist. mkdir -p ../animation_file/images
Now each project consist of a set of classes, each one a scene. To view a scene, it can just be instantiated PYTHONPATH=`pwd` python
>>> scene = generate_logo.LogoGeneration()
There's a progress bar that shows a few times. Then a new window shows up for me (from ImageMagick? Maybe that's a dependency too.).Then I think you can call .construct() on the object.
>>> scene.construct()
But it took too much computational power so I stopped there.