Idea for future video: basically fix some bugs on raylib or other open source programs, I think many people who are trying to contribute would find that very helpful plus you're supporting FOSS.
The RNG can be important because some games (e.g. old-school Age of Empires) run independent simulations on each machine in multiplayer, so random outcomes on each machine have to match perfectly. It's also useful for allowing users to enter a seed to share and generate the same map (e.g. Minecraft).
1:10:21 i 100% agree with "youtube suggestions being bs" statement I used to use an extension to disable them, but now i found out that i can just disable youtube watch history, and it does the same thing, without an extention.
11:50 the filename is usually specified in an HTTP header named 'Content-Disposition', like so: Content-Disposition: attachment; filename="filename.jpg" Likely, wget does not pay attention to that header. Edit: Apparently, wget has an experimental flag --content-disposition which if set to 'on' will try to sniff that out. I haven't tried it, though. (wow, look at that React experience came in handy)
@@mbarrio this is usually done when the download is not an actual file, but generated dynamically. I suspect Github is just gzipping the code referenced by the tag 5.0 and streaming it on-demand with the filename in the Content-Disposition header, so clients can set the filename themselves.
Haven't tried but I assume curl would look up this header by default, considering it's different from wget in that it's specifically tailored towards being a HTTP tool. Edit: Apparently not, you have to pass -J flag to use the filename from the content-disposition header.
Content-Disposition is an e-mail header which was shoehorned into HTTP. It is a HTTP hack to serve something called "5.0" and expect agents to translate it to something else.
Not exactly sure copy-paste was the correct solution this time around though. While he is typically right about DRY, this entire video was fixing the problems caused by not having the version number be a variable. Magic numbers shouldn't be copy and pasted ever
26:25 When I was at High School I did try to compile some C++ libraries with the wrong versions of compiler and dependencies, my assumption was "it's newer so it's better". Recalling that in a fun way I would say it's like having a time bomb in your ass that can blow up at anytime, making you butthurt of so many unfixable errors. I quit programming until I started college XD.
I literally started using the same yt plugin last week. Cool to see. I also really like it. You can also actually hide the home page fully with a button on the extension.
45:28 That's my chat message being featured by the all-powerful zozin! Context: someone was confused as to Tsoding's usage of "DLL" to describe the hot reloading feature - I also didn't think it needed clarifying, but oh well
@@gerooqTrust me they don’t pay little to program management for companies in this language 😂😂 But I mean, anyone can understand rpgle in 8hrs a day, per 8 months… for me it tooks that time, and I have much to learn yet
in my non-expert opinion, from making anti-aliasing myself this past week, those dots of darkness could be clipping in the alpha channel, where it exceeds the maximum value during anti-aliasing, and rolls over to a near zero value when truncated
No, the whole point of a major version change is to indicate that there will be backwards incompatible changes made according to Semantic Versioning.@@SENTRY456123
About the 6:00 RNG I read the article he posted. It's not really that he made a well tailored. In fact the article expresses regret that he hasn't learned enough about RNG to address the problem directly. The original RNG he was using wasn't sufficiently random so he had to work around it with a table of high quality seed values. There's a lot of "mixing numbers in a bowl" as he put it, also. What I found cool about the system he describes is that he doesn't store the particles and simulate them forward like you normally do. Seems to me all he stores is the parameters of the system (emission rate for the entire system). He seeds each particle and simulates them forward from spawn time every frame. So there's no inconsistencies regardless of which frame you're coming from (with the braid time travel).
8:10 oh it does feel nice to have changes in public API accepted, {Attach,Detach}AudioMixedProcessor are the ones I added (also quite simple ones), and actually I was thinking you gonna use them for the musializer! They work exactly the same way as the ones you use, except they work on the mixed audio instead
SDL_INCLUDE_PATH is configured in the Makefile using ?=, which should mean that if you have that variable in the environment it would get inherited. Therefore, I think by "this MUST be configured by the user" the raylib authors actually meant that you should specify the include path and library path to your globally installed SDL, instead of cloning SDL into the external library directory.
on mac, musislizer scroll bar is broken. it works as if it thinks theres onle a portion os the song, so after a while the bar disapears but the song continues playing.
I have no opportunity to check it, since I don't have mac. But I think I know what it is and I think I fixed it at commit 7ba2fc25cebb68fac9f3249d2c045430d91ccb23
40:20 I have to use MacOS in my job and the issue I see is how locked it is. Hard to customise anything. But this can be a blessing, because you need to manually deactivate its security features if you want said customisation. Bad for tinkering, but good for an average user. And Tsoding is right: it feels like UNIXy to me. Specially because I go against all trends and I use terminal 90% of my time (like coding in VIM inside a terminal, automations via terminal, etc).
1:11:50 tbh, I have absolutely opposite situation. I have subs on channels that I really like but overtime, I just started to use suggestions and as for me, youtube really often shows me what I like to watch (especially it suggests me to always watch videos from channels where I watch all videos, like yours) so I completely forgot about "Subscriptions" привет
Renaming a function is a trivial change that could be implemented even automatically in the majority of the cases. For any Competent Developer it is never a show stopper. And bumping the major version for that is just counter-productive at best.
Not sure if this is relevant as im only through part of the video, but Debian and its derivatives putting the SDL2 headers inside the subdir SDL2 in /usr/local/include and not the base directory was an annoying quirk. Gotta love it when the distro meddles with how libraries are installed, makes for a good time
Most systems do that. It's intentional for a reason, because you may not have permission to access /usr/include but will for /usr/local and it also aids in installing multiple versions. I've got SDL 1.2 and 2 installed both, so it avoids conflicts with those two versions.
i'm on windows wouldn't wish it on my worst enemy for programming c++ lol every library is a headache without exception even using msys2 and pacman isn't bulletproof, but hey it managed to structure something sensible. i'm sick and tired of all these goddamn package managers anyway...
nob the mvp again showing off. like pressing a knob and it just works. on youtube suggestion. I only use subs view and sometimes on the right side in context with the video there are good suggestions.
Поначалу - учил. А сейчас уже сформировалась постоянная англоязычная аудитория, и если что-то на русском делать, то это надо уже отдельный канал создавать, все дела. Я подумаю что могу сделать. :)
well just like trying to get out of the army by "shooting yourself in the FOOT" it is way more fun to use the wrong version then bitch about what a shit piece of software to not use some crazy build system. Which is why I stopped deving for open source 25 years ago because we are all a bunch of assholes who know half as much as we think we do.
This is my favorite react js channel
Idea for future video: basically fix some bugs on raylib or other open source programs, I think many people who are trying to contribute would find that very helpful plus you're supporting FOSS.
yes I would love that and he is very good at C programming. I would love to contribute to C based FOSS
The RNG can be important because some games (e.g. old-school Age of Empires) run independent simulations on each machine in multiplayer, so random outcomes on each machine have to match perfectly. It's also useful for allowing users to enter a seed to share and generate the same map (e.g. Minecraft).
Love AoE/AoM
1:10:21 i 100% agree with "youtube suggestions being bs" statement
I used to use an extension to disable them, but now i found out that i can just disable youtube watch history, and it does the same thing, without an extention.
11:50 the filename is usually specified in an HTTP header named 'Content-Disposition', like so:
Content-Disposition: attachment; filename="filename.jpg"
Likely, wget does not pay attention to that header.
Edit: Apparently, wget has an experimental flag --content-disposition which if set to 'on' will try to sniff that out. I haven't tried it, though. (wow, look at that React experience came in handy)
github does this for multiple reasons, like package managers like "pacman"'s PKGBUILD.
@@mbarrio this is usually done when the download is not an actual file, but generated dynamically. I suspect Github is just gzipping the code referenced by the tag 5.0 and streaming it on-demand with the filename in the Content-Disposition header, so clients can set the filename themselves.
Haven't tried but I assume curl would look up this header by default, considering it's different from wget in that it's specifically tailored towards being a HTTP tool.
Edit: Apparently not, you have to pass -J flag to use the filename from the content-disposition header.
tsoding get owned by a react dev.
Content-Disposition is an e-mail header which was shoehorned into HTTP. It is a HTTP hack to serve something called "5.0" and expect agents to translate it to something else.
It is so refreshing to watch you speak about topics like "it's fine to copy-paste code" with balance, like a grey scale, not black or white.
Not exactly sure copy-paste was the correct solution this time around though. While he is typically right about DRY, this entire video was fixing the problems caused by not having the version number be a variable. Magic numbers shouldn't be copy and pasted ever
26:25 When I was at High School I did try to compile some C++ libraries with the wrong versions of compiler and dependencies, my assumption was "it's newer so it's better". Recalling that in a fun way I would say it's like having a time bomb in your ass that can blow up at anytime, making you butthurt of so many unfixable errors. I quit programming until I started college XD.
wouldn't find your channel without the yt suggetions...
So, its not bad for dicovering new things
I literally started using the same yt plugin last week. Cool to see. I also really like it. You can also actually hide the home page fully with a button on the extension.
which one?
45:28 That's my chat message being featured by the all-powerful zozin!
Context: someone was confused as to Tsoding's usage of "DLL" to describe the hot reloading feature - I also didn't think it needed clarifying, but oh well
I made a raylib binding for COBOL. Is anyone interested in this archaic language?
Bro 💀 i work on RPGLE 😬
Edit: not rpg free… I mean the fixed version 😀🔫
@@SadShiryhow much do you earn?
@@gerooqTrust me they don’t pay little to program management for companies in this language 😂😂
But I mean, anyone can understand rpgle in 8hrs a day, per 8 months… for me it tooks that time, and I have much to learn yet
@@SadShiry What is the requirements for getting a freshers job and how much do they pay a fresher?
in my non-expert opinion, from making anti-aliasing myself this past week, those dots of darkness could be clipping in the alpha channel, where it exceeds the maximum value during anti-aliasing, and rolls over to a near zero value when truncated
Should it even count as a major version change if nothing broke? (getting closer to seeing these live...)
I don't actually know if anything broke. Maybe I was just not using anything that broke. ¯\_(ツ)_/¯
You know modern softwares are too complicated when someone says nothing breaks with a major version change.
No, the whole point of a major version change is to indicate that there will be backwards incompatible changes made according to Semantic Versioning.@@SENTRY456123
About the 6:00 RNG
I read the article he posted. It's not really that he made a well tailored. In fact the article expresses regret that he hasn't learned enough about RNG to address the problem directly. The original RNG he was using wasn't sufficiently random so he had to work around it with a table of high quality seed values. There's a lot of "mixing numbers in a bowl" as he put it, also.
What I found cool about the system he describes is that he doesn't store the particles and simulate them forward like you normally do. Seems to me all he stores is the parameters of the system (emission rate for the entire system). He seeds each particle and simulates them forward from spawn time every frame. So there's no inconsistencies regardless of which frame you're coming from (with the braid time travel).
There's nothing more permanent than a temporary solution
8:10 oh it does feel nice to have changes in public API accepted, {Attach,Detach}AudioMixedProcessor are the ones I added (also quite simple ones), and actually I was thinking you gonna use them for the musializer! They work exactly the same way as the ones you use, except they work on the mixed audio instead
SDL_INCLUDE_PATH is configured in the Makefile using ?=, which should mean that if you have that variable in the environment it would get inherited. Therefore, I think by "this MUST be configured by the user" the raylib authors actually meant that you should specify the include path and library path to your globally installed SDL, instead of cloning SDL into the external library directory.
on mac, musislizer scroll bar is broken. it works as if it thinks theres onle a portion os the song, so after a while the bar disapears but the song continues playing.
I have no opportunity to check it, since I don't have mac. But I think I know what it is and I think I fixed it at commit 7ba2fc25cebb68fac9f3249d2c045430d91ccb23
40:20 I have to use MacOS in my job and the issue I see is how locked it is. Hard to customise anything. But this can be a blessing, because you need to manually deactivate its security features if you want said customisation. Bad for tinkering, but good for an average user. And Tsoding is right: it feels like UNIXy to me. Specially because I go against all trends and I use terminal 90% of my time (like coding in VIM inside a terminal, automations via terminal, etc).
1:11:50 tbh, I have absolutely opposite situation. I have subs on channels that I really like but overtime, I just started to use suggestions and as for me, youtube really often shows me what I like to watch (especially it suggests me to always watch videos from channels where I watch all videos, like yours) so I completely forgot about "Subscriptions"
привет
I've tried a drinking game, taking a shot every time you say "so".
Drank my month's supply of Baileys in 30 minutes🎅
"the shit may break" - words to live by
With content-addressable storage like in Unison, I would imagine that copypasting actually is compressed
Wouldn't adding functions into API also count as breaking change and therefore warrant bumping the major version?
I dunno, I feel like adding new functions does not really break the old code that does not use them.
@@TsodingDaily true, but considering no namespacing, what if you have your own function which name collides with a new raylib function.
Renaming a function is a trivial change that could be implemented even automatically in the majority of the cases. For any Competent Developer it is never a show stopper. And bumping the major version for that is just counter-productive at best.
@@TsodingDaily doesn't matter. The only question is: does it compile?
Or maybe it's none of this. Maybe raysan doesn't use semver and just likes increasing numbers.
Not sure if this is relevant as im only through part of the video, but Debian and its derivatives putting the SDL2 headers inside the subdir SDL2 in /usr/local/include and not the base directory was an annoying quirk. Gotta love it when the distro meddles with how libraries are installed, makes for a good time
Most systems do that. It's intentional for a reason, because you may not have permission to access /usr/include but will for /usr/local and it also aids in installing multiple versions. I've got SDL 1.2 and 2 installed both, so it avoids conflicts with those two versions.
i'm on windows
wouldn't wish it on my worst enemy for programming c++ lol
every library is a headache without exception
even using msys2 and pacman isn't bulletproof, but hey it managed to structure something sensible.
i'm sick and tired of all these goddamn package managers anyway...
No my web shit technology cant do that. It breaks even on minor versions :)
GYAT
Can Erlang parse MIDI buffers (in example Sysex) super efficient cause of its filter like features you showed us?
thanks for RYS extension
russian hacker reported for sudoing on own computer
he sudoed all over the place
@@gerooq he sudo my bash until i id 0
Isn’t that a wget bug which doesn’t use the disposition
you have a voice like butter
I bet your browser is giving more info that they use to throttle you compared to wget
is the joke on them again when you make a slow loris attack script? :D
nob the mvp again showing off. like pressing a knob and it just works.
on youtube suggestion. I only use subs view and sometimes on the right side in context with the video there are good suggestions.
01:15:01 browsers can (maybe too much)
Is it intended behaviour when it plays the last song after a multiple file d&d?
у тебя и линкус, и и3 и вим, набор хакера. а что за шрифт? Pragmata?
40:53 Well it's bsd based so yeah
how did you created your profile avatar?!
- 0:17:24 - Important Disclaimer
is my honest reaction on this unboxing video
Ahh! I missed the stream 😞 I didn’t get the notification like last time
@@basicallyeveryone yeah november 23rd
Even I am a contributor of Raylib lol
Cool stuff
Could you do wayland
You don't have to hide suggestions on TH-cam to just watch your subscriptions. Not sure how you came to that conclusion..?
If it was only 3435
очень нравятся твои стримы, а почему не снимаешь на русском? учишь так английский? я тоже с нск
Поначалу - учил. А сейчас уже сформировалась постоянная англоязычная аудитория, и если что-то на русском делать, то это надо уже отдельный канал создавать, все дела. Я подумаю что могу сделать. :)
well just like trying to get out of the army by "shooting yourself in the FOOT" it is way more fun to use the wrong version then bitch about what a shit piece of software to not use some crazy build system.
Which is why I stopped deving for open source 25 years ago because we are all a bunch of assholes who know half as much as we think we do.
Can you make a minecraft clone in Raylib? or you can't do that????
yes you can, it depends on you, not the engine
How do I join the discord server
there's a link on his twitch page
@@JasonShi-xc7nu thanks
btw SDL3 exitst
raylib sucks, SDL2 is far better and faster.
p5_1.ogg from 1:14:08?
soundcloud.com/nu11_ft/nu11-wip-works-2016-2022 at 17:21
Huge thanks, Mr.Zozin@@TsodingDaily
1 thing I often see myself doing while watching your videos: scrolling down to like the video and finding out I have already liked it 🥲