in the end there the "how can i write the best possible thing" vs "how do i make this thing first then make it better" relly depends on the project, with c its relly easy to do the second since you dont have as much potential spagetthi to deal with, but this mindset in something like java or c# could relly make it far harder to maintein in the long run, which are what OOP languages do best, they are by far the best paradigm when it comes to scalability.
@spiderjuice987428 күн бұрын
Having studied both C (self-taught) and chemistry (at Uni) I totally approve of what I see here :)
@melvin452429 күн бұрын
Can't you just iterate through the filename comparing to the ascii code for the . ?
@voxelrifts29 күн бұрын
The problem isn't *finding* the dot, it's splitting the string at the dot. After finding the dot if you need a separate string representing just the filename, you'd have to replace the dot with a null terminator, which will break the string representing the entire filename with extension
@CuriousLadАй бұрын
VOXEL IS THAT YOU FROM THREE'S DISC
@andreas_techАй бұрын
C is the best for any beginning developer.
@AnnatarTheMaiaАй бұрын
Now try (CUDA)Fortran and ANSI Common Lisp.
@ivanborsuk1110Ай бұрын
hash tables again when you should use stdlib qsort and bsearch
@psibarpsiАй бұрын
I love you! because I love low-level schtuff and so do you!
@woosukbyun2455Ай бұрын
Thank you for your video. Are you working as a C programmer now?
@homerlol9058Ай бұрын
Probably a weird question But do You guys consider worth it to become a good C Developer? With the current job market it seems we have over abundance of web devs and high level programmers So I thought it may be a good idea to switch to low level, because I always hear people's dislike of it. Maybe i'm ranting too much tho
@voxelriftsАй бұрын
I'd say it is definitely worth it. Not for C specifically but because of the low level understanding you get as a result of learning C. In general any low level language and sufficient curiosity is good imho
@ndaheroson7941Ай бұрын
beautiful, not boring video. Thanks for sharing.
@vinugb2 ай бұрын
Great video mate, videos like these keep my spark up, thanks for this ❤
@Codigger-br2rt2 ай бұрын
No matter what the language, this is a must to learn, it is said that the process control: sequence, cycle, selection, can solve all the problems in the world. Of course, only understanding the flow control can truly understand the program! 1. Sequence: Normal statement execution, from top to bottom. 2. select :if or select... 3. for while...
@larryrowe2 ай бұрын
You do know that you can call C code from Java and get the best of both languages
@sammy_0072 ай бұрын
I just saw PrimeTime's video where he reacts on this exact video And I got this on my yt feed now
@nevokrien952 ай бұрын
Shouldn't you be passing a size to the arena? Seems like a small string is gona take diffrent sizes tha. The full thing
@Hassan-lv9di2 ай бұрын
Your approch and projects are wonderful! I really enjoyed the video
@NithinJune2 ай бұрын
why no captions?
@ensiferrus90902 ай бұрын
9:35 `void type##_slice_subslice(...);\` "void"? Are you sure about that? [0] 9:50 `type##_slice_subslice(slice, idx)` Are you sure about that? [1]
@voxelrifts2 ай бұрын
Yep, yep, that was a mistype
@69k_gold2 ай бұрын
While watching videos like this, I feel like I was the only one in the whole undergrad world who got into CS without a massive headstart
@filoreykjavik3 ай бұрын
What library did you use for implementing graphics in your chemistry projects? BTW thanks for this video, very informative, very inspiring
@voxelrifts2 ай бұрын
No library used there, I loaded opengl function pointers directly. Also, thanks :)
@cloudproblemssolved3 ай бұрын
Thx for sharing free resources and channels rather than promoting paid content
@user-dl2kk1cb8e3 ай бұрын
i like the colorscheme and font , names ?
@voxelrifts2 ай бұрын
Font is inconsolata, the colorscheme is Ryan fleury's which is modified from the theme Casey uses for handmade hero. I don't think it has a name.
@alirezamohseni16193 ай бұрын
That is so good 👍.
@truck.-kun.3 ай бұрын
This is like intro to High Performance Computing! This video is so informative. loved it
@DylanFalconer3 ай бұрын
This is really cool! I usually dislike rotated pixel art but you've done a great job keeping it cohesive 🎉
@cartoonbackups3 ай бұрын
I want to do this in WarioWare D.I.Y.
@maciek82583 ай бұрын
*
@Little-bird-told-me3 ай бұрын
try zig
@gorenbk3 ай бұрын
Is a linear allocator… just a stack?
@voxelrifts3 ай бұрын
Can be implemented as one easily yeah!
@gorenbk3 ай бұрын
@@voxelrifts wait i dont get it. is the normal rsp thing with a push instruction that most CPUs give you by default an arena allocator?
@voxelrifts3 ай бұрын
@@gorenbk Well not exactly, an arena is an arena if you free the memory all at once. If you want to pop off memory it wouldn't be an arena, but instead it'd be a stack allocator. Also I wouldn't call push/pop instructions "allocator functions" at all.
@emma_nwafor13 ай бұрын
bro voice so soothing
@Little-bird-told-me3 ай бұрын
I read K&R and I know little bit of C, now i hear about zig and odin and wonder if they are a better version C, or should I learn C and then move on to zig
@LiterateProgramming3 ай бұрын
Much enjoyed and shared this with my students. I actually started out many years ago with C++ but I'm enjoying C more and more, especially teaching it. Cheers
@nathanrapport86613 ай бұрын
What IDE and tools do you use for programming and debugging C? I'd love to hear more about that.
@priyanshu33312 ай бұрын
He is using Visual Studio 2022 with its built-in debugger and build system. And Microsoft Visual C++ (MSVC) compiler.
@CorpoWolf3 ай бұрын
😢 I wanted you to say what you used for the visualization program. Was it C with GLFW / GLAD, was it SDL2, was it Raylib? What was it ;c
@voxelrifts3 ай бұрын
None of the above! It was C with my own base layer which was pretty rudimentary and bad at the time.
@CorpoWolf3 ай бұрын
@@voxelrifts How did you make it display anything on the screen? OS libraries? I think this is the first time I've heard about writing your own base layer. Didn't know it was even possible.
@yash11523 ай бұрын
9:09 "use preprocessor" oh no, sh** u* 🤦♀️🙄🤮🤬
@aligharaibeh37613 ай бұрын
Your videos are calm and nice💐
@agustinpizarro4 ай бұрын
Try nim or zig ....
@romzeek4 ай бұрын
Hello, friend. Could you please add subtitles? I'm kind of deaf
@yaroslavpanych20674 ай бұрын
All basic things that you ever need are included. If you think that something is not included, that is 99.999999999999% is not basic things. If you keep thinking that way - get out of my planet, humanity doesn't need such dead weight as you!
@noorhashem74 ай бұрын
Thanks for the great video! What debuger are you using in that video, is it a VSCode extention?
@ItsCOMMANDer_4 ай бұрын
it didnt watch the whole video yet , but gotta agree with the relativly small library, especilay string.h. at this point i acully decided to write my own stdlib like library (but focusing on adding better string functions and advances data types like linked list)
@KangJangkrik4 ай бұрын
Is arena aligned? If no, then it's definitely useful for implementing most communication protocols
@ShotgunLlama4 ай бұрын
Am I mistaken in that arenas still need a backing memory buffer, which you'd need to either have in static memory or still allocate on the heap, the latter requiring either using malloc anyway or using a system specific function?
@voxelrifts4 ай бұрын
You are correct, you need to allocate the backing buffer, either with malloc or with os specific calls like VirtualAlloc or mmap.
@nobiado484Ай бұрын
You will call malloc, but it will be only once for all the small objects that you will use, so it can be faster than several separate calls to malloc. It also helps to reduce memory fragmentation, as you can allocate arenas of a fixed size, regardless of the size of your smaller objects. And finally, you also reduce the number of times you call free(), which can also be costly and problematic. This helps both with memory management and performance, as you free all the objects from that arena at once, at one place. It's not ideal for every case, but it's very useful for the use cases he mentioned in the video.
@luigidabro4 ай бұрын
Is a ternary operator that just sets a value as bad as the other if statements?
@rmt35894 ай бұрын
I'm only learning C for CS50x and to help with learning C++. Though I might come back to this video in the future, I'm gonna walk away for now. (Rn, I can't stop sneezing while this video is playing. Send help!!!)
@Calypso6944 ай бұрын
I'm learning C now. Cant even fathom writing more complex things or how to even go about it.