We'll get there 😁 I'll make some more detailed videos on each of the different allocator types, this is more of a quick overview! Hopefully it gives folks enough of an intuition that if they go and read about different allocators on wikipedia or stack overflow, the concepts will make sense.
It’s a pleasure to hear you explain such interesting topics in such a simple and understandable way. This kind of content really motivates me to program.
Oh, I'm super interested if you make more videos about Allocators! Recently started learning C and Odin and while I feel like I understand Allocators themselves, I struggle to know when and how to actually use them I also love how clearly you explain things, keep up the great work :)
Such a great explanation! As someone with a high-level web development background learning about this, I find it incredibly useful and interesting. Thank you!
Thanks! I think a lot of the topics around C and similar "low level" programming are prone to a bit of gate keeping and intimidation, whereas a lot of it is just very straightforward, logical and simple 🙂
@nicbarkeragain I suppose that explains the "air of intricacy" surrounding C and Low-level programming paradigms and concepts. I genuinely look forward to more low-level programming contents from your channel.
I make all my motion graphics using Canva 🙂 It's pretty limited compared to after effects or motion, but it gets the job done for what I need. I used to work there so I kind of picked up all the tricks haha.
@@nicbarkeragainthanks for the tip! Love canva 💜 and would love to see a canva style ClayDesigner sometime soon to quickly draw up and export clay ui to any platform (as mentioned in another comment)
This is great stuff. I've previously watched your video on arenas too. Memory management is something I struggle with a whole lot. I learned C some 15 years ago through a book, but I never learned anything about allocation strategies from it. Then I moved on to C++ (until I started hating it) and garbage collected languages (AS2, Haxe, Python, Lua, Nim), so, as crazy as it may sound, I never even knew allocators were a thing until I started using Odin recently. And then I find myself fighting memory leaks all the time (I'm using a tracking allocator to see them). I could be wrong, but I've watched many programming videos using C, and it seems to me that allocators is a subject that's been very widely neglected. (I don't like using C myself, but I find it interesting.)
Believe me I totally understand where you're coming from. I did a computer science degree and was exposed to this kind of stuff, but it never really clicked for me until I built some projects that actually used the concepts. I can't how many of those "wait, this is actually simple" moments I've had over the years. I'm hoping I can short circuit some of the pain for others 🙂
There was a move some 25 years ago, along with oop paradigm, that aimed to abstract any memory management away. This works fine until performamce issues hit (due to data being scattered around memory and pointer pointing to pointers pointing to pointers.... pointing to data). Then, many programmers not versed in how memory works under the hood, literally do not have an idea of what might be slowing the program down. As Eskil Steenberg said - initially all you want is convenience, eventually, all you want is control
In javascript async is implemented by adding a less prioritized stack called "the microtask queue". That way all immediate tasks not dependant on the async tasks are completed, then a microtask is run (will all the implied synchronous tasks like having a for loop inside an async function) and the next one and the next one. The runtime switches to another stack once the currently used one (sync stack or async queue) is completely empty, prioritizing the syncronous code. That's a very simplified general overview, I'm not an expert in runtimes. Don't know of any other solutions.
@@cornjulio4033 I was making a counter joke 😅 I actually love weird al, I listened to him all the time as a kid in the 90s, I memorized the lyrics to living with a hernia and like a surgeon! I was referencing the fact that Daniel Radcliffe plays Weird Al in the mockumentary / movie 🙂
Super underrated channel for some reason. Came from the clay vid, stayed for the concise and visually pleasing explanations. Great watch
Thanks, glad you enjoyed it! I really like making educational videos so it's great that people are getting some value out of them
This video is sadly too short. I would happily watch an hour of you talking about allocators.
We'll get there 😁 I'll make some more detailed videos on each of the different allocator types, this is more of a quick overview! Hopefully it gives folks enough of an intuition that if they go and read about different allocators on wikipedia or stack overflow, the concepts will make sense.
I just found you yesterday, its cool to see a new vid. You are such a good teacher btw.
Thank you, I really enjoy making these videos!
It’s a pleasure to hear you explain such interesting topics in such a simple and understandable way. This kind of content really motivates me to program.
Oh, I'm super interested if you make more videos about Allocators!
Recently started learning C and Odin and while I feel like I understand Allocators themselves, I struggle to know when and how to actually use them
I also love how clearly you explain things, keep up the great work :)
Just got this recommended, happy to have found you, awesome video!
Very good explanation, I would be happy to watch a longer more in depth version.
Man, you should run your own CS course as you'd put the universities to shame. Keep it up please!
You might have guessed something I have planned for the near future 😁
Such a great explanation! As someone with a high-level web development background learning about this, I find it incredibly useful and interesting. Thank you!
keep them coming! this is becoming one of my favorite channels :D
Incredible storytelling, visuals, and passion! I can’t wait to learn more, and awesome new library BTW!
So glad you enjoyed it! This video is one of many planned 😁
Such an Underrated Channel, Especially that vector graphics animation. What software did you use to make them?
I make all my motion / vector graphics using the Canva video product 🙂
i think a c tutorial series which implements these concepts or other videos regarding c would be great
That is a fantastic idea!
I must commend your approach at simplifying seemingly intricate subjects, and explaining them in ways that are quite easy to comprehend.
Thanks! I think a lot of the topics around C and similar "low level" programming are prone to a bit of gate keeping and intimidation, whereas a lot of it is just very straightforward, logical and simple 🙂
@nicbarkeragain I suppose that explains the "air of intricacy" surrounding C and Low-level programming paradigms and concepts.
I genuinely look forward to more low-level programming contents from your channel.
Love your animations, what do you use to make them?
I make all my motion graphics using Canva 🙂 It's pretty limited compared to after effects or motion, but it gets the job done for what I need. I used to work there so I kind of picked up all the tricks haha.
@OMG, I use Canva all the time for thumbnails and in-video images. I had no idea you could use it for motion graphics. Great Tip, Thanks 🙏
@@odytrice Yeah the video product is quite underrated. You can do slide transitions and pretty decent animations, then export at 4k60fps.
@@nicbarkeragainthanks for the tip! Love canva 💜 and would love to see a canva style ClayDesigner sometime soon to quickly draw up and export clay ui to any platform (as mentioned in another comment)
This is great stuff. I've previously watched your video on arenas too. Memory management is something I struggle with a whole lot. I learned C some 15 years ago through a book, but I never learned anything about allocation strategies from it. Then I moved on to C++ (until I started hating it) and garbage collected languages (AS2, Haxe, Python, Lua, Nim), so, as crazy as it may sound, I never even knew allocators were a thing until I started using Odin recently. And then I find myself fighting memory leaks all the time (I'm using a tracking allocator to see them).
I could be wrong, but I've watched many programming videos using C, and it seems to me that allocators is a subject that's been very widely neglected. (I don't like using C myself, but I find it interesting.)
Believe me I totally understand where you're coming from. I did a computer science degree and was exposed to this kind of stuff, but it never really clicked for me until I built some projects that actually used the concepts. I can't how many of those "wait, this is actually simple" moments I've had over the years. I'm hoping I can short circuit some of the pain for others 🙂
There was a move some 25 years ago, along with oop paradigm, that aimed to abstract any memory management away.
This works fine until performamce issues hit (due to data being scattered around memory and pointer pointing to pointers pointing to pointers.... pointing to data).
Then, many programmers not versed in how memory works under the hood, literally do not have an idea of what might be slowing the program down.
As Eskil Steenberg said - initially all you want is convenience, eventually, all you want is control
Armed with this knowledge, Al can never hide from us again.
Votes here for an extended version
Haha I will likely do several more videos on the actual implementation of a couple of allocators that I find very useful.
The government deallocating resources? Must be such a nice country to live in
GREETINGS CITIZEN. PREPARE TO BE DEALLOCATED
Oh no... 😂
Awesome. Plss start series on game programming ❤
Sir, thank you very much! Terrific!
Good vidéo 👍
keep the good work going !!
Very good content
Thanks, great you enjoyed it!
Great video! Peace out
I've found the Willy Wonka (Gene Wilder) of programming tutorials, "Come with me and you'll see a land of pure allocation ..."
In javascript async is implemented by adding a less prioritized stack called "the microtask queue".
That way all immediate tasks not dependant on the async tasks are completed, then a microtask is run (will all the implied synchronous tasks like having a for loop inside an async function) and the next one and the next one. The runtime switches to another stack once the currently used one (sync stack or async queue) is completely empty, prioritizing the syncronous code.
That's a very simplified general overview, I'm not an expert in runtimes. Don't know of any other solutions.
Nice Channel, Weird Al !!
My name is actually Daniel Radcliffe 😤
haha, ok :D It was just a joke. Referring to bloke from the 90ies
@@cornjulio4033 I was making a counter joke 😅 I actually love weird al, I listened to him all the time as a kid in the 90s, I memorized the lyrics to living with a hernia and like a surgeon! I was referencing the fact that Daniel Radcliffe plays Weird Al in the mockumentary / movie 🙂
5:40 in one place
military getting only 10% is wild
The analogy to the distribution of taxpayers' money is not well chosen. Or is your RAM secretly 'allocating' into it's "side-RAM"?
Yes. Windows typically embezzles about 2GB of my ram.