Reviewing Your Pull Requests

  Рет қаралды 25,556

Tsoding Daily

Tsoding Daily

2 ай бұрын

Previous Episodes: • Raylib.js
References:
- Source Code: github.com/tsoding/zozlib.js
- git-bisect: git-scm.com/docs/git-bisect

Пікірлер: 108
@dabbopabblo
@dabbopabblo 2 ай бұрын
There is a difference between nullish coalescing and the or operator. The or operator will return the right value if the left operand is a falsey value. however the nullish coalescing syntax will only return the right value if the left operand is null or undefined. So "" || "a" returns "a", but "" ?? "a" returns "" Edit: I paused and commented before watching the next 5 seconds. Oops.
@TsodingDaily
@TsodingDaily 2 ай бұрын
> I paused and commented before watching the next 5 seconds. Oops. Classic :)
@TurtleKwitty
@TurtleKwitty 2 ай бұрын
Bit of context on the touch one; if nothing handles the touch event the browser converts to a mouse event and refires so that older sites can work on mobile. It's pretty common to handle only mouse even for touch events if theres nothing specific to touch you're trying to do
@lievenpetersen
@lievenpetersen 2 ай бұрын
This session is super cool! Seeing the maintainer's side and some git usage is very interesting. Thank you so much!
@user-ux2cx4kc3h
@user-ux2cx4kc3h 2 ай бұрын
Hi Zozin! I recently played with WASM in Go and I liked the approach proposed there, I think it’s quite interesting because having just once written a wrapper for calling functions from Go on the JS, you can then use the language of the project itself, in this case C, to create an API for raylib And thanks for the streams, I highlighted a lot of useful things from them :3
@ludwintor4986
@ludwintor4986 2 ай бұрын
git blame is good thing to blame other people git bisect is good thing to blame other people before figuring out that you are blaming urself
@MrKristian252
@MrKristian252 2 ай бұрын
Congratz with 100k!!!!!!
@cobbcoding
@cobbcoding 2 ай бұрын
I had no idea about that git bisect command. thats so useful
@demolazer
@demolazer Ай бұрын
As a relative novice, it is very interesting to see live the process of open source collaboration.
@hanshh3532
@hanshh3532 2 ай бұрын
23:40 As a Visual Studio user this was pure magic! Generally, I enjoy your navigation through your system.
@naymon357
@naymon357 2 ай бұрын
Dont use VS then xD although am pretty sure you can set shortcuts for multicursor in vs as well
@ludwintor4986
@ludwintor4986 2 ай бұрын
you can do it in VS also
@theodorealenas3171
@theodorealenas3171 2 ай бұрын
So far as I know, multiple cursors are a plugin in Emacs, and I do know VS Code has them built in, so there's got to be at least a plug in for VS too
@Mythricia1988
@Mythricia1988 2 ай бұрын
This is not in Visual Studio?! It's in VSCode at least, and it is indeed extremely useful when bulk editing or re-formatting something you pasted from another language or some weird (but structured) source.
@ludwintor4986
@ludwintor4986 2 ай бұрын
@Mythricia1988 VS have multiple cursors built-in as default, Shift+Alt and arrows up/down (or Ctrl+Alt and click with mouse to set at specific positions)
@maximus8045
@maximus8045 2 ай бұрын
46:35 king
@erroneum
@erroneum 2 ай бұрын
In regards to ?? vs ||, ?? is the null coalescing operator, it takes the first unless it's null, then it takes the second; || will give the first if it's a "truthy" value, so anything that's falsey except null or undefined will be rejected by || but accepted by ?? As an example: "", false, and 0 will all yield to the alternative with ||, but be accepted by ??
@Pi7on
@Pi7on 2 ай бұрын
Didn't know about git bisect, very cool
@JakeSilva-67
@JakeSilva-67 2 ай бұрын
I love your stream ❤
@clubpenguinfan1928
@clubpenguinfan1928 2 ай бұрын
my uber after 20 minutes of silence: looks like we arrived
@dieSpinnt
@dieSpinnt 2 ай бұрын
To "The Browser Should Be Simpler ..." (around 41:00 + "Support for worker execution context. No. 22" Pull Request). I totally agree! The browser should simply be the X-Server of the "Web", an engine to display Scheisse! Now it is a -playground- -for- dumpster fire of all kind of internal frameworks and wannabe features like VRML and CSS( hehehe, hate me for that:P). Absolutely BLOATED BS! When did we take the wrong turn? (Hint: "The Browser Wars", Microsoft, Google, Mozilla. There are no angels in this club!:))) )
@bart2019
@bart2019 2 ай бұрын
I suspect the ?? is inspired by PHP.... There you initially just had ?: which was later followed by ?? What is funny is that in PHP these are actually 2 operators (each) so you may put whitespace between them. (These are the ternary operators.) ?: is the same as || in JavaScript
@gusic4529
@gusic4529 2 ай бұрын
asyncify
@p99chan99
@p99chan99 2 ай бұрын
No
@blackhaze3856
@blackhaze3856 2 ай бұрын
Javascript operators' easter eggs.
@MrSofazocker
@MrSofazocker 2 ай бұрын
About browsers should beocme "Distribution programs", aren't they already? I get what you mean, server send html which says button there, and the browser actually renders the button natively on any device. That was the original thought. Why do you think URLs are called Universal Resource Locators? A browser simply asks for a resource from a location!? The only added part is, instead of downloading everything to a file on your system, it can instead display some types of content. Like an Video file, MP3 file, etc. most have players built-in, with native controls written by whatevery UI library the browsers using. Then it can also render HTML. HTML is a markup language, in which you describe layout as "bullet-points" for the browser to render how it wants to on any given device natively. Now, HTML can also link to other content... uiuiui So it recoursively resolves fetch requests... then renders all content. And also scripts! oh oh! So it also fetches unsafe code and has to ship a interpreter + a standard library. But then people said, we actually want client-side interaction, and don't want to leave it up to the browser how the button looks like. So we enter CSS and JS. JS was to provide client-side interactivity together with CSS. And to provide a way to layout your page. But soon people started building apps and ""browser-native"" apps, instead of distributing it through the browser. They are now using the browser AS their application. But then still ship in MB of javascript their own "Virtual" UI Frameworks that transpile/translate it to browser renderer html and css. Your point of why not, at this point, ship your own application, which just happens to run inside the browser window. But isn't run using the browser, but your own renderer code etc. That was always possible. Not everything the browser displays has to be HTML. But now they are making it even easier, by having WASM "Assembly for Web", as a supported "native" filetype a browser. Instead of rendering the html, showing the mp3 player or video player. It begins executing the send-over binaries. Within the browser natively. Why people use an html doc and render to a canvas element? And pretend its the only way? No idea.
@ferdynandkiepski5026
@ferdynandkiepski5026 2 ай бұрын
When you fixed the text y offset you added fontsize separately when it is already there in the parentheses, multiplied by the line number. What the commit author did is make an off by one error as the loop starts from zero so the first line was never offset. Adding fontsize twice looks very bad.
@Vulto166
@Vulto166 2 ай бұрын
This subject has potential for a series of videos. Don't you think?
@Pi7on
@Pi7on 2 ай бұрын
Adding a js dependency to a zozzin project, rookie mistake kiddo
@ivanjermakov
@ivanjermakov 2 ай бұрын
1:31:23 This is why you use a linter and force formatting.
@thebatchicle3429
@thebatchicle3429 2 ай бұрын
Most formatters have shit style
@thebatchicle3429
@thebatchicle3429 2 ай бұрын
Why? The issue was solved by the same guy in literally the next commit. This caused 0 bugs.
@ivanjermakov
@ivanjermakov 2 ай бұрын
@@thebatchicle3429 most formatters are configurable. And I think it's a good thing to use consistent "shit" style across the whole project. It literally broke font rendering and Tsoding had to git bisect the issue.
@user-dt8mf8nt2v
@user-dt8mf8nt2v 2 ай бұрын
​​@@ivanjermakovthat was actually not what broke font rendering, that part of the code actually had the same behaviour as it would if written normally. the problem was not adding fontSize
@ivanjermakov
@ivanjermakov 2 ай бұрын
@@user-dt8mf8nt2v true, but it's still a problem that improperly formatted code can be used to obfuscate malicious logic
@apenaswellignton
@apenaswellignton 2 ай бұрын
Pog
@lievenpetersen
@lievenpetersen 2 ай бұрын
Whenever I see you faffing around in chromium, I am reminded that I do actually prefer firefox for dev tools, because they are more accessible. Which is kinda unexpected. (like the buttons for dark mode preference are right there in the inspector for ex.)
@delibellus
@delibellus 2 ай бұрын
If you go out of your way to contribute to a project that is not yours, you have to expect anything. It doesn't mean that any reaction by the devs in charge, as shitty as it can be, will be good or just, because shittiness is just shittiness. But you have to expect anything and if you value your time too much, maybe you shouldn't work for free.
@noahstruck7045
@noahstruck7045 2 ай бұрын
49:19 I am literally crying from laughter. Why does it copy the name?
@j-wenning
@j-wenning 2 ай бұрын
1:20:00 this is http query params being stupid, not JS, lol.
@amj864
@amj864 2 ай бұрын
why don't you do odin? come on man I don't wanna die before you do odin
@desertfish74
@desertfish74 2 ай бұрын
welcome to another zodin zession
@maxrinehart4177
@maxrinehart4177 2 ай бұрын
He said that he doesn't want to do so because he is terrified of gingerbill (odin creator), because gingerbill became aggressive when someone talk about odin in stream. Apparently gingerbill was watching his past streams and qouted him on Twitter too. 😅
@amj864
@amj864 2 ай бұрын
@@maxrinehart4177 I hope it must have been a joke, Bill is a pretty chill guy, he jokes around for sure but being aggressive toward people I have not seen that.
@ikeofili355
@ikeofili355 2 ай бұрын
First try!
@NyanCoder
@NyanCoder 2 ай бұрын
I'd expect the double pipe (||, a.k.a. logical OR) would return boolean (e.g. `'hello' || 69 === true`) and the double question mark to be as shortened ternary operator (`('hello' ?? 69) === ('hello' ? 'hello' : 69)`) 🤦‍♂
@U20E0
@U20E0 2 ай бұрын
short-circuit && and || returning whichever operand they evaluated last is extremely common in high-level languages, as it is actually faster than always returning true or false, and it's pretty useful sometimes. Of course C likes not specifying things, so there they can return anything, which makes everything confusing.
@xarchist
@xarchist 2 ай бұрын
Alternative stream name: shitoberfest
@anon_y_mousse
@anon_y_mousse 2 ай бұрын
Some devs really need to grow a spine. A maintainer shouldn't have to waste their time explaining why a PR gets rejected. It's almost like dealing with children. Anyone else have to put up with that kind of behavior running a team, especially from fresh graduates that have inflated egos?
@boccobadz
@boccobadz 2 ай бұрын
Kids after bootcamps these days think they know everything and should start with comp package in mid six figs lol
@carljosephyounger
@carljosephyounger 2 ай бұрын
Multiple cursors work best in editors like Helix.
@HaMMeR33661
@HaMMeR33661 2 ай бұрын
Coming from Emacs where I used macro-recording as a kind of "multiple cursor" that I can reuse with incredible precision and power, I miss it in Helix. There's a lot you can't really do -- But I haven't really seen @TsodingDaily use Emacs' macro-recording at all.
@carljosephyounger
@carljosephyounger 2 ай бұрын
@@HaMMeR33661 - Helix has macros (and registers to store them in), but I've not used them very extensively, and have nothing to compare them to, so don't know how much better they could be. The way Helix generalizes cursors, anchors and selections (so you always operate on one or more ranges of one or more characters) would make much less sense if you only had one selection. It's that focus on Select Then Act that makes having multiple selections so powerful.
@abdallaalhag4425
@abdallaalhag4425 2 ай бұрын
31:31
@varshneydevansh
@varshneydevansh 2 ай бұрын
Zozinnnnnnnnn
@yrds96
@yrds96 2 ай бұрын
24:15 Of course my vim can do that: qq/{ait,at}ayyptwct_wasm/"buildct_wasm/",ea/wasmG:normal! @q
@Tawre007
@Tawre007 2 ай бұрын
I read it and my furniture started to fly. Thanks it's easier to clean floors ;)
@theodorealenas3171
@theodorealenas3171 2 ай бұрын
REGEX! REGEX! REGEX!
@eeriemyxi
@eeriemyxi 2 ай бұрын
:'
Can C actually do Perfect Bézier Curves?
2:17:22
Tsoding Daily
Рет қаралды 7 М.
I regret doing this...
1:20:07
Tsoding Daily
Рет қаралды 60 М.
skibidi toilet 73 (part 2)
04:15
DaFuq!?Boom!
Рет қаралды 32 МЛН
GADGETS VS HACKS || Random Useful Tools For your child #hacks #gadgets
00:35
Scroll Animation Using HTML,CSS, JS and Gsap
14:06
NJ WEBDESIGNING
Рет қаралды 10
Is John Carmack Right about UI?!
1:52:02
Tsoding Daily
Рет қаралды 29 М.
I tried React and it Ruined My Life
1:19:10
Tsoding Daily
Рет қаралды 110 М.
Writing A Lexer In C++ : Compiler Development 0x01
49:20
Aryan Kumar
Рет қаралды 844
Is C++ better than C?
1:46:10
Tsoding Daily
Рет қаралды 27 М.
Hiding Data Inside of Executable Files
1:55:14
Tsoding Daily
Рет қаралды 24 М.
Unreasonably Easy Console Apps in Rust
1:54:16
Tsoding Daily
Рет қаралды 87 М.
William Byrd on "The Most Beautiful Program Ever Written" [PWL NYC]
1:31:06
The Truth about Rust/WebAssembly Performance
29:47
Greg Johnston
Рет қаралды 167 М.
Trying Jai Language for the First Time
2:09:22
Tsoding Daily
Рет қаралды 86 М.
Вы поможете украсть ваш iPhone
0:56
Romancev768
Рет қаралды 595 М.
Вы поможете украсть ваш iPhone
0:56
Romancev768
Рет қаралды 595 М.
Готовый миниПК от Intel (но от китайцев)
36:25
Ремонтяш
Рет қаралды 385 М.
Introducing GPT-4o
26:13
OpenAI
Рет қаралды 3,8 МЛН